From 159c6ba1276a8cbdefb3625219c9fe110fa56f3c Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期一, 14 十月 2024 15:34:01 +0800
Subject: [PATCH] 退费后取消接诊作废申请单等操作

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java |   84 +++++++++++++++++++++++++++++------------
 1 files changed, 59 insertions(+), 25 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
index 88019a4..c7c9a75 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -8,6 +8,7 @@
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ltkj.common.annotation.RepeatSubmit;
@@ -32,6 +33,7 @@
 import com.ltkj.system.service.ISysUserService;
 import com.ltkj.web.controller.his.HisApiGetMethodService;
 import com.ltkj.web.controller.his.HisApiMethodService;
+import com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -297,7 +299,7 @@
                 tjOrder.setConfirmStatus(String.valueOf(status));
                 if (status == 0) {
                     tjOrder.setStatus(TjConstants.TJ_CHECK);
-                    asyncService.updateCheckType(tjNumber);
+//                    asyncService.updateCheckType(tjNumber);
                 } else {
                     tjOrder.setStatus(TjConstants.TJ_REFUSED);
                 }
@@ -307,8 +309,8 @@
                     confirmLog.setTjNum(tjNumber);
                     confirmLog.setStatus(status);
                     confirmLogService.save(confirmLog);
-                    asyncService.wCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, 0, null, null, null));
-                    asyncService.yCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, 1, null, null, null));
+//                    asyncService.wCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, 0, null, null, null));
+//                    asyncService.yCScheckSetCustomerLisByRedis(orderService.getCsTjOrderList(tjNumber, 1, null, null, null));
                     return AjaxResult.success("鎿嶄綔鎴愬姛");
                 }
                 return AjaxResult.error("鎿嶄綔澶辫触");
@@ -492,6 +494,8 @@
 
                     /*鍚屾妫�鏌� his瀛樺偍杩囩▼*/
                     AjaxResult results = jcsqdService.getTjJcProByHisCall("浣撴涓績", order.getCardId(), "''", 100, 1, "'1'");
+
+                    DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
                     DynamicDataSourceContextHolder.clearDataSourceType();
 
                     log.info("妫�鏌ラ」鐩煡璇㈣繑鍥炲��:      " + results.toString());
@@ -552,7 +556,24 @@
                                 jcbgdService.save(jcbgd);
                             }
                             jcsqdService.saveLtkjExamJcsqd(order.getCardId());
-                            testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
+
+                            int maxRetries=3;
+                            for (int attempt = 0; attempt < maxRetries; attempt++) {
+                                try {
+                                    testMapper.updateDetailByTjJcCall(order.getCardId(),
+                                            String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
+                                    break;
+                                } catch (Exception e) {
+                                    if (attempt==maxRetries-1){
+                                        throw e;
+                                    }
+                                    try {
+                                        Thread.sleep(1000);
+                                    } catch (InterruptedException ignored) {
+                                    }
+                                }
+                            }
+
                         }else {
                             return AjaxResult.error("妫�鏌ラ」鐩殏鏃舵湭鍑虹粨鏋�,璇风◢鍚庡悓姝�!!!");
                         }
@@ -605,7 +626,7 @@
                 List<String> baoGaoDans = ltkjHybgdService.getJianYanBaoGaoDan(order.getCardId());
                 List<String> jianChaBaoGaoDan = ltkjHybgdService.getJianChaBaoGaoDan(order.getCardId());
                 //鍚屾妫�楠�
-                if (null != baoGaoDans && baoGaoDans.size() > 0) {
+                if (null != baoGaoDans && !baoGaoDans.isEmpty()) {
                     Date dates = new Date();
                     Map<String, Object> map = new HashMap<>();
                     map.put("his_registration_id", order.getCardId());
@@ -641,7 +662,8 @@
                         hysqd.setShrdm(jsonObject.getStr("JYYSBH"));
                         hysqd.setShrxm(jsonObject.getStr("JYYSQM"));
                         hysqd.setJybgjg(jsonObject.getStr("JYBGJG"));
-                        List<LtkjHysqd> list = ltkjHysqdService.listByMap(BeanUtil.beanToMap(hysqd,true,true));
+                        QueryWrapper<LtkjHysqd> queryWrapper = new QueryWrapper<>(hysqd);
+                        List<LtkjHysqd> list = ltkjHysqdService.list(queryWrapper);
                         if (list.isEmpty())
                             isInsertHysqd = true;
                         if (isInsertHysqd){
@@ -669,7 +691,9 @@
                     log.info("妫�鏌ラ」鐩煡璇㈣繑鍥炲��:      " + results.toString());
                     if (Integer.parseInt(results.get("code").toString()) == 200) {
                         List<Map<String, Object>> datas = (List<Map<String, Object>>) results.get("data");
-                        if (null != datas && datas.size() > 0) {
+                        if (null != datas && !datas.isEmpty()) {
+                            jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId());
+                            jcbgdService.deletedLtkjJcbgdByTjhAndTmh(order.getCardId());
                             for (Map<String, Object> objectMap : datas) {
                                 //淇濆瓨鍏ュ弬鍑哄弬
                                 service.save(JSONUtil.parseObj(objectMap), "Getexamreportinfo", hisApiConfig, JSONUtil.toJsonStr(maps));
@@ -704,13 +728,9 @@
                                     jcbgd.setJcbw(objectMap.get("JCBW").toString());
                                 if (null != objectMap.get("SQRQSJ") || !objectMap.get("SQRQSJ").equals(""))
                                     jcbgd.setSqsj(objectMap.get("SQRQSJ").toString());
-                                List<LtkjExamJcbgd> list = jcbgdService.listByMap(BeanUtil.beanToMap(jcbgd,true,true));
-                                if (list.isEmpty())
-                                    jcbgdService.save(jcbgd);
+                                jcbgdService.save(jcbgd);
                             }
-                            List<LtkjExamJcbgd> list = jcsqdService.queryLtkjExamJcsqdByTjh(order.getCardId());
-                            if (list.isEmpty())
-                                jcsqdService.saveLtkjExamJcsqd(order.getCardId());
+                            jcsqdService.saveLtkjExamJcsqd(order.getCardId());
                             testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), "148");
                         }else {
                             return AjaxResult.error("妫�鏌ラ」鐩殏鏃舵湭鍑虹粨鏋�,璇风◢鍚庡悓姝�!!!");
@@ -764,7 +784,8 @@
                 bgd.setShysmc(js.getStr("SHRXM"));
                 bgd.setYcbz(js.getStr("YCTS"));
 //                            bgd.setTpurl(js.getStr(""));
-                List<LtkjHybgd> list = ltkjHybgdService.listByMap(BeanUtil.beanToMap(bgd,true,true));
+                QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd);
+                List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper);
                 if (list.isEmpty())
                     ltkjHybgdService.save(bgd);
             }
