| 
					
				 | 
			
			
				@@ -3411,48 +3411,92 @@ function callYbReturnGoodsItem(realNo, orderNo, receiptNo, times, patientId, nam 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             drugtracinfo: [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 直接从退药表格获取追溯码(与发药接口保持一致) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (item.drugTracCodg && item.drugTracCodg.trim() !== '') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            let tracCodes = item.drugTracCodg.split('<br>').filter(code => code.trim() !== ''); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            for (let j = 0; j < tracCodes.length; j++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ybData.drugtracinfo.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    drugTracCodg: tracCodes[j].trim() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            console.log('从退药表格获取追溯码:', tracCodes); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            console.log('退药表格中没有追溯码信息'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 如果没有追溯码,添加空数组(保持数据结构一致) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (ybData.drugtracinfo.length === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            ybData.drugtracinfo = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        console.log('调用医保退药接口,药品:', item.drugname, '参数:', ybData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 主动获取追溯码信息(因为退药表格不包含追溯码) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let tracCodgParams = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            patientId: patientId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            times: times, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            receiptNo: receiptNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            orderNo: orderNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            chargeItemCode: item.charge_item_code, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            serial: item.serial, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            itemNo: item.item_no, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            groupNo: item.group_no || groupNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 调用医保接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 调用追溯码查询接口(异步方式) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         $.ajax({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             type: "POST", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            url: '/thmz/Yb/returnGoodsItem', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            url: '/thmz/getMzDrugTracCodgData', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             contentType: "application/json;charset=UTF-8", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             dataType: "json", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             headers: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 'Accept': 'application/json', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 'Authorization': 'Bearer ' + localStorage.getItem("token") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            data: JSON.stringify(ybData), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            success: function (res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                console.log('医保退药接口调用成功:', res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (res.code !== 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    console.error('医保退药接口调用失败:', res.message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    // 医保接口失败不影响退药流程,只记录日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            data: JSON.stringify(tracCodgParams), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            success: function (tracRes) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.log('追溯码查询结果:', tracRes); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (tracRes.code === 0 && tracRes.data && tracRes.data.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 将追溯码添加到医保接口参数中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    for (let k = 0; k < tracRes.data.length; k++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        let tracItem = tracRes.data[k]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (tracItem.drugTracCodg && tracItem.drugTracCodg.trim() !== '') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ybData.drugtracinfo.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                drugTracCodg: tracItem.drugTracCodg.trim() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    console.log('成功获取追溯码:', ybData.drugtracinfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    console.log('未找到追溯码信息'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 追溯码查询完成后,调用医保接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                callYbReturnGoodsItemWithData(ybData, item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             error: function (xhr, status, error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                console.error('医保退药接口调用失败:', error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                // 医保接口失败不影响退药流程,只记录日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.error('追溯码查询失败:', error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 即使追溯码查询失败,也要调用医保接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                callYbReturnGoodsItemWithData(ybData, item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 调用医保退药接口(带追溯码数据) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param ybData 医保接口参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param item 退药药品信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function callYbReturnGoodsItemWithData(ybData, item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 如果没有追溯码,添加空数组(保持数据结构一致) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (ybData.drugtracinfo.length === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ybData.drugtracinfo = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('调用医保退药接口,药品:', item.drugname, '参数:', ybData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 调用医保接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    $.ajax({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        type: "POST", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        url: '/thmz/Yb/returnGoodsItem', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        contentType: "application/json;charset=UTF-8", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dataType: "json", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        headers: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'Accept': 'application/json', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'Authorization': 'Bearer ' + localStorage.getItem("token") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        data: JSON.stringify(ybData), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        success: function (res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log('医保退药接口调用成功:', res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (res.code !== 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.error('医保退药接口调用失败:', res.message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 医保接口失败不影响退药流程,只记录日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        error: function (xhr, status, error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.error('医保退药接口调用失败:', error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 医保接口失败不影响退药流程,只记录日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |