Browse Source

门诊中医诊断优化

lihong 3 months ago
parent
commit
0487d9c1f3

+ 1 - 1
src/main/java/cn/hnthyy/thmz/mapper/his/mz/MzyZdChargeTypeMapper.java

@@ -118,7 +118,7 @@ public interface MzyZdChargeTypeMapper {
             " (#{code}, #{name}, #{pyCode}, #{selfCode}, #{reqFee}, 0, #{clinicFee}, #{othFee}, 0, 0, #{delFlag}, #{reqType}, #{sortNo}, '1', NULL,#{isrubric},#{rubricTxt},#{chargeCode})")
     int insetMzyZdChargeType(MzyZdChargeType mzyZdChargeType);
 
-    @Select(" select rtrim(code) code, rtrim(name) name, charge_amount chargeAmount  from zd_charge_item where name like '%诊查%' and isnull(del_flag,'0') != 1 ")
+    @Select(" select rtrim(code) code, rtrim(name) name, charge_amount chargeAmount  from zd_charge_item where   isnull(del_flag,'0') != 1  and (name like '%诊查%' or name like '%门诊诊疗%')")
     List<ZdChargeItem> selectMzChargeItem();
 
 }

+ 8 - 6
src/main/java/cn/hnthyy/thmz/service/impl/his/mz/MzChargeDetailServiceImpl.java

@@ -1642,19 +1642,21 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
         if(StrUtil.isBlank(mzPrescriptionVo.getDoctorCode()) || StrUtil.isBlank(mzPrescriptionVo.getPatientId()) || mzPatientMi == null){
             return;
         }
