Просмотр исходного кода

优化:发药窗口打印标签或者注射单后,更改当前行颜色

WANGJIALIANG 4 лет назад
Родитель
Сommit
68286c0e47

+ 5 - 0
src/main/java/cn/hnthyy/thmz/mapper/his/mz/MzPharmacyMapper.java

@@ -431,7 +431,12 @@ public interface MzPharmacyMapper {
             " and isnull(yp_zd_dict.class_code,'') <![CDATA[<>]]> '210100'",
             " and mz_charge_detail.windows_no_yf  like (case #{groupNoOut} when '81' then '%' else '04' end ) ",
             " and ( mz_charge_detail.pay_mark='0' and mz_charge_detail.serial_no <![CDATA[>]]> 0)",
+            "<when test='isSendAndMatch==0'>",
             " and (isnull(mz_charge_detail.confirm_flag,'0') in('2','5') OR mz_charge_detail.print_flag_yj='1') ",
+            "</when>",
+            "<when test='isSendAndMatch==1'>",
+            " and (isnull(mz_charge_detail.confirm_flag,'0') in('0','2','5') OR mz_charge_detail.print_flag_yj='1') ",
+            "</when>",
             " and (isnull(mz_charge_detail.confirm_zs,'') <![CDATA[<>]]> '1' ",
             " and (isnull(mz_charge_detail.confirm_zs,'') <![CDATA[<>]]> '4') )) AS A ",
             "</script>"})

+ 25 - 3
src/main/resources/static/js/mz/west_pharmacy_send.js

@@ -3,6 +3,7 @@ var LODOP; //声明为全局变量
 var zsdPrintIndex;
 var bqPrintIndex;
 var fskPrintIndex;
+var printRecord = new Set();
 $(function () {
     openSocket("FY");
 
@@ -152,6 +153,12 @@ function sendMedicineProcessing(realNo, groupNo, orderNo, receiptNo, times, pati
             }
             if (res.code == 0) {
                 successMesage(res);
+                //清除打印记录缓存
+                for (let val of printRecord.values()) {
+                    if(val.patientId == patientId && val.times == times && val.orderNo == orderNo){
+                        printRecord.delete(val);
+                    }
+                }
                 initTbTable();
             } else {
                 errorMesage(res);
@@ -186,8 +193,8 @@ function initTbTable() {
         queryParams: queryParams,           //传递参数(*)
         sidePagination: "server",           //分页方式:client客户端分页,server服务端分页(*)
         pageNumber: 1,                       //初始化加载第一页,默认第一页
-        pageSize: 10,                       //每页的记录行数(*)
-        pageList: [10, 25, 50, 100],        //可供选择的每页的行数(*)
+        pageSize: 15,                       //每页的记录行数(*)
+        pageList: [20, 40, 70, 100],        //可供选择的每页的行数(*)
         search: false,                       //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
         singleSelect: true,           // 单选checkbox
         strictSearch: true,
@@ -309,6 +316,16 @@ function initTbTable() {
                 }
             }*/
         ],
+        rowStyle: function (row, index) {
+            if ($("#confirmFlagSearch").val() == 0 || $("#confirmFlagSearch").val() == 5) {
+                for (let val of printRecord.values()) {
+                    if(val.patientId == row.patientId && val.times == row.times && val.orderNo == row.orderNo){
+                        return { css: { 'background-color': 'aliceblue' } };
+                    }
+                }
+            }
+            return {css:{}}
+        },
         onClickRow: function (row) {
             if (sendRefundGroup == 1) {
                 fitfymx(row.patientId, row.times, row.receiptNo, row.orderNo, row.groupNo);
@@ -620,6 +637,11 @@ function sendMedicineProcessingRad() {
  * 打印注射卡口服药品
  */
 function printInjectionOralMedicine(patientId, orderNo, realNo, times, receiptNo) {
+    if($("#confirmFlagSearch").val() == 0 || $("#confirmFlagSearch").val() == 5 ){
+        //将打印的处方缓存
+        printRecord.add({patientId:patientId,orderNo:orderNo,times:times});
+    }
+    initTbTable();
     var tem = {
         patientId: patientId,
         orderNo: orderNo,
@@ -938,7 +960,7 @@ function cleanParams() {
     $('#reportrange span').html(moment().format('YYYY-MM-DD') + ' - ' + moment().format('YYYY-MM-DD'));
     $("#nameSearch").val(null);
     $("#patientId_or_cardNo").val(null);
-    $("#patientIdSearch").val(null);
+    $("#patientId").val(null);
     $("#realNoSearch").val(null);
     var sendRefundGroup = getIndex("send_refund_group");
     sendRefundGroup == 0 ? $("#confirmFlagSearch").selectpicker('val', 0) : $("#confirmFlagSearch").selectpicker('val', 2);