From 6cbd5cb709d8fffed436411ddb2682e70751938e Mon Sep 17 00:00:00 2001
From: pengjun <158915633@qq.com>
Date: Mon, 10 Jun 2024 15:34:19 +0800
Subject: [PATCH] booking
---
.../patientRegister/PatientRegisterEdit.vue | 86 +++++++++++++++++--
src/components/webBooking/WebBooking.vue | 69 +++++++++------
src/store/index.js | 3 +-
3 files changed, 127 insertions(+), 31 deletions(-)
diff --git a/src/components/patientRegister/PatientRegisterEdit.vue b/src/components/patientRegister/PatientRegisterEdit.vue
index 9a6cae4..50f7269 100644
--- a/src/components/patientRegister/PatientRegisterEdit.vue
+++ b/src/components/patientRegister/PatientRegisterEdit.vue
@@ -19,7 +19,7 @@
拍照
+
@@ -1723,7 +1723,7 @@ export default {
}
}
}
- );
+ );
});
},
@@ -2407,11 +2407,87 @@ export default {
},
// 显示预约
- btnWebBooking(){
+ btnWebBooking() {
+
+ this.dataTransOpts.tableS.appoint_patient_register = {}
+ this.dataTransOpts.tableM.appoint_register_asbitem = []
+
this.dataTransOpts.plus.WebBooking++
this.dialogWin.WebBooking = true
},
+ // 关闭预约窗口
+ async close_dialogWin_WebBooking() {
+ console.log('this.dataTransOpts.tableS.appoint_patient_register',this.dataTransOpts.tableS.appoint_patient_register)
+ console.log('this.dataTransOpts.tableM.appoint_register_asbitem',this.dataTransOpts.tableM.appoint_register_asbitem)
+ // 没有选中网上预约记录,直接返回,不做任何处理
+ let appoint_patient_register = this.dataTransOpts.tableS.appoint_patient_register
+ if (!appoint_patient_register.appointPatientRegisterId) return
+
+
+
+ // 新增
+ this.dataTransOpts.tableS.patient_register.id = ''
+ await this.initFormData(this.dataTransOpts.tableS.patient_register.id)
+ // "appointPatientRegisterId": "string",
+ // "personId": "string",
+ // "personName": "string",
+ // "idNo": "string",
+ // "sexId": "string",
+ // "sexName": "string",
+ // "maritalStatusId": "string",
+ // "maritalStatusName": "string",
+ // "customerOrgId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "customerOrgName": "string",
+ // "childCustomerOrgName": "string",
+ // "customerOrgGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "customerOrgGroupName": "string",
+ // "medicalPackageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "medicalPackageName": "string",
+ // "completeFlag": "string",
+ // "appointDate": "2024-06-09T11:46:34.962Z",
+ // "remark": "string",
+ // "medicalCenterId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "customerOrgRegisterId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "pregnantFlag": "string",
+ // "pregnantFlagName": "string",
+ // "height": 0,
+ // "weight": 0
+ Object.assign(this.form, appoint_patient_register,
+ { patientName: appoint_patient_register.personName,
+ mobileTelephone: '',
+ completeFlag:'1'
+ }
+ )
+ // 明细必填项
+ // "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "asbitemId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
+ // "standardPrice": 0,
+ // "chargePrice": 0,
+ // "payTypeFlag": "string",
+ // "isCharge": "string",
+ // "amount": 0
+
+ // 预约明细数据
+ // "appointRegisterAsbitemId": "00000000-0000-0000-0000-000000000000",
+ // "asbitemId": "3a126b34-f6f0-56a1-e899-a092874acde7",
+ // "asbitemName": "腹部平片(立位)",
+ // "itemTypeId": "3a126ac6-2fbf-ca50-82a4-73dcc5a5028b",
+ // "itemTypeName": "放射科",
+ // "appointPatientRegisterId": "3a12ebf4-565a-dbc4-4f2d-d72cd3050cab",
+ // "standardPrice": 45.00,
+ // "chargePrice": 30.50,
+ // "payTypeFlag": "\u0000",
+ // "isCharge": "N",
+ // "amount": 1,
+ // "isInMedicalPackage": "N",
+ // "itemTypeDisplayOrder": 28,
+ // "displayOrder": 1
+ this.dataTransOpts.tableM.register_check_asbitem = deepCopy(this.dataTransOpts.tableM.appoint_register_asbitem)
+
+ this.changeIdNo() // 触发身份证查询档案号
+ },
+
btnLabel() {
if (!this.form.id) {
this.$message.warning({ showClose: true, message: '人员信息尚未保存!' })
diff --git a/src/components/webBooking/WebBooking.vue b/src/components/webBooking/WebBooking.vue
index 5f1e4e5..68199d3 100644
--- a/src/components/webBooking/WebBooking.vue
+++ b/src/components/webBooking/WebBooking.vue
@@ -42,24 +42,20 @@
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
+ {{ scope.row.customerOrgGroupName ? scope.row.customerOrgGroupName:scope.row.medicalPackageName }}
+
+
+
@@ -99,9 +95,9 @@ export default {
completeFlag: "0"
},
pickerOptions: {
- disabledDate(time) {
- return time.getTime() > Date.now();
- },
+ // disabledDate(time) {
+ // return time.getTime() > Date.now();
+ // },
shortcuts: [{
text: '今天',
onClick(picker) {
@@ -187,7 +183,6 @@ export default {
if (lres.code >= -1) {
let idNos = parsIcCardtoLocal(lres.data, this.dict.sex, this.dict.nation)
this.query.idNo = idNos.IDCode
-
// this.form.patientName = idNos.Name
// this.form.birthDate = idNos.birthDate
// this.form.sexId = idNos.sexId
@@ -198,7 +193,7 @@ export default {
// this.peoplePhoto = 'data:image/bmp;base64,' + idNos.Photo
// this.patientRegister.photo = 'data:image/bmp;base64,' + idNos.Photo
this.btnQuery()
-
+
} else {
this.$message.error({ showClose: true, message: `${lres.message}` })
}
@@ -207,14 +202,25 @@ export default {
// 查询
btnQuery() {
+ if(!(this.query.appointStartDate && this.query.appointStopDate)){
+ this.$message.error({ showClose: true, message: "必须选择日期段!" })
+ return
+ }
+ if(!(this.query.idNo || this.query.mobilePhone)){
+ this.$message.error({ showClose: true, message: "手机号或身份证号必须填写一项!" })
+ return
+ }
+
this.currRowData = {}
this.tableData = []
this.tableDataDetails = []
- this.query.appointStartDate = "2024-01-01 00:00:00"
- this.query.appointStopDate = "2024-07-01 00:00:00"
+ let body = deepCopy(this.query)
- postapi('/api/app/AppointPatientRegister/GetListByFilter', this.query)
+ body.appointStartDate = this.query.appointStartDate + " 00:00:00"
+ body.appointStopDate = this.query.appointStopDate + " 23:59:59"
+
+ postapi('/api/app/AppointPatientRegister/GetListByFilter', body)
.then(res => {
if (res.code > -1) {
this.tableData = res.data
@@ -232,20 +238,33 @@ export default {
rowClick(row) {
this.currRowData = row
+ this.tableDataDetails = []
+ postapi('/api/app/AppointPatientRegister/GetAppointRegisterAsbitemListById', {
+ thirdInterFaceId: this.query.thirdInterfaceId,
+ appointPatientRegisterId: row.appointPatientRegisterId
+ }).then(res => {
+ if(res.code > -1){
+ this.tableDataDetails = res.data
+ }
+ })
+
},
// 点击确定
btnOk() {
- if (!this.currRowData.id) {
+ if (!this.currRowData.appointPatientRegisterId) {
this.$message.warning({ showClose: true, message: "请选择预约的记录" })
return
}
-
+ this.dataTransOpts.tableS.appoint_patient_register = deepCopy(this.currRowData)
+ this.dataTransOpts.tableM.appoint_register_asbitem = deepCopy(this.tableDataDetails)
this.dialogWin.WebBooking = false
},
// 点击关闭
btnClose() {
+ this.dataTransOpts.tableS.appoint_patient_register = {}
+ this.dataTransOpts.tableM.appoint_register_asbitem = []
this.dialogWin.WebBooking = false
},
diff --git a/src/store/index.js b/src/store/index.js
index 65c6dc3..e12f613 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -377,7 +377,7 @@ export default new Vuex.Store({
isPatientSymptomsUpdate: "N", // 症状
isOccSummary: 'N', // 修改总检结论
},
-
+ appoint_patient_register:{}, // 预约登记数据
},
//表当前数据(多条记录 M--more)
@@ -406,6 +406,7 @@ export default new Vuex.Store({
patient_symptom: [], // 病人症状
patient_past_medical_history: [], // 既往病史
patient_occupational_medical_history: [], // 职业病史
+ appoint_register_asbitem:[], // 预约所选组合项目
},
plus: {
PatientRegisterEditQuery: 0, // 更新查询条件