-        if(CollUtil.isNotEmpty(mzPrescriptionVo.getMzChargeDetailList()) && mzPrescriptionVo.getMzChargeDetailList().stream().anyMatch(item->Constants.GHF.equals(item.getBillItemCode()))){
+        ZdChargeItem zdChargeItem = zdChargeItemService.queryZdChargeItemGhFeeByEmpCode(mzPrescriptionVo.getDoctorCode());
+        if(zdChargeItem == null || zdChargeItem.getChargeAmount() == null || BigDecimal.ZERO.compareTo(zdChargeItem.getChargeAmount()) == 0) return;
+        BeanUtil.trimStrFields(zdChargeItem);
+        if(CollUtil.isNotEmpty(mzPrescriptionVo.getMzChargeDetailList()) && mzPrescriptionVo.getMzChargeDetailList().stream().anyMatch(item->zdChargeItem.getCode().equals(item.getChargeItemCode()))){
         //    先删除防止重复
             List<MzChargeDetail> mzChargeDetailList = mzPrescriptionVo.getMzChargeDetailList();
             Iterator<MzChargeDetail> iterator = mzChargeDetailList.iterator();
             while (iterator.hasNext()){
                 MzChargeDetail chargeDetail = iterator.next();
-                if(Constants.GHF.equals(chargeDetail.getBillItemCode())){
+                if(zdChargeItem.getCode().equals(chargeDetail.getChargeItemCode())){
                     iterator.remove();
                 }
             }
         }
         if(NumberEnum.ONE.getCode().equals(mzPrescriptionVo.getGhFeeFlag())){
-           ZdChargeItem zdChargeItem = zdChargeItemService.queryZdChargeItemGhFeeByEmpCode(mzPrescriptionVo.getDoctorCode());
            if(zdChargeItem == null || zdChargeItem.getChargeAmount() == null || BigDecimal.ZERO.compareTo(zdChargeItem.getChargeAmount()) == 0){
                throw new MzException("选择收取挂号费,您未配置收取的挂号类别或配置的费用已停用,请先配置!");
            }
@@ -1675,7 +1677,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
             newMzChargeDetail.setDrugUnit(zdChargeItem.getChargeUnit());
             newMzChargeDetail.setDrugQuan(1D);
             newMzChargeDetail.setUnitPrice(zdChargeItem.getChargeAmount());
-            newMzChargeDetail.setBillItemCode(Constants.GHF);
+            newMzChargeDetail.setBillItemCode(zdChargeItem.getBillItemMz());
             newMzChargeDetail.setOrigPrice(zdChargeItem.getChargeAmount());
             newMzChargeDetail.setQuantity(1D);
             newMzChargeDetail.setPayMark(PayMarkEnum.NO_CHARGE.code);
@@ -5849,7 +5851,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
                     returnList.add(md);
                 }
             } else if ("2".equals(billItemCode)) {
-                if (!otherTypes.contains(md.getBillItemCode()) && (ypZdGroupName !=null && !NumberEnum.ONE.getCode().equals(ypZdGroupName.getYcFlag()))) {
+                if (!otherTypes.contains(md.getBillItemCode()) && !(ypZdGroupName !=null && NumberEnum.ONE.getCode().equals(ypZdGroupName.getYcFlag()))) {
                     returnList.add(md);
                 }
                 //手机自助缴费的查看全部
@@ -5906,7 +5908,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
         newMzVisitTable.setFirstOrNot(mzPrescriptionVo.getFirstOrNot());
         newMzVisitTable.setReceiveFlag(YesNoEnum.NO.code);
         newMzVisitTable.setResponceType(responseType);
-        newMzVisitTable.setTcmIcdCode(mzPrescriptionVo.getIcdCode());
+        newMzVisitTable.setTcmIcdCode(mzPrescriptionVo.getTcmIcdCode());
         newMzVisitTable.setTcmIcdText(mzPrescriptionVo.getTcmIcdText());
         newMzVisitTable.setIcdCodeNew(mzPrescriptionVo.getIcdCode());
         newMzVisitTable.setIcdTextNew(mzPrescriptionVo.getIcdText());

+ 11 - 2
src/main/resources/static/js/mz/clinic.js

@@ -3603,6 +3603,14 @@ function editPrescription(jsonData, type) {
         $("#healthEducation").val(jsonData.mzBlRecord.emrJkjy);
     }
 
+    if(!stringIsBlank(jsonData.tcmIcdCode)){
+       let tcmIcdCodes =  jsonData.tcmIcdCode.split(",");
+       let tcmIcdTexts =  jsonData.tcmIcdText.split(",");
+        for (let i = 0; i < tcmIcdCodes.length; i++) {
+            fitTcmDiagnoseValue(tcmIcdTexts[i],tcmIcdCodes[i])
+        }
+    }
+
     var patientAllergenInfoList = jsonData.patientAllergenInfoList;
     if (patientAllergenInfoList != null && patientAllergenInfoList.length > 0) {
         var zdAllergen = [];
@@ -7963,8 +7971,8 @@ function removetcmDiagnoseValue(code) {
     if (childrenIndex == 0) {
         $($("#tcmDiagnoseTags").children("span")[childrenIndex]).removeClass("el-tag--secondaryDiagnosis").addClass("el-tag--mainDiagnosis");
     }
-    var diagnoseValue = $("#tcmDiagnoseValue").val();
-    $("#tcmDiagnoseValue").val(diagnoseValue.replace(code, ""));
+    let tcmDiagnoseValue = $("#tcmDiagnoseValue").val();
+    $("#tcmDiagnoseValue").val(tcmDiagnoseValue.replace(code, ""));
     $("#tcmDiagnoseTags").parent().parent().css("height", $("#tcmDiagnoseTags").height());
 }
 
@@ -10679,6 +10687,7 @@ function getParamsForpPrescription(type) {
             }
         }
     }
+    jsonData.icdText = icdText;
     //设置中医诊断名称
     let tcmIcdText = null;
     let tcmTagsTexts = $("span.el-select__tcmtags-text");

+ 1 - 1
src/main/resources/templates/mz/clinic.html

@@ -5299,7 +5299,7 @@
                         <div class="col-md-6 col-sm-6 col-xs-12 item">
                             <label class="control-label col-md-4 col-sm-4 col-xs-12" for="contagionText">报告单位
                             </label>
-                            <div class="col-md-8 col-sm-8 col-xs-12" style="padding-top: 8px;" class="hospitalName">
+                            <div class="col-md-8 col-sm-8 col-xs-12 hospitalName" style="padding-top: 8px;">
                                 长沙泰和医院
                             </div>
                         </div>