hurugang 3 роки тому
батько
коміт
18d16e2678

+ 64 - 7
src/main/java/cn/hnthyy/thmz/controller/CommonController.java

@@ -42,6 +42,8 @@ public class CommonController {
     private ZdIcdCodeService zdIcdCodeService;
     @Autowired
     private UserService userService;
+    @Autowired
+    private MzYshZdFysmService mzYshZdFysmService;
     //websocket 地址前半部分
     @Value("${webSocketHost}")
     private String webSocketHost;
@@ -421,19 +423,19 @@ public class CommonController {
 
 
     /**
-     * 查询所有频次
+     * 查询西药所有频次
      *
      * @return
      */
     @UserLoginToken
-    @RequestMapping(value = "/getOrderFrequencys", method = {RequestMethod.GET})
-    public Map<String, Object> getOrderFrequencys() {
+    @RequestMapping(value = "/getXyOrderFrequencys", method = {RequestMethod.GET})
+    public Map<String, Object> getXyOrderFrequencys() {
         Map<String, Object> resultMap = new HashMap<>();
         try {
             resultMap.put("code", 0);
-            resultMap.put("message", "查询所有频次成功");
+            resultMap.put("message", "查询西药所有频次成功");
             List<Map<String, Object>> data = new ArrayList<>();
-            Arrays.stream(OrderFrequencyEnum.values()).forEach(orderFrequencyEnum -> {
+            OrderFrequencyEnum.WESTERN_MEDICINE_ORDER_FREQUENCY.stream().forEach(orderFrequencyEnum -> {
                 Map<String, Object> temp = new HashMap<>();
                 temp.put("code", orderFrequencyEnum.code);
                 temp.put("name", orderFrequencyEnum.name);
@@ -444,14 +446,69 @@ public class CommonController {
             return resultMap;
         } catch (Exception e) {
             e.printStackTrace();
-            log.error("查询所有频次失败,错误信息{}", e);
+            log.error("查询西药所有频次失败,错误信息{}", e);
             resultMap.put("code", -1);
-            resultMap.put("message", "查询所有频次失败");
+            resultMap.put("message", "查询西药所有频次失败");
             return resultMap;
         }
     }
 
 
+    /**
+     * 查询所有的中药服用说明
+     *
+     * @return
+     */
+    @UserLoginToken
+    @RequestMapping(value = "/getAllMzYshZdFysm", method = {RequestMethod.GET})
+    public Map<String, Object> getAllMzYshZdFysm() {
+        Map<String, Object> resultMap = new HashMap<>();
+        try {
+            resultMap.put("code", 0);
+            resultMap.put("message", "查询所有的中药服用说明成功");
+            resultMap.put("data", mzYshZdFysmService.queryAllMzYshZdFysm());
+            return resultMap;
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.error("查询所有的中药服用说明失败,错误信息{}", e);
+            resultMap.put("code", -1);
+            resultMap.put("message", "查询所有的中药服用说明失败");
+            return resultMap;
+        }
+    }
+
+
+    /**
+     * 查询中药所有频次
+     *
+     * @return
+     */
+    @UserLoginToken
+    @RequestMapping(value = "/getZyOrderFrequencys", method = {RequestMethod.GET})
+    public Map<String, Object> getZyOrderFrequencys() {
+        Map<String, Object> resultMap = new HashMap<>();
+        try {
+            resultMap.put("code", 0);
+            resultMap.put("message", "查询中药所有频次成功");
+            List<Map<String, Object>> data = new ArrayList<>();
+            OrderFrequencyEnum.TRADITIONAL_CHINESE_MEDICINE_ORDER_FREQUENCY.stream().forEach(orderFrequencyEnum -> {
+                Map<String, Object> temp = new HashMap<>();
+                temp.put("code", orderFrequencyEnum.code);
+                temp.put("name", orderFrequencyEnum.name);
+                temp.put("times", orderFrequencyEnum.times);
+                data.add(temp);
+            });
+            resultMap.put("data", data);
+            return resultMap;
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.error("查询中药所有频次失败,错误信息{}", e);
+            resultMap.put("code", -1);
+            resultMap.put("message", "查询中药所有频次失败");
+            return resultMap;
+        }
+    }
+
 
     /**
      * 查询所有给药方式

+ 8 - 7
src/main/java/cn/hnthyy/thmz/controller/mz/ClinicController.java

@@ -62,6 +62,7 @@ public class ClinicController {
     private MzChargeDetailService mzChargeDetailService;
     @Autowired
     private MzYjReqService mzYjReqService;
+
     /**
      * 叫号通知
      *
@@ -474,17 +475,17 @@ public class ClinicController {
                 //住院收费上线前的临时代码,因为老的住院收费没有变更住院证状态 开始
                 if (ClinicStatusEnum.HAD_CLINIC.code.equals(cl.getClinicStatus())) {
                     MzBlRecord mzBlRecord = mzBlRecordService.queryMzBlRecordByPatientIdAndTimes(cl.getPatientId(), cl.getTimes());
-                    if (mzBlRecord.getEmrProcess() != null && mzBlRecord.getEmrProcess().contains("收住院")) {
-                        MzChargeDetail mzChargeDetail =new MzChargeDetail(cl.getPatientId(), cl.getTimes());
+                    if (mzBlRecord != null && mzBlRecord.getEmrProcess() != null && mzBlRecord.getEmrProcess().contains("收住院")) {
+                        MzChargeDetail mzChargeDetail = new MzChargeDetail(cl.getPatientId(), cl.getTimes());
                         mzChargeDetail.setReceiptNo(cl.getReceiptNo());
                         mzChargeDetail.setPayMark(PayMarkEnum.NO_CHARGE.code);
-                        List<MzChargeDetail> mzChargeDetails=mzChargeDetailService.queryChargeDetail(mzChargeDetail);
-                        if(mzChargeDetails!=null && mzChargeDetails.size()>0){
+                        List<MzChargeDetail> mzChargeDetails = mzChargeDetailService.queryChargeDetail(mzChargeDetail);
+                        if (mzChargeDetails != null && mzChargeDetails.size() > 0) {
                             continue;
                         }
-                        MzYjReq mzYjReq =new MzYjReq(cl.getPatientId(), cl.getTimes());
-                        List<MzYjReq> mzYjReqList=mzYjReqService.queryNotPayMzYjReq(mzYjReq);
-                        if(mzYjReqList!=null && mzYjReqList.size()>0){
+                        MzYjReq mzYjReq = new MzYjReq(cl.getPatientId(), cl.getTimes());
+                        List<MzYjReq> mzYjReqList = mzYjReqService.queryNotPayMzYjReq(mzYjReq);
+                        if (mzYjReqList != null && mzYjReqList.size() > 0) {
                             continue;
                         }
                         Integer num = zyActpatientService.queryZyActpatientByMzNo(cl.getPatientId());

+ 14 - 0
src/main/java/cn/hnthyy/thmz/entity/his/zd/ZdCommon.java

@@ -0,0 +1,14 @@
+package cn.hnthyy.thmz.entity.his.zd;
+
+import lombok.Data;
+
+/**
+ * 通用字典类
+ */
+@Data
+public class ZdCommon {
+    //科室编码
+    private String code;
+    //科室名称
+    private String name;
+}

+ 13 - 1
src/main/java/cn/hnthyy/thmz/enums/OrderFrequencyEnum.java

@@ -50,7 +50,9 @@ public enum OrderFrequencyEnum {
     AFTER_MEALS("三餐后","三餐后",3),
     BEFORE_MEALS("三餐前","三餐前",3),
     ONCE_A_DAY("一次/单日","一次/单日",1),
-    ONCE_TWO_DAY("一次/双日","一次./双日",2);
+    TWICE_ONE_DAY("一天两次","一天两次",2),
+    ONCE_TWO_DAY("一次/双日","一次./双日",1);
+
 
     public String code;
     public String name;
@@ -62,6 +64,16 @@ public enum OrderFrequencyEnum {
         this.times=times;
     }
 
+    /**
+     * 中药频率
+     */
+    public static List<OrderFrequencyEnum> TRADITIONAL_CHINESE_MEDICINE_ORDER_FREQUENCY=Arrays.asList(AFTER_MEALS,BEFORE_MEALS,ONCE_A_DAY,TWICE_ONE_DAY,ONCE_TWO_DAY);
+
+    /**
+     * 西药频率
+     */
+    public static List<OrderFrequencyEnum> WESTERN_MEDICINE_ORDER_FREQUENCY=Arrays.asList(ALWAYS,BID,IRREG,ONCE,Q12H,Q1H,Q2H,Q30FZ,Q3H,Q4H,Q5H,Q6H,Q7H,Q8H,QD,QID,QN,QOD,
+            QWD,TID,W1D,W1D2,W1D3,W1D4,W1D5,W1D6,W2D,W2D1,W2D2,W2D3,W2D4,W3D,W3D1,W3D2,W3D3,W3D4,W5D,PBG_BID,BM_BID);
     /**
      * 根据编码查询对应的类型
      * @param code

+ 15 - 0
src/main/java/cn/hnthyy/thmz/mapper/his/zd/MzYshZdFysmMapper.java

@@ -0,0 +1,15 @@
+package cn.hnthyy.thmz.mapper.his.zd;
+
+import cn.hnthyy.thmz.entity.his.zd.ZdCommon;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+public interface MzYshZdFysmMapper {
+    /**
+     * 查询所有的中药服用说明
+     * @return
+     */
+    @Select("SELECT  mz_ysh_zd_fysm.code ,mz_ysh_zd_fysm.name   FROM mz_ysh_zd_fysm  ")
+    List<ZdCommon> selectAllMzYshZdFysm();
+}

+ 13 - 0
src/main/java/cn/hnthyy/thmz/service/his/zd/MzYshZdFysmService.java

@@ -0,0 +1,13 @@
+package cn.hnthyy.thmz.service.his.zd;
+
+import cn.hnthyy.thmz.entity.his.zd.ZdCommon;
+
+import java.util.List;
+
+public interface MzYshZdFysmService {
+    /**
+     * 查询所有的中药服用说明
+     * @return
+     */
+    List<ZdCommon> queryAllMzYshZdFysm();
+}

+ 19 - 0
src/main/java/cn/hnthyy/thmz/service/impl/his/zd/MzYshZdFysmServiceImpl.java

@@ -0,0 +1,19 @@
+package cn.hnthyy.thmz.service.impl.his.zd;
+
+import cn.hnthyy.thmz.entity.his.zd.ZdCommon;
+import cn.hnthyy.thmz.mapper.his.zd.MzYshZdFysmMapper;
+import cn.hnthyy.thmz.service.his.zd.MzYshZdFysmService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+@Service
+public class MzYshZdFysmServiceImpl implements MzYshZdFysmService {
+    @SuppressWarnings("all")
+    @Autowired
+    private MzYshZdFysmMapper mzYshZdFysmMapper;
+    @Override
+    public List<ZdCommon> queryAllMzYshZdFysm() {
+        return mzYshZdFysmMapper.selectAllMzYshZdFysm();
+    }
+}

+ 76 - 10
src/main/resources/static/js/mz/clinic.js

@@ -3099,7 +3099,7 @@ function initTemplateKindTypeSelect(templateKindTypeId) {
 function initOrderFrequencys(id, async) {
     $.ajax({
         type: "GET",
-        url: '/thmz/getOrderFrequencys',
+        url: '/thmz/getXyOrderFrequencys',
         dataType: "json",
         headers: {'Accept': 'application/json', 'Authorization': 'Bearer ' + localStorage.getItem("token")},
         async: async,
@@ -3120,6 +3120,61 @@ function initOrderFrequencys(id, async) {
 }
 
 
+/**
+ * 初始中药频次下拉选
+ * @param id
+ * @param async 是否是异步 true 异步 false 同步
+ */
+function initZyOrderFrequencys(id, async) {
+    $.ajax({
+        type: "GET",
+        url: '/thmz/getZyOrderFrequencys',
+        dataType: "json",
+        headers: {'Accept': 'application/json', 'Authorization': 'Bearer ' + localStorage.getItem("token")},
+        async: async,
+        success: function (res) {
+            if (res == '401' || res == 401) {
+                window.location.href = '/thmz/login/view'
+                return;
+            }
+            var html = '';
+            $.each(res.data, function (commentIndex, comment) {
+                html += '<option value="' + comment.code + '" desc="' + comment.times + '">' + comment.name + '(' + comment.code + ')' + '</option>';
+            });
+            $('#' + id).empty();
+            $('#' + id).html(html);
+            $('#' + id).selectpicker('refresh');
+        }
+    });
+}
+
+
+/**
+ * 初始中药服用说明
+ */
+function initAllMzYshZdFysm() {
+    $.ajax({
+        type: "GET",
+        url: '/thmz/getAllMzYshZdFysm',
+        dataType: "json",
+        headers: {'Accept': 'application/json', 'Authorization': 'Bearer ' + localStorage.getItem("token")},
+        async: false,
+        success: function (res) {
+            if (res == '401' || res == 401) {
+                window.location.href = '/thmz/login/view'
+                return;
+            }
+            var html = '';
+            $.each(res.data, function (commentIndex, comment) {
+                html += '<option value="' + comment.code + '">' + comment.name + '</option>';
+            });
+            $('.useType').empty();
+            $('.useType').html(html);
+            $('.useType').selectpicker('refresh');
+        }
+    });
+}
+
 /**
  * 初始用药方式下拉选
  */
@@ -5716,7 +5771,7 @@ function checkZyInfo(code, serial, async) {
                     //如果
                     if ($("#zyTab").find("li") == null || $("#zyTab").find("li").length == 0) {
                         initNavTabs(1);
-                        $("input.zyfs").val(1);
+                        //$("input.zyfs").val(1);
                     }
                     $("#chinese_medicine_name").val(res.data.name);
                     $("#chinese_medicine_name").blur();
@@ -6394,13 +6449,14 @@ function initNavTabs(index) {
     html += '</div></div></div>';
     $("#" + tabContentId).html(html);
     if (index == 1) {
-        var useType = '<option value="1">饭前温服</option><option value="2">饭后温服</option><option value="3">饭前凉服</option><option value="4">饭后凉服</option><option value="5">顿服</option><option value="6">冲服</option><option value="7">外用</option>';
-        $('.useType').html(useType);
-        $('.useType').selectpicker('refresh');
+        // var useType = '<option value="1">饭前温服</option><option value="2">饭后温服</option><option value="3">饭前凉服</option><option value="4">饭后凉服</option><option value="5">顿服</option><option value="6">冲服</option><option value="7">外用</option>';
+        // $('.useType').html(useType);
+        // $('.useType').selectpicker('refresh');
         var water = '<option value="加凉水">加凉水</option><option value="加温水">加温水</option><option value="加开水">加开水</option><option value="加冰水">加冰水</option><option value="加糖水">加糖水</option>';
         $('.water').html(water);
         $('.water').selectpicker('refresh');
-        initOrderFrequencys("zy_orderFrequency_1", false);
+        initAllMzYshZdFysm();
+        initZyOrderFrequencys("zy_orderFrequency_1", false);
         initZySupplyTypes("zy_supplyType_1", false);
 
     }
@@ -7243,6 +7299,16 @@ function getParamsForpPrescription(type) {
     if (zyTabContents != null && zyTabContents.length > 0) {
         orderNo++;
         var zyfs = $("input.zyfs").val();
+        if (zyfs == null || zyfs == "") {
+            if (type == 3) {
+                zyfs = 1;
+            } else {
+                errorMesageSimaple("中药付数为空,请设置!");
+                $("#messageButton").attr("disabled", false);
+                throw new Error('中药付数为空,请设置!');
+            }
+
+        }
         //中药的类型
         var currentZyClassType = $("#current_zyClassType").val();
         for (var i = 0; i < zyTabContents.length; i++) {
@@ -10070,12 +10136,12 @@ function siReadCard() {
 function xyTableOnClick(paneId) {
     setTimeout(function () {
         $("#xyTabContent div.tab-pane").each(function (index, obj) {
-            var targetId=$(obj).attr("id");
+            var targetId = $(obj).attr("id");
             //如果处方内容是空的,就删除没有处方
-            if($(obj).find("div.cf_content").children().length==0){
+            if ($(obj).find("div.cf_content").children().length == 0) {
                 $(obj).remove();
-                $("[href='#"+targetId+"']").parent().remove();
-            }else  if (targetId == paneId) {
+                $("[href='#" + targetId + "']").parent().remove();
+            } else if (targetId == paneId) {
                 $(obj).addClass("active").addClass("in");
             } else {
                 $(obj).removeClass("active").removeClass("in");