复制新增
@@ -523,7 +531,7 @@ export default {
peisid: null,
peoplePhoto: '',
-
+ preCustomerOrgId:'', // 上一个人的体检单位,只是在本组件点新增时才用到
form: {
registerManType: 'customer', //登记人员类型,客服:customer 医生:doctor 支持在医生诊台处理登记人员
id: "", //id
@@ -552,7 +560,7 @@ export default {
isVip: "N", //vip客户
remark: "", //
isLock: "N", //是否锁住
- completeFlag: "1", //完成标志 0:预登记,1:未检,2:部份已检,3:已总检 【创建编辑时不操作】
+ completeFlag: "1", //完成标志 0:预登记,1:正式登记(未检),2:部份已检,3:已总检 【创建编辑时不操作】
isMedicalStart: "N", //体检开始标志 【创建编辑时不操作】
patientRegisterNo: "", //条码号 【创建编辑时不操作】
medicalTimes: 1, //条码号 【创建编辑时不操作】
@@ -687,8 +695,8 @@ export default {
...mapActions(['getPatientRegisterAbs']),
dddw, moment, checkPagePriv,
- btnTest(){
- console.log('form',this.form)
+ btnTest() {
+ console.log('form', this.form)
},
//数据初始化
dictInit() {
@@ -798,48 +806,58 @@ export default {
// 获取登记信息 初始form表单数据
async initFormData(patientRegisterId) {
-
this.peisid = window.sessionStorage.getItem('peisid');
-
+ this.preCustomerOrgId = this.preCustomerOrgId || this.patientRegister.query.customerOrgId
if (!patientRegisterId) { //添加
objCopy(this.formInit, this.form);
this.form.medicalCenterId = this.peisid; //体检中收
- this.form.customerOrgId = this.patientRegister.query.customerOrgId || this.dict.personOrgId //体检单位
+ this.form.customerOrgId = this.preCustomerOrgId || this.dict.personOrgId //体检单位
this.form.customerOrgParentId = await this.getParentCustomerOrgId(this.form.customerOrgId) //体检父单位
} else {
// let res = await getapi(`/api/app/patient-register/${patientRegisterId}`)
let res = await postapi(`/api/app/patientregister/getinfoorpatient?PatientRegisterId=${patientRegisterId}`)
// this.form = res.data 这种方式,会造成 checkbox 值变化不响应,故取消
- objCopy(res.data,this.form)
+ objCopy(res.data, this.form)
}
this.initBox();
this.getPeoplePhoto(this.form.photo)
+ this.dataTransOpts.refresh.register_check_asbitem.D++ //触发所选组合项目刷新
// 单位/个人 的分组与套餐处理
- await this.changeCustomerOrgId(this.form.customerOrgId)
- this.dataTransOpts.refresh.register_check_asbitem.M++ //触发所选组合项目刷新
-
-
+ this.changeCustomerOrgId(this.form.customerOrgId)
+
},
//选择单位
async changeCustomerOrgId(v) {
+ // console.log('changeCustomerOrgId',v)
let customerOrgId = ""
if (Array.isArray(v) && v.length > 0) {
customerOrgId = v[v.length - 1]
} else {
customerOrgId = v
}
+ this.preCustomerOrgId = customerOrgId
let customerOrgParentId = await this.getParentCustomerOrgId(customerOrgId)
if (customerOrgParentId) {
- if (customerOrgParentId != this.dict.personOrgId) this.getCustomerOrgRegisterList(customerOrgParentId)
+ if (customerOrgParentId == this.dict.personOrgId){
+ this.form.customerOrgRegisterId = "00000000-0000-0000-0000-000000000001"
+ }else{
+ // 获取体检次数
+ this.getCustomerOrgRegisterList(customerOrgParentId)
+ }
// 父单位被更改时,需要触发 修改 分组/套餐
if (this.form.customerOrgParentId != customerOrgParentId) {
this.form.customerOrgGroupId = null
this.form.medicalPackageId = null
+ // 清除套餐分组标识
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ e.isBelongGroupPackage = 'N'
+ });
+
if (customerOrgParentId == this.dict.personOrgId) {
this.patientRegister.customerOrgGroup = []
@@ -863,7 +881,7 @@ export default {
if (!customerOrgId) return customerOrgParentId
if (typeof customerOrgId == 'string') {
try {
- let res = await getapi(`/api/app/customer-org/parent/${this.form.customerOrgId}`)
+ let res = await getapi(`/api/app/customer-org/parent/${customerOrgId}`)
if (res.code != -1) customerOrgParentId = res.data
} catch (error) {
console.log('获取顶级单位ID出错:', error)
@@ -1058,6 +1076,7 @@ export default {
//修改身份证,生成年龄、出生、性别
changeIdNo() {
+ if(!this.form.idNo) return
this.Query(this.form.idNo)
let ret = parseID(this.form.idNo)
if (ret.age != -1) {
@@ -1186,7 +1205,7 @@ export default {
} else {
this.form[type] = 'N';
}
- console.log('Box-type',this.form[type + 'Box'],this.form[type])
+ console.log('Box-type', this.form[type + 'Box'], this.form[type])
},
initBox() {
@@ -1296,7 +1315,7 @@ export default {
return false
}
let body = this.madePrBody()
- body.registerCheckAsbitems = this.dataTransOpts.tableM.register_check_asbitem
+ body.registerCheckAsbitems = deepCopy(this.dataTransOpts.tableM.register_check_asbitem)
if (this.form.id) {
// 更新时,先保存明细,再更新主表
@@ -1309,10 +1328,13 @@ export default {
postapi(`/api/PatientRegister/CreatePatientRegister`, body)
.then(res => {
if (res.code == 1) {
- this.form.id = res.data.id
+ objCopy(res.data,this.form)
+
this.dataTransOpts.tableS.patient_register = deepCopy(res.data)
+
delete this.dataTransOpts.tableS.patient_register.registerCheckAsbitems
+ // 保存成功赋 id 值等
this.dataTransOpts.tableM.register_check_asbitem = deepCopy(res.data.registerCheckAsbitems)
// //触发已选组合项目保存
// this.prAsbOpraOpts.formId = res.data.id
@@ -1327,18 +1349,24 @@ export default {
if (this.patientRegister.photo && this.patientRegister.photo.indexOf("data:image") > -1) savePeoplePhoto(res.data.id, this.patientRegister.photo);
}
}
- );
+ );
});
},
+ // 人员新增
+ btnAdd(){
+ this.dataTransOpts.tableS.patient_register.id = ''
+ this.dataTransOpts.refresh.patient_register.S++
+ },
+
//将现有的数据,复制并展现,但未保存
rdCopy() {
if (!this.form.id) {
this.$message.info("该信息尚未保存,不可执行此操作!");
return;
}
-
+ this.dataTransOpts.tableS.patient_register.id = ''
this.patientRegister.photo = '/pic/Photo.jpg'
this.patientRegister.patientRegisterId = '';
this.form.id = '';
@@ -1348,7 +1376,8 @@ export default {
this.form.medicalTimes = 1;
this.form.patientName = '';
this.form.photo = '';
-
+ this.form.completeFlag = '1'; //
+
// this.patientRegister.patientRegisterAbs.forEach(e => {
// e.id = '';
// e.patientRegisterId = '';
@@ -1356,15 +1385,20 @@ export default {
// e.checkCompleteFlag = '0'
// e.isLock = 'N'
// });
- // 触发明细项目复制
- setTimeout(() => {
- this.prAsbOpraOpts.copyNew++
- }, 20);
+ // 触发明细项目复制
+ // setTimeout(() => {
+ // this.prAsbOpraOpts.copyNew++
+ // }, 10);
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ delete e.id
+ e.patientRegisterId = ''
+ e.isCharge = 'N'
+ e.isLock = 'N'
+ });
// console.log('this.patientRegister.patientRegisterAbs',this.patientRegister.patientRegisterAbs)
this.$message.info("操作成功,请记得点保存");
- this
-
+
},
//删除
@@ -1394,20 +1428,20 @@ export default {
return;
}
if (!this.$peisAPI) {
- this.$message.info({showClose:true,message:"此功能,需要在壳客户端才可运行!"})
+ this.$message.info({ showClose: true, message: "此功能,需要在壳客户端才可运行!" })
return
}
this.$peisAPI.photoGrah()
.then(res => {
- console.log('this.$peisAPI.photoGrah 原始返回结果',res)
+ console.log('this.$peisAPI.photoGrah 原始返回结果', res)
let lres = JSON.parse(res)
if (lres.code == 1) {
let uploadPhoto = {
patientRegisterId: this.form.id,
photo: lres.data.Photo,
};
- this.peoplePhoto = `data:image/${lres.data.PhotoFormat == 'jpg' ? 'jpeg':lres.data.PhotoFormat};base64,${lres.data.Photo}`
- this.patientRegister.photo = `data:image/${lres.data.PhotoFormat == 'jpg' ? 'jpeg':lres.data.PhotoFormat};base64,${lres.data.Photo}`
+ this.peoplePhoto = `data:image/${lres.data.PhotoFormat == 'jpg' ? 'jpeg' : lres.data.PhotoFormat};base64,${lres.data.Photo}`
+ this.patientRegister.photo = `data:image/${lres.data.PhotoFormat == 'jpg' ? 'jpeg' : lres.data.PhotoFormat};base64,${lres.data.Photo}`
return postapi(`/api/app/patient-register/up-load-img`, uploadPhoto)
} else {
this.$message.error("上传照片错误" + lres.code)
diff --git a/src/components/patientRegister/PatientRegisterForChoose.vue b/src/components/patientRegister/PatientRegisterForChoose.vue
index f4bdf40..9226517 100644
--- a/src/components/patientRegister/PatientRegisterForChoose.vue
+++ b/src/components/patientRegister/PatientRegisterForChoose.vue
@@ -171,9 +171,9 @@ export default {
},
props:["params"], // params
data() {
- return {
- patientRegisterId:'', // 选中的体检人员ID
+ return {
patientRegisters:[], //体检人员列表信息
+ tableDataCurrentRow: {}, // 当前被选中的行
};
},
@@ -206,7 +206,7 @@ export default {
// 选中记录
registerRowClick(row){
- this.patientRegisterId = row.id
+ this.tableDataCurrentRow = deepCopy(row)
},
// 双击 选中记录 并关闭窗口
@@ -216,13 +216,14 @@ export default {
},
btnOk(){
- if(!this.patientRegisterId){
+ if(!this.tableDataCurrentRow.id){
this.$message.warning("请选择体检人员!")
return
}
- this.dataTransOpts.tableS.patient_register.id = this.patientRegisterId
+ this.dataTransOpts.tableS.patient_register = deepCopy(this.tableDataCurrentRow)
+ this.dataTransOpts.refresh.patient_register.S++
setTimeout(() => {
- this.dataTransOpts.refresh.patient_register.S++
+ this.tableDataCurrentRow = {}
}, 10);
this.dialogWin.PatientRegisterForChoose = false
},
diff --git a/src/components/patientRegister/PatientRegisterItem.vue b/src/components/patientRegister/PatientRegisterItem.vue
index 5b41a20..c980132 100644
--- a/src/components/patientRegister/PatientRegisterItem.vue
+++ b/src/components/patientRegister/PatientRegisterItem.vue
@@ -3,16 +3,17 @@
项目类别
-
+
+ :height="(window.pageHeight > 700 ? (window.pageHeight - 440) : 260)" @row-dblclick="dbClickChoosedAsb"
+ highlight-current-row @selection-change="handleSelectionChange" size="small"
+ :row-class-name="handleRowClassName" @row-click="chooseAsbItem">
@@ -28,26 +29,30 @@
{{ ldddw(dict.forSex, "id", scope.row.forSexId, "displayName") }}
- -->
+ -->
-
-
添加
+
+ 添加
-
-
全添加
+
+ 全添加
-
-
移除
+
+ 移除
-
-
全移除
+
+ 全移除
-
+
-
+
{{ scope.row.asbitemName }}
@@ -116,13 +121,13 @@
-
+
+
-
+
-
+
@@ -147,11 +152,14 @@
- {{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD'):'' }}
+ {{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD') : '' }}
+
+ {{ asbDesc }}
+
@@ -159,82 +167,84 @@
import moment from 'moment';
import { mapState, mapActions } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
-import { getPagePriv,checkPagePriv, arrayFilter, arrayReduce, arrayExistObj, dddw, deepCopy, tcdate} from "../../utlis/proFunc";
+import { getPagePriv, checkPagePriv, arrayFilter, arrayReduce, arrayExistObj, dddw, deepCopy, tcdate } from "../../utlis/proFunc";
import proApi from "../../utlis/proApi";
export default {
- props: ["prForm","prAsbOpraOpts","triggerHeadSave","refreshFormId"],
+ props: ["prForm", "prAsbOpraOpts", "triggerHeadSave", "refreshFormId"],
data() {
return {
- pagePriv:{
- routeUrlorPageName:'PatientRegisterEdit', //当前页面归属路由或归属页面权限名称
- privs:[] // 页面权限
+ pagePriv: {
+ routeUrlorPageName: 'PatientRegisterEdit', //当前页面归属路由或归属页面权限名称
+ privs: [] // 页面权限
},
- oldFormId:'', //配合登记人员复制新增使用
+ oldFormId: '', //配合登记人员复制新增使用
itemType: [], //项目类别
itemTypeIds: '', //被选中的项目类别ID
- asbItem:[], //左侧显示的未选组合项目
- asbItemAll:[], //所有未选组合项目
+ asbItem: [], //左侧显示的未选组合项目
+ asbItemAll: [], //所有未选组合项目
asbItemChoosed: [], //勾选的 未选组合项目
- startPoint:-1,
+ startPoint: -1,
//patientRegisterAbs:[], //体检人员所选组合项目 放vuex
patientRegisterAbsChoosed: [], //勾选的 体检人员所选组合项目
- PstartPoint:-1,
+ PstartPoint: -1,
//patientRegisterAbsDel: [], //体检人员 待删除的组合项目
- prAsb:[], //当前显示的已选组合项目(新增与编辑的在一起)
- prAsbDels:[], //待提交 删除的组合项目
+ // prAsb:[], //当前显示的已选组合项目(新增与编辑的在一起)
+ // prAsbDels:[], //待提交 删除的组合项目
+
+ groupAsbs: [], //分组包含的项目
+ packageAsbs: [], //套餐包含的项目
- groupAsbs:[], //分组包含的项目
- packageAsbs:[], //套餐包含的项目
-
asbItemId: '',
discount: 100,
total: 0,
totalStand: 0,
quickAsb: [],
- asbItemQuick:[],
+ asbItemQuick: [],
totalFoucs: false, //总价是否获取焦点
discountFoucs: false, //总折扣是否获取焦点
+
+ asbDesc:'', //所选套餐描述
};
},
computed: {
...mapState(["window", "dataTransOpts", "dict", "customerOrg", "patientRegister", "personnelUnit"]),
//是否总检
- isComplete(){
- return this.prForm.completeFlag == '3' ? true:false;
+ isComplete() {
+ return this.prForm.completeFlag == '3' ? true : false;
},
},
- created(){
+ 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.dictInit()
+ this.dictInit()
},
- updated(){
+ updated() {
this.$nextTick(() => {
this.$refs['patientRegister_patientRegisterAbs'].doLayout()
})
},
- mounted() {
+ mounted() {
this.getPrAsb(this.dataTransOpts.tableS.patient_register.id)
},
methods: {
...mapActions(['getCustomerOrgGroup', 'getPatientRegisterAbs']),
- dddw,moment,deepCopy,checkPagePriv,
+ dddw, moment, deepCopy, checkPagePriv,
// 初始化字典信息
- dictInit(){
-
+ dictInit() {
+
// 项目类别 树结构
getapi("/api/app/item-type/by-code-all").then((res) => {
if (res.code != -1) {
@@ -244,8 +254,8 @@ export default {
});
// 获取组合项目
- postapi('/api/app/asbitem/GetBasicList',{isFilterActive:'Y'}).then(res =>{
- if(res.code != -1){
+ postapi('/api/app/asbitem/GetBasicList', { isFilterActive: 'Y' }).then(res => {
+ if (res.code != -1) {
this.asbItem = res.data
this.asbItemAll = res.data
this.asbItemQuick = res.data
@@ -255,25 +265,28 @@ export default {
},
// 获取人员组合项目信息
- async getPrAsb(id){
+ async getPrAsb(id) {
// debugger
// 清空待删除、分组、套餐
- console.log('getPrAsb(id)',`getPrAsb(${id})`)
- this.prAsbDels = []
+ console.log('getPrAsb(id)', `getPrAsb(${id})`)
+ // this.prAsbDels = []
this.groupAsbs = []
this.packageAsbs = []
-
- let result = await proApi.getPrAsb(id)
- this.dataTransOpts.tableM.register_check_asbitem = result.data
- this.refreshAsbitem()
+ if (!id) {
+ this.dataTransOpts.tableM.register_check_asbitem = []
+ } else {
+ let result = await proApi.getPrAsb(id)
+ this.dataTransOpts.tableM.register_check_asbitem = result.data
+ }
+ this.refreshAsbitem()
},
// 复制新增 拷贝明细项目
- async copyNew(){
- if(this.oldFormId){
+ async copyNew() {
+ if (this.oldFormId) {
let result = await proApi.getPrAsb(this.oldFormId)
this.dataTransOpts.tableM.register_check_asbitem = result.data
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
e.id = '';
e.patientRegisterId = '';
e.isCharge = 'N';
@@ -285,18 +298,18 @@ export default {
},
// 刷新未选组合项目
- refreshAsbitem(){
+ refreshAsbitem() {
let asbItemAll = deepCopy(this.asbItemAll)
- let choosedAsb = this.dataTransOpts.tableM.register_check_asbitem.filter(e => {
+ let choosedAsb = this.dataTransOpts.tableM.register_check_asbitem.filter(e => {
return e.checkCompleteFlag == '0' || !(e.checkCompleteFlag)
}) // 如果已经检查,则可以重新选进来(复查)
arrayReduce(asbItemAll, choosedAsb, "id=asbitemId");
- this.changeItemType();
- this.asbItemQuick = deepCopy(asbItemAll);
+ this.changeItemType();
+ this.asbItemQuick = deepCopy(asbItemAll);
this.quickAsb = deepCopy(asbItemAll);
},
-
+
handleRowClassName({ row, rowIndex }) {
if (row.choosed) {
return 'current-row';
@@ -306,16 +319,16 @@ export default {
},
//选择 未选的组合项目
- chooseAsbItem(row){
- this.asbItem.forEach((e,index) => {
- e.index = index;
+ chooseAsbItem(row) {
+ this.asbItem.forEach((e, index) => {
+ e.index = index;
return e
});
// 按住了shift键
- if (this.window.shift) {
+ if (this.window.shift) {
//清除所有选择
this.asbItem.forEach(e => {
- e.choosed = false;
+ e.choosed = false;
return e
});
@@ -338,74 +351,74 @@ export default {
}
// 按住了ctrl 键
- if (this.window.ctrl) {
- console.log('this.window.ctrl',this.window.ctrl,this.asbItem)
+ if (this.window.ctrl) {
+ console.log('this.window.ctrl', this.window.ctrl, this.asbItem)
this.asbItem[row.index].choosed = true;
this.startPoint = row.index;
- return
+ return
}
// 未按住了ctrl 、shift 键
//清除所有选择
//console.log('清除所有选择')
this.asbItem.forEach(e => {
- e.choosed = false;
+ e.choosed = false;
return e
});
this.asbItem[row.index].choosed = true;
- this.startPoint = row.index;
+ this.startPoint = row.index;
},
//选择 已选的组合项目
- removeAsbItem(row){
- this.dataTransOpts.tableM.register_check_asbitem.forEach((e,index) => {
- e.index = index;
+ removeAsbItem(row) {
+ this.dataTransOpts.tableM.register_check_asbitem.forEach((e, index) => {
+ e.index = index;
return e
});
// 按住了shift键
- if (this.window.shift) {
+ if (this.window.shift) {
//清除所有选择
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
- e.choosed = false;
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ e.choosed = false;
return e
});
if (this.PstartPoint == - 1) {
- this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true;
+ this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true;
this.PstartPoint = row.index;
return
}
if (this.PstartPoint > row.index) {
for (let i = row.index; i <= this.PstartPoint; i++) {
- this.dataTransOpts.tableM.register_check_asbitem[i].choosed = true
+ this.dataTransOpts.tableM.register_check_asbitem[i].choosed = true
}
} else if (this.PstartPoint <= row.index) {
for (let i = this.PstartPoint; i <= row.index; i++) {
- this.dataTransOpts.tableM.register_check_asbitem[i].choosed = true
+ this.dataTransOpts.tableM.register_check_asbitem[i].choosed = true
}
}
return
}
// 按住了ctrl 键
- if (this.window.ctrl) {
- console.log('this.window.ctrl',this.window.ctrl,this.dataTransOpts.tableM.register_check_asbitem)
- this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true;
+ if (this.window.ctrl) {
+ console.log('this.window.ctrl', this.window.ctrl, this.dataTransOpts.tableM.register_check_asbitem)
+ this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true;
this.PstartPoint = row.index;
- return
+ return
}
// 未按住了ctrl 、shift 键
//清除所有选择
//console.log('清除所有选择')
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
- e.choosed = false;
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ e.choosed = false;
return e
});
- this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true;
- this.PstartPoint = row.index;
+ this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true;
+ this.PstartPoint = row.index;
},
@@ -414,27 +427,27 @@ export default {
let ret = false
ret = await this.batchAddAsb()
- if(!ret){
- if(msg) this.$message.warning(`组合项目 ${msg} 失败!`)
+ if (!ret) {
+ if (msg) this.$message.warning(`组合项目 ${msg} 失败!`)
return
}
ret = await this.batchDelAsb()
- if(!ret){
- if(msg) this.$message.warning(`组合项目 ${msg} 失败!`)
+ if (!ret) {
+ if (msg) this.$message.warning(`组合项目 ${msg} 失败!`)
return
}
ret = await this.batchEditAsb()
- if(!ret){
- if(msg) this.$message.warning(`组合项目 ${msg} 失败!`)
+ if (!ret) {
+ if (msg) this.$message.warning(`组合项目 ${msg} 失败!`)
return
}
-
- console.log('this.prAsbOpraOpts.formId',this.prAsbOpraOpts.formId)
- if(this.prAsbOpraOpts.formId){
- this.refreshFormId()
- }else{
+
+ console.log('this.prAsbOpraOpts.formId', this.prAsbOpraOpts.formId)
+ if (this.prAsbOpraOpts.formId) {
+ this.refreshFormId()
+ } else {
//触发保存人员基本信息
this.triggerHeadSave()
this.getPrAsb(this.prForm.id)
@@ -448,22 +461,22 @@ export default {
//console.log(this.asbItemChoosed);
},
-
+
// 添加组合项目
///api/app/register-asbitem/many/3fa85f64-5717-4562-b3fc-2c963f66afa6'
- addAbs(asbItemChoosed,oprType) {
+ addAbs(asbItemChoosed, oprType) {
let checked = true
let payTypeFlag = '0' //默认个人支付
-
+
//勾选时不需要此操作 start
- if(oprType && oprType == 'all'){
+ if (oprType && oprType == 'all') {
asbItemChoosed = deepCopy(this.asbItem)
- }else if(oprType && oprType == 'choosed'){
- asbItemChoosed = []
- this.asbItem.forEach(e =>{
- if(e.choosed){
+ } else if (oprType && oprType == 'choosed') {
+ asbItemChoosed = []
+ this.asbItem.forEach(e => {
+ if (e.choosed) {
asbItemChoosed.push(e)
e.choosed = false
}
@@ -500,17 +513,17 @@ export default {
let pojo = {
asbitemId: asbItemChoosed[i].id,
asbitemName: asbItemChoosed[i].displayName,
- patientRegisterId: this.prForm.id||this.dict.personOrgId,
+ patientRegisterId: this.prForm.id || this.dict.personOrgId,
standardPrice: asbItemChoosed[i].price,
chargePrice: asbItemChoosed[i].price,
payTypeFlag,
isCharge: "N",
- checkCompleteFlag:'0',
- discount:100,
+ checkCompleteFlag: '0',
+ discount: 100,
amount: 1,
total: asbItemChoosed[i].price,
- }
- this.dataTransOpts.tableM.register_check_asbitem.push(pojo)
+ }
+ this.dataTransOpts.tableM.register_check_asbitem.push(pojo)
}
this.refreshAsbitem()
@@ -526,15 +539,15 @@ export default {
async batchAddAsb() {
let ret = false
let patientRegisterId = this.prForm.id || this.prAsbOpraOpts.formId
- if(!patientRegisterId){
+ if (!patientRegisterId) {
this.$message.warning("人员基本信息未保存");
return ret
}
let registerAsbitems = []
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
- if(!e.id){
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ if (!e.id) {
registerAsbitems.push({
asbitemId: e.asbitemId,
patientRegisterId,
@@ -548,23 +561,23 @@ export default {
}
})
- if(registerAsbitems.length == 0) return true
+ if (registerAsbitems.length == 0) return true
let body = {
- medicalCenterId:this.prForm.medicalCenterId,
+ medicalCenterId: this.prForm.medicalCenterId,
registerAsbitems,
- isAutoMerger:'Y'
+ isAutoMerger: 'Y'
}
try {
let res = await postapi('/api/app/registerasbitem/createregisterasbitemmany', body)
- if(res.code != -1) ret = true
+ if (res.code != -1) ret = true
} catch (error) {
- console.log('批量添加组合项目失败',error)
+ console.log('批量添加组合项目失败', error)
}
return ret
-
+
},
//批量提交更新组合项目
@@ -573,10 +586,10 @@ export default {
let body = []
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
- if(e.id){
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ if (e.id) {
body.push({
- registerAsbitemId:e.id,
+ registerAsbitemId: e.id,
input: {
chargePrice: e.chargePrice,
payTypeFlag: e.payTypeFlag,
@@ -584,16 +597,16 @@ export default {
amount: e.amount,
groupPackageId: e.groupPackageId
}
- })
+ })
}
})
- if(body.length == 0) return true
+ if (body.length == 0) return true
try {
let res = await postapi(`/api/app/registerasbitem/updatemany`, body)
- if(res.code != -1) ret = true
+ if (res.code != -1) ret = true
} catch (error) {
- console.log('批量提交更新组合项目失败',error)
+ console.log('批量提交更新组合项目失败', error)
}
return ret
},
@@ -601,40 +614,40 @@ export default {
//批量提交删除组合项目
async batchDelAsb() {
let ret = false
- if(this.prAsbDels.length == 0) return true
+ // if(this.prAsbDels.length == 0) return true
- let registerAsbitemIds=[]
+ // let registerAsbitemIds=[]
- this.prAsbDels.forEach(e => {
- registerAsbitemIds.push(e.id)
- })
+ // this.prAsbDels.forEach(e => {
+ // registerAsbitemIds.push(e.id)
+ // })
- console.log(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds})
+ // console.log(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds})
- try {
- let res = await postapi(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds})
- if(res.code != -1) ret = true
- } catch (error) {
- console.log('批量删除组合项目失败',error)
- }
+ // try {
+ // let res = await postapi(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds})
+ // if(res.code != -1) ret = true
+ // } catch (error) {
+ // console.log('批量删除组合项目失败',error)
+ // }
return ret
},
//删除 人员已选中的组合项目
///api/app/register-asbitem/many?RegisterAsbitemIds=3fa85f64-5717-4562-b3fc-2c963f66afa6
- delAbs(absForDel,oprType) {
+ delAbs(absForDel, oprType) {
let chargeComplete = ''
let lfind = -1
let tempRd = {}
//勾选时不需要此操作 start
- if(oprType && oprType == 'all'){
+ if (oprType && oprType == 'all') {
absForDel = deepCopy(this.dataTransOpts.tableM.register_check_asbitem)
- }else if(oprType && oprType == 'choosed'){
- absForDel = []
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e =>{
- if(e.choosed){
+ } else if (oprType && oprType == 'choosed') {
+ absForDel = []
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ if (e.choosed) {
absForDel.push(e)
e.choosed = false
}
@@ -650,14 +663,14 @@ export default {
absForDel.forEach(e => {
// 如果已经收费 或 体检,则不允许删除
if (e.isCharge == 'Y' || (e.checkCompleteFlag && e.checkCompleteFlag != '0')) {
- chargeComplete += e.asbitemName + ','
- }else{
+ chargeComplete += e.asbitemName + ','
+ } else {
lfind = arrayExistObj(this.dataTransOpts.tableM.register_check_asbitem, 'asbitemId', e.asbitemId)
- if(lfind > -1){
- tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(lfind,1)[0])
+ if (lfind > -1) {
+ tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(lfind, 1)[0])
// if(e.id) this.prAsbDels.push(tempRd)
- }
- }
+ }
+ }
})
//刷新
@@ -671,10 +684,10 @@ export default {
//双击删除已选项目
removeAbs(row) {
- if(this.isComplete){
+ if (this.isComplete) {
this.$message.info('人员已总检,不可 添加/删除 组合项目')
return
- }
+ }
this.delAbs([row]);
},
@@ -684,7 +697,7 @@ export default {
let asbItemAll = deepCopy(this.asbItemAll)
let lv = "";
if (typeof this.itemTypeIds == "object") {
- if(this.itemTypeIds.length > 0) lv = this.itemTypeIds[this.itemTypeIds.length - 1];
+ if (this.itemTypeIds.length > 0) lv = this.itemTypeIds[this.itemTypeIds.length - 1];
}
if (lv) {
@@ -695,76 +708,77 @@ export default {
arrayReduce(this.asbItem, this.dataTransOpts.tableM.register_check_asbitem, "id=asbitemId");
},
-
+
//选中 分组 所包含的组合项目
- getGroupAsbs(id){
- if(!id){
+ getGroupAsbs(id) {
+ if (!id) {
this.groupAsbs = []
this.changeGroup(id)
return
}
-
+
getapi(`/api/app/customerorggroupdetail/getcustomerorggroupdetailinasbitem?CustomerOrgGroupId=${id}`)
- .then((res) => {
- if(res.code != -1){
- this.groupAsbs = res.data
- this.changeGroup(id)
- }
- });
-
+ .then((res) => {
+ if (res.code != -1) {
+ this.groupAsbs = res.data
+ this.changeGroup(id)
+ }
+ });
+
},
//选中 套餐 所包含的组合项目
- getPackageAsbs(id){
- if(!id){
+ getPackageAsbs(id) {
+ if (!id) {
this.packageAsbs = []
this.changePackage(id)
return
}
- postapi('/api/app/medicalpackagedetail/getmedicalpackageinasbitem',{medicalPackageId:id})
- .then((res) => {
- if(res.code != -1){
- this.packageAsbs = res.data
- this.changePackage(id)
- }
- });
+ postapi('/api/app/medicalpackagedetail/getmedicalpackageinasbitem', { medicalPackageId: id })
+ .then((res) => {
+ if (res.code != -1) {
+ this.packageAsbs = res.data
+ this.changePackage(id)
+ }
+ });
},
// 更换分组
- changeGroup(newId){
+ changeGroup(newId) {
//已收费项目,不更改收费方式、价格及数量,只更改分组id
let payTypeFlag = '0'
let lfind = -1
let tempRd = {}
- if(!newId){
+ if (!newId) {
this.setGroupPackageNull()
return
}
if (this.prForm.customerOrgId != this.dict.personOrgId) payTypeFlag = '1' //单位支付
- for(let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1;i>-1;i--){
- lfind = arrayExistObj(this.groupAsbs,'asbitemId', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId)
- if(lfind > -1){
+ for (let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1; i > -1; i--) {
+ lfind = arrayExistObj(this.groupAsbs, 'asbitemId', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId)
+ if (lfind > -1) {
//找到了则更新此项目
- tempRd = Object.assign({},this.groupAsbs.splice(lfind,1)[0])
- this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId
- if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y'){
- this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag
- this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.customerOrgGroupDetailAmount
- this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price
- this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.customerOrgGroupDetailPrice
- this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount
+ tempRd = Object.assign({}, this.groupAsbs.splice(lfind, 1)[0])
+ this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId
+ this.dataTransOpts.tableM.register_check_asbitem[i].isBelongGroupPackage = 'Y'
+ if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y') {
+ this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag
+ this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.customerOrgGroupDetailAmount
+ this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price
+ this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.customerOrgGroupDetailPrice
+ this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount
}
- }else{
+ } else {
//没找到则移除此项目
- if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || ( this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')){
- this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null
- }else{
- tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i,1)[0])
+ if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || (this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')) {
+ this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null
+ } else {
+ tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i, 1)[0])
// if(tempRd.id) this.prAsbDels.push(tempRd)
}
}
@@ -772,130 +786,134 @@ export default {
// debugger
//未找到则添加(如果在待删除中找到记录,则待删除中记录移至当前显示记录中来)
- this.groupAsbs.forEach(e =>{
- lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.asbitemId)
- if(lfind > -1){
- tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0],
- {
- groupPackageId:newId,
- standardPrice:e.price,
- chargePrice:e.customerOrgGroupDetailPrice,
- payTypeFlag,
- isCharge: "N",
- discount:e.discount,
- amount:e.customerOrgGroupDetailAmount,
- total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100)/100
- }
- )
- }else{
- tempRd = {
- groupPackageId:newId,
- asbitemId:e.asbitemId,
- asbitemName:e.displayName,
- patientRegisterId:this.prForm.id,
- standardPrice:e.price,
- chargePrice:e.customerOrgGroupDetailPrice,
- payTypeFlag,
- isCharge: "N",
- discount:e.discount,
- amount:e.customerOrgGroupDetailAmount,
- total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100)/100
- }
+ this.groupAsbs.forEach(e => {
+ // lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.asbitemId)
+ // if(lfind > -1){
+ // tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0],
+ // {
+ // groupPackageId:newId,
+ // standardPrice:e.price,
+ // chargePrice:e.customerOrgGroupDetailPrice,
+ // payTypeFlag,
+ // isCharge: "N",
+ // discount:e.discount,
+ // amount:e.customerOrgGroupDetailAmount,
+ // total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100)/100
+ // }
+ // )
+ // }else{
+ tempRd = {
+ groupPackageId: newId,
+ isBelongGroupPackage:'Y',
+ asbitemId: e.asbitemId,
+ asbitemName: e.displayName,
+ patientRegisterId: this.prForm.id,
+ standardPrice: e.price,
+ chargePrice: e.customerOrgGroupDetailPrice,
+ payTypeFlag,
+ isCharge: "N",
+ discount: e.discount,
+ amount: e.customerOrgGroupDetailAmount,
+ total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100) / 100
}
- this.dataTransOpts.tableM.register_check_asbitem.push(tempRd)
+ // }
+ this.dataTransOpts.tableM.register_check_asbitem.push(tempRd)
})
this.refreshAsbitem()
},
// 更换套餐
- changePackage(newId){
+ changePackage(newId) {
//已收费项目,不更改收费方式、价格及数量,只更改分组id
let payTypeFlag = '0'
let lfind = -1
let tempRd = {}
- if(!newId){
+ if (!newId) {
this.setGroupPackageNull()
return
}
if (this.prForm.customerOrgId != this.dict.personOrgId) payTypeFlag = '1' //单位支付
- for(let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1;i>-1;i--){
- lfind = arrayExistObj(this.packageAsbs,'id', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId)
- if(lfind > -1){
+ for (let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1; i > -1; i--) {
+ lfind = arrayExistObj(this.packageAsbs, 'id', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId)
+ if (lfind > -1) {
//找到了则更新此项目
- tempRd = Object.assign({},this.packageAsbs.splice(lfind,1)[0])
- this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId
- if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y'){
- this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag
- this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.medicalPackageDetailAmount
- this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price
- this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.medicalPackageDetailPrice
- this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount
+ tempRd = Object.assign({}, this.packageAsbs.splice(lfind, 1)[0])
+ this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId
+ this.dataTransOpts.tableM.register_check_asbitem[i].isBelongGroupPackage = 'Y'
+ if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y') {
+ this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag
+ this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.medicalPackageDetailAmount
+ this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price
+ this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.medicalPackageDetailPrice
+ this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount
}
- }else{
+ } else {
//没找到则移除此项目
- if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || ( this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')){
- this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null
- }else{
- tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i,1)[0])
+ if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || (this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')) {
+ this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null
+ } else {
+ tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i, 1)[0])
// if(tempRd.id) this.prAsbDels.push(tempRd)
}
}
}
//未找到则添加(如果在待删除中找到记录,则待删除中记录移至当前显示记录中来)
- this.packageAsbs.forEach(e =>{
- lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.id)
- if(lfind > -1){
- tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0],
- {
- groupPackageId:newId,
- standardPrice:e.price,
- chargePrice:e.medicalPackageDetailPrice,
- payTypeFlag,
- isCharge: "N",
- discount:e.discount,
- amount:e.medicalPackageDetailAmount,
- total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100)/100
- }
- )
- }else{
- tempRd = {
- groupPackageId:newId,
- asbitemId:e.id,
- asbitemName:e.displayName,
- patientRegisterId:this.prForm.id,
- standardPrice:e.price,
- chargePrice:e.medicalPackageDetailPrice,
- payTypeFlag,
- isCharge: "N",
- discount:e.discount,
- amount:e.medicalPackageDetailAmount,
- total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100)/100
- }
+ this.packageAsbs.forEach(e => {
+ // lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.id)
+ // if(lfind > -1){
+ // tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0],
+ // {
+ // groupPackageId:newId,
+ // standardPrice:e.price,
+ // chargePrice:e.medicalPackageDetailPrice,
+ // payTypeFlag,
+ // isCharge: "N",
+ // discount:e.discount,
+ // amount:e.medicalPackageDetailAmount,
+ // total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100)/100
+ // }
+ // )
+ // }else{
+ tempRd = {
+ groupPackageId: newId,
+ isBelongGroupPackage: 'Y',
+ asbitemId: e.id,
+ asbitemName: e.displayName,
+ patientRegisterId: this.prForm.id,
+ standardPrice: e.price,
+ chargePrice: e.medicalPackageDetailPrice,
+ payTypeFlag,
+ isCharge: "N",
+ discount: e.discount,
+ amount: e.medicalPackageDetailAmount,
+ total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100) / 100
}
- this.dataTransOpts.tableM.register_check_asbitem.push(tempRd)
+ // }
+ this.dataTransOpts.tableM.register_check_asbitem.push(tempRd)
})
this.refreshAsbitem()
},
// 从 有分组/套餐 切换成 无分组/套餐 时
- setGroupPackageNull(){
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e =>{
+ setGroupPackageNull() {
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
e.groupPackageId = null
+ e.isBelongGroupPackage = 'N'
})
},
-
+
//双击选择组合项目
dbClickChoosedAsb(row) {
- if(this.isComplete){
+ if (this.isComplete) {
this.$message.info('人员已总检,不可 添加/删除 组合项目')
return
- }
+ }
this.addAbs([row]);
},
@@ -908,17 +926,17 @@ export default {
if (lfind > -1) {
this.addAbs([this.asbItemQuick[lfind]])
}
- }
+ }
//this.$refs['quickAsbOCX'].focus(); //asbItemId
- this.$nextTick(() => {
+ this.$nextTick(() => {
this.$refs['quickAsbOCX'].blur(); //total asbItemId
this.asbItemId = ''
- this.quickAsb = deepCopy(this.asbItemQuick)
+ this.quickAsb = deepCopy(this.asbItemQuick)
this.$refs['quickAsbOCX'].focus(); //total asbItemId
});
-
+
},
-
+
//快速选择组合项目时,调整可按拼间简码及简称查找
filterMethod(keyWords) {
@@ -935,15 +953,15 @@ export default {
} else {
this.quickAsb = deepCopy(this.asbItemQuick);
}
- },
+ },
//修改总折扣
changeAllDiscount() {
if (!this.discount || this.discount == 0) return
- if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
+ if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
e.discount = this.discount
e.chargePrice = Math.round(e.standardPrice * this.discount) / 100
e.total = Math.round(e.standardPrice * this.discount * e.amount) / 100
@@ -956,57 +974,57 @@ export default {
changeTotal() {
if (!this.total) return
- if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
+ if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
let sumChargeDetails = Number(0) //单个标准价折后价 合计总计
let qtyIsOneLast = 0 //数量为1的最后行项目,用于返写金额
// console.log('this.total / this.totalStand',this.total , this.totalStand)
- this.discount = Math.round((100 * this.total / this.totalStand) * 100)/100
+ this.discount = Math.round((100 * this.total / this.totalStand) * 100) / 100
- this.dataTransOpts.tableM.register_check_asbitem.forEach((e, index) => {
+ this.dataTransOpts.tableM.register_check_asbitem.forEach((e, index) => {
if (e.amount == 1 && e.standardPrice != 0) qtyIsOneLast = index
e.discount = this.discount
- e.chargePrice = Math.round((e.standardPrice * this.discount / 100) * 100)/100
- e.total = Math.round((e.standardPrice * this.discount * e.amount / 100) * 100)/100
- sumChargeDetails += Math.round((e.standardPrice * this.discount * e.amount / 100) * 100)/100
+ e.chargePrice = Math.round((e.standardPrice * this.discount / 100) * 100) / 100
+ e.total = Math.round((e.standardPrice * this.discount * e.amount / 100) * 100) / 100
+ sumChargeDetails += Math.round((e.standardPrice * this.discount * e.amount / 100) * 100) / 100
});
- console.log('this.dataTransOpts.tableM.register_check_asbitem',this.dataTransOpts.tableM.register_check_asbitem)
+ console.log('this.dataTransOpts.tableM.register_check_asbitem', this.dataTransOpts.tableM.register_check_asbitem)
// console.log('this.total - sumChargeDetails', sumChargeDetails, this.total - sumChargeDetails)
//平衡金额(按总价折扣后,再根据折扣合计 会出现金额差)
if (this.total != sumChargeDetails) {
- console.log('qtyIsOneLast',qtyIsOneLast)
- this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total =
- Math.round((Number( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total) + Number(this.total) - Number(sumChargeDetails))*100)/100
- this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice =
- Math.round( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total * 100 / this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].amount)/100
- if( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice != 0){
- this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].discount =
- Math.round( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice * 10000/ this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice)/100
+ console.log('qtyIsOneLast', qtyIsOneLast)
+ this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total =
+ Math.round((Number(this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total) + Number(this.total) - Number(sumChargeDetails)) * 100) / 100
+ this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice =
+ Math.round(this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total * 100 / this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].amount) / 100
+ if (this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice != 0) {
+ this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].discount =
+ Math.round(this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice * 10000 / this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice) / 100
}
}
//this.onSubmit('')
- },
+ },
//修改数量
changeDiscount(index) {
//console.log('index',index)
- if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
- if (! this.dataTransOpts.tableM.register_check_asbitem[index].discount) return
+ if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
+ if (!this.dataTransOpts.tableM.register_check_asbitem[index].discount) return
//console.log( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice, this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice)
- this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice = Math.round( this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice * this.dataTransOpts.tableM.register_check_asbitem[index].discount)/100
- this.dataTransOpts.tableM.register_check_asbitem[index].total = this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * this.dataTransOpts.tableM.register_check_asbitem[index].amount
+ this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice = Math.round(this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice * this.dataTransOpts.tableM.register_check_asbitem[index].discount) / 100
+ this.dataTransOpts.tableM.register_check_asbitem[index].total = this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * this.dataTransOpts.tableM.register_check_asbitem[index].amount
// this.onSubmit('')
},
//修改单价
changePrice(index) {
//console.log('index',index)
- if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
- if (! this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice) return
+ if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return
+ if (!this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice) return
//console.log( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice, this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice)
- this.dataTransOpts.tableM.register_check_asbitem[index].discount = Math.round( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * 10000 / this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice)/100
+ this.dataTransOpts.tableM.register_check_asbitem[index].discount = Math.round(this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * 10000 / this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice) / 100
// this.onSubmit('')
},
@@ -1015,11 +1033,17 @@ export default {
const { columns, data } = param;
const sumCol = [1, 5] //需合计的列
const sums = [];
+
+ let count = this.dataTransOpts.tableM.register_check_asbitem.length
+ let pack = this.dataTransOpts.tableM.register_check_asbitem.filter(e => { return e.isBelongGroupPackage == 'Y'}).length
+
+ this.asbDesc = `共选 ${count} 个项目,其中套餐/分组 ${pack} 个,加做 ${count - pack} 个`
+
columns.forEach((column, index) => {
//console.log('column, index,data',column, index,data)
//显示合计列
if (index === 0) {
- sums[index] = '合计';
+ sums[index] = `合计`;
return;
}
@@ -1031,15 +1055,15 @@ export default {
sums[index] = 0
data.forEach(e => {
- if (!isNaN(e[column.property])){
- if(index == 1){
+ if (!isNaN(e[column.property])) {
+ if (index == 1) {
sums[index] += e[column.property] * e['amount']
- }else{
+ } else {
sums[index] += e[column.property]
- }
+ }
}
})
- sums[index] = Math.round(sums[index] * 100)/100 //+ ' 元';
+ sums[index] = Math.round(sums[index] * 100) / 100 //+ ' 元';
// const values = data.map(item => Number(item[column.property]));
// if (!values.every(value => isNaN(value))) {
@@ -1061,13 +1085,13 @@ export default {
this.totalStand = sums[1];
//console.log('this.totalFoucs/this.discountFoucs',this.totalFoucs,this.discountFoucs)
if (!this.totalFoucs) this.total = sums[5];
- if (!this.discountFoucs) this.discount = Math.round(this.total * 10000 / this.totalStand)/100;
+ if (!this.discountFoucs) this.discount = Math.round(this.total * 10000 / this.totalStand) / 100;
return sums;
},
},
//监听事件
- watch: {
+ watch: {
// //配合复制新增使用 查询人员下的组合项目
// "prForm.id":{
// immediate: true, // 立即执行
@@ -1094,22 +1118,22 @@ export default {
// }
// },
- "dataTransOpts.refresh.register_check_asbitem.D":{
+ "dataTransOpts.refresh.register_check_asbitem.D": {
// immediate: true, // 立即执行
// deep: true, // 深度监听复杂类型内变化
- handler(newVal,oldVal){
- console.log('watch: 刷新 人员登记/编辑 时的组合项目: ',this.dataTransOpts.tableS.patient_register.id)
- if(newVal != oldVal) this.getPrAsb(this.dataTransOpts.tableS.patient_register.id)
+ handler(newVal, oldVal) {
+ console.log('watch: 刷新 人员登记/编辑 时的组合项目: ', this.dataTransOpts.tableS.patient_register.id)
+ if (newVal != oldVal) this.getPrAsb(this.dataTransOpts.tableS.patient_register.id)
}
},
//按钮更新支付方式
- "prAsbOpraOpts.payTypeFlag":{
+ "prAsbOpraOpts.payTypeFlag": {
// immediate: true, // 立即执行
// deep: true, // 深度监听复杂类型内变化
handler(newVal, oldVal) {
if (newVal != oldVal && newVal != '') {
- this.dataTransOpts.tableM.register_check_asbitem.forEach(e =>{
+ this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
e.payTypeFlag = newVal;
return e;
});
@@ -1119,10 +1143,10 @@ export default {
},
//更换分组
- "prAsbOpraOpts.prAsbGroup":{
+ "prAsbOpraOpts.prAsbGroup": {
// immediate: true, // 立即执行
// deep: true, // 深度监听复杂类型内变化
- handler(newVal, oldVal) {
+ handler(newVal, oldVal) {
if (newVal != oldVal) {
this.getGroupAsbs(this.prForm.customerOrgGroupId)
}
@@ -1130,7 +1154,7 @@ export default {
},
//更换套餐
- "prAsbOpraOpts.prAsbPackage":{
+ "prAsbOpraOpts.prAsbPackage": {
// immediate: true, // 立即执行
// deep: true, // 深度监听复杂类型内变化
handler(newVal, oldVal) {
@@ -1141,7 +1165,7 @@ export default {
},
//复制新增 拷贝明细项目
- "prAsbOpraOpts.copyNew":{
+ "prAsbOpraOpts.copyNew": {
// immediate: true, // 立即执行
// deep: true, // 深度监听复杂类型内变化
handler(newVal, oldVal) {
@@ -1168,7 +1192,7 @@ export default {
@import "../../assets/css/global.css";
.mainareaBox {
- border: 1px solid #888;
+ border: 1px solid #888;
height: v-bind("(window.pageHeight > 700 ? (window.pageHeight - 440) : 260) + 'px'");
margin-top: 5px;
border-radius: 5px;
@@ -1182,7 +1206,5 @@ export default {
.disTotal {
margin-left: 10px;
-}
-
-
+}
diff --git a/src/components/patientRegister/PatientRegisterList.vue b/src/components/patientRegister/PatientRegisterList.vue
index a16d89f..55fa952 100644
--- a/src/components/patientRegister/PatientRegisterList.vue
+++ b/src/components/patientRegister/PatientRegisterList.vue
@@ -170,7 +170,7 @@
:visible.sync="dialogWin.PatientRegisterEdit" :close-on-click-modal="false" fullscreen
@close="close_dialogWin_PatientRegisterEdit">
-
diff --git a/src/components/patientRegister/patientRegisterAsbItem.vue b/src/components/patientRegister/patientRegisterAsbItem.vue
index 92db62c..3663612 100644
--- a/src/components/patientRegister/patientRegisterAsbItem.vue
+++ b/src/components/patientRegister/patientRegisterAsbItem.vue
@@ -7,7 +7,7 @@
-
+
{{ scope.$index + 1 }}
diff --git a/src/store/index.js b/src/store/index.js
index 106b2c3..16d24d5 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -329,7 +329,7 @@ export default new Vuex.Store({
customer_org_group_detail: { id: '' }, // 单位分组包含的组合项目明细
charge: { id: '' }, // 收费
menu_info: { id: '' }, // 菜单与页面
- patient_register: { id: '' }, // 体检人员记录
+ patient_register: { id: '', patientRegisterNo: ''}, // 体检人员记录
register_check_asbitem: { id: '' }, // 体检人员登记的项目(合并前)
register_check: { id: '' }, // 体检人员登记的项目(合并后)
register_check_item: { id: '' }, // 体检人员登记的明细项目
diff --git a/src/utlis/proFunc.js b/src/utlis/proFunc.js
index 82e6f76..10c7f80 100644
--- a/src/utlis/proFunc.js
+++ b/src/utlis/proFunc.js
@@ -180,9 +180,10 @@ exports.checkIDCode = checkIDCode;
function parseID(id) {
let ret = {
birthday: null,
- age: null,
+ age: -1,
sex: 'U',
}
+ if(!id) return ret
if (!checkIDCode(id)) return ret
let yearInMs = 1000 * 60 * 60 * 24 * 365.2425;