diff --git a/src/components/customerOrg/customerOrgEdit.vue b/src/components/customerOrg/customerOrgEdit.vue index 5c70e86..c635248 100644 --- a/src/components/customerOrg/customerOrgEdit.vue +++ b/src/components/customerOrg/customerOrgEdit.vue @@ -249,7 +249,8 @@ export default { lastModifierName: "", lastModificationTime: null, salesPerson: "", - salesPersonPhone: "" + salesPersonPhone: "", + medicalTypeId:'' }, //初始化 单位 记录 目前新增与更新是一致 formInit: {}, rules: { diff --git a/src/components/doctorCheck/CheckPicture.vue b/src/components/doctorCheck/CheckPicture.vue index c90e429..7e91457 100644 --- a/src/components/doctorCheck/CheckPicture.vue +++ b/src/components/doctorCheck/CheckPicture.vue @@ -362,17 +362,17 @@ export default { let image = curImag.pictureFilename.indexOf('http') > -1 ? curImag.pictureFilename : (this.sysConfig.pacsApi || this.sysConfig.apiurl) + curImag.pictureFilename; - srcList.push(image) + srcList.push(image + `?r=${Math.random()}`) let lfind = arrayExistObj(oriList, 'id', curImag.id) if (lfind > -1) { for (let i = lfind + 1; i < oriList.length; i++) { let e = oriList[i]; - image = this.imageFilePlus(e.pictureFilename) + image = this.imageFilePlus(e.pictureFilename + `?r=${Math.random()}`) srcList.push(image) } for (let index = 0; index < lfind; index++) { let e = oriList[index]; - image = this.imageFilePlus(e.pictureFilename) + image = this.imageFilePlus(e.pictureFilename + `?r=${Math.random()}`) srcList.push(image) } } diff --git a/src/components/patientRegister/PatientRegisterEdit.vue b/src/components/patientRegister/PatientRegisterEdit.vue index f666cae..683d125 100644 --- a/src/components/patientRegister/PatientRegisterEdit.vue +++ b/src/components/patientRegister/PatientRegisterEdit.vue @@ -1397,6 +1397,13 @@ export default { }) }, + // 根据体检单位ID,获取体检类别 + getMedicalTypeByOrg(orgId){ + return new Promise((resolve, reject) => { + postapi('/api/app/Customerorg/GetMedicalTypeIdByCustomerOrgId') + }) + }, + handleFormData() { return new Promise((resolve, reject) => { // 判断是否职业健康检查 @@ -1477,7 +1484,7 @@ export default { // 如果是个人,则清除分组字典 if (customerOrgParentId == this.dict.personOrgId) { this.patientRegister.customerOrgGroup = [] - } + } if (this.form.customerOrgParentId == this.dict.personOrgId) { this.changeMedicalPackageId() diff --git a/src/components/patientRegister/PatientRegisterList.vue b/src/components/patientRegister/PatientRegisterList.vue index 138d39d..210f81f 100644 --- a/src/components/patientRegister/PatientRegisterList.vue +++ b/src/components/patientRegister/PatientRegisterList.vue @@ -429,7 +429,7 @@ - +
{{ qrCode.barcodeNo + ' ' + qrCode.patientName }}
@@ -673,7 +673,8 @@ export default { merge_lis_pacs_label: "0", //默认0 检验检查条码合并 0:不合并,1:合并 qrCode: { winDisplay: false, // 页面显示 - url: 'https://ccjktj.cn:5081/', //二维码 地址 + url: 'https://ccjktj.cn:5081/', //二维码 前辍地址 + personUrl:'', // 个人云胶片地址 barcodeNo: '条码号', patientName: '姓 名' }, @@ -2368,7 +2369,7 @@ export default { //let canvas = this.$refs.canvas; let url = `${this.qrCode.url}?reportparam=条码号&mrn=条码号` //`https://ccjktj.cn:5081/?reportparam=条码号&mrn=条码号` if (row?.patientRegisterNo) { - url = `${this.qrCode.url}?reportparam=${row.checkRequestNo}&mrn=${row.checkRequestNo}` + url = `${this.qrCode.url}?reportparam=${row.patientRegisterNo}&mrn=${row.patientRegisterNo}` this.qrCode.barcodeNo = row.patientRegisterNo } if (row?.patientName) { @@ -2395,7 +2396,7 @@ export default { QRCode.toDataURL(url, { errorCorrectionLevel: 'H' }) .then(res => { console.log(res) - this.qrCode.url = res + this.qrCode.personUrl = res this.qrCode.winDisplay = true }) .catch(err => { diff --git a/src/components/patientRegister/patientRegisterQuery.vue b/src/components/patientRegister/patientRegisterQuery.vue index 6be6fbd..0665481 100644 --- a/src/components/patientRegister/patientRegisterQuery.vue +++ b/src/components/patientRegister/patientRegisterQuery.vue @@ -68,11 +68,15 @@ + +
次数 diff --git a/src/views/charge/charge.vue b/src/views/charge/charge.vue index f89e5c4..dd66d25 100644 --- a/src/views/charge/charge.vue +++ b/src/views/charge/charge.vue @@ -13,28 +13,44 @@
- 登记日期: + {{ dateTypeName }}日期
-
- 查询 +
+ 条码号 + +
+
+ 档案号 +
-
- - 未收费 - 已收费 - 已退费 - -
- 发票号 - +
+
+
+ 姓名 + +
+ + 未收费 + 已收费 + 已退费 + +
+ 发票号 + +
+
+
+ 查询
@@ -45,7 +61,22 @@ - + + + + + + + + + + - - - - - - + + + + + + @@ -78,25 +109,26 @@
+
- +
条码号 - +
档案号 - +
姓名 - +
@@ -333,7 +365,7 @@ import moment from 'moment'; import { mapState, mapActions } from "vuex"; import { getapi, postapi, putapi, deletapi } from "@/api/api"; -import { tcdate, dddw, arrayExistObj,arrayExistObjPos, deepCopy } from "../../utlis/proFunc"; +import { tcdate, dddw, arrayExistObj, arrayExistObjPos, deepCopy } from "../../utlis/proFunc"; import PatientRegisterQuery from "../../components/patientRegister/patientRegisterQuery.vue"; import PatientRegisterRefuseList from "../../components/patientRegister/PatientRegisterRefuseList.vue"; @@ -359,6 +391,13 @@ export default { invoiceNo: '', patientName: '', },//查询条件 + + info:{ + patientRegisterNo: '', + patientNo: '', + patientName:'' + }, + patientList: [],//人员列表 formInit: {}, form: { @@ -444,19 +483,37 @@ export default { //挂载完成 mounted() { - //this.enterToQuery() - - if (this.patientRegisterNo) { - this.Query('patientRegisterNo'); - } else { - this.Query(); + this.enterToQuery() + + if (this.patientRegisterNo){ + this.query.patientRegisterNo = this.patientRegisterNo + this.query.chargeFlag = 'N' } + + this.btnQuery(); }, computed: { ...mapState(["pickerOptions", "window", "dict", "dataTransOpts", "patientRegister", "customerOrg"]), + dateTypeName() { + let ret = '登记' + switch (this.query.chargeFlag) { + case 'N': + break; + case 'Y': + ret = '收费' + break; + case 'B': + ret = '退费' + break; + default: + break; + } + return ret + }, + tableListHeight() { let tempH = this.window.pageHeight < 600 ? 600 : this.window.pageHeight return tempH - 175 - 30 - 35 @@ -474,8 +531,8 @@ export default { dddw, moment, //查询人员列表数据 - Query(type) { - let url = '', ltype = type, body = {}; + btnQuery() { + let url = '', body = {}; // { @@ -488,36 +545,28 @@ export default { // "startDate": "string", // "endDate": "string", // "maxResultCount": 0 - // } - - if (this.patientRegisterNo) { - this.query.patientRegisterNo = this.patientRegisterNo - ltype = 'patientRegisterNo' - } - + // } - console.log('query', ltype, this.query, this.patientRegisterNo); + //console.log('query', this.query); - if (ltype == 'patientRegisterNo') { - if (!this.query.patientRegisterNo) return; + if(this.query.patientRegisterNo){ body = { patientRegisterNo: this.query.patientRegisterNo }; - } else if (ltype == 'patientNo') { - if (!this.query.patientNo) return; + }else if(this.query.patientNo){ body = { patientNo: this.query.patientNo }; - } else if (ltype == 'invoiceNo' && this.query.chargeFlag != 'N') { - if (!this.query.invoiceNo) return; + }else if(this.query.invoiceNo && this.query.chargeFlag != 'N'){ body = { invoiceNo: this.query.invoiceNo }; - } else { + }else{ if (this.query.startDate && this.query.endDate) { body.startDate = moment(this.query.startDate).format("yyyy-MM-DD") - body.endDate = moment(this.query.endDate).format("yyyy-MM-DD") + body.endDate = moment(this.query.endDate).format("yyyy-MM-DD") if (body.startDate > body.endDate) { this.$message.warning("起始日期不能大于截止日期,数据校验不通过!") return } + if(this.query.patientName) body.patientName = this.query.patientName } } - + switch (this.query.chargeFlag) { case 'Y': //已收费 @@ -533,6 +582,14 @@ export default { break; } + // 查询前,清除其他收费或人员信息数据 + this.info.patientName = '' + this.info.patientNo = '' + this.info.patientRegisterNo = '' + this.form = Object.assign({}, this.formInit) + this.chargePays = [] + this.asbItemsForFee = [] + // const loading = this.$loading({ // lock: true, // text: 'Loading', @@ -570,9 +627,10 @@ export default { //人员列表点击 rowClick(row) { - this.query.patientRegisterNo = row.patientRegisterNo; - this.query.patientName = row.patientName; - this.query.patientNo = row.patientNo; + + this.info.patientRegisterNo = row.patientRegisterNo; + this.info.patientName = row.patientName; + this.info.patientNo = row.patientNo; this.chargePays = deepCopy(this.chargePaysInit); //console.log(this.chargePays, this.chargePaysInit); @@ -593,10 +651,8 @@ export default { this.form.invoiceOrgName = row.patientName; } - //获取个人会员卡信息 - this.getCardRegister(row.idNo); - - + //获取个人会员卡信息 (废弃) + //this.getCardRegister(row.idNo); switch (this.query.chargeFlag) { case 'N': @@ -624,7 +680,7 @@ export default { this.asbItemsForFee = res.data; for (let i = this.asbItemsForFee.length - 1; i >= 0; i--) { - if (this.asbItemsForFee[i].isCharge == 'Y' || this.asbItemsForFee[i].payTypeFlag !== '0' ) { + if (this.asbItemsForFee[i].isCharge == 'Y' || this.asbItemsForFee[i].payTypeFlag !== '0') { this.asbItemsForFee.splice(i, 1); continue; } @@ -671,8 +727,8 @@ export default { }, // 清除选的卡 - brushCard(index){ - this.chargePays[index].cardNo = '' + brushCard(index) { + this.chargePays[index].cardNo = '' this.chargePays[index].cardRegisterId = '' this.chargePays[index].chargeMoney = 0 @@ -683,7 +739,7 @@ export default { this.inputMoney() }, - + // 弹出卡号查询窗口 getCardId(index) { @@ -723,29 +779,29 @@ export default { // 确定选中卡记录 btnOkCard() { // 单次收费不允重复同一张卡 - let lfind = arrayExistObj(this.chargePays,'cardRegisterId',this.cardChoosed.id) - if(lfind > -1){ - this.$message.warning({showClose:true,message:'单次收费不允重复同一张卡!'}) + let lfind = arrayExistObj(this.chargePays, 'cardRegisterId', this.cardChoosed.id) + if (lfind > -1) { + this.$message.warning({ showClose: true, message: '单次收费不允重复同一张卡!' }) return } // 单次收费不允出现不同折扣的充值卡 let diffDiscount = false //默认相同折扣 let preDiscount = 100 - let curDiscount = this.cardChoosed.discount||100 + let curDiscount = this.cardChoosed.discount || 100 this.chargePays.forEach(e => { - if(e.payModeId == '05' && e.discount){ - if(Number(e.discount) !== Number(curDiscount)){ + if (e.payModeId == '05' && e.discount) { + if (Number(e.discount) !== Number(curDiscount)) { preDiscount = e.discount diffDiscount = true } } }); // 多张卡时,出现不同折扣,则返回 - if(diffDiscount){ - this.$message.warning({showClose:true,message:`当前所选卡折扣 ${curDiscount} 与 上次所选卡折扣 ${preDiscount} 不同,不可执行此操作`}) + if (diffDiscount) { + this.$message.warning({ showClose: true, message: `当前所选卡折扣 ${curDiscount} 与 上次所选卡折扣 ${preDiscount} 不同,不可执行此操作` }) return } - + this.chargePays[this.cardSeq].cardNo = this.cardChoosed.cardNo + ' 余:' + this.cardChoosed.cardBalance + ' 折:' + curDiscount this.chargePays[this.cardSeq].discount = curDiscount this.chargePays[this.cardSeq].cardBalance = this.cardChoosed.cardBalance @@ -794,10 +850,10 @@ export default { getapi(`/api/app/chargepay/getchargepayinchargeid?ChargeId=${ChargeId}`).then(res => { if (res.code != - 1) { res.data.forEach(e => { - if(curPayModeId != e.payModeId) lfind = -1 + if (curPayModeId != e.payModeId) lfind = -1 lfind++ - console.log('lfind',lfind) - lfind = arrayExistObjPos(this.chargePays, 'payModeId', e.payModeId,lfind); + console.log('lfind', lfind) + lfind = arrayExistObjPos(this.chargePays, 'payModeId', e.payModeId, lfind); if (lfind > - 1) { this.chargePays[lfind].chargeMoney = e.chargeMoney; this.chargePays[lfind].cardRegisterId = e.cardRegisterId; @@ -815,10 +871,10 @@ export default { getapi(`/api/app/chargebackpay/getchargebackpayinchargebackid?ChargeBackId=${ChargeBackId}`).then(res => { if (res.code != - 1) { res.data.forEach(e => { - if(curPayModeId != e.payModeId) lfind = -1 + if (curPayModeId != e.payModeId) lfind = -1 lfind++ - console.log('lfind',lfind) - lfind = arrayExistObjPos(this.chargePays, 'payModeId', e.payModeId,lfind); + console.log('lfind', lfind) + lfind = arrayExistObjPos(this.chargePays, 'payModeId', e.payModeId, lfind); if (lfind > - 1) { this.chargePays[lfind].chargeMoney = e.backMoeny; this.chargePays[lfind].cardRegisterId = e.cardRegisterId; @@ -952,14 +1008,14 @@ export default { unCashTotal += Number(e.chargeMoney); } - if(e.payModeId == '05'){ - if(Number(e.cardBalance) < Number(e.chargeMoney)){ + if (e.payModeId == '05') { + if (Number(e.cardBalance) < Number(e.chargeMoney)) { err = `会员卡【${e.cardNo}】 余额不足` } } }); - if(err){ - this.$message.warning({showClose:true,message:err}) + if (err) { + this.$message.warning({ showClose: true, message: err }) return } this.form.preTotal = cashTotal + unCashTotal @@ -1033,7 +1089,7 @@ export default { if (e.payModeId == '05' && e.chargeMoney) { //console.log(e.payModeId,e.chargeMoney,e.cardRegisterId); if (!e.cardRegisterId) msg = dddw(this.dict.payMode, "id", e.payModeId, "displayName") + '付费,必需选择会员卡号'; - if(Number(e.cardBalance) < Number(e.chargeMoney)) msg = `会员卡【${e.cardNo}】 余额不足` + if (Number(e.cardBalance) < Number(e.chargeMoney)) msg = `会员卡【${e.cardNo}】 余额不足` } else { e.cardRegisterId = null; } @@ -1055,7 +1111,7 @@ export default { this.$message.warning("收费方式合计收款不可小于应收金额!"); return; } - + this.chargePays.forEach(e => { if (e.chargeMoney) { if (e.payModeId == '01') { @@ -1114,22 +1170,22 @@ export default { //console.log('body',body); postapi('/api/app/registerasbitem/registerasbitemcharge', body).then(res => { if (res.code != -1) { - this.form.id = res.data.chargeId; //可防止重复提交收费 + // 壳端 才有打印提示 this.$confirm("操作成功, 是否打印发票?", "提示", { confirmButtonText: "是", cancelButtonText: "否", type: "warning", }).then(() => { - this.chargePrint('0007', false, res.data.chargeId) + this.chargePrint('0007', false, res.data.chargeId) setTimeout(() => { - this.Query(); + this.btnQuery(); }, 1000) }).catch((err) => { if (err == "cancel") { //this.$message.info("已取消删除"); - this.Query(); + this.btnQuery(); } }); } @@ -1207,7 +1263,7 @@ export default { if (res.code != -1) { console.log("操作成功!"); this.form.chargeFlag = '1'; //防止重复提交退费 - this.Query(); + this.btnQuery(); } }); @@ -1448,13 +1504,13 @@ export default { //未收费时 this.chargePaysInit = []; this.dict.payMode.forEach(e => { - if(e.id == '05'){ + if (e.id == '05') { for (let index = 0; index < this.charge_normal_card; index++) { - this.chargePaysInit.push({ chargeId: null, payModeId: e.id, chargeMoney: 0, cardBillId: null, cardRegisterId: '', cardNo: '' }) + this.chargePaysInit.push({ chargeId: null, payModeId: e.id, chargeMoney: 0, cardBillId: null, cardRegisterId: '', cardNo: '' }) } - }else{ + } else { this.chargePaysInit.push({ chargeId: null, payModeId: e.id, chargeMoney: 0, cardBillId: null, cardRegisterId: '', cardNo: '' }) - } + } }); this.chargePays = deepCopy(this.chargePaysInit); } @@ -1486,9 +1542,15 @@ export default { console.log(input.getAttribute('placeholder'), input.value) let placeholder = input.getAttribute('placeholder') switch (placeholder) { + case '条码号': + case '档案号': + case '发票/收据号': + if (input.value) this.btnQuery() + input.select() + break; case '卡号': if (input.value) this.btnQueryCard() - //input.select() + input.select() break; } } @@ -1515,13 +1577,15 @@ export default { //监听事件() watch: { + // 从登记页面,跳至收费页面时,始终默认为未收费方式 "dataTransOpts.refresh.charge.S": { //immediate: true, // 立即执行 // // deep: true, // 深度监听复杂类型内变化 handler(newVal, oldVal) { - console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegisterNo) + console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegisterNo) this.query.patientRegisterNo = this.patientRegisterNo - this.Query("patientRegisterNo") + this.query.chargeFlag = 'N' + this.btnQuery() } }, },