|
|
|
@ -6,19 +6,20 @@ |
|
|
|
:height="window.pageHeight < 600 ? 172 : Math.floor((window.pageHeight - 342) * 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"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="completeFlag" label="体检进度"> |
|
|
|
<!-- 取消勾选,改为选中 |
|
|
|
<el-table-column type="selection" width="40"/> |
|
|
|
--> |
|
|
|
<el-table-column prop="completeFlag" label="体检进度" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ ldddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="guidePrintTimes" label="打印" width="50"> |
|
|
|
<el-table-column prop="guidePrintTimes" label="打印" width="50" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<i class="el-icon-printer" v-if="scope.row.guidePrintTimes > 0" style="font-size: 24px;color: green;"></i> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="isLock" label="锁住"> |
|
|
|
<el-table-column prop="isLock" label="锁住" width="50" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ scope.row.isLock == "Y" ? "是" : "否" }}</div> |
|
|
|
</template> |
|
|
|
@ -33,17 +34,17 @@ |
|
|
|
<div>{{ scope.row.customerOrgParentName ? scope.row.customerOrgName : "" }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="patientName" label="姓名" /> |
|
|
|
<el-table-column prop="sexId" label="性别"> |
|
|
|
<el-table-column prop="patientName" label="姓名" width="80" align="center"/> |
|
|
|
<el-table-column prop="sexId" label="性别" width="50" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ ldddw(dict.sex, "id", scope.row.sexId, "displayName") }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="age" label="年龄" /> |
|
|
|
<el-table-column prop="patientRegisterNo" label="条码号" width="150" /> |
|
|
|
<el-table-column prop="patientNo" label="档案号" /> |
|
|
|
<el-table-column prop="medicalTimes" label="体检次数"></el-table-column> |
|
|
|
<el-table-column label="分组/套餐" width="150"> |
|
|
|
<el-table-column prop="age" label="年龄" width="50" align="center"/> |
|
|
|
<el-table-column prop="patientRegisterNo" label="条码号" width="150" align="center"/> |
|
|
|
<el-table-column prop="patientNo" label="档案号" align="center"/> |
|
|
|
<el-table-column prop="medicalTimes" label="体检次数" width="80" align="center"></el-table-column> |
|
|
|
<el-table-column label="分组/套餐" width="150" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId"> |
|
|
|
{{ ldddw(dict.medicalPackage, "id", scope.row.medicalPackageId, "displayName") }} |
|
|
|
@ -53,15 +54,15 @@ |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="nationId" label="民族"> |
|
|
|
<el-table-column prop="nationId" label="民族" width="50" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div> |
|
|
|
{{ ldddw(dict.nation, "nationId", scope.row.nationId, "displayName") }} |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="idNo" label="身份证" width="150" /> |
|
|
|
<el-table-column prop="birthDate" label="出生日期" width="100"> |
|
|
|
<el-table-column prop="idNo" label="身份证" width="150" align="center"/> |
|
|
|
<el-table-column prop="birthDate" label="出生日期" width="80" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div v-if="scope.row.birthDate"> |
|
|
|
{{ lmoment(scope.row.birthDate, "yyyy-MM-DD") }} |
|
|
|
@ -69,12 +70,12 @@ |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="email" label="邮箱" width="180" /> |
|
|
|
<el-table-column prop="mobileTelephone" label="手机" width="100" /> |
|
|
|
<el-table-column prop="mobileTelephone" label="手机" width="100" align="center"/> |
|
|
|
<el-table-column prop="telephone" label="电话" width="100" /> |
|
|
|
<el-table-column prop="address" label="地址" width="300" /> |
|
|
|
<el-table-column prop="medicalCardNo" label="体检卡号" /> |
|
|
|
<el-table-column prop="jobCardNo" label="工卡号" /> |
|
|
|
<el-table-column prop="maritalStatusId" label="婚姻状况"> |
|
|
|
<el-table-column prop="maritalStatusId" label="婚姻状况" width="80" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div> |
|
|
|
{{ ldddw(dict.maritalStatus, "id", scope.row.maritalStatusId, "displayName") }} |
|
|
|
@ -98,18 +99,18 @@ |
|
|
|
<el-table-column prop="jobPost" label="职务" /> |
|
|
|
<el-table-column prop="jobTitle" label="职称" /> |
|
|
|
<el-table-column prop="salesman" label="介绍人" /> |
|
|
|
<el-table-column prop="isVip" label="是否VIP"> |
|
|
|
<el-table-column prop="isVip" label="是否VIP" width="80" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ scope.row.isVip == "Y" ? "是" : "否" }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="creatorName" label="登记人" /> |
|
|
|
<el-table-column prop="creationTime" label="登记日期" width="100"> |
|
|
|
<el-table-column prop="creatorName" label="登记人" align="center"/> |
|
|
|
<el-table-column prop="creationTime" label="登记日期" width="90" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ lmoment(scope.row.creationTime, "yyyy-MM-DD") }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="isUpload" label="是否上传"> |
|
|
|
<el-table-column prop="isUpload" label="是否上传" width="80" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ scope.row.isUpload == "Y" ? "是" : "否" }}</div> |
|
|
|
</template> |
|
|
|
@ -163,9 +164,11 @@ |
|
|
|
<div class="listBtn"> |
|
|
|
<el-button type="" class="btnClass commonbutton" @click="openCamera" icon="el-icon-camera">拍照</el-button> |
|
|
|
</div> |
|
|
|
<!-- |
|
|
|
<div class="listBtn"> |
|
|
|
<el-button type="" class="btnClass commonbutton">健康档案</el-button> |
|
|
|
</div> |
|
|
|
--> |
|
|
|
<div class="listBtn"> |
|
|
|
<el-button type="" class="btnClass commonbutton" @click="btnGroupBatch">调整分组</el-button> |
|
|
|
</div> |
|
|
|
@ -178,9 +181,11 @@ |
|
|
|
<div class="listBtn"> |
|
|
|
<el-button type="" class="btnClass commonbutton" @click="guidePrint('0001', true)">指引单预览</el-button> |
|
|
|
</div> |
|
|
|
<!-- |
|
|
|
<div class="listBtn"> |
|
|
|
<el-button type="" class="btnClass commonbutton" @click="rowSelected(patientRegister.prList)">选中</el-button> |
|
|
|
</div> |
|
|
|
--> |
|
|
|
</div> |
|
|
|
|
|
|
|
<!-- 体检人员登记 --> |
|
|
|
@ -230,7 +235,7 @@ |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 批量调整分组 --> |
|
|
|
<!-- 批量调整项目 --> |
|
|
|
<el-dialog title="批量调整项目" :visible.sync="dialogAsbitem" width="600px" height="800" :append-to-body="true" |
|
|
|
:close-on-click-modal="false"> |
|
|
|
<div> |
|
|
|
@ -305,6 +310,12 @@ |
|
|
|
</span> |
|
|
|
</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"> |
|
|
|
<ElProgressOCX /> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<script> |
|
|
|
@ -318,11 +329,15 @@ import PatientRegisterEdit from "../../components/patientRegister/PatientRegiste |
|
|
|
import Camera from "../../components/patientRegister/Camera.vue"; |
|
|
|
import PatientRegisterAsbItem from "../../components/patientRegister/patientRegisterAsbItem.vue"; |
|
|
|
|
|
|
|
|
|
|
|
import ElProgressOCX from "../../components/report/ElProgressOCX.vue"; |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { |
|
|
|
PatientRegisterEdit, |
|
|
|
Camera, |
|
|
|
PatientRegisterAsbItem, |
|
|
|
ElProgressOCX, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
@ -374,7 +389,7 @@ export default { |
|
|
|
this.quickAsb = this.dict.asbItemAll; |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
...mapState(["window", "dict", "patientRegister", "customerOrg"]), |
|
|
|
...mapState(["window", "dict","elProgress","patientRegister", "customerOrg"]), |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
...mapActions(["getCustomerOrgGroup", "getPatientRegisterAbs"]), |
|
|
|
@ -382,7 +397,7 @@ export default { |
|
|
|
|
|
|
|
handleRowClassName({ row, rowIndex }) { |
|
|
|
// highLightBg 为 'selected'的高亮 |
|
|
|
console.log(rowIndex, row) |
|
|
|
//console.log(rowIndex, row) |
|
|
|
//return row.highLightBg == 'selected' ? 'high-light-bg' : ''; |
|
|
|
if (row.choosed) { |
|
|
|
return 'current-row'; |
|
|
|
@ -400,6 +415,10 @@ export default { |
|
|
|
|
|
|
|
// 打印指引单(isPreview) |
|
|
|
async guidePrint(ReportCode, isPreview) { |
|
|
|
if(!this.$peisAPI) { |
|
|
|
this.$message.info("此功能,需要在壳客户端才可运行!") |
|
|
|
return |
|
|
|
} |
|
|
|
let token = localStorage.getItem('token'); |
|
|
|
let user = localStorage.getItem('user'); |
|
|
|
let toOutShell = { |
|
|
|
@ -674,10 +693,8 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//查询 |
|
|
|
async query() { |
|
|
|
async Query() { |
|
|
|
this.patientRegister.prList = []; |
|
|
|
|
|
|
|
|
|
|
|
let body = {} |
|
|
|
|
|
|
|
console.log(`this.patientRegister.query`, this.patientRegister.query) |
|
|
|
@ -748,7 +765,7 @@ export default { |
|
|
|
|
|
|
|
//右击菜单 |
|
|
|
onCellRightClick(row, column) { |
|
|
|
this.rClickRow = { ...row }; //右击的行 |
|
|
|
this.rClickRow = { ...row }; //右击的行记录 |
|
|
|
this.rClickColumn = { ...column }; //右击的列(预留) |
|
|
|
console.log(row, column.property); |
|
|
|
}, |
|
|
|
@ -805,9 +822,16 @@ export default { |
|
|
|
btnGroupBatch() { |
|
|
|
let customerOrgId = this.patientRegister.query.customerOrgId; |
|
|
|
if (!customerOrgId) { |
|
|
|
alert("请选择单位或个人"); |
|
|
|
alert("请选择单位"); |
|
|
|
return; |
|
|
|
} |
|
|
|
//取消勾选,换成选择的方式 start |
|
|
|
this.multipleSelection = [] |
|
|
|
this.patientRegister.prList.forEach(e => { |
|
|
|
if(e.choosed) this.multipleSelection.push(e) |
|
|
|
}); |
|
|
|
//取消勾选,换成选择的方式 end |
|
|
|
|
|
|
|
if (this.multipleSelection.length < 1) { |
|
|
|
this.$message.info("请勾选要操作的人员!"); |
|
|
|
return; |
|
|
|
@ -841,7 +865,7 @@ export default { |
|
|
|
} |
|
|
|
this.$message.success("操作成功!"); |
|
|
|
this.dialogGroup = false; |
|
|
|
this.query(); |
|
|
|
this.Query(); |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
@ -913,9 +937,17 @@ export default { |
|
|
|
asbBatch() { |
|
|
|
let customerOrgId = this.patientRegister.query.customerOrgId; |
|
|
|
if (!customerOrgId) { |
|
|
|
alert("请选择单位或个人"); |
|
|
|
alert("请选择单位"); |
|
|
|
return; |
|
|
|
} |
|
|
|
//取消勾选,换成选择的方式 start |
|
|
|
this.multipleSelection = [] |
|
|
|
this.patientRegister.prList.forEach(e => { |
|
|
|
if(e.choosed) this.multipleSelection.push(e) |
|
|
|
}); |
|
|
|
//取消勾选,换成选择的方式 end |
|
|
|
|
|
|
|
|
|
|
|
this.dialogAsbitem = true; |
|
|
|
//供快速选择的组合项目 |
|
|
|
this.dict.asbItemQuick = [...this.dict.asbItemAll]; |
|
|
|
@ -950,6 +982,7 @@ export default { |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
//批量调整项目 |
|
|
|
async asbitemBatchHandle() { |
|
|
|
let msg = '', body = {}; |
|
|
|
if (this.asbitemBatch.asbitemsTemp.length == 0) { |
|
|
|
@ -982,12 +1015,14 @@ export default { |
|
|
|
// } |
|
|
|
// ] |
|
|
|
// } |
|
|
|
let createRegisterAsbitemDtos = [...this.asbitemBatch.asbitemsTemp]; |
|
|
|
let createRegisterAsbitemDtos = deepCopy(this.asbitemBatch.asbitemsTemp); |
|
|
|
|
|
|
|
createRegisterAsbitemDtos.forEach(e => { |
|
|
|
delete e.asbitemName; |
|
|
|
return e; |
|
|
|
}); |
|
|
|
this.elProgress.display = true |
|
|
|
this.elProgress.percentage = 0 |
|
|
|
for (let i = 0; i < this.multipleSelection.length; i++) { |
|
|
|
createRegisterAsbitemDtos.forEach(e => { |
|
|
|
e.patientRegisterId = this.multipleSelection[i].id; |
|
|
|
@ -1002,7 +1037,9 @@ export default { |
|
|
|
} catch (error) { |
|
|
|
console.log('批量增加项目错误,原因:', error); |
|
|
|
} |
|
|
|
this.elProgress.percentage = Math.floor((i+1)*100/this.multipleSelection.length) |
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
// { |
|
|
|
// isDeleteGroup: 'N', |
|
|
|
@ -1015,6 +1052,8 @@ export default { |
|
|
|
} else { |
|
|
|
body.isDeleteGroup = 'N'; |
|
|
|
} |
|
|
|
this.elProgress.display = true |
|
|
|
this.elProgress.percentage = 0 |
|
|
|
for (let i = 0; i < this.multipleSelection.length; i++) { |
|
|
|
|
|
|
|
this.asbitemBatch.asbitemsTemp.forEach(e => { |
|
|
|
@ -1029,12 +1068,13 @@ export default { |
|
|
|
} catch (error) { |
|
|
|
console.log('批量删除项目错误,原因:', error); |
|
|
|
} |
|
|
|
this.elProgress.percentage = Math.floor((i+1)*100/this.multipleSelection.length) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
this.$message.success("操作成功!"); |
|
|
|
this.dialogAsbitem = false; |
|
|
|
this.query(); |
|
|
|
this.Query(); |
|
|
|
}, |
|
|
|
|
|
|
|
//检验申请 |
|
|
|
@ -1082,7 +1122,10 @@ export default { |
|
|
|
|
|
|
|
//检验条码打印 |
|
|
|
lisPrint(prId, ReportCode, isPreview) { |
|
|
|
|
|
|
|
if(!this.$peisAPI) { |
|
|
|
this.$message.info("此功能,需要在壳客户端才可运行!") |
|
|
|
return |
|
|
|
} |
|
|
|
let token = localStorage.getItem('token'); |
|
|
|
let user = localStorage.getItem('user'); |
|
|
|
let toOutShell = { |
|
|
|
@ -1141,7 +1184,10 @@ export default { |
|
|
|
|
|
|
|
//pacs条码打印 |
|
|
|
pacsPrint(prId, ReportCode, isPreview) { |
|
|
|
|
|
|
|
if(!this.$peisAPI) { |
|
|
|
this.$message.info("此功能,需要在壳客户端才可运行!") |
|
|
|
return |
|
|
|
} |
|
|
|
let token = localStorage.getItem('token'); |
|
|
|
let user = localStorage.getItem('user'); |
|
|
|
let toOutShell = { |
|
|
|
@ -1205,7 +1251,7 @@ export default { |
|
|
|
"patientRegister.query.times"(newVal, oldVal) { |
|
|
|
if (newVal != oldVal) { |
|
|
|
//alert('触发查询事件') |
|
|
|
this.query(); |
|
|
|
this.Query(); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
|