fix(charge): 修复医保支付计算中的潜在空指针异常

- 在 chargeDialog.vue 中为所有 param.detail.find() 调用添加可选链操作符
- 修复了基金支付总额、个人负担总金额和其他支付类型的空指针风险
- 解决了基本医保统筹基金支出等各项支付类型的潜在运行时错误
- 在微信刷卡支付逻辑中同样应用可选链操作符保护
- 修复了 FULAMT_OWNPAY_AMT 计算中的运算符优先级问题

feat(hospitalRecord): 动态替换打印模板中的医院名称

- 在 MedicationDetails.vue 中引入并使用 userStore 获取医院名称
- 修改处置模板打印逻辑以动态替换 {{HOSPITAL_NAME}} 占位符
- 更新处方模板打印功能以支持医院名称的动态替换
- 激活之前被注释掉的模板文件导入语句
- 移除硬编码的医院名称,实现模板的动态化配置
This commit is contained in:
2026-01-13 16:58:43 +08:00
parent 47a7a945bc
commit d3df46858b
16 changed files with 346 additions and 293 deletions

View File

@@ -291,10 +291,13 @@ import {advicePrint, getAdjustPriceSwitchState, lotNumberMatch} from '@/api/publ
import {debounce} from 'lodash-es';
import TraceNoDialog from '@/components/OpenHis/TraceNoDialog/index.vue';
import {hiprint} from 'vue-plugin-hiprint';
// import templateJson from './components/templateJson.json';
// import disposalTemplate from './components/disposalTemplate.json';
import templateJson from './components/templateJson.json';
import disposalTemplate from './components/disposalTemplate.json';
import {formatInventory} from '@/utils/his.js';
import useUserStore from '@/store/modules/user';
const userStore = useUserStore();
const { proxy } = getCurrentInstance();
const showSearch = ref(true);
const total = ref(0);
@@ -444,7 +447,9 @@ async function printPrescription() {
}).then((res) => {
if (projectTypeCode.value == '3') {
const result = res.data;
const printElements = disposalTemplate;
const printElements = JSON.parse(
JSON.stringify(disposalTemplate).replace(/{{HOSPITAL_NAME}}/g, userStore.hospitalName)
);
var hiprintTemplate = new hiprint.PrintTemplate({ template: printElements }); // 定义模板
hiprintTemplate.print2(result, {
height: 210,
@@ -474,7 +479,9 @@ async function printPrescription() {
prescriptionList: item,
});
});
const printElements = templateJson;
const printElements = JSON.parse(
JSON.stringify(templateJson).replace(/{{HOSPITAL_NAME}}/g, userStore.hospitalName)
);
var hiprintTemplate = new hiprint.PrintTemplate({ template: printElements }); // 定义模板
hiprintTemplate.print2(result, {
height: 210,