|  | @@ -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);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |      
 | 
	
		
			
				|  |  |      // ================= 新增:追溯码匹配状态初始化 =================
 | 
	
		
			
				|  |  |      // 目的:初始化扫描状态和退药数量信息,为智能匹配做准备
 |