|
|
@ -6,116 +6,122 @@ |
|
|
" |
|
|
" |
|
|
@contextmenu.prevent="onContextmenu" |
|
|
@contextmenu.prevent="onContextmenu" |
|
|
> |
|
|
> |
|
|
<el-table |
|
|
|
|
|
:data="patientRegister.prList" |
|
|
|
|
|
border |
|
|
|
|
|
:height=" |
|
|
|
|
|
window.pageHeight < 600 |
|
|
|
|
|
? 202 |
|
|
|
|
|
: Math.floor(((window.pageHeight - 302) * 2) / 3) |
|
|
|
|
|
" |
|
|
|
|
|
highlight-current-row |
|
|
|
|
|
@row-click="rowClick" |
|
|
|
|
|
size="small" |
|
|
|
|
|
@selection-change="handleSelectionChange" |
|
|
|
|
|
@cell-contextmenu="onCellRightClick" |
|
|
|
|
|
ref="info" |
|
|
|
|
|
:row-class-name="handleRowClassName" |
|
|
|
|
|
> |
|
|
|
|
|
<!-- 取消勾选,改为选中 |
|
|
|
|
|
<el-table-column type="selection" width="40" show-overflow-tooltip/> |
|
|
|
|
|
--> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
v-for="(item, index) in headerCols" |
|
|
|
|
|
:key="`col_${index}`" |
|
|
|
|
|
:min-width="dropCol[index].minWidth" |
|
|
|
|
|
:align="dropCol[index].align" |
|
|
|
|
|
:label="item.label" |
|
|
|
|
|
|
|
|
<div> |
|
|
|
|
|
<el-table @body-scrolling="load" |
|
|
|
|
|
:data="patientRegister.prList" |
|
|
|
|
|
border :height="window.pageHeight < 600 ? 202 : Math.floor(((window.pageHeight - 302) * 2) / 3)" |
|
|
|
|
|
highlight-current-row |
|
|
|
|
|
@row-click="rowClick" |
|
|
|
|
|
size="small" row-key="id" |
|
|
|
|
|
@selection-change="handleSelectionChange" |
|
|
|
|
|
@cell-contextmenu="onCellRightClick" |
|
|
|
|
|
ref="info" |
|
|
|
|
|
:row-class-name="handleRowClassName" |
|
|
> |
|
|
> |
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div v-if="dropCol[index].prop == 'sn'" > |
|
|
|
|
|
{{ scope.$index + 1 }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'completeFlag'" > |
|
|
|
|
|
{{ dddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'guidePrintTimes'" > |
|
|
|
|
|
<i class="el-icon-printer" |
|
|
|
|
|
v-if="scope.row.guidePrintTimes > 0" |
|
|
|
|
|
style="font-size: 24px; color: green" /> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if ="dropCol[index].prop == 'isLock' |
|
|
|
|
|
|| dropCol[index].prop == 'isVip' |
|
|
|
|
|
|| dropCol[index].prop == 'isUpload' |
|
|
|
|
|
" > |
|
|
|
|
|
{{ scope.row[dropCol[index].prop] == "Y" ? "是" : "否" }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'customerOrgParentName'" > |
|
|
|
|
|
{{ scope.row.customerOrgParentName |
|
|
|
|
|
? scope.row.customerOrgParentName |
|
|
|
|
|
: scope.row.customerOrgName }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'sexId'" > |
|
|
|
|
|
{{ dddw(dict.sex, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'groupPack'" > |
|
|
|
|
|
<div v-if=" scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId"> |
|
|
|
|
|
{{ dddw(dict.medicalPackage,"id",scope.row.medicalPackageId,"displayName")}} |
|
|
|
|
|
|
|
|
<!-- 取消勾选,改为选中 |
|
|
|
|
|
<el-table-column type="selection" width="40" show-overflow-tooltip/> |
|
|
|
|
|
:height="window.pageHeight < 600 ? 202 : Math.floor(((window.pageHeight - 302) * 2) / 3)" |
|
|
|
|
|
--> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
v-for="(item, index) in headerCols" |
|
|
|
|
|
:key="`col_${index}`" |
|
|
|
|
|
:min-width="dropCol[index].minWidth" |
|
|
|
|
|
:align="dropCol[index].align" |
|
|
|
|
|
:label="item.label" |
|
|
|
|
|
:prop="dropCol[index].prop" |
|
|
|
|
|
:sortable="dropCol[index].prop == 'sn' ? false:true" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div v-if="dropCol[index].prop == 'sn'" > |
|
|
|
|
|
{{ scope.$index + 1 }} |
|
|
</div> |
|
|
</div> |
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId"> |
|
|
|
|
|
{{ dddw( dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName" ) }} |
|
|
|
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'completeFlag'" > |
|
|
|
|
|
{{ dddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }} |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'guidePrintTimes'" > |
|
|
|
|
|
<i class="el-icon-printer" |
|
|
|
|
|
v-if="scope.row.guidePrintTimes > 0" |
|
|
|
|
|
style="font-size: 24px; color: green" /> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if ="dropCol[index].prop == 'isLock' |
|
|
|
|
|
|| dropCol[index].prop == 'isVip' |
|
|
|
|
|
|| dropCol[index].prop == 'isUpload' |
|
|
|
|
|
" > |
|
|
|
|
|
{{ scope.row[dropCol[index].prop] == "Y" ? "是" : "否" }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'customerOrgParentName'" > |
|
|
|
|
|
{{ scope.row.customerOrgParentName |
|
|
|
|
|
? scope.row.customerOrgParentName |
|
|
|
|
|
: scope.row.customerOrgName }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'sexId'" > |
|
|
|
|
|
{{ dddw(dict.sex, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'groupPack'" > |
|
|
|
|
|
<div v-if=" scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId"> |
|
|
|
|
|
{{ dddw(dict.medicalPackage,"id",scope.row.medicalPackageId,"displayName")}} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId"> |
|
|
|
|
|
{{ dddw( dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName" ) }} |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'nationId'" > |
|
|
|
|
|
{{ dddw(dict.nation, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if ="dropCol[index].prop == 'birthDate' |
|
|
|
|
|
|| dropCol[index].prop == 'creationTime'" > |
|
|
|
|
|
{{ scope.row[dropCol[index].prop] ? moment(scope.row[dropCol[index].prop]).format('yyyy-MM-DD'):'' }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'maritalStatusId'" > |
|
|
|
|
|
{{ dddw(dict.maritalStatus, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'medicalTypeId'" > |
|
|
|
|
|
{{ dddw(dict.medicalType, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'personnelTypeId'" > |
|
|
|
|
|
{{ dddw(dict.personnelType, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else> |
|
|
|
|
|
{{ scope.row[dropCol[index].prop] }} |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<!-- |
|
|
|
|
|
"sexHormoneTermId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"interposeMeasure": null, |
|
|
|
|
|
"medicalConclusionId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"reportPrintTimes": 0, |
|
|
|
|
|
"isMedicalStart": "N", |
|
|
|
|
|
"medicalStartDate": "6/28/2023", |
|
|
|
|
|
"isRecoverGuide": "N", |
|
|
|
|
|
"summaryDate": "", |
|
|
|
|
|
"summaryDoctor": null, |
|
|
|
|
|
"isAudit": "N", |
|
|
|
|
|
"auditDoctor": null, |
|
|
|
|
|
"auditDate": "", |
|
|
|
|
|
"isNameHide": "N", |
|
|
|
|
|
"isPhoneFollow": "N", |
|
|
|
|
|
"thirdInfo": null, |
|
|
|
|
|
"guidePrintTimes": null, |
|
|
|
|
|
"remark": null, |
|
|
|
|
|
"organizationUnitId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"customerOrgRegisterId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"lastModifierName": "", |
|
|
|
|
|
"lastModificationTime": null, |
|
|
|
|
|
"lastModifierId": null, |
|
|
|
|
|
"creatorId": null, |
|
|
|
|
|
"id": "3a0c196d-a6d0-37fe-5c32-4806bdc4530f" |
|
|
|
|
|
--> |
|
|
|
|
|
</el-table> |
|
|
|
|
|
<div style="display: flex;justify-content:space-between;"> |
|
|
|
|
|
<div></div> |
|
|
|
|
|
<div> |
|
|
|
|
|
<span style="font-size:12px;">共:{{loadOpts.totalCount}} 条记录,当前显示:{{patientRegister.prList.length}} 条。</span> |
|
|
</div> |
|
|
</div> |
|
|
<div v-else-if="dropCol[index].prop == 'nationId'" > |
|
|
|
|
|
{{ dddw(dict.nation, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if ="dropCol[index].prop == 'birthDate' |
|
|
|
|
|
|| dropCol[index].prop == 'creationTime'" > |
|
|
|
|
|
{{ scope.row[dropCol[index].prop] ? moment(scope.row[dropCol[index].prop]).format('yyyy-MM-DD'):'' }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'maritalStatusId'" > |
|
|
|
|
|
{{ dddw(dict.maritalStatus, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'medicalTypeId'" > |
|
|
|
|
|
{{ dddw(dict.medicalType, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else-if="dropCol[index].prop == 'personnelTypeId'" > |
|
|
|
|
|
{{ dddw(dict.personnelType, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
|
|
</div> |
|
|
|
|
|
<div v-else> |
|
|
|
|
|
{{ scope.row[dropCol[index].prop] }} |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<!-- |
|
|
|
|
|
"sexHormoneTermId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"interposeMeasure": null, |
|
|
|
|
|
"medicalConclusionId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"reportPrintTimes": 0, |
|
|
|
|
|
"isMedicalStart": "N", |
|
|
|
|
|
"medicalStartDate": "6/28/2023", |
|
|
|
|
|
"isRecoverGuide": "N", |
|
|
|
|
|
"summaryDate": "", |
|
|
|
|
|
"summaryDoctor": null, |
|
|
|
|
|
"isAudit": "N", |
|
|
|
|
|
"auditDoctor": null, |
|
|
|
|
|
"auditDate": "", |
|
|
|
|
|
"isNameHide": "N", |
|
|
|
|
|
"isPhoneFollow": "N", |
|
|
|
|
|
"thirdInfo": null, |
|
|
|
|
|
"guidePrintTimes": null, |
|
|
|
|
|
"remark": null, |
|
|
|
|
|
"organizationUnitId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"customerOrgRegisterId": "00000000-0000-0000-0000-000000000000", |
|
|
|
|
|
"lastModifierName": "", |
|
|
|
|
|
"lastModificationTime": null, |
|
|
|
|
|
"lastModifierId": null, |
|
|
|
|
|
"creatorId": null, |
|
|
|
|
|
"id": "3a0c196d-a6d0-37fe-5c32-4806bdc4530f" |
|
|
|
|
|
--> |
|
|
|
|
|
</el-table> |
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
<!-- 给合项目 基本信息 --> |
|
|
<!-- 给合项目 基本信息 --> |
|
|
<el-tabs v-model="tabChoosed"> |
|
|
|
|
|
|
|
|
<el-tabs v-model="tabChoosed" style="margin-top: -22px;"> |
|
|
<!-- 给合项目 --> |
|
|
<!-- 给合项目 --> |
|
|
<el-tab-pane label="已选组合项目" name="1"> |
|
|
<el-tab-pane label="已选组合项目" name="1"> |
|
|
<PatientRegisterAsbItem /> |
|
|
<PatientRegisterAsbItem /> |
|
|
@ -511,18 +517,18 @@ export default { |
|
|
dropCol: [ |
|
|
dropCol: [ |
|
|
{ label: "序号",prop: "sn",minWidth: 40,align:"center"}, |
|
|
{ label: "序号",prop: "sn",minWidth: 40,align:"center"}, |
|
|
{ label: "体检进度",prop: "completeFlag",minWidth: 80,align:"center"}, |
|
|
{ label: "体检进度",prop: "completeFlag",minWidth: 80,align:"center"}, |
|
|
{ label: "打印", prop: "guidePrintTimes", minWidth: 50,align:"center" }, |
|
|
|
|
|
{ label: "锁住", prop: "isLock", minWidth: 50, align:"center"}, |
|
|
|
|
|
|
|
|
{ label: "打印", prop: "guidePrintTimes", minWidth: 55,align:"center" }, |
|
|
|
|
|
{ label: "锁住", prop: "isLock", minWidth: 55, align:"center"}, |
|
|
{ label: "单位", prop: "customerOrgParentName", minWidth: 180, align:"center"}, |
|
|
{ label: "单位", prop: "customerOrgParentName", minWidth: 180, align:"center"}, |
|
|
{ label: "部门", prop: "customerOrgName", minWidth: 120, align:"center"}, |
|
|
{ label: "部门", prop: "customerOrgName", minWidth: 120, align:"center"}, |
|
|
{ label: "姓名", prop: "patientName", minWidth: 80, align:"center"}, |
|
|
{ label: "姓名", prop: "patientName", minWidth: 80, align:"center"}, |
|
|
{ label: "性别", prop: "sexId", minWidth: 50, align:"center"}, |
|
|
|
|
|
{ label: "年龄", prop: "age", minWidth: 50, align:"center"}, |
|
|
|
|
|
|
|
|
{ label: "性别", prop: "sexId", minWidth: 55, align:"center"}, |
|
|
|
|
|
{ label: "年龄", prop: "age", minWidth: 55, align:"center"}, |
|
|
{ label: "条码号", prop: "patientRegisterNo", minWidth: 150, align:"center"}, |
|
|
{ label: "条码号", prop: "patientRegisterNo", minWidth: 150, align:"center"}, |
|
|
{ label: "档案号", prop: "patientNo", minWidth: 100, align:"center"}, |
|
|
{ label: "档案号", prop: "patientNo", minWidth: 100, align:"center"}, |
|
|
{ label: "体检次数", prop: "medicalTimes", minWidth: 80, align:"center"}, |
|
|
{ label: "体检次数", prop: "medicalTimes", minWidth: 80, align:"center"}, |
|
|
{ label: "分组/套餐", prop: "groupPack", minWidth: 150, align:"center"}, |
|
|
{ label: "分组/套餐", prop: "groupPack", minWidth: 150, align:"center"}, |
|
|
{ label: "民族", prop: "nationId", minWidth: 50, align:"center"}, |
|
|
|
|
|
|
|
|
{ label: "民族", prop: "nationId", minWidth: 55, align:"center"}, |
|
|
{ label: "身份证", prop: "idNo", minWidth: 150, align:"center"}, |
|
|
{ label: "身份证", prop: "idNo", minWidth: 150, align:"center"}, |
|
|
{ label: "出生日期", prop: "birthDate", minWidth: 80, align:"center"}, |
|
|
{ label: "出生日期", prop: "birthDate", minWidth: 80, align:"center"}, |
|
|
{ label: "邮箱", prop: "email", minWidth: 150, align:"center"}, |
|
|
{ label: "邮箱", prop: "email", minWidth: 150, align:"center"}, |
|
|
@ -542,11 +548,22 @@ export default { |
|
|
{ label: "登记日期", prop: "creationTime", minWidth: 80, align:"center"}, |
|
|
{ label: "登记日期", prop: "creationTime", minWidth: 80, align:"center"}, |
|
|
{ label: "是否上传", prop: "isUpload", minWidth: 80, align:"center"}, |
|
|
{ label: "是否上传", prop: "isUpload", minWidth: 80, align:"center"}, |
|
|
], |
|
|
], |
|
|
|
|
|
|
|
|
|
|
|
dom:null, //用于滚动加载数据 |
|
|
|
|
|
lazyLoading:false, //是否懒加载中 |
|
|
|
|
|
loadOpts:{ |
|
|
|
|
|
totalCount:0, |
|
|
|
|
|
skipCount:0, |
|
|
|
|
|
maxResultCount:100, |
|
|
|
|
|
}, |
|
|
|
|
|
loadOptsInit:{}, |
|
|
|
|
|
|
|
|
}; |
|
|
}; |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
created() { |
|
|
created() { |
|
|
this.headerCols = deepCopy(this.dropCol) |
|
|
this.headerCols = deepCopy(this.dropCol) |
|
|
|
|
|
this.loadOptsInit = Object.assign({},this.loadOpts) |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//挂载完成 |
|
|
//挂载完成 |
|
|
@ -557,6 +574,10 @@ export default { |
|
|
|
|
|
|
|
|
//初始化可以拖动的列 |
|
|
//初始化可以拖动的列 |
|
|
this.dropCol = this.columnDrop(this.dropCol); |
|
|
this.dropCol = this.columnDrop(this.dropCol); |
|
|
|
|
|
|
|
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
|
this.scrollFull() |
|
|
|
|
|
}) |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
...mapState([ |
|
|
...mapState([ |
|
|
@ -906,8 +927,26 @@ export default { |
|
|
|
|
|
|
|
|
//查询 |
|
|
//查询 |
|
|
async Query() { |
|
|
async Query() { |
|
|
this.patientRegister.prList = []; |
|
|
|
|
|
let body = {maxResultCount:500}; |
|
|
|
|
|
|
|
|
this.loadOpts = Object.assign(this.loadOpts,this.loadOptsInit) |
|
|
|
|
|
await this.getPrList() |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
//数据量多时,滚动加载 |
|
|
|
|
|
async load(){ |
|
|
|
|
|
this.loadOpts.skipCount++ |
|
|
|
|
|
await this.getPrList() |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
// 获取列表数据 |
|
|
|
|
|
async getPrList(){ |
|
|
|
|
|
|
|
|
|
|
|
if(this.loadOpts.skipCount != 0 && this.loadOpts.skipCount*this.loadOpts.maxResultCount >= this.loadOpts.totalCount) return |
|
|
|
|
|
console.log('getPrList',this.loadOpts) |
|
|
|
|
|
|
|
|
|
|
|
let body = { |
|
|
|
|
|
skipCount:this.loadOpts.skipCount, |
|
|
|
|
|
maxResultCount:this.loadOpts.maxResultCount |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
console.log(`this.patientRegister.query`, this.patientRegister.query); |
|
|
console.log(`this.patientRegister.query`, this.patientRegister.query); |
|
|
if (this.patientRegister.query.customerOrgFlag) { |
|
|
if (this.patientRegister.query.customerOrgFlag) { |
|
|
@ -967,37 +1006,56 @@ export default { |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
console.log("/api/app/patientregister/getlistinfilter", body); |
|
|
console.log("/api/app/patientregister/getlistinfilter", body); |
|
|
|
|
|
|
|
|
const loading = this.$loading({ |
|
|
const loading = this.$loading({ |
|
|
lock: true, |
|
|
lock: true, |
|
|
text: "Loading", |
|
|
text: "Loading", |
|
|
spinner: "el-icon-loading", |
|
|
spinner: "el-icon-loading", |
|
|
background: "rgba(0, 0, 0, 0.7)", |
|
|
background: "rgba(0, 0, 0, 0.7)", |
|
|
}); |
|
|
}); |
|
|
postapi("/api/app/patientregister/getlistinfilter", body) |
|
|
|
|
|
.then((res) => { |
|
|
|
|
|
if (res.code != -1) { |
|
|
|
|
|
this.patientRegister.prList = res.data.items; |
|
|
|
|
|
|
|
|
|
|
|
//配合多选使用 |
|
|
|
|
|
this.patientRegister.prList.forEach((item, index) => { |
|
|
|
|
|
item.index = index; |
|
|
|
|
|
item.choosed = false; |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
loading.close(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let res = await postapi("/api/app/patientregister/getlistinfilter", body) |
|
|
|
|
|
if(res.code != -1){ |
|
|
|
|
|
// 刷新最大记录数 |
|
|
|
|
|
this.loadOpts.totalCount = res.data.totalCount |
|
|
|
|
|
let curLoad = res.data.items |
|
|
|
|
|
let oldCount = 0 |
|
|
|
|
|
|
|
|
|
|
|
if(body.skipCount == 0){ //查询 |
|
|
|
|
|
this.patientRegister.prList = []; |
|
|
|
|
|
}else{ |
|
|
|
|
|
// 懒加载 ,原数据集不用清空 |
|
|
|
|
|
oldCount = this.patientRegister.prList.length |
|
|
|
|
|
} |
|
|
|
|
|
curLoad.forEach((e,index) =>{ |
|
|
|
|
|
this.patientRegister.prList.push(Object.assign({index:Number(oldCount)+Number(index),choosed:false},e)) |
|
|
}) |
|
|
}) |
|
|
.catch((err) => { |
|
|
|
|
|
loading.close(); |
|
|
|
|
|
}); |
|
|
|
|
|
// try { |
|
|
|
|
|
// let res =await postapi('/api/app/patientregister/getlistinfilter', body); |
|
|
|
|
|
// this.patientRegister.prList = res.data; |
|
|
|
|
|
// } catch (error) { |
|
|
|
|
|
// console.log("query error",error); |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
loading.close(); |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
//滚动加载数据 |
|
|
|
|
|
scrollFull(){ |
|
|
|
|
|
this.dom = this.$refs['info'].bodyWrapper |
|
|
|
|
|
console.log('this.dom',this.dom) |
|
|
|
|
|
|
|
|
|
|
|
this.dom.addEventListener('scroll',async () => { |
|
|
|
|
|
// console.log('scrollTop',this.dom.scrollTop,'clientHeight',this.dom.clientHeight,'scrollHeight',this.dom.scrollHeight); |
|
|
|
|
|
if(this.dom.scrollTop + this.dom.clientHeight + 20 > this.dom.scrollHeight && !this.lazyLoading){ |
|
|
|
|
|
// 获取到的不是全部数据 当滚动到底部 |
|
|
|
|
|
console.log('scrollTop',this.dom.scrollTop,'clientHeight',this.dom.clientHeight,'scrollHeight',this.dom.scrollHeight); |
|
|
|
|
|
if((Number(this.loadOpts.skipCount) + 1)*Number(this.loadOpts.maxResultCount) >= Number(this.loadOpts.totalCount)){ |
|
|
|
|
|
this.lazyLoading = false |
|
|
|
|
|
}else{ |
|
|
|
|
|
this.lazyLoading = true |
|
|
|
|
|
await this.load() |
|
|
|
|
|
this.lazyLoading = false |
|
|
|
|
|
// this.dom.scrollTop = this.dom.scrollTop - 100 |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//右击菜单 |
|
|
//右击菜单 |
|
|
onCellRightClick(row, column) { |
|
|
onCellRightClick(row, column) { |
|
|
this.rClickRow = { ...row }; //右击的行记录 |
|
|
this.rClickRow = { ...row }; //右击的行记录 |
|
|
@ -1586,6 +1644,19 @@ export default { |
|
|
|
|
|
|
|
|
//监听事件 |
|
|
//监听事件 |
|
|
watch: { |
|
|
watch: { |
|
|
|
|
|
"patientRegister.query.customerOrgId":{ |
|
|
|
|
|
// immediate: true, // 立即执行 |
|
|
|
|
|
deep: true, // 深度监听复杂类型内变化 |
|
|
|
|
|
handler(newVal,oldVal){ |
|
|
|
|
|
//console.log('watch:patientRegister.query.customerOrgId:',newVal,oldVal) |
|
|
|
|
|
// 单位变化时,清除当前列表信息 |
|
|
|
|
|
if(newVal && newVal != oldVal){ |
|
|
|
|
|
this.patientRegister.prList = [] |
|
|
|
|
|
this.patientRegister.patientRegisterAbs = [] |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
//触发查询事件 |
|
|
//触发查询事件 |
|
|
"patientRegister.query.times"(newVal, oldVal) { |
|
|
"patientRegister.query.times"(newVal, oldVal) { |
|
|
if (newVal != oldVal) { |
|
|
if (newVal != oldVal) { |
|
|
|