diff --git a/src/components/patientRegister/PatientRegisterEdit.vue b/src/components/patientRegister/PatientRegisterEdit.vue
index 751cf1f..042b3fd 100644
--- a/src/components/patientRegister/PatientRegisterEdit.vue
+++ b/src/components/patientRegister/PatientRegisterEdit.vue
@@ -1227,7 +1227,7 @@ export default {
// console.log('body',body)
// Invalid date
- delete body.registerManType;
+ delete body.registerManType;
delete body.patientRegisterNo;
delete body.medicalTimes;
// delete body.completeFlag;
@@ -1299,7 +1299,7 @@ export default {
this.form.id = res.data.id
this.dataTransOpts.tableS.patient_register = deepCopy(res.data)
delete this.dataTransOpts.tableS.patient_register.registerCheckAsbitems
-
+
this.dataTransOpts.tableM.register_check_asbitem = deepCopy(res.data.registerCheckAsbitems)
// //触发已选组合项目保存
// this.prAsbOpraOpts.formId = res.data.id
@@ -1632,30 +1632,42 @@ export default {
return
}
- try {
- let res = await proApi.getPrAsb(this.form.id)
- if (res.code == -1) {
- this.$message.warning(`操作失败,原因:${res.message}`)
- return
- }
- } catch (error) {
- this.$message.warning(`操作失败,原因:${error}`)
+ let chargeMoney = Number(0)
+ //支付方式,比如是0自费、2免费、1单位支付
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ if (e.payTypeFlag == '0' && e.isCharge == 'N') chargeMoney += Number(e.total)
+ });
+ if (chargeMoney == 0) {
+ this.$message.warning({ showClose: true, message: '没有可收费的记录!' })
return
}
- this.dialogWin.charge = true
+
+ // try {
+ // let res = await proApi.getPrAsb(this.form.id)
+ // if (res.code == -1) {
+ // this.$message.warning(`操作失败,原因:${res.message}`)
+ // return
+ // }
+ // } catch (error) {
+ // this.$message.warning(`操作失败,原因:${error}`)
+ // return
+ // }
+
+
//多次重复点击时,刷新处理
this.chargePatientRegisterNo = patientRegisterNo
setTimeout(() => {
this.dataTransOpts.refresh.charge.S++
- }, 20)
+ }, 10)
+ this.dialogWin.charge = true
},
//关闭收费窗口时,刷新收费状态信息
closeDialogCharge() {
// this.prAsbOpraOpts.prAsbQuery++
- this.dataTransOpts.refresh.register_check_asbitem.M++
+ this.dataTransOpts.refresh.register_check_asbitem.D++
},
//触发人员信息保存(更新)
diff --git a/src/components/patientRegister/PatientRegisterEditItemBatch.vue b/src/components/patientRegister/PatientRegisterEditItemBatch.vue
index 73078dd..2aee035 100644
--- a/src/components/patientRegister/PatientRegisterEditItemBatch.vue
+++ b/src/components/patientRegister/PatientRegisterEditItemBatch.vue
@@ -55,13 +55,16 @@
删除全部
- 全个人支付
+ 全个人支付
- 全单位支付
+ 全单位支付
- 全赠送
+ 全赠送
@@ -112,7 +115,7 @@ export default {
asbitemsTemp: [], //删除或增加项目临时用
asbitemCurr: {}, //当前选中要删除的项目(批量调整)
},
- asbitemBatchInit:{},
+ asbitemBatchInit: {},
asbItemQuick: [], //快速选择未过滤前全部项目
quickAsb: [], //可供快速选择的组合项目
@@ -258,8 +261,7 @@ export default {
//批量调整项目(确定按钮)
async asbitemBatchHandle() {
- let msg = "",
- body = {};
+ let msg = "", body = {};
if (this.asbitemBatch.asbitemsTemp.length == 0) {
this.$message.warning("没有选择组合项目,不可执行此操作!");
return;
@@ -275,36 +277,63 @@ export default {
return;
}
- let createRegisterAsbitemDtos = deepCopy(
+ let registerCheckAsbitems = deepCopy(
this.asbitemBatch.asbitemsTemp
);
- createRegisterAsbitemDtos.forEach((e) => {
- delete e.asbitemName;
- return e;
- });
+ // createRegisterAsbitemDtos.forEach((e) => {
+ // delete e.asbitemName;
+ // return e;
+ // });
+
this.elProgress.display = true;
this.elProgress.percentage = 0;
+ let isContinue = true // 遇到错误是否继续
for (let i = 0; i < this.multipleSelection.length; i++) {
- createRegisterAsbitemDtos.forEach((e) => {
- e.patientRegisterId = this.multipleSelection[i].id;
- return e;
- });
+ if (!isContinue) break;
+ // createRegisterAsbitemDtos.forEach((e) => {
+ // e.patientRegisterId = this.multipleSelection[i].id;
+ // return e;
+ // });
+ // body = {
+ // medicalCenterId: this.multipleSelection[i].medicalCenterId,
+ // createRegisterAsbitemDtos,
+ // }; // 旧参数
+
body = {
- medicalCenterId: this.multipleSelection[i].medicalCenterId,
- createRegisterAsbitemDtos,
- };
+ patientRegisterId: this.multipleSelection[i].id,
+ registerCheckAsbitems
+ }
+
+
try {
- await postapi(
- "/api/app/registerasbitem/createregisterasbitemincustomerorgmany",
- body
- );
- } catch (error) {
- console.log("批量增加项目错误,原因:", error);
+ //旧 /api/app/registerasbitem/createregisterasbitemincustomerorgmany
+ let res = await postapi("/api/PatientRegister/BatchAddAsbitems", body);
+ if (res.code == -1) {
+ try {
+ await this.$confirm(`人员 ${this.multipleSelection[i].patientName} 增加项目失败, 是否继续操作其他人员?`, "提示", {
+ confirmButtonText: "是",
+ cancelButtonText: "否",
+ type: "warning",
+ })
+ } catch (error) {
+ console.log(error) // 取消
+ isContinue = false;
+ }
+ }
+ } catch (err) {
+ try {
+ await this.$confirm(`人员 ${this.multipleSelection[i].patientName} 增加项目失败, 是否继续操作其他人员?`, "提示", {
+ confirmButtonText: "是",
+ cancelButtonText: "否",
+ type: "warning",
+ })
+ } catch (error) {
+ console.log(error) // 取消
+ isContinue = false;
+ }
}
- this.elProgress.percentage = Math.floor(
- ((i + 1) * 100) / this.multipleSelection.length
- );
+ this.elProgress.percentage = Math.floor(((i + 1) * 100) / this.multipleSelection.length);
}
} else {
// {
@@ -342,8 +371,9 @@ export default {
}
}
- console.log("操作成功!");
this.dialogWin.PatientRegisterEditItemBatch = false;
+
+ this.elProgress.display = false;
// 操作成功后,刷新列表
this.patientRegister.query.times++
},
@@ -369,7 +399,7 @@ export default {
// deep: true, // 深度监听复杂类型内变化
handler(newVal, oldVal) {
console.log(`watch: 刷新在用组合项目 newVal: ${newVal} oldVal:${oldVal}`)
- if(newVal != oldVal) this.dictInit()
+ if (newVal != oldVal) this.dictInit()
}
},
},
diff --git a/src/components/patientRegister/PatientRegisterList.vue b/src/components/patientRegister/PatientRegisterList.vue
index de53a7e..a16d89f 100644
--- a/src/components/patientRegister/PatientRegisterList.vue
+++ b/src/components/patientRegister/PatientRegisterList.vue
@@ -975,9 +975,9 @@ export default {
if (this.multipleSelection.length < 1) {
this.$message.info("请选择要操作的记录!");
return;
- }
- this.dialogWin.PatientRegisterEditGroupBatch = true;
+ }
this.dataTransOpts.plus.PatientRegisterEditGroupBatch++
+ this.dialogWin.PatientRegisterEditGroupBatch = true;
},
@@ -1000,9 +1000,9 @@ export default {
return
}
- this.dialogWin.PatientRegisterEditItemBatch = true;
- this.dataTransOpts.plus.PatientRegisterEditItemBatch++
-
+ this.dataTransOpts.plus.PatientRegisterEditItemBatch++ //如果放在弹窗显示后面,在首次加载子组件时,会触发两次数据处理
+ this.dialogWin.PatientRegisterEditItemBatch = true;
+
},
//检验申请