| 
					
				 | 
			
			
				@@ -956,7 +956,7 @@ function initDetailTable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 $(".ui-jqgrid-sdiv").hide(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        colNames: ['发药', '拒退', '批号', '单号', '住院号', '床号', '次数', '姓名', '药品名称', '规格', '数量', '原发药量', '零售价', '金额', '执行时间', '医嘱', '给药方式','确认时间' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        colNames: ['发药', '拒退', '批号', '追溯码', '单号', '住院号', '床号', '次数', '姓名', '药品名称', '规格', '数量', '原发药量', '零售价', '金额', '执行时间', '医嘱', '给药方式','确认时间' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             , '频率', '剂量', '单位', '生日', '性别', '身份', '诊断', '科室', '病室', '是否婴儿', '请领人', '长期标志', '药品类型', '给药方式编码', '医嘱号', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             '自费标志', '单列', '贵重', '毒麻', '审批标志', '药房编码', '规格', '医生编码', '药单类别', '药品编码', '口服开始时间', '口服结束时间', '帐页号', '流水号', '医生', '医保编码','执行科室(医技药单用)'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         colModel: [ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1000,6 +1000,18 @@ function initDetailTable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 hidden: (pageClass == 'T' || pageClass == 'HT') ? true : false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 edittype: "text" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                name: 'drugTracCodg', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                index: 'drugTracCodg', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                align: 'center', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                width: 40, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                editable: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                hidden: (pageClass == 'T' || pageClass == 'HT') ? true : false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                edittype: "text", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                formatter: function (cellvalue, options, rowObject) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return cellvalue || ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {name: 'pageNo', index: 'pageNo', align: 'center', width: 30, hidden: true}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {name: 'inpatientNo', index: 'inpatientNo', align: 'center', width: 30}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {name: 'bedNo', index: 'bedNo', align: 'center', width: 30, hidden: pageClass == 'A' ? true : false}, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1109,6 +1121,19 @@ function initDetailTable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (celname === 'manuNo') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 return true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (celname === 'drugTracCodg') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 处理追溯码输入 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let rowData = $("#tb_detail_table").getRowData(rowid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let $cell = $("#" + rowid + "_drugTracCodg"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 如果输入的是追溯码(通常是一串数字或字母组合) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (value && value.trim().length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 验证并添加追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    validateAndAddTracCodgWard(value.trim(), rowData, $cell); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return false; // 阻止默认的单元格保存行为 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             let data = $("#tb_detail_table").getRowData(rowid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             $("#tb_detail_table").setCell(rowid, iCol, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (value == null || value == 0) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1141,11 +1166,13 @@ function initDetailTable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         $("#t_tb_detail_table").append("<button class='registration-no-color-foot-button' title='确认药单' id='detail_save' onclick='save(1)' style='color: green;margin-left: 10px;'><i class='fa fa-floppy-o'></i></button>"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         $("#t_tb_detail_table").append("<button class='registration-no-color-foot-button' title='保存批号' id='manu_save_mx' style='color: green;margin-left: 10px;'><i class='fa fa-floppy-o'></i></button>"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        $("#t_tb_detail_table").append("<button class='registration-no-color-foot-button' title='扫码框聚焦' id='btn_restore_scan' style='color: blue;margin-left: 10px;'><i class='fa fa-barcode'></i></button>"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     $("#manu_save_mx").click(function (t) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var obj = $('#tb_detail_table'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var rowIds = obj.getDataIDs(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var arrayData = new Array(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var tracCodgArrayData = new Array(); // 追溯码数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (rowIds.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             for (var i = 0; i < rowIds.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 let rowDate = obj.getRowData(rowIds[i]); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1158,16 +1185,55 @@ function initDetailTable() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         manuNo: rowDate.manuNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 保存追溯码数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!isEmpty(rowDate.drugTracCodg)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    tracCodgArrayData.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        actOrderNo: rowDate.actOrderNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        chargeCode: rowDate.chargeCode, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        inpatientNo: rowDate.inpatientNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        orderDate: rowDate.occTime, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        drugTracCodg: rowDate.drugTracCodg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            url: '/modifyManuNoZy', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            method: 'POST', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            data: JSON.stringify(arrayData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            successMesage(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            initButtonChange("#qld", 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 保存批号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (arrayData.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                url: '/modifyManuNoZy', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                method: 'POST', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data: JSON.stringify(arrayData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                successMesage(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 保存追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (tracCodgArrayData.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                url: '/thmz/saveDrugTracCodg', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                method: 'POST', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data: JSON.stringify(tracCodgArrayData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (res.code === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    successMesageSimaple("追溯码保存成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    errorMesage(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }).catch((error) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.error('保存追溯码失败:', error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                errorMesageSimaple("保存追溯码失败"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        initButtonChange("#qld", 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 恢复扫码框聚焦按钮点击事件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    $("#btn_restore_scan").click(function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        $("#barCode").focus(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        successMesageSimaple("扫码框已激活,可以继续扫码批号"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2108,3 +2174,146 @@ function saveSummaryData(printFlag, summaryData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 验证并添加追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param tracCodg 追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param rowData 行数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param $element 单元格元素 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function validateAndAddTracCodgWard(tracCodg, rowData, $element) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 构建验证数据,适配住院药房的数据结构 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let validateData = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        drugTracCodg: tracCodg, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        patientId: rowData.inpatientNo,  // 住院药房使用inpatientNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        times: rowData.admissTimes,      // 住院药房使用admissTimes 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        receiptNo: rowData.pageNo,       // 住院药房使用pageNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        orderNo: rowData.actOrderNo,     // 住院药房使用actOrderNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        itemNo: rowData.serial,          // 住院药房使用serial 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        chargeItemCode: rowData.chargeCode, // 住院药房使用chargeCode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        drugName: rowData.drugName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        specification: rowData.specification 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('住院药房验证追溯码参数:', validateData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('行数据:', rowData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    $.ajax({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        type: "POST", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        url: '/thmz/validateDrugTracCodgForDispensing', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        contentType: "application/json;charset=UTF-8", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dataType: "json", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        headers: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'Accept': 'application/json', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            'Authorization': 'Bearer ' + localStorage.getItem("token") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        data: JSON.stringify(validateData), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        success: function (res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log('验证响应:', res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (res.code == 0 && res.data && res.data.isValid) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 验证成功,添加到追溯码集合 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                addTracCodgToCellWard(tracCodg, $element); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                successMesage(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 验证成功后,保持单元格可编辑状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                $element.focus(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 验证失败 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                errorMesage(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 验证失败时,清理掉无效的追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let currentContent = $element.html(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let codes = currentContent.split('<br>').filter(code => code.trim().length > 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 去掉最后一个追溯码(无效的追溯码) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (codes.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    codes.pop(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 重新设置单元格内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    let newContent = codes.join('<br>'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (newContent) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        newContent += '<br>'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    $element.html(newContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 保持焦点在单元格末尾 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    $element.focus(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    let range = document.createRange(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    let selection = window.getSelection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    range.selectNodeContents($element[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    range.collapse(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    selection.removeAllRanges(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    selection.addRange(range); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        error: function (xhr, status, error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.error('验证请求失败:', error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            errorMesageSimaple("验证请求失败"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 错误时也清理掉无效的追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let currentContent = $element.html(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let codes = currentContent.split('<br>').filter(code => code.trim().length > 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 去掉最后一个追溯码(无效的追溯码) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (codes.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                codes.pop(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 重新设置单元格内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let newContent = codes.join('<br>'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (newContent) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    newContent += '<br>'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                $element.html(newContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 保持焦点在单元格末尾 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                $element.focus(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let range = document.createRange(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let selection = window.getSelection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                range.selectNodeContents($element[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                range.collapse(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                selection.removeAllRanges(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                selection.addRange(range); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 添加追溯码到单元格(住院药房版本) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param tracCodg 追溯码(单个追溯码,不包含分隔符) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @param $element 单元格元素 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function addTracCodgToCellWard(tracCodg, $element) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let currentValue = $element.html(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('addTracCodgToCellWard 开始'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('传入的追溯码:', tracCodg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('当前单元格内容:', currentValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (isEmpty(currentValue)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 如果单元格为空,直接设置追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log('单元格为空,直接设置追溯码'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        $element.html(tracCodg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 检查是否已存在该追溯码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let existingCodes = currentValue.split('<br>'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log('已存在的追溯码列表:', existingCodes); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log('是否已存在:', existingCodes.includes(tracCodg)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!existingCodes.includes(tracCodg)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 如果不存在,添加<br>分隔符后追加 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let newValue = currentValue + '<br>' + tracCodg; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log('添加追溯码,新内容:', newValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            $element.html(newValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 追溯码已存在,显示提示 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log('追溯码已存在,显示提示'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (typeof PNotify !== 'undefined') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                new PNotify({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    title: '提示', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    text: '该追溯码已添加', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    type: 'info', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    delay: 2000 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    console.log('addTracCodgToCellWard 结束,最终单元格内容:', $element.html()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 |