LIJU 2 weeks ago
parent
commit
95deb9aaea

+ 45 - 0
src/main/java/cn/hnthyy/thmz/controller/mz/MzPharmacyController.java

@@ -981,6 +981,51 @@ public class MzPharmacyController {
         }
     }
 
+    /**
+     * 查询退药追溯码数据
+     *
+     * @param mzDrugTracCodg
+     * @return
+     */
+    @RequestMapping(value = "/getMzDrugTracCodgTyData", method = {RequestMethod.POST})
+    public Map<String, Object> getMzDrugTracCodgTyData(@RequestBody MzDrugTracCodg mzDrugTracCodg) {
+        Map<String, Object> resultMap = new HashMap<>();
+        try {
+            if (null == mzDrugTracCodg) {
+                resultMap.put("code", -1);
+                resultMap.put("message", "查询退药追溯码失败,参数为空");
+                return resultMap;
+            }
+            if (StringUtils.isBlank(mzDrugTracCodg.getPatientId())) {
+                resultMap.put("code", -1);
+                resultMap.put("message", "查询退药追溯码失败,病人ID为空");
+                return resultMap;
+            }
+            if (mzDrugTracCodg.getOrderNo() == null) {
+                resultMap.put("code", -1);
+                resultMap.put("message", "查询退药追溯码失败,处方号为空");
+                return resultMap;
+            }
+            if (mzDrugTracCodg.getTimes() == null) {
+                resultMap.put("code", -1);
+                resultMap.put("message", "查询退药追溯码失败,次数为空");
+                return resultMap;
+            }
+            //防止退药处方,需将发票号转为正数
+            mzDrugTracCodg.setReceiptNo(Math.abs(mzDrugTracCodg.getReceiptNo()));
+            List<MzDrugTracCodg> list = mzDrugTracCodgService.getMzDrugTracCodgTyData(mzDrugTracCodg);
+            resultMap.put("code", 0);
+            resultMap.put("message", "查询退药追溯码成功");
+            resultMap.put("data", list);
+            return resultMap;
+        } catch (Exception e) {
+            log.error("查询退药追溯码失败,错误信息{}", e.getMessage());
+            resultMap.put("code", -1);
+            resultMap.put("message", "查询退药追溯码失败");
+            return resultMap;
+        }
+    }
+
     /**
      * 获取处方打印数据
      *

+ 9 - 0
src/main/java/cn/hnthyy/thmz/service/his/mz/MzDrugTracCodgService.java

@@ -29,6 +29,15 @@ public interface MzDrugTracCodgService {
      */
     List<MzDrugTracCodg> getMzDrugTracCodgData(MzDrugTracCodg drugTracCodg);
 
+    /**
+     * @Description 查询退药追溯码
+     * @Author hsh
+     * @param
+     * @return
+     * @Date 2024/10/21 19:35
+     */
+    List<MzDrugTracCodg> getMzDrugTracCodgTyData(MzDrugTracCodg drugTracCodg);
+
     /**
      * @Description 查询处方信息
      * @Author hsh

+ 6 - 0
src/main/java/cn/hnthyy/thmz/service/impl/his/mz/MzDrugTracCodgServiceImpl.java

@@ -81,6 +81,12 @@ public class MzDrugTracCodgServiceImpl implements MzDrugTracCodgService {
         return mzDrugTracCodgMapper.selectMzDrugTracCodgData(drugTracCodg);
     }
 
+    @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT, timeout = 36000, rollbackFor = Exception.class)
+    @Override
+    public List<MzDrugTracCodg> getMzDrugTracCodgTyData(MzDrugTracCodg drugTracCodg) {
+        return mzDrugTracCodgMapper.selectMzDrugTracCodgTyData(drugTracCodg);
+    }
+
     @Override
     public List<MzSendMedicineVo> getMzChargeDetailByCode(MzDrugTracCodg drugTracCodg) {
         return mzDrugTracCodgMapper.selectMzChargeDetailByCode(drugTracCodg);

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

@@ -3411,7 +3411,7 @@ function callYbReturnGoodsItem(realNo, orderNo, receiptNo, times, patientId, nam
             drugtracinfo: []
         };
         
-        // 主动获取追溯码信息(因为退药表格不包含追溯码
+        // 主动获取追溯码信息(退药后从退药追溯码表查询
         let tracCodgParams = {
             patientId: patientId,
             times: times,
@@ -3424,9 +3424,10 @@ function callYbReturnGoodsItem(realNo, orderNo, receiptNo, times, patientId, nam
         };
         
         // 调用追溯码查询接口(异步方式)
+        // 注意:退药处理后,追溯码已转移到 mz_drug_trac_codg_ty 表
         $.ajax({
             type: "POST",
-            url: '/thmz/getMzDrugTracCodgData',
+            url: '/thmz/getMzDrugTracCodgTyData',
             contentType: "application/json;charset=UTF-8",
             dataType: "json",
             headers: {