|
|
|
@ -119,17 +119,20 @@ |
|
|
|
<el-table-column label="标准价" prop="standardPrice" min-width="60" align="center" /> |
|
|
|
<el-table-column label="折扣" prop="discount" min-width="60"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input type="number" v-model="scope.row.discount" size="small" @input="changeDiscount(scope.$index)" :disabled="scope.row.isCharge == 'Y' ? true:false"/> |
|
|
|
<el-input type="number" v-model="scope.row.discount" size="small" @input="changeDiscount(scope.$index)" |
|
|
|
:disabled="scope.row.isCharge == 'Y' ? true : false" /> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="数量" prop="amount" min-width="50"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input type="number" v-model="scope.row.amount" size="small" @input="changeDiscount(scope.$index)" :disabled="scope.row.isCharge == 'Y' ? true:false"/> |
|
|
|
<el-input type="number" v-model="scope.row.amount" size="small" @input="changeDiscount(scope.$index)" |
|
|
|
:disabled="scope.row.isCharge == 'Y' ? true : false" /> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="应收价格" prop="chargePrice" min-width="70"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input type="number" v-model="scope.row.chargePrice" size="small" @input="changePrice(scope.$index)" :disabled="scope.row.isCharge == 'Y' ? true:false"/> |
|
|
|
<el-input type="number" v-model="scope.row.chargePrice" size="small" @input="changePrice(scope.$index)" |
|
|
|
:disabled="scope.row.isCharge == 'Y' ? true : false" /> |
|
|
|
<!--立即触发保存 @blur="onSubmit('')" --> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
@ -333,6 +336,7 @@ export default { |
|
|
|
this.packageAsbs = [] |
|
|
|
if (!id) { |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem = [] |
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
} else { |
|
|
|
getapi(`/api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`).then(res => { |
|
|
|
@ -342,6 +346,7 @@ export default { |
|
|
|
e.total = e.amount * e.chargePrice |
|
|
|
}); |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem = res.data |
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -364,6 +369,7 @@ export default { |
|
|
|
e.checkCompleteFlag = '0' |
|
|
|
e.isLock = 'N' |
|
|
|
}) |
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -598,9 +604,9 @@ export default { |
|
|
|
} |
|
|
|
// 优化加最上面 |
|
|
|
//this.dataTransOpts.tableM.register_check_asbitem.push(pojo) |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.splice(0,0,pojo) |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.splice(0, 0, pojo) |
|
|
|
} |
|
|
|
|
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
|
|
|
|
}, |
|
|
|
@ -748,7 +754,7 @@ export default { |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
//刷新 |
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
|
|
|
|
if (chargeComplete) { |
|
|
|
@ -829,20 +835,21 @@ export default { |
|
|
|
let lfind = -1 |
|
|
|
let tempRd = {} |
|
|
|
|
|
|
|
// 切换分组清项目(未检、未收费的项目) |
|
|
|
this.setGroupPackageNull() |
|
|
|
if (!newId) { |
|
|
|
this.setGroupPackageNull() |
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
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) |
|
|
|
this.groupAsbs.forEach(e => { |
|
|
|
lfind = arrayExistObj(this.dataTransOpts.tableM.register_check_asbitem, 'asbitemId', e.asbitemId) |
|
|
|
if (lfind > -1) { |
|
|
|
//找到了则更新此项目 |
|
|
|
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 |
|
|
|
@ -851,52 +858,25 @@ export default { |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount |
|
|
|
} |
|
|
|
} 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(tempRd.id) this.prAsbDels.push(tempRd) |
|
|
|
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) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 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, |
|
|
|
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.refreshAsbitem() |
|
|
|
}, |
|
|
|
|
|
|
|
@ -907,82 +887,74 @@ export default { |
|
|
|
let lfind = -1 |
|
|
|
let tempRd = {} |
|
|
|
|
|
|
|
this.setGroupPackageNull() |
|
|
|
if (!newId) { |
|
|
|
this.setGroupPackageNull() |
|
|
|
// 刷新未选组合项目 |
|
|
|
this.refreshAsbitem() |
|
|
|
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) |
|
|
|
this.packageAsbs.forEach(e => { |
|
|
|
lfind = arrayExistObj(this.dataTransOpts.tableM.register_check_asbitem, 'asbitemId', e.id) |
|
|
|
if (lfind > -1) { |
|
|
|
//找到了则更新此项目 |
|
|
|
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].amount = tempRd.customerOrgGroupDetailAmount |
|
|
|
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].chargePrice = tempRd.customerOrgGroupDetailPrice |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount |
|
|
|
} |
|
|
|
} 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(tempRd.id) this.prAsbDels.push(tempRd) |
|
|
|
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.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.refreshAsbitem() |
|
|
|
}, |
|
|
|
|
|
|
|
// 从 有分组/套餐 切换成 无分组/套餐 时 |
|
|
|
setGroupPackageNull() { |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
|
e.groupPackageId = null |
|
|
|
e.isBelongGroupPackage = 'N' |
|
|
|
}) |
|
|
|
// 切换分组删除 未检、未收费项目 |
|
|
|
// this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
|
// e.groupPackageId = null |
|
|
|
// e.isBelongGroupPackage = 'N' |
|
|
|
// }) |
|
|
|
try { |
|
|
|
let length = this.dataTransOpts.tableM.register_check_asbitem.length |
|
|
|
for (let i = length - 1; i > -1; i--) { |
|
|
|
let e = this.dataTransOpts.tableM.register_check_asbitem[i]; |
|
|
|
// 如果已经收费 或 体检,则不允许删除 |
|
|
|
if (!(e.isCharge == 'Y' || (e.checkCompleteFlag && e.checkCompleteFlag != '0'))) { |
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.splice(i, 1) |
|
|
|
} else { |
|
|
|
e.groupPackageId = null |
|
|
|
e.isBelongGroupPackage = 'N' |
|
|
|
} |
|
|
|
} |
|
|
|
} catch (error) { |
|
|
|
console.error(error) |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
//双击选择组合项目 |
|
|
|
@ -1284,7 +1256,7 @@ export default { |
|
|
|
// immediate: true, // 立即执行 |
|
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
|
handler(newVal, oldVal) { |
|
|
|
if (newVal != oldVal) this.refreshAsbitem() |
|
|
|
if (newVal != oldVal) this.refreshAsbitem() // 刷新未选组合项目 |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
|