|
@@ -2732,6 +2732,30 @@ function matchingDrugCodg(patientId, times, receiptNo, orderNo, realNo){
|
|
|
|
|
|
// 保存当前退药数据到全局变量,供匹配检查使用
|
|
|
window.currentRefundData = $table.bootstrapTable('getData');
|
|
|
+
|
|
|
+ // 新增:若本次退药全部为中药或拆零药,提示无需匹配并直接跳过
|
|
|
+ try {
|
|
|
+ let refundDataForMatch = window.currentRefundData || [];
|
|
|
+ let needMatchExists = false;
|
|
|
+ if (refundDataForMatch && refundDataForMatch.length > 0) {
|
|
|
+ for (let i = 0; i < refundDataForMatch.length; i++) {
|
|
|
+ let r = refundDataForMatch[i];
|
|
|
+ let isTcm = (r.drugKind === '09' || r.drugKind === '10');
|
|
|
+ let isNonSplit = (r.serial === '99');
|
|
|
+ if (!isTcm && isNonSplit && r.dec_amount > 0) {
|
|
|
+ needMatchExists = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!needMatchExists) {
|
|
|
+ if (!isTyOk) { isTyOk = true; }
|
|
|
+ warningMesageSimaple('本次退药全部为中药或拆零药,无需匹配,请直接点击“退药处理”。');
|
|
|
+ return; // 不再打开匹配弹窗
|
|
|
+ }
|
|
|
+ } catch (e) {
|
|
|
+ console.warn('判断是否需要匹配时异常,按默认流程继续:', e);
|
|
|
+ }
|
|
|
|
|
|
// ================= 新增:追溯码匹配状态初始化 =================
|
|
|
// 目的:初始化扫描状态和退药数量信息,为智能匹配做准备
|