LIJU 2 周之前
父节点
当前提交
1f5cebf90f
共有 1 个文件被更改,包括 18 次插入9 次删除
  1. 18 9
      src/main/java/cn/hnthyy/thmz/controller/mz/MzPharmacyController.java

+ 18 - 9
src/main/java/cn/hnthyy/thmz/controller/mz/MzPharmacyController.java

@@ -322,11 +322,12 @@ public class MzPharmacyController {
                 mzDrugTracCodgService.changeDrugCodgDataToTy(mzRefundMedicineVos);
                 log.info("追溯码转移成功,退药处理完成");
             } catch (Exception e) {
-                log.error("追溯码转移失败,但不影响退药处理,错误信息:{}", e.getMessage(), e);
-                // 追溯码转移失败时返回失败状态
-                resultMap.put("code", -1);
-                resultMap.put("message", "退药处理失败:追溯码转移失败" + e.getMessage());
-                return resultMap;
+                log.error("追溯码转移失败,但不影响退药主流程,错误信息:{}", e.getMessage(), e);
+                // 追溯码转移失败不影响退药主流程,只记录日志,不返回失败状态
+                // // 追溯码转移失败时返回失败状态
+                // resultMap.put("code", -1);
+                // resultMap.put("message", "退药处理失败:追溯码转移失败" + e.getMessage());
+                // return resultMap;                
             }
 
             return resultMap;
@@ -2099,7 +2100,11 @@ public class MzPharmacyController {
                     selinfoSold.setSelRetnOpterName(getCurrentUserName(params));
                     selinfoSold.setMdtrtSetlType(item.get("mdtrtSetlType") != null ? (String) item.get("mdtrtSetlType") : "2");
                     selinfoSold.setRxFlag(item.get("rx_flag") != null ? (String) item.get("rx_flag") : "0");
-                    selinfoSold.setTrdnFlag(item.get("cl_flag") != null ? (String) item.get("cl_flag") : "0");
+                    //selinfoSold.setTrdnFlag(item.get("cl_flag") != null ? (String) item.get("cl_flag") : "0");
+                    // 基于serial字段正确判断拆零标志
+                    String serial = (String) item.get("serial");
+                    String trdnFlag = ("99".equals(serial)) ? "0" : "1";
+                    selinfoSold.setTrdnFlag(trdnFlag);
                     selinfoSold.setPsnCertType(item.get("psnCertType") != null ? (String) item.get("psnCertType") : "01");
                     selinfoSold.setCertno(item.get("certno") != null ? (String) item.get("certno") : "");
                     selinfoSold.setPsnName(item.get("psnName") != null ? (String) item.get("psnName") : "");
@@ -2193,9 +2198,13 @@ public class MzPharmacyController {
         // 处方药标志
         // ybParams.put("rxFlag", item.get("rxFlag") != null ? item.get("rxFlag") : "1");
         ybParams.put("rxFlag", "1");
-        
-        // 拆零标志(0-否;1-是)
-        ybParams.put("trdnFlag", item.get("clFlag") != null ? item.get("clFlag") : "0");
+
+        // // 拆零标志(0-否;1-是)
+        // ybParams.put("trdnFlag", item.get("clFlag") != null ? item.get("clFlag") : "0");
+        // 拆零标志(0-否;1-是)- 基于serial字段正确判断
+        String serial = (String) item.get("serial");
+        String trdnFlag = ("99".equals(serial)) ? "0" : "1";
+        ybParams.put("trdnFlag", trdnFlag);
         
         // 患者相关参数
         ybParams.put("psnCertType", item.get("psnCertType") != null ? item.get("psnCertType") : "01");