fix(charge): 修复医保支付金额计算的安全访问问题

- 在 cliniccharge 组件中为所有金额查询添加可选链操作符防止空指针异常
- 在住院管理收费结算组件中修复金额格式化导致的显示问题
- 统一处理患者信息字段的空值情况避免页面渲染错误
- 修正金额计算逻辑确保数值精度和显示准确性
This commit is contained in:
2026-01-13 17:02:27 +08:00
parent f2b5b90f34
commit 6f9192d30d
2 changed files with 71 additions and 71 deletions

View File

@@ -299,235 +299,235 @@ async function printReceipt(param) {
// 金额大于0时显示金额和单位等于0时不显示单位 // 金额大于0时显示金额和单位等于0时不显示单位
YB_FUND_PAY: (() => { YB_FUND_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 100000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 100000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 基金支付总额 })(), // 基金支付总额
SELF_PAY: (() => { SELF_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 200000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 200000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人负担总金额 })(), // 个人负担总金额
OTHER_PAY: (() => { OTHER_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 300000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 其他(如医院负担金额) })(), // 其他(如医院负担金额)
// 基本医保统筹基金支出 // 基本医保统筹基金支出
YB_TC_FUND_AMOUNT: (() => { YB_TC_FUND_AMOUNT: (() => {
const amount = param.detail.find((t) => t.payEnum === 110000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 110000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 基本医保统筹基金支出 })(), // 基本医保统筹基金支出
YB_BC_FUND_AMOUNT: (() => { YB_BC_FUND_AMOUNT: (() => {
const amount = param.detail.find((t) => t.payEnum === 120000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 120000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 补充医疗保险基金支出 })(), // 补充医疗保险基金支出
YB_JZ_FUND_AMOUNT: (() => { YB_JZ_FUND_AMOUNT: (() => {
const amount = param.detail.find((t) => t.payEnum === 130000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 130000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 医疗救助基金支出 })(), // 医疗救助基金支出
YB_OTHER_AMOUNT: (() => { YB_OTHER_AMOUNT: (() => {
const amount = param.detail.find((t) => t.payEnum === 140000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 140000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 其他支出 })(), // 其他支出
// 职工基本医疗保险 // 职工基本医疗保险
YB_TC_ZG_FUND_VALUE: (() => { YB_TC_ZG_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 110100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 110100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 职工基本医疗保险 })(), // 职工基本医疗保险
YB_TC_JM_FUND_VALUE: (() => { YB_TC_JM_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 110200)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 110200)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 居民基本医疗保险 })(), // 居民基本医疗保险
// 补充医疗保险基金支出细分 // 补充医疗保险基金支出细分
YB_BC_JM_DB_VALUE: (() => { YB_BC_JM_DB_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 120100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 120100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 全体参保人的居民大病保险 })(), // 全体参保人的居民大病保险
YB_BC_DE_BZ_VALUE: (() => { YB_BC_DE_BZ_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 120200)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 120200)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 大额医疗费用补助 })(), // 大额医疗费用补助
YB_BC_ZG_DE_BZ_VALUE: (() => { YB_BC_ZG_DE_BZ_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 120300)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 120300)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 企业职工大额医疗费用补助 })(), // 企业职工大额医疗费用补助
YB_BC_GWY_BZ_VALUE: (() => { YB_BC_GWY_BZ_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 120400)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 120400)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 公务员医疗补助 })(), // 公务员医疗补助
// 其他支出细分 // 其他支出细分
OTHER_PAY_DD_FUND_VALUE: (() => { OTHER_PAY_DD_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300001)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300001)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 兜底基金支出 })(), // 兜底基金支出
OTHER_PAY_YW_SH_FUND_VALUE: (() => { OTHER_PAY_YW_SH_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300002)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300002)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 意外伤害基金支出 })(), // 意外伤害基金支出
OTHER_PAY_LX_YL_FUND_VALUE: (() => { OTHER_PAY_LX_YL_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300003)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300003)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 离休人员医疗保障金支出 })(), // 离休人员医疗保障金支出
OTHER_PAY_LX_YH_FUND_VALUE: (() => { OTHER_PAY_LX_YH_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300004)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300004)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 离休人员优惠金支出 })(), // 离休人员优惠金支出
OTHER_PAY_CZ_FUND_VALUE: (() => { OTHER_PAY_CZ_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300005)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300005)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 财政基金支出 })(), // 财政基金支出
OTHER_PAY_CZ_YZ_FUND_VALUE: (() => { OTHER_PAY_CZ_YZ_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300006)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300006)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 财政预支支出 })(), // 财政预支支出
OTHER_PAY_ZG_DB_FUND_VALUE: (() => { OTHER_PAY_ZG_DB_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300007)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300007)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 职工大病基金支出 })(), // 职工大病基金支出
OTHER_PAY_EY_FUND_VALUE: (() => { OTHER_PAY_EY_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300008)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300008)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 二乙基金支出 })(), // 二乙基金支出
OTHER_PAY_QX_JZ_FUND_VALUE: (() => { OTHER_PAY_QX_JZ_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300009)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300009)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 倾斜救助支出 })(), // 倾斜救助支出
OTHER_PAY_YL_JZ_FUND_VALUE: (() => { OTHER_PAY_YL_JZ_FUND_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 300010)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300010)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 医疗救助再救助基金 })(), // 医疗救助再救助基金
HOSP_PART_AMT: (() => { HOSP_PART_AMT: (() => {
const amount = param.detail.find((t) => t.payEnum === 300011)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 300011)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 医院负担金额 })(), // 医院负担金额
// 医保结算返回值 // 医保结算返回值
FULAMT_OWNPAY_AMT: (() => { FULAMT_OWNPAY_AMT: (() => {
const amount = param.detail.find((t) => t.payEnum === 1)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 1)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 全自费金额 })(), // 全自费金额
OVERLMT_SELFPAY: (() => { OVERLMT_SELFPAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 3)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 3)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 超限价自费费用 })(), // 超限价自费费用
PRESELFPAY_AMT: (() => { PRESELFPAY_AMT: (() => {
const amount = param.detail.find((t) => t.payEnum === 4)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 4)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 先行自付金额 })(), // 先行自付金额
INSCP_SCP_AMT: (() => { INSCP_SCP_AMT: (() => {
const amount = param.detail.find((t) => t.payEnum === 5)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 5)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 符合政策范围金额 })(), // 符合政策范围金额
ACT_PAY_DEDC: (() => { ACT_PAY_DEDC: (() => {
const amount = param.detail.find((t) => t.payEnum === 6)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 6)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 实际支付起付线 })(), // 实际支付起付线
POOL_PROP_SELFPAY: (() => { POOL_PROP_SELFPAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 7)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 7)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 基本医疗保险统筹基金支付比例 })(), // 基本医疗保险统筹基金支付比例
BALC: (() => { BALC: (() => {
const amount = param.detail.find((t) => t.payEnum === 8)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 8)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 余额 })(), // 余额
// 特殊支付方式 // 特殊支付方式
SELF_YB_ZH_PAY: (() => { SELF_YB_ZH_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 210000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 210000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人医保账户支付 })(), // 个人医保账户支付
SELF_YB_ZH_GJ_VALUE: (() => { SELF_YB_ZH_GJ_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 210100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 210100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 账户共济支付金额 })(), // 账户共济支付金额
SELF_CASH_PAY: (() => { SELF_CASH_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 220000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 220000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人现金支付金额 })(), // 个人现金支付金额
SELF_VX_PAY: (() => { SELF_VX_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 230000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 230000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 微信支付金额 })(), // 微信支付金额
SELF_ALI_PAY: (() => { SELF_ALI_PAY: (() => {
const amount = param.detail.find((t) => t.payEnum === 240000)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 240000)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 阿里支付金额 })(), // 阿里支付金额
// 现金支付细分 // 现金支付细分
SELF_CASH_VALUE: (() => { SELF_CASH_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 220400)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 220400)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人现金支付金额(现金) })(), // 个人现金支付金额(现金)
SELF_CASH_VX_VALUE: (() => { SELF_CASH_VX_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 220100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 220100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人现金支付金额(微信) })(), // 个人现金支付金额(微信)
SELF_CASH_ALI_VALUE: (() => { SELF_CASH_ALI_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 220200)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 220200)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人现金支付金额(支付宝) })(), // 个人现金支付金额(支付宝)
SELF_CASH_UNION_VALUE: (() => { SELF_CASH_UNION_VALUE: (() => {
const amount = param.detail.find((t) => t.payEnum === 220300)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 220300)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 个人现金支付金额(银联) })(), // 个人现金支付金额(银联)
// 基金类型(扩展) // 基金类型(扩展)
BIRTH_FUND: (() => { BIRTH_FUND: (() => {
const amount = param.detail.find((t) => t.payEnum === 510100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 510100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 生育基金 })(), // 生育基金
RETIREE_MEDICAL: (() => { RETIREE_MEDICAL: (() => {
const amount = param.detail.find((t) => t.payEnum === 340100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 340100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 离休人员医疗保障基金 })(), // 离休人员医疗保障基金
URBAN_BASIC_MEDICAL: (() => { URBAN_BASIC_MEDICAL: (() => {
const amount = param.detail.find((t) => t.payEnum === 390100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 390100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 城乡居民基本医疗保险基金 })(), // 城乡居民基本医疗保险基金
URBAN_SERIOUS_ILLNESS: (() => { URBAN_SERIOUS_ILLNESS: (() => {
const amount = param.detail.find((t) => t.payEnum === 390200)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 390200)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 城乡居民大病医疗保险基金 })(), // 城乡居民大病医疗保险基金
MEDICAL_ASSISTANCE: (() => { MEDICAL_ASSISTANCE: (() => {
const amount = param.detail.find((t) => t.payEnum === 610100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 610100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 医疗救助基金 })(), // 医疗救助基金
GOVERNMENT_SUBSIDY: (() => { GOVERNMENT_SUBSIDY: (() => {
const amount = param.detail.find((t) => t.payEnum === 640100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 640100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 政府兜底基金 })(), // 政府兜底基金
ACCIDENT_INSURANCE: (() => { ACCIDENT_INSURANCE: (() => {
const amount = param.detail.find((t) => t.payEnum === 390400)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 390400)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 意外伤害基金 })(), // 意外伤害基金
CARE_INSURANCE: (() => { CARE_INSURANCE: (() => {
const amount = param.detail.find((t) => t.payEnum === 620100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 620100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 照护保险基金 })(), // 照护保险基金
FINANCIAL_FUND: (() => { FINANCIAL_FUND: (() => {
const amount = param.detail.find((t) => t.payEnum === 360100)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 360100)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 财政基金 })(), // 财政基金
HOSPITAL_ADVANCE: (() => { HOSPITAL_ADVANCE: (() => {
const amount = param.detail.find((t) => t.payEnum === 999900)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 999900)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 医院垫付 })(), // 医院垫付
SUPPLEMENTARY_INSURANCE: (() => { SUPPLEMENTARY_INSURANCE: (() => {
const amount = param.detail.find((t) => t.payEnum === 390300)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 390300)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 城乡居民大病补充保险基金 })(), // 城乡居民大病补充保险基金
HEALTHCARE_PREPAYMENT: (() => { HEALTHCARE_PREPAYMENT: (() => {
const amount = param.detail.find((t) => t.payEnum === 360300)?.amount ?? 0; const amount = param.detail?.find((t) => t.payEnum === 360300)?.amount ?? 0;
return amount > 0 ? amount + ' 元' : amount; return amount > 0 ? amount + ' 元' : amount;
})(), // 保健预支基金 })(), // 保健预支基金
//微信刷卡支付 //微信刷卡支付
SELF_CASH_VX_VALUE: (() => { SELF_CASH_VX_VALUE: (() => {
// const cashValue = param.detail.find((t) => t.payEnum === 220400)?.amount ?? 0; // const cashValue = param.detail?.find((t) => t.payEnum === 220400)?.amount ?? 0;
const vxValue = param.detail.find((t) => t.payEnum === 220100)?.amount ?? 0; const vxValue = param.detail?.find((t) => t.payEnum === 220100)?.amount ?? 0;
const unionValue = param.detail.find((t) => t.payEnum === 220300)?.amount ?? 0; const unionValue = param.detail?.find((t) => t.payEnum === 220300)?.amount ?? 0;
const aliValue = param.detail.find((t) => t.payEnum === 220200)?.amount ?? 0; const aliValue = param.detail?.find((t) => t.payEnum === 220200)?.amount ?? 0;
return vxValue + unionValue + aliValue + ' 元'; return vxValue + unionValue + aliValue + ' 元';
})(), })(),

View File

@@ -260,17 +260,17 @@ function printReceipt(param) {
...param, ...param,
// 基础支付类型 // 基础支付类型
YB_FUND_PAY: YB_FUND_PAY:
param.detail?.find((t) => t.payEnum === 100000)?.amount.toFixed(2) + ' 元' ?? 0, // 基金支付总额 (param.detail?.find((t) => t.payEnum === 100000)?.amount?.toFixed(2) || '0.00') + ' 元',
SELF_PAY: param.detail?.find((t) => t.payEnum === 200000)?.amount.toFixed(2) + ' 元' ?? 0, // 个人负担总金额 SELF_PAY: (param.detail?.find((t) => t.payEnum === 200000)?.amount?.toFixed(2) || '0.00') + ' 元',
OTHER_PAY: param.detail?.find((t) => t.payEnum === 300000)?.amount ?? 0, // 其他(如医院负担金额) OTHER_PAY: param.detail?.find((t) => t.payEnum === 300000)?.amount ?? 0, // 其他(如医院负担金额)
// 基本医保统筹基金支出 // 基本医保统筹基金支出
YB_TC_FUND_AMOUNT: YB_TC_FUND_AMOUNT:
param.detail?.find((t) => t.payEnum === 110000)?.amount.toFixed(2) + ' 元' ?? 0, // 基本医保统筹基金支出 (param.detail?.find((t) => t.payEnum === 110000)?.amount?.toFixed(2) || '0.00') + ' 元',
YB_BC_FUND_AMOUNT: YB_BC_FUND_AMOUNT:
param.detail?.find((t) => t.payEnum === 120000)?.amount.toFixed(2) + ' 元' ?? 0, // 补充医疗保险基金支出 (param.detail?.find((t) => t.payEnum === 120000)?.amount?.toFixed(2) || '0.00') + ' 元',
YB_JZ_FUND_AMOUNT: YB_JZ_FUND_AMOUNT:
param.detail?.find((t) => t.payEnum === 130000)?.amount.toFixed(2) + ' 元' ?? 0, // 医疗救助基金支出 (param.detail?.find((t) => t.payEnum === 130000)?.amount?.toFixed(2) || '0.00') + ' 元',
// YB_OTHER_AMOUNT: param.detail.find((t) => t.payEnum === 140000)?.amount ?? 0, // 其他支出 // YB_OTHER_AMOUNT: param.detail.find((t) => t.payEnum === 140000)?.amount ?? 0, // 其他支出
// 职工基本医疗保险 // 职工基本医疗保险
@@ -298,17 +298,17 @@ function printReceipt(param) {
// 医保结算返回值 // 医保结算返回值
FULAMT_OWNPAY_AMT: FULAMT_OWNPAY_AMT:
param.detail?.find((t) => t.payEnum === 1)?.amount.toFixed(2) + ' 元' ?? 0, // 全自费金额 (param.detail?.find((t) => t.payEnum === 1)?.amount?.toFixed(2) || '0.00') + ' 元',
// OVERLMT_SELFPAY: param.detail.find((t) => t.payEnum === 3)?.amount ?? 0, // 超限价自费费用 // OVERLMT_SELFPAY: param.detail.find((t) => t.payEnum === 3)?.amount ?? 0, // 超限价自费费用
// PRESELFPAY_AMT: param.detail.find((t) => t.payEnum === 4)?.amount ?? 0, // 先行自付金额 // PRESELFPAY_AMT: param.detail.find((t) => t.payEnum === 4)?.amount ?? 0, // 先行自付金额
INSCP_SCP_AMT: param.detail?.find((t) => t.payEnum === 5)?.amount.toFixed(2) + ' 元' ?? 0, // 符合政策范围金额 INSCP_SCP_AMT: (param.detail?.find((t) => t.payEnum === 5)?.amount?.toFixed(2) || '0.00') + ' 元',
// ACT_PAY_DEDC: param.detail.find((t) => t.payEnum === 6)?.amount ?? 0, // 实际支付起付线 // ACT_PAY_DEDC: param.detail.find((t) => t.payEnum === 6)?.amount ?? 0, // 实际支付起付线
// POOL_PROP_SELFPAY: param.detail.find((t) => t.payEnum === 7)?.amount ?? 0, // 基本医疗保险统筹基金支付比例 // POOL_PROP_SELFPAY: param.detail.find((t) => t.payEnum === 7)?.amount ?? 0, // 基本医疗保险统筹基金支付比例
// BALC: param.detail.find((t) => t.payEnum === 8)?.amount ?? 0, // 余额 // BALC: param.detail.find((t) => t.payEnum === 8)?.amount ?? 0, // 余额
// 特殊支付方式 // 特殊支付方式
SELF_YB_ZH_PAY: SELF_YB_ZH_PAY:
param.detail?.find((t) => t.payEnum === 210000)?.amount.toFixed(2) + ' 元' ?? 0, // 个人医保账户支付 (param.detail?.find((t) => t.payEnum === 210000)?.amount?.toFixed(2) || '0.00') + ' 元',
// SELF_YB_ZH_GJ_VALUE: param.detail.find((t) => t.payEnum === 210100)?.amount ?? 0, // 账户共济支付金额 // SELF_YB_ZH_GJ_VALUE: param.detail.find((t) => t.payEnum === 210100)?.amount ?? 0, // 账户共济支付金额
// SELF_CASH_PAY: param.detail.find((t) => t.payEnum === 220000)?.amount ?? 0, // 个人现金支付金额 // SELF_CASH_PAY: param.detail.find((t) => t.payEnum === 220000)?.amount ?? 0, // 个人现金支付金额
// SELF_VX_PAY: param.detail.find((t) => t.payEnum === 230000)?.amount ?? 0, // 微信支付金额 // SELF_VX_PAY: param.detail.find((t) => t.payEnum === 230000)?.amount ?? 0, // 微信支付金额
@@ -334,14 +334,14 @@ function printReceipt(param) {
// SUPPLEMENTARY_INSURANCE: param.detail.find((t) => t.payEnum === 390300)?.amount ?? 0, // 城乡居民大病补充保险基金 // SUPPLEMENTARY_INSURANCE: param.detail.find((t) => t.payEnum === 390300)?.amount ?? 0, // 城乡居民大病补充保险基金
// HEALTHCARE_PREPAYMENT: param.detail.find((t) => t.payEnum === 360300)?.amount ?? 0, // 保健预支基金 // HEALTHCARE_PREPAYMENT: param.detail.find((t) => t.payEnum === 360300)?.amount ?? 0, // 保健预支基金
Mr_QR_Code: param.regNo, Mr_QR_Code: param.regNo,
sex: props.patientInfo.genderEnum_enumText, sex: props.patientInfo?.genderEnum_enumText || '',
age: props.patientInfo.age, age: props.patientInfo?.age || '',
personType: '职工医保', personType: '职工医保',
fixmedinsName: param.fixmedinsName + '门诊收费明细', fixmedinsName: (param.fixmedinsName || '') + '门诊收费明细',
name: props.patientInfo.patientName, // 姓名 name: props.patientInfo?.patientName || '', // 姓名
gender: props.patientInfo.genderEnum_enumText, // 性别 gender: props.patientInfo?.genderEnum_enumText || '', // 性别
age: props.patientInfo.age, // 年龄 age: props.patientInfo?.age || '', // 年龄
encounterBusNo: props.patientInfo.encounterBusNo, // 病例号 encounterBusNo: props.patientInfo?.encounterBusNo || '', // 病例号
currentDate: currentDate.value, // 收费日期 currentDate: currentDate.value, // 收费日期
chargedItems: props.chargedItems, // 收费项目 chargedItems: props.chargedItems, // 收费项目
totalAmount: props.totalAmount.toFixed(2) + ' 元', // 应收金额 totalAmount: props.totalAmount.toFixed(2) + ' 元', // 应收金额