@@ -795,7 +816,8 @@
                 bgd.setShsj(js.getStr("BGRQ"));
                 bgd.setShys(hysqd.getShrdm());
                 bgd.setShysmc(hysqd.getShrxm());
-                List<LtkjHybgd> list = ltkjHybgdService.listByMap(BeanUtil.beanToMap(bgd,true,true));
+                QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd);
+                List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper);
                 if (list.isEmpty())
                     ltkjHybgdService.save(bgd);
             }
@@ -1217,7 +1239,7 @@
 //        final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData");
 //        if(null !=getInfoFromSqlData && getInfoFromSqlData.equals("Y"))
 //        tbhyxm(one);
-        TjCustomer customer = customerService.getById(one.getUserId());
+//        TjCustomer customer = customerService.getById(one.getUserId());
         List<TjOrderRemark> remarkList = orderRemarkService.addHuaYanAndCgTable(tjNumber);
         List<TjOrderDetail> tjOrderDetails = detailService.addHuaYanAndCgTable(tjNumber);
 
@@ -1240,24 +1262,36 @@
                             }
                             if (StrUtil.isNotBlank(ckfw)) {
                                 try {
+                                    if (ckfw != null && ckfw.contains("-")) {
                                     Integer.parseInt(tjOrderDetail.getYcbz());
                                     String[] split = ckfw.split("-");
                                     BigDecimal min = new BigDecimal(split[0]);
                                     BigDecimal max = new BigDecimal(split[1]);
                                     String proResult = tjOrderDetail.getProResult();
-                                    BigDecimal jyjgval = new BigDecimal(proResult);
-                                    if (jyjgval.compareTo(min) < 0) {
-                                        tjOrderDetail.setYcbz("鈫�");
-                                    } else if (jyjgval.compareTo(max) > 0) {
-                                        tjOrderDetail.setYcbz("鈫�");
-                                    } else {
+                                    if(null !=proResult){
+                                        BigDecimal jyjgval = new BigDecimal(proResult);
+                                        if (jyjgval.compareTo(min) < 0) {
+                                            tjOrderDetail.setYcbz("鈫�");
+                                        } else if (jyjgval.compareTo(max) > 0) {
+                                            tjOrderDetail.setYcbz("鈫�");
+                                        } else if(proResult.contains("闃�")) {
+                                            tjOrderDetail.setYcbz("");
+                                        }else {
+                                            tjOrderDetail.setYcbz("");
+                                        }
+                                        if (null != tjOrderDetail.getYcbz() && !tjOrderDetail.getYcbz().equals("")) {
+                                            tjOrderDetail.setProResult(tjOrderDetail.getProResult() + " [" + tjOrderDetail.getYcbz() + "]");
+                                        }
+                                    }else {
                                         tjOrderDetail.setYcbz("");
+                                    }
+                                    }else {
+                                        if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("闃�")) tjOrderDetail.setYcbz("");
+
+                                        if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("闃�")) tjOrderDetail.setYcbz("鈫�");
                                     }
                                 } catch (NumberFormatException ignored) {
                                     ignored.printStackTrace();
-                                }
-                                if (null != tjOrderDetail.getYcbz() && !tjOrderDetail.getYcbz().equals("")) {
-                                    tjOrderDetail.setProResult(tjOrderDetail.getProResult() + " [" + tjOrderDetail.getYcbz() + "]");
                                 }
                             }else {
                                 tjOrderDetail.setYcbz("");

--
Gitblit v1.8.0