From c54cc05b490c57837a4fc74feec2c36755d55e1f Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期五, 25 十月 2024 18:06:27 +0800
Subject: [PATCH] zjh20241025

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java |  199 +++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 173 insertions(+), 26 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..ac31adf 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("妫�鏌ラ」鐩殏鏃舵湭鍑虹粨鏋�,璇风◢鍚庡悓姝�!!!");
                         }
@@ -569,7 +590,7 @@
             //鍖栭獙
             testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
             //妫�鏌�
-            jcsqdService.saveLtkjExamJcsqd(order.getCardId());
+//            jcsqdService.saveLtkjExamJcsqd(order.getCardId());
             return AjaxResult.success("鍚屾鎴愬姛");
         }
         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);
             }
@@ -947,6 +969,119 @@
         if (endTime == null) endTime = "";
         return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name));
     }
+
+
+
+    @GetMapping ("/getBghsList")
+    @ApiOperation (value = "鎶ュ憡鏍告敹椤甸潰鏌ヨ鎺ュ彛")//0寰�1宸�
+//    @PreAuthorize("@ss.hasPermi('check:check:getList')")
+    public AjaxResult getBghsList(@ApiParam (value = "椤电爜鏁�(榛樿1)") @RequestParam (defaultValue = "1") Integer page,
+                              @ApiParam (value = "鏄剧ず鏉℃暟(榛樿10)") @RequestParam (defaultValue = "10") Integer pageSize,
+                              @ApiParam (value = "浣撴鍗曞彿") @RequestParam (required = false) String tjNumber,
+                              @ApiParam (value = "鍗曚綅") @RequestParam (required = false) Long compId,
+                              @ApiParam (value = "濮撳悕)") @RequestParam (required = false) String name,
+                              @ApiParam (value = "寮�濮嬫椂闂�") @RequestParam (required = false) String beginTime,
+                              @ApiParam (value = "缁撴潫鏃堕棿") @RequestParam (required = false) String endTime) {
+        //        String config = configService.selectConfigByKey("tj_confirm");
+//        DateTime beginTimes = null;
+//        DateTime endTimes = null;
+//        if (null != beginTime && null != endTime) {
+//            beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime));
+//            endTimes = DateUtil.endOfDay(DateUtil.parse(endTime));
+//        }
+//        asyncService.checkSetCustomerLisByRedis(config);
+//        //鍒濆鍖栦綋妫�璁㈠崟琛�
+//        List<TjOrder> orderList = null;
+//        List<TjCustomer> customerList = new ArrayList<>();
+//        Map<String, Object> map = new HashMap<>();
+//
+//        //濮撳悕鏌ヨ
+//        if (null != name && !"".equals(name)) {
+//            List<TjCustomer> list = customerService.getTjCustomerList(name);
+//            if (null != list && list.size() > 0) {
+//                List<TjCustomer> lists = new ArrayList<>();
+//                for (TjCustomer customer : list) {
+//                    if ("Y".equals(config)) {
+//                        orderList = orderService.getCsTjOrderListByCusId1(customer.getCusId());
+//                    } else {
+//                        orderList = orderService.getTjOrderListByCusId(customer.getCusId());
+//                    }
+//                    if (null != orderList && orderList.size() > 0) {
+//                        for (TjOrder tjOrder : orderList) {
+//                            customer.setTjNumber(tjOrder.getTjNumber());
+//                            customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus()));
+//                            customer.setOrderId(tjOrder.getOrderId());
+//                            customer.setTjTime(tjOrder.getFinishTime());
+//                            customer.setFinishTime(tjOrder.getFinishTime());
+//                            customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
+//                            customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
+//                            customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
+//                            customer.setConfirmStatus(String.valueOf(tjOrder.getStatus()));
+//                            customer.setTjCategory(tjOrder.getTjCategory());
+//                            if (tjOrder.getFirmId().equals("0")) {
+//                                customer.setTjCompName(null);
+//                            } else {
+//                                customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName());
+//                            }
+//                            lists.add(customer);
+//                        }
+//                    }
+//                }
+//                List<TjCustomer> customers = null;
+//                if (lists.size() > 0) {
+//                    customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+//                }
+//                map.put("customers", customers);
+//                map.put("total", lists.size());
+//                return AjaxResult.success(map);
+//            }
+//            return AjaxResult.success("鏆傛棤鏁版嵁");
+//        }
+//
+//        //鏉′欢鏌ヨ
+//        if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) {
+//            //鍒ゆ柇鏄惁寮�鍚垵瀹�
+//            if ("Y".equals(config)) {
+//                orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes);
+//            } else {
+//                orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes);
+//            }
+//            return getResult(page, pageSize, orderList, customerList, map);
+//        }
+//
+//        List<TjCustomer> customers = null;
+//        if (null != checkStatus && checkStatus == 0) {
+//            customers = redisCache.getCacheMapValue("check", "ws");
+//        }
+//        if (null != checkStatus && checkStatus == 1) {
+//            customers = redisCache.getCacheMapValue("check", "ys");
+//        }
+//        if (customers != null && customers.size() > 0) {
+////            asyncService.addRedis(customers);
+//            List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+//            map.put("customers", customerLists);
+//            map.put("total", customers.size());
+//            return AjaxResult.success(map);
+//        } else {
+//            //鍒ゆ柇鏄惁寮�鍚垵瀹�
+//            if ("Y".equals(config)) {
+//                orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes);
+//            } else {
+//                orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes);
+//            }
+//            return getResult(page, pageSize, orderList, customerList, map);
+//        }
+
+        String value = String.valueOf(compId);
+        if (tjNumber == null) tjNumber = "";
+        if (compId == null) value = "";
+        if (name == null) name = "";
+        if (beginTime == null) beginTime = "";
+        if (endTime == null) endTime = "";
+        return AjaxResult.success(orderService.getgetBghsList(tjNumber, page, pageSize, value, beginTime, endTime, name));
+    }
+
+
 
     /**
      * 鏍规嵁浣撴璁㈠崟鍙疯幏鍙栦綋妫�璇︽儏淇℃伅鎺ュ彛
@@ -1217,7 +1352,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 +1375,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