|
|
|
@ -1,84 +1,66 @@ |
|
|
|
<template> |
|
|
|
<div style="display: flex"> |
|
|
|
<div |
|
|
|
:style=" |
|
|
|
'margin-left:5px;width:' + (window.pageWidth - 200 - 110 - 35) + 'px;' |
|
|
|
" |
|
|
|
@contextmenu.prevent="onContextmenu" |
|
|
|
> |
|
|
|
<div :style="'margin-left:5px;width:' + (window.pageWidth - 200 - 110 - 10) + 'px;'" @contextmenu.prevent="onContextmenu"> |
|
|
|
<div> |
|
|
|
<el-table @body-scrolling="load" |
|
|
|
:data="patientRegister.prList" |
|
|
|
border :height="window.pageHeight < 600 ? 226 : Math.floor(((window.pageHeight - 261) * 2) / 3)" |
|
|
|
highlight-current-row |
|
|
|
@row-click="rowClick" |
|
|
|
size="small" row-key="id" |
|
|
|
@selection-change="handleSelectionChange" |
|
|
|
@cell-contextmenu="onCellRightClick" |
|
|
|
ref="info" id="info" |
|
|
|
:row-class-name="handleRowClassName" |
|
|
|
> |
|
|
|
<el-table @body-scrolling="load" :data="patientRegister.prList" border |
|
|
|
:height="window.pageHeight < 600 ? 248 : Math.floor(((window.pageHeight - 228) * 2) / 3)" highlight-current-row |
|
|
|
@row-click="rowClick" size="small" row-key="id" @selection-change="handleSelectionChange" |
|
|
|
@cell-contextmenu="onCellRightClick" ref="info" id="info" :row-class-name="handleRowClassName"> |
|
|
|
<!-- 取消勾选,改为选中 |
|
|
|
<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" |
|
|
|
> |
|
|
|
<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'" > |
|
|
|
<div v-if="dropCol[index].prop == 'sn'"> |
|
|
|
{{ scope.$index + 1 }} |
|
|
|
</div> |
|
|
|
<div v-else-if="dropCol[index].prop == 'completeFlag'" > |
|
|
|
<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: 20px; color: green" /> |
|
|
|
<div v-else-if="dropCol[index].prop == 'guidePrintTimes'"> |
|
|
|
<i class="el-icon-printer" v-if="scope.row.guidePrintTimes > 0" style="font-size: 20px; color: green" /> |
|
|
|
</div> |
|
|
|
<div v-else-if ="dropCol[index].prop == 'isLock' |
|
|
|
<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'" > |
|
|
|
<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'" > |
|
|
|
<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 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 |
|
|
|
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'" > |
|
|
|
<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 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'" > |
|
|
|
<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'" > |
|
|
|
<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'" > |
|
|
|
<div v-else-if="dropCol[index].prop == 'personnelTypeId'"> |
|
|
|
{{ dddw(dict.personnelType, "id", scope.row[dropCol[index].prop], "displayName") }} |
|
|
|
</div> |
|
|
|
<div v-else> |
|
|
|
@ -116,7 +98,7 @@ |
|
|
|
<div style="display: flex;justify-content:space-between;"> |
|
|
|
<div></div> |
|
|
|
<div> |
|
|
|
<span style="font-size:12px;">共:{{loadOpts.totalCount}} 条记录,当前显示:{{patientRegister.prList.length}} 条。</span> |
|
|
|
<span style="font-size:12px;">共:{{ loadOpts.totalCount }} 条记录,当前显示:{{ patientRegister.prList.length }} 条。</span> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
@ -129,23 +111,17 @@ |
|
|
|
</el-tabs> |
|
|
|
</div> |
|
|
|
<div style="margin-left: 10px;"> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'人员登记')" class="listBtn"> |
|
|
|
<el-button type="success" class="commonbutton" @click="btnAdd">人员登记</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '人员登记')" class="listBtn"> |
|
|
|
<el-button type="success" class="commonbutton" @click="btnAdd">人员登记</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'批量正式登记')" class="listBtn"> |
|
|
|
<el-button type="success" class="commonbutton" @click="btnAddBatch">批量正式登记</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '批量正式登记')" class="listBtn"> |
|
|
|
<el-button type="success" class="commonbutton" @click="btnAddBatch">批量正式登记</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'编辑')" class="listBtn"> |
|
|
|
<el-button type="primary" class="commonbutton" @click="btnEdit" |
|
|
|
>编辑</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '编辑')" class="listBtn"> |
|
|
|
<el-button type="primary" class="commonbutton" @click="btnEdit">编辑</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'删除')" class="listBtn"> |
|
|
|
<el-button type="danger" class="commonbutton" @click="btnDel" |
|
|
|
>删除</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '删除')" class="listBtn"> |
|
|
|
<el-button type="danger" class="commonbutton" @click="btnDel">删除</el-button> |
|
|
|
</div> |
|
|
|
<!-- |
|
|
|
<div class="listBtn"> |
|
|
|
@ -161,39 +137,20 @@ |
|
|
|
<el-button type="" class="btnClass commonbutton">健康档案</el-button> |
|
|
|
</div> |
|
|
|
--> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'批量调整分组')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="btnGroupBatch" |
|
|
|
>批量调整分组</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '批量调整分组')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="btnGroupBatch">批量调整分组</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'批量调整项目')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="btnAsbBatch" |
|
|
|
>批量调整项目</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '批量调整项目')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="btnAsbBatch">批量调整项目</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'指引单打印')" class="listBtn"> |
|
|
|
<el-button |
|
|
|
type="" |
|
|
|
class="commonbutton" |
|
|
|
@click="guidePrint('0001', false)" |
|
|
|
>指引单打印</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '指引单打印')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="guidePrint('0001', false)">指引单打印</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'指引单预览')" class="listBtn"> |
|
|
|
<el-button |
|
|
|
type="" |
|
|
|
class="commonbutton" |
|
|
|
@click="guidePrint('0001', true)" |
|
|
|
>指引单预览</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '指引单预览')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="guidePrint('0001', true)">指引单预览</el-button> |
|
|
|
</div> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs,'人员信息导出')" class="listBtn"> |
|
|
|
<el-button |
|
|
|
type="" |
|
|
|
class="commonbutton" |
|
|
|
@click="btnExport('info')" |
|
|
|
>人员信息导出</el-button |
|
|
|
> |
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '人员信息导出')" class="listBtn"> |
|
|
|
<el-button type="" class="commonbutton" @click="btnExport('info')">人员信息导出</el-button> |
|
|
|
</div> |
|
|
|
<!-- |
|
|
|
<div class="listBtn"> |
|
|
|
@ -203,81 +160,41 @@ |
|
|
|
</div> |
|
|
|
|
|
|
|
<!-- 体检人员登记 :title="patientRegister.patientRegisterRd.id ? '体检人员--编辑' : '体检人员--新增'" --> |
|
|
|
<el-dialog |
|
|
|
:title="dataTransOpts.tableS.patient_register.id ? '体检人员--编辑' : '体检人员--新增'" |
|
|
|
:visible.sync="dialogVisible" |
|
|
|
:close-on-click-modal="false" |
|
|
|
fullscreen @close="closeDialogPR" |
|
|
|
> |
|
|
|
<el-dialog :title="dataTransOpts.tableS.patient_register.id ? '体检人员--编辑' : '体检人员--新增'" :visible.sync="dialogVisible" |
|
|
|
:close-on-click-modal="false" fullscreen @close="closeDialogPR"> |
|
|
|
<!-- :formInitData="patientRegister.patientRegisterRd" --> |
|
|
|
<PatientRegisterEdit |
|
|
|
:isDoctor="'0'" |
|
|
|
:patientRegisterId = "patientRegister.patientRegisterRd.id" |
|
|
|
:editTimes="editTimes" |
|
|
|
:refreshRegister="refreshRegister" |
|
|
|
/> |
|
|
|
<PatientRegisterEdit :isDoctor="'0'" :patientRegisterId="patientRegister.patientRegisterRd.id" |
|
|
|
:editTimes="editTimes" :refreshRegister="refreshRegister" /> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 拍照 --> |
|
|
|
<el-dialog |
|
|
|
title="拍照" |
|
|
|
:visible.sync="patientRegister.cameraVisble" |
|
|
|
width="400" |
|
|
|
height="800" |
|
|
|
:show-close="false" |
|
|
|
:append-to-body="true" |
|
|
|
:close-on-click-modal="false" |
|
|
|
> |
|
|
|
<el-dialog title="拍照" :visible.sync="patientRegister.cameraVisble" width="400" height="800" :show-close="false" |
|
|
|
:append-to-body="true" :close-on-click-modal="false"> |
|
|
|
<Camera :id="patientRegister.patientRegisterId" /> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 指引单 --> |
|
|
|
<el-dialog |
|
|
|
title="指引单" |
|
|
|
:visible.sync="dialogGuide" |
|
|
|
width="400" |
|
|
|
height="800" |
|
|
|
:append-to-body="true" |
|
|
|
:close-on-click-modal="false" |
|
|
|
> |
|
|
|
<el-dialog title="指引单" :visible.sync="dialogGuide" width="400" height="800" :append-to-body="true" |
|
|
|
:close-on-click-modal="false"> |
|
|
|
<div>{{ guideMsg }}</div> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 批量调整分组 --> |
|
|
|
<el-dialog |
|
|
|
title="批量调整分组" |
|
|
|
:visible.sync="dialogWin.PatientRegisterEditGroupBatch" |
|
|
|
width="600px" |
|
|
|
height="800px" |
|
|
|
:append-to-body="true" |
|
|
|
:close-on-click-modal="false" |
|
|
|
> |
|
|
|
<el-dialog title="批量调整分组" :visible.sync="dialogWin.PatientRegisterEditGroupBatch" width="600px" height="800px" |
|
|
|
:append-to-body="true" :close-on-click-modal="false"> |
|
|
|
<PatientRegisterEditGroupBatch :multipleSelection="multipleSelection" /> |
|
|
|
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 批量调整项目 --> |
|
|
|
<el-dialog |
|
|
|
title="批量调整项目" |
|
|
|
:visible.sync="dialogWin.PatientRegisterEditItemBatch" |
|
|
|
width="610px" |
|
|
|
height="800px" |
|
|
|
:append-to-body="true" |
|
|
|
:close-on-click-modal="false" |
|
|
|
> |
|
|
|
<el-dialog title="批量调整项目" :visible.sync="dialogWin.PatientRegisterEditItemBatch" width="610px" height="800px" |
|
|
|
:append-to-body="true" :close-on-click-modal="false"> |
|
|
|
<PatientRegisterEditItemBatch :multipleSelection="multipleSelection" /> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 通用进度条 --> |
|
|
|
<el-dialog |
|
|
|
title="数据处理中……" |
|
|
|
:visible.sync="elProgress.display" |
|
|
|
width="600px" |
|
|
|
height="400" |
|
|
|
:show-close="false" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:append-to-body="true" |
|
|
|
> |
|
|
|
<el-dialog title="数据处理中……" :visible.sync="elProgress.display" width="600px" height="400" :show-close="false" |
|
|
|
:close-on-click-modal="false" :append-to-body="true"> |
|
|
|
<ElProgressOCX /> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
@ -291,7 +208,7 @@ import FileSaver from 'file-saver'; |
|
|
|
import html2canvas from 'html2canvas'; |
|
|
|
|
|
|
|
import { |
|
|
|
getPagePriv,checkPagePriv, |
|
|
|
getPagePriv, checkPagePriv, |
|
|
|
dddw, |
|
|
|
objCopy, |
|
|
|
arrayReduce, |
|
|
|
@ -318,11 +235,11 @@ export default { |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
pagePriv:{ |
|
|
|
routeUrlorPageName:'patientRegister', //当前页面归属路由或归属页面权限名称 |
|
|
|
privs:[] // 页面权限 |
|
|
|
pagePriv: { |
|
|
|
routeUrlorPageName: 'patientRegister', //当前页面归属路由或归属页面权限名称 |
|
|
|
privs: [] // 页面权限 |
|
|
|
}, |
|
|
|
peisid:null, |
|
|
|
peisid: null, |
|
|
|
startPoint: -1, // 多选起点 -1 表示选择 |
|
|
|
endPoint: -1, // 多选终点 -1 表示未选择 |
|
|
|
|
|
|
|
@ -342,48 +259,48 @@ export default { |
|
|
|
headerCols: [], |
|
|
|
//拖动列 |
|
|
|
dropCol: [ |
|
|
|
{ label: "序号",prop: "sn",minWidth: 40,align:"center"}, |
|
|
|
{ label: "体检进度",prop: "completeFlag",minWidth: 80,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: "customerOrgName", minWidth: 120, align:"center"}, |
|
|
|
{ label: "姓名", prop: "patientName", minWidth: 80, 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: "patientNo", minWidth: 100, align:"center"}, |
|
|
|
{ label: "体检次数", prop: "medicalTimes", minWidth: 80, align:"center"}, |
|
|
|
{ label: "分组/套餐", prop: "groupPack", minWidth: 150, align:"center"}, |
|
|
|
{ label: "民族", prop: "nationId", minWidth: 55, align:"center"}, |
|
|
|
{ label: "身份证", prop: "idNo", minWidth: 150, align:"center"}, |
|
|
|
{ label: "出生日期", prop: "birthDate", minWidth: 80, align:"center"}, |
|
|
|
{ label: "邮箱", prop: "email", minWidth: 150, align:"center"}, |
|
|
|
{ label: "手机", prop: "mobileTelephone", minWidth: 100, align:"center"}, |
|
|
|
{ label: "电话", prop: "telephone", minWidth: 100, align:"center"}, |
|
|
|
{ label: "地址", prop: "address", minWidth: 300, align:""}, |
|
|
|
{ label: "体检卡号", prop: "medicalCardNo", minWidth: 80, align:"center"}, |
|
|
|
{ label: "工卡号", prop: "jobCardNo", minWidth: 80, align:"center"}, |
|
|
|
{ label: "婚姻状况", prop: "maritalStatusId", minWidth: 80, align:"center"}, |
|
|
|
{ label: "体检类别", prop: "medicalTypeId", minWidth: 80, align:"center"}, |
|
|
|
{ label: "人员类别", prop: "personnelTypeId", minWidth: 80, align:"center"}, |
|
|
|
{ label: "职务", prop: "jobPost", minWidth: 80, align:"center"}, |
|
|
|
{ label: "职称", prop: "jobTitle", minWidth: 80, align:"center"}, |
|
|
|
{ label: "介绍人", prop: "salesman", minWidth: 80, align:"center"}, |
|
|
|
{ label: "是否VIP", prop: "isVip", minWidth: 80, align:"center"}, |
|
|
|
{ label: "登记人", prop: "creatorName", minWidth: 80, align:"center"}, |
|
|
|
{ label: "登记日期", prop: "creationTime", minWidth: 80, align:"center"}, |
|
|
|
{ label: "是否上传", prop: "isUpload", minWidth: 80, align:"center"}, |
|
|
|
{ label: "序号", prop: "sn", minWidth: 40, align: "center" }, |
|
|
|
{ label: "体检进度", prop: "completeFlag", minWidth: 80, 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: "customerOrgName", minWidth: 120, align: "center" }, |
|
|
|
{ label: "姓名", prop: "patientName", minWidth: 80, 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: "patientNo", minWidth: 100, align: "center" }, |
|
|
|
{ label: "体检次数", prop: "medicalTimes", minWidth: 80, align: "center" }, |
|
|
|
{ label: "分组/套餐", prop: "groupPack", minWidth: 150, align: "center" }, |
|
|
|
{ label: "民族", prop: "nationId", minWidth: 55, align: "center" }, |
|
|
|
{ label: "身份证", prop: "idNo", minWidth: 150, align: "center" }, |
|
|
|
{ label: "出生日期", prop: "birthDate", minWidth: 80, align: "center" }, |
|
|
|
{ label: "邮箱", prop: "email", minWidth: 150, align: "center" }, |
|
|
|
{ label: "手机", prop: "mobileTelephone", minWidth: 100, align: "center" }, |
|
|
|
{ label: "电话", prop: "telephone", minWidth: 100, align: "center" }, |
|
|
|
{ label: "地址", prop: "address", minWidth: 300, align: "" }, |
|
|
|
{ label: "体检卡号", prop: "medicalCardNo", minWidth: 80, align: "center" }, |
|
|
|
{ label: "工卡号", prop: "jobCardNo", minWidth: 80, align: "center" }, |
|
|
|
{ label: "婚姻状况", prop: "maritalStatusId", minWidth: 80, align: "center" }, |
|
|
|
{ label: "体检类别", prop: "medicalTypeId", minWidth: 80, align: "center" }, |
|
|
|
{ label: "人员类别", prop: "personnelTypeId", minWidth: 80, align: "center" }, |
|
|
|
{ label: "职务", prop: "jobPost", minWidth: 80, align: "center" }, |
|
|
|
{ label: "职称", prop: "jobTitle", minWidth: 80, align: "center" }, |
|
|
|
{ label: "介绍人", prop: "salesman", minWidth: 80, align: "center" }, |
|
|
|
{ label: "是否VIP", prop: "isVip", minWidth: 80, align: "center" }, |
|
|
|
{ label: "登记人", prop: "creatorName", minWidth: 80, align: "center" }, |
|
|
|
{ label: "登记日期", prop: "creationTime", minWidth: 80, align: "center" }, |
|
|
|
{ label: "是否上传", prop: "isUpload", minWidth: 80, align: "center" }, |
|
|
|
], |
|
|
|
|
|
|
|
dom:null, //用于滚动加载数据 |
|
|
|
lazyLoading:false, //是否懒加载中 |
|
|
|
loadOpts:{ |
|
|
|
totalCount:0, |
|
|
|
skipCount:0, |
|
|
|
maxResultCount:100, |
|
|
|
dom: null, //用于滚动加载数据 |
|
|
|
lazyLoading: false, //是否懒加载中 |
|
|
|
loadOpts: { |
|
|
|
totalCount: 0, |
|
|
|
skipCount: 0, |
|
|
|
maxResultCount: 100, |
|
|
|
}, |
|
|
|
loadOptsInit:{}, |
|
|
|
loadOptsInit: {}, |
|
|
|
|
|
|
|
}; |
|
|
|
}, |
|
|
|
@ -391,10 +308,10 @@ export default { |
|
|
|
created() { |
|
|
|
//获取用户当前页面的权限 |
|
|
|
let userPriv = window.sessionStorage.getItem('userPriv') |
|
|
|
if(userPriv) this.pagePriv.privs = deepCopy(getPagePriv(this.pagePriv.routeUrlorPageName)) |
|
|
|
if (userPriv) this.pagePriv.privs = deepCopy(getPagePriv(this.pagePriv.routeUrlorPageName)) |
|
|
|
|
|
|
|
this.headerCols = deepCopy(this.dropCol) |
|
|
|
this.loadOptsInit = Object.assign({},this.loadOpts) |
|
|
|
this.loadOptsInit = Object.assign({}, this.loadOpts) |
|
|
|
}, |
|
|
|
|
|
|
|
//挂载完成 |
|
|
|
@ -423,7 +340,7 @@ export default { |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
...mapActions(["getCustomerOrgGroup", "getPatientRegisterAbs"]), |
|
|
|
moment,dddw,deepCopy,checkPagePriv, |
|
|
|
moment, dddw, deepCopy, checkPagePriv, |
|
|
|
|
|
|
|
// 扩展定义表格行样式 |
|
|
|
handleRowClassName({ row, rowIndex }) { |
|
|
|
@ -464,8 +381,8 @@ export default { |
|
|
|
|
|
|
|
//选中(取消勾选)start ------------------------- |
|
|
|
this.multipleSelection = [] |
|
|
|
this.patientRegister.prList.forEach(e =>{ |
|
|
|
if(e.choosed){ |
|
|
|
this.patientRegister.prList.forEach(e => { |
|
|
|
if (e.choosed) { |
|
|
|
this.multipleSelection.push(deepCopy(e)) |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -493,9 +410,9 @@ export default { |
|
|
|
return this.$peisAPI.printPre(JSON.stringify(toOutShell)); |
|
|
|
} |
|
|
|
}) |
|
|
|
.then(res =>{ |
|
|
|
console.log('this.$peisAPI.printPre',res) |
|
|
|
if(JSON.parse(res).code < 0){ |
|
|
|
.then(res => { |
|
|
|
console.log('this.$peisAPI.printPre', res) |
|
|
|
if (JSON.parse(res).code < 0) { |
|
|
|
this.$message.warning(JSON.parse(res).message); |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -507,18 +424,18 @@ export default { |
|
|
|
|
|
|
|
this.elProgress.display = true; |
|
|
|
this.elProgress.percentage = 0; |
|
|
|
let resPrintData,resPeisAPI,resPrintTimes; |
|
|
|
let resPrintData, resPeisAPI, resPrintTimes; |
|
|
|
|
|
|
|
for(let i=0;i<this.multipleSelection.length;i++){ |
|
|
|
for (let i = 0; i < this.multipleSelection.length; i++) { |
|
|
|
try { |
|
|
|
resPrintData = await postapi(`/api/app/printreport/getpatientregisterguidereport?PatientRegisterId=${this.multipleSelection[i].id}`) |
|
|
|
if(resPrintData.code == -1) continue |
|
|
|
if (resPrintData.code == -1) continue |
|
|
|
toOutShell.ReportTable = resPrintData.data |
|
|
|
resPeisAPI = await this.$peisAPI.print(JSON.stringify(toOutShell)); |
|
|
|
if (JSON.parse(resPeisAPI).code < 0) continue |
|
|
|
resPrintTimes = postapi("api/app/patientregister/updatepatientregisterguideprinttimesmany",[this.multipleSelection[i].id]); |
|
|
|
if(resPrintTimes.code == -1) continue |
|
|
|
lfind = arrayExistObj(this.patientRegister.prList,"id",this.multipleSelection[i].id); |
|
|
|
resPrintTimes = postapi("api/app/patientregister/updatepatientregisterguideprinttimesmany", [this.multipleSelection[i].id]); |
|
|
|
if (resPrintTimes.code == -1) continue |
|
|
|
lfind = arrayExistObj(this.patientRegister.prList, "id", this.multipleSelection[i].id); |
|
|
|
if (lfind > -1) { |
|
|
|
if (this.patientRegister.prList[lfind].guidePrintTimes) { |
|
|
|
this.patientRegister.prList[lfind].guidePrintTimes = |
|
|
|
@ -557,9 +474,9 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//设置新增/编辑的form数据 |
|
|
|
setForm(formData){ |
|
|
|
setForm(formData) { |
|
|
|
this.patientRegister.patientRegisterRd = deepCopy(formData) |
|
|
|
if(!this.patientRegister.patientRegisterRd.id){ |
|
|
|
if (!this.patientRegister.patientRegisterRd.id) { |
|
|
|
this.patientRegister.patientRegisterRd.customerOrgId = this.patientRegister.query.customerOrgId |
|
|
|
} |
|
|
|
}, |
|
|
|
@ -571,7 +488,7 @@ export default { |
|
|
|
// 按住了shift键 |
|
|
|
if (this.window.shift) { |
|
|
|
//清除所有选择 |
|
|
|
this.patientRegister.prList.forEach((e,index) => { |
|
|
|
this.patientRegister.prList.forEach((e, index) => { |
|
|
|
e.choosed = false; |
|
|
|
e.index = index; |
|
|
|
}); |
|
|
|
@ -579,7 +496,7 @@ export default { |
|
|
|
if (this.startPoint == -1) { |
|
|
|
this.patientRegister.prList[row.index].choosed = true; |
|
|
|
this.startPoint = row.index; |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
if (this.startPoint > row.index) { |
|
|
|
for (let i = row.index; i <= this.startPoint; i++) { |
|
|
|
this.patientRegister.prList[i].choosed = true; |
|
|
|
@ -590,20 +507,20 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}else if (this.window.ctrl) { // 按住了ctrl 键 |
|
|
|
} else if (this.window.ctrl) { // 按住了ctrl 键 |
|
|
|
this.patientRegister.prList[row.index].choosed = true; |
|
|
|
if (this.startPoint == -1){ |
|
|
|
if (this.startPoint == -1) { |
|
|
|
this.startPoint = row.index; |
|
|
|
} |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
// 未按住了ctrl 、shift 键 |
|
|
|
//清除所有选择 |
|
|
|
console.log("清除所有选择"); |
|
|
|
this.patientRegister.prList.forEach((e,index) => { |
|
|
|
this.patientRegister.prList.forEach((e, index) => { |
|
|
|
e.choosed = false; |
|
|
|
e.index = index; |
|
|
|
}); |
|
|
|
console.log(this.patientRegister.prList,row.index); |
|
|
|
console.log(this.patientRegister.prList, row.index); |
|
|
|
console.log(this.patientRegister.prList[row.index].choosed); |
|
|
|
|
|
|
|
this.patientRegister.prList[row.index].choosed = true; |
|
|
|
@ -611,16 +528,16 @@ export default { |
|
|
|
} |
|
|
|
|
|
|
|
//选中了多个点编辑时,排序最前的作为当前选中的 |
|
|
|
console.log('row.index <= this.startPoint',row.index,this.startPoint) |
|
|
|
console.log('row.index <= this.startPoint', row.index, this.startPoint) |
|
|
|
let lfind = -1 |
|
|
|
for(let i=0;i<this.patientRegister.prList.length;i++){ |
|
|
|
if(this.patientRegister.prList[i].choosed){ |
|
|
|
for (let i = 0; i < this.patientRegister.prList.length; i++) { |
|
|
|
if (this.patientRegister.prList[i].choosed) { |
|
|
|
lfind = i |
|
|
|
break |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(lfind > -1){ |
|
|
|
if (lfind > -1) { |
|
|
|
// 弹出编辑框,只有在编辑框显示时,才去触发获取数据 |
|
|
|
this.dataTransOpts.tableS.patient_register.id = this.patientRegister.prList[lfind].id |
|
|
|
// this.getCustomerOrgGroup(this.patientRegister.prList[lfind].customerOrgParentId); |
|
|
|
@ -644,7 +561,7 @@ export default { |
|
|
|
|
|
|
|
//体检次数 相关操作 |
|
|
|
btnAdd() { |
|
|
|
if(!this.peisid || this.peisid == 'null'){ |
|
|
|
if (!this.peisid || this.peisid == 'null') { |
|
|
|
this.$message.warning("该用户未选归属体检中心,不能执行此操作!"); |
|
|
|
return |
|
|
|
} |
|
|
|
@ -676,17 +593,17 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
//刷新或添加列表数据 |
|
|
|
refreshRegister(patientRegister){ |
|
|
|
console.log('编辑/新增的 form :',patientRegister) |
|
|
|
refreshRegister(patientRegister) { |
|
|
|
console.log('编辑/新增的 form :', patientRegister) |
|
|
|
}, |
|
|
|
|
|
|
|
//批量正式登记 |
|
|
|
btnAddBatch(){ |
|
|
|
btnAddBatch() { |
|
|
|
let patientRegisterIds = [] |
|
|
|
//取消勾选,换成选择的方式 start |
|
|
|
this.multipleSelection = []; |
|
|
|
this.patientRegister.prList.forEach((e) => { |
|
|
|
if (e.choosed && e.completeFlag == '0'){ |
|
|
|
if (e.choosed && e.completeFlag == '0') { |
|
|
|
this.multipleSelection.push(e); |
|
|
|
patientRegisterIds.push(e.id) |
|
|
|
} |
|
|
|
@ -699,17 +616,17 @@ export default { |
|
|
|
} |
|
|
|
let completeFlag = '1' |
|
|
|
let body = { completeFlag, patientRegisterIds } |
|
|
|
postapi('/api/app/patientregister/updatepatientregistercompleteflagormedicalstartdate',body) |
|
|
|
.then(res =>{ |
|
|
|
if(res.code != -1){ |
|
|
|
postapi('/api/app/patientregister/updatepatientregistercompleteflagormedicalstartdate', body) |
|
|
|
.then(res => { |
|
|
|
if (res.code != -1) { |
|
|
|
console.log('操作成功!') |
|
|
|
patientRegisterIds.forEach(e => { |
|
|
|
let lfind = arrayExistObj(this.patientRegister.prList,'id',e) |
|
|
|
if(lfind > -1) this.patientRegister.prList[lfind].completeFlag = completeFlag |
|
|
|
let lfind = arrayExistObj(this.patientRegister.prList, 'id', e) |
|
|
|
if (lfind > -1) this.patientRegister.prList[lfind].completeFlag = completeFlag |
|
|
|
}); |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(err =>{ |
|
|
|
.catch(err => { |
|
|
|
this.$message.error(`操作失败 ${err}`); |
|
|
|
}); |
|
|
|
}, |
|
|
|
@ -717,7 +634,7 @@ export default { |
|
|
|
// 单个编辑 |
|
|
|
btnEdit() { |
|
|
|
// if (!this.patientRegister.patientRegisterRd.id) { |
|
|
|
if (!this.dataTransOpts.tableS.patient_register.id ) { |
|
|
|
if (!this.dataTransOpts.tableS.patient_register.id) { |
|
|
|
this.$message.warning("请选择要操作的记录"); |
|
|
|
return; |
|
|
|
} |
|
|
|
@ -730,25 +647,25 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//新增或编辑后选中记录 |
|
|
|
async closeDialogPR(){ |
|
|
|
async closeDialogPR() { |
|
|
|
// 如果 dataTransOpts.tableS.patient_register.id 为空(未增加),则不做处理 |
|
|
|
if(!this.dataTransOpts.tableS.patient_register.id) return |
|
|
|
if (!this.dataTransOpts.tableS.patient_register.id) return |
|
|
|
|
|
|
|
// 刷新列表(并选中当前新增或编辑的行记录) |
|
|
|
this.patientRegister.prList.forEach(e =>{ |
|
|
|
this.patientRegister.prList.forEach(e => { |
|
|
|
e.choosed = false |
|
|
|
}) |
|
|
|
let res = await postapi(`/api/app/patientregister/getinfoorpatient?PatientRegisterId=${this.dataTransOpts.tableS.patient_register.id}`) |
|
|
|
if(res.code != 1) return |
|
|
|
if (res.code != 1) return |
|
|
|
|
|
|
|
this.patientRegister.prList.forEach(e => { |
|
|
|
e.choosed = false |
|
|
|
}); |
|
|
|
let lfind = arrayExistObj(this.patientRegister.prList,'id',this.dataTransOpts.tableS.patient_register.id) |
|
|
|
if(lfind > -1){ |
|
|
|
objCopy(res.data,this.patientRegister.prList[lfind]) |
|
|
|
let lfind = arrayExistObj(this.patientRegister.prList, 'id', this.dataTransOpts.tableS.patient_register.id) |
|
|
|
if (lfind > -1) { |
|
|
|
objCopy(res.data, this.patientRegister.prList[lfind]) |
|
|
|
this.patientRegister.prList[lfind].choosed = true |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
lfind = this.patientRegister.prList.length |
|
|
|
this.patientRegister.prList.push(res.data) |
|
|
|
this.patientRegister.prList[lfind].index = lfind |
|
|
|
@ -756,7 +673,7 @@ export default { |
|
|
|
} |
|
|
|
|
|
|
|
// 刷新 register_asbitem 表记录 |
|
|
|
if(lfind > -1){ |
|
|
|
if (lfind > -1) { |
|
|
|
this.dataTransOpts.refresh.register_asbitem.M++ |
|
|
|
// setTimeout(() => { |
|
|
|
// this.$refs['info'].setCurrentRow(currentRow) |
|
|
|
@ -786,8 +703,8 @@ export default { |
|
|
|
|
|
|
|
//选中(取消勾选)start ------------------------- |
|
|
|
this.multipleSelection = [] |
|
|
|
this.patientRegister.prList.forEach(e =>{ |
|
|
|
if(e.choosed){ |
|
|
|
this.patientRegister.prList.forEach(e => { |
|
|
|
if (e.choosed) { |
|
|
|
this.multipleSelection.push(deepCopy(e)) |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -815,9 +732,9 @@ export default { |
|
|
|
}); |
|
|
|
}) |
|
|
|
.then((res) => { |
|
|
|
if(res.code != -1){ |
|
|
|
if (res.code != -1) { |
|
|
|
console.log("操作成功"); |
|
|
|
arrayReduce(this.patientRegister.prList,this.multipleSelection,'id=id') |
|
|
|
arrayReduce(this.patientRegister.prList, this.multipleSelection, 'id=id') |
|
|
|
this.setForm(this.patientRegister.patientRegisterRdInit) |
|
|
|
this.getPatientRegisterAbs(); |
|
|
|
} |
|
|
|
@ -832,25 +749,25 @@ export default { |
|
|
|
|
|
|
|
//查询 |
|
|
|
async Query() { |
|
|
|
this.loadOpts = Object.assign(this.loadOpts,this.loadOptsInit) |
|
|
|
this.loadOpts = Object.assign(this.loadOpts, this.loadOptsInit) |
|
|
|
await this.getPrList() |
|
|
|
}, |
|
|
|
|
|
|
|
//数据量多时,滚动加载 |
|
|
|
async load(){ |
|
|
|
async load() { |
|
|
|
this.loadOpts.skipCount++ |
|
|
|
await this.getPrList() |
|
|
|
}, |
|
|
|
|
|
|
|
// 获取列表数据 |
|
|
|
async getPrList(){ |
|
|
|
async getPrList() { |
|
|
|
|
|
|
|
if(this.loadOpts.skipCount != 0 && this.loadOpts.skipCount*this.loadOpts.maxResultCount >= this.loadOpts.totalCount) return |
|
|
|
console.log('getPrList',this.loadOpts) |
|
|
|
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 |
|
|
|
skipCount: this.loadOpts.skipCount, |
|
|
|
maxResultCount: this.loadOpts.maxResultCount |
|
|
|
}; |
|
|
|
|
|
|
|
console.log(`this.patientRegister.query`, this.patientRegister.query); |
|
|
|
@ -862,9 +779,9 @@ export default { |
|
|
|
// body.customerOrgId = this.patientRegister.query.customerOrgId; |
|
|
|
// } |
|
|
|
if (this.patientRegister.query.customerOrgId) body.customerOrgId = this.patientRegister.query.customerOrgId; |
|
|
|
if(this.patientRegister.query.customerOrgId |
|
|
|
if (this.patientRegister.query.customerOrgId |
|
|
|
&& this.patientRegister.query.customerOrgId != this.dict.personOrgId |
|
|
|
&& this.patientRegister.query.customerOrgRegister.id){ |
|
|
|
&& this.patientRegister.query.customerOrgRegister.id) { |
|
|
|
body.customerOrgRegisterId = this.patientRegister.query.customerOrgRegister.id |
|
|
|
} |
|
|
|
|
|
|
|
@ -919,24 +836,24 @@ export default { |
|
|
|
}); |
|
|
|
|
|
|
|
let res = await postapi("/api/app/patientregister/getlistinfilter", body) |
|
|
|
if(res.code != -1){ |
|
|
|
if (res.code != -1) { |
|
|
|
// 刷新最大记录数 |
|
|
|
this.loadOpts.totalCount = res.data.totalCount |
|
|
|
let curLoad = res.data.items |
|
|
|
let oldCount = 0 |
|
|
|
|
|
|
|
if(body.skipCount == 0){ //查询 |
|
|
|
if (body.skipCount == 0) { //查询 |
|
|
|
this.patientRegister.prList = []; |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
// 懒加载 ,原数据集不用清空 |
|
|
|
oldCount = this.patientRegister.prList.length |
|
|
|
} |
|
|
|
curLoad.forEach((e,index) =>{ |
|
|
|
this.patientRegister.prList.push(Object.assign({index:Number(oldCount)+Number(index),choosed:false},e)) |
|
|
|
curLoad.forEach((e, index) => { |
|
|
|
this.patientRegister.prList.push(Object.assign({ index: Number(oldCount) + Number(index), choosed: false }, e)) |
|
|
|
}) |
|
|
|
|
|
|
|
//如果 有选中 记录,则刷新其对应的组合项目 |
|
|
|
if(this.dataTransOpts.tableS.patient_register.id){ |
|
|
|
if (this.dataTransOpts.tableS.patient_register.id) { |
|
|
|
this.dataTransOpts.refresh.register_asbitem.M++ |
|
|
|
} |
|
|
|
} |
|
|
|
@ -944,18 +861,18 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//滚动加载数据 |
|
|
|
scrollFull(){ |
|
|
|
scrollFull() { |
|
|
|
this.dom = this.$refs['info'].bodyWrapper |
|
|
|
console.log('this.dom',this.dom) |
|
|
|
console.log('this.dom', this.dom) |
|
|
|
|
|
|
|
this.dom.addEventListener('scroll',async () => { |
|
|
|
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){ |
|
|
|
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)){ |
|
|
|
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{ |
|
|
|
} else { |
|
|
|
this.lazyLoading = true |
|
|
|
await this.load() |
|
|
|
this.lazyLoading = false |
|
|
|
@ -978,35 +895,35 @@ export default { |
|
|
|
let row = { ...this.rClickRow }; |
|
|
|
let items = [] //菜单项 |
|
|
|
|
|
|
|
if(checkPagePriv(this.pagePriv.privs,'发送检验申请')) |
|
|
|
if (checkPagePriv(this.pagePriv.privs, '发送检验申请')) |
|
|
|
items.push({ |
|
|
|
label: "发送检验申请", |
|
|
|
onClick: () => { |
|
|
|
this.lisRequest(row.id); |
|
|
|
}, |
|
|
|
}) |
|
|
|
if(checkPagePriv(this.pagePriv.privs,'预览检验条码')) |
|
|
|
if (checkPagePriv(this.pagePriv.privs, '预览检验条码')) |
|
|
|
items.push({ |
|
|
|
label: "预览检验条码", |
|
|
|
onClick: () => { |
|
|
|
this.lisPrint(row.id, "0002", true); |
|
|
|
}, |
|
|
|
}) |
|
|
|
if(checkPagePriv(this.pagePriv.privs,'打印检验条码')) |
|
|
|
if (checkPagePriv(this.pagePriv.privs, '打印检验条码')) |
|
|
|
items.push({ |
|
|
|
label: "打印检验条码", |
|
|
|
onClick: () => { |
|
|
|
this.lisPrint(row.id, "0002", false); |
|
|
|
}, |
|
|
|
}) |
|
|
|
if(checkPagePriv(this.pagePriv.privs,'预览Pacs条码')) |
|
|
|
if (checkPagePriv(this.pagePriv.privs, '预览Pacs条码')) |
|
|
|
items.push({ |
|
|
|
label: "预览Pacs条码", |
|
|
|
onClick: () => { |
|
|
|
this.pacsPrint(row.id, "0004", true); |
|
|
|
}, |
|
|
|
}) |
|
|
|
if(checkPagePriv(this.pagePriv.privs,'打印Pacs条码')) |
|
|
|
if (checkPagePriv(this.pagePriv.privs, '打印Pacs条码')) |
|
|
|
items.push({ |
|
|
|
label: "打印Pacs条码", |
|
|
|
onClick: () => { |
|
|
|
@ -1065,7 +982,7 @@ export default { |
|
|
|
}); |
|
|
|
//取消勾选,换成选择的方式 end |
|
|
|
|
|
|
|
if(this.multipleSelection.length < 1){ |
|
|
|
if (this.multipleSelection.length < 1) { |
|
|
|
this.$message.warning("请选择要操作的记录") |
|
|
|
return |
|
|
|
} |
|
|
|
@ -1302,17 +1219,17 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//通用导出 |
|
|
|
btnExport(elId){ |
|
|
|
btnExport(elId) { |
|
|
|
// 获取HTML元素(表格) |
|
|
|
// let table = document.getElementById(elId); //.cloneNode(true) |
|
|
|
this.$nextTick(() => { |
|
|
|
let refsTable = this.$refs[elId] //.cloneNode(true) true |
|
|
|
let table = document.getElementById(elId) |
|
|
|
console.log('table,refsTable',table,refsTable) |
|
|
|
console.log('table,refsTable', table, refsTable) |
|
|
|
|
|
|
|
let tableData = table.innerHTML |
|
|
|
let fileName = moment(new Date()).format('yyyyMMDDHHmmss') |
|
|
|
let blob = new Blob([tableData],{type:"text/plain;charset=utf-8"}); |
|
|
|
let blob = new Blob([tableData], { type: "text/plain;charset=utf-8" }); |
|
|
|
|
|
|
|
FileSaver.saveAs(blob, fileName + '.xls'); |
|
|
|
|
|
|
|
@ -1345,13 +1262,13 @@ export default { |
|
|
|
|
|
|
|
//监听事件 |
|
|
|
watch: { |
|
|
|
"patientRegister.query.customerOrgId":{ |
|
|
|
"patientRegister.query.customerOrgId": { |
|
|
|
// immediate: true, // 立即执行 |
|
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
|
handler(newVal,oldVal){ |
|
|
|
handler(newVal, oldVal) { |
|
|
|
//console.log('watch:patientRegister.query.customerOrgId:',newVal,oldVal) |
|
|
|
// 单位变化时,清除当前列表信息 |
|
|
|
if(newVal && newVal != oldVal){ |
|
|
|
if (newVal && newVal != oldVal) { |
|
|
|
this.patientRegister.prList = [] |
|
|
|
this.dataTransOpts.tableM.register_asbitem = [] |
|
|
|
} |
|
|
|
@ -1394,5 +1311,4 @@ export default { |
|
|
|
.btnClass { |
|
|
|
width: 100px; |
|
|
|
} |
|
|
|
|
|
|
|
</style> |