소스 검색

明细上传耗材

yeguodong 3 달 전
부모
커밋
bdef2b81d5

+ 3 - 1
src/main/java/thyyxxk/simzfeeoprnsystm/dao/SiMzDao.java

@@ -80,7 +80,9 @@ public interface SiMzDao {
             "bilgDrCodg=(select rtrim(yb_code) from a_employee_mi where code=input_staff), " +
             "ordersDrCode=(select rtrim(yb_code) from a_employee_mi where code=input_staff), " +
             "ybName=(select rtrim(yb_name) from a_employee_mi where code=input_staff), " +
-            "t.input_man as bilgDrName, t.input_man as ordersDrName " +
+            "t.input_man as bilgDrName, t.input_man as ordersDrName, " +
+            "class_code=(select class_code from zd_charge_item where zd_charge_item.code=t.his_item_code), " +
+            "hnsyb_code=(select hnsyb_code from zd_charge_item where zd_charge_item.code=t.his_item_code) " +
             "from t_mt_receipt t " +
             "where t.patient_id=#{patNo} and t.times=#{times} and t.yb_trans_flag=0 ")
     List<FeeDetail> selectOutpatientFees(String patNo, int times);

+ 10 - 0
src/main/java/thyyxxk/simzfeeoprnsystm/pojo/FeeDetail.java

@@ -1,5 +1,6 @@
 package thyyxxk.simzfeeoprnsystm.pojo;
 
+import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.annotation.JSONField;
 import lombok.Data;
 
@@ -209,4 +210,13 @@ public class FeeDetail {
     @JSONField(name = "yb_name")
     private String ybName;
 
+    @JSONField(name = "class_code")
+    private String classCode;
+
+    @JSONField(name = "hnsyb_code")
+    private String hnsybCode;
+
+    @JSONField(name = "exp_content")
+    private JSONObject expContent;
+
 }

+ 12 - 0
src/main/java/thyyxxk/simzfeeoprnsystm/service/SiMzFeeService.java

@@ -343,6 +343,7 @@ public class SiMzFeeService {
             return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "就诊科室没有匹配医保码,无法使用门诊统筹。");
         }
         String batchNo = patNo + "_" + p.getTimes();
+
         feeDetails.forEach(item -> {
             item.setMdtrtId(siPatInfo.getMdtrtId());
             item.setPsnNo(siPatInfo.getPsnNo());
@@ -357,6 +358,17 @@ public class SiMzFeeService {
                 item.setMatnFeeFlag("1");
             }
 
+            try {
+                if (Objects.equals(item.getClassCode(), "J")) {
+                    JSONObject expContent = new JSONObject();
+                    expContent.put("mcs_prov_code", item.getHnsybCode());
+                    item.setExpContent(expContent);
+                    log.info("门诊费用明细信息上传耗材:\n参数:{}", JSONObject.toJSONString(item));
+                }
+            } catch (Exception e) {
+                log.info("门诊费用明细信息上传耗材失败:\n错误信息:{}", e.getMessage());
+            }
+
             // 当医生有医保姓名时,优先使用医保姓名
             try {
                 if(StringUtil.isNotEmpty(item.getYbName())) {