From 55656cdf4c311d1e6a138173ba5e5bd09c23d340 Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期三, 13 十二月 2023 10:04:55 +0800
Subject: [PATCH] 1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java |  102 ++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 85 insertions(+), 17 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 266f9ab..46a23d7 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,11 +8,15 @@
 import com.ltkj.common.core.domain.AjaxResult;
 import com.ltkj.common.core.domain.entity.SysUser;
 import com.ltkj.common.core.redis.RedisCache;
+import com.ltkj.common.enums.DataSourceType;
 import com.ltkj.common.utils.SecurityUtils;
 import com.ltkj.common.utils.StringUtils;
 import com.ltkj.framework.config.MatchUtils;
+import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
 import com.ltkj.hosp.domain.*;
+import com.ltkj.hosp.mapper.TestMapper;
 import com.ltkj.hosp.service.*;
+import com.ltkj.hosp.sqlDomain.*;
 import com.ltkj.hosp.vodomain.CsProVo;
 import com.ltkj.hosp.vodomain.UpdateOrderRemarkVo;
 import com.ltkj.mall.mallOrderUtils.TjConstants;
@@ -31,6 +35,8 @@
 import javax.annotation.Resource;
 import java.util.*;
 import java.util.stream.Collectors;
+
+import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.save;
 
 /**
  * @Author: 瑗垮畨璺嘲绉戞妧鏈夐檺鍏徃/璧典匠璞�
@@ -70,6 +76,25 @@
     private ISysConfigService configService;
     @Resource
     private ISysDeptService deptService;
+    @Resource
+    private TestMapper testMapper;
+    @Resource
+    private TjvLtkjvtjpatService tjvLtkjvtjpatService;
+
+    @Resource
+    private LtkjMiddleDetailService middleDetailService;
+
+    @Resource
+    private LtkjMiddleHeadService headService;
+    @Resource
+    private LtkjExamJcbgdService ltkjExamJcbgdService;
+    @Resource
+    private LtkjExamJcsqdService ltkjExamJcsqdService;
+    @Resource
+    private LtkjHybgdService ltkjHybgdService;
+    @Resource
+    private LtkjHysqdService ltkjHysqdService;
+
 
 
     @GetMapping("/getOperationPermissionsByTjNum")
@@ -222,7 +247,6 @@
      */
     @GetMapping("/confirmOrder")
     @ApiOperation(value = "鍒濆(骞朵慨鏀圭姸鎬�)鎺ュ彛")
-//    @PreAuthorize("@ss.hasPermi('check:check:confirmOrder')")
     @Transactional
     public AjaxResult confirmOrder(@ApiParam(value = "tjNumber") @RequestParam String tjNumber,
                                    @ApiParam(value = "鐘舵�� 0鍚屾剰 1鎷掔粷 榛樿鍚屾剰") @RequestParam(defaultValue = "0") Integer status,
@@ -262,16 +286,48 @@
 
 
     /**
+     * 鍚屾鏁版嵁鎺ュ彛
+     */
+    @GetMapping("/dataSynchronization")
+    @ApiOperation(value = "鍚屾鏁版嵁鎺ュ彛")
+    @Transactional
+    public AjaxResult dataSynchronization(@RequestParam String tjNumber){
+        List<LtkjHysqd> one = testMapper.getHysqdByTmh(tjNumber);
+        DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+        for (LtkjHysqd hysqd : one) {
+            ltkjHysqdService.save(hysqd);
+
+            List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(hysqd.getTmh());
+            DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+            for (LtkjHybgd hybgd : one1) {
+                ltkjHybgdService.save(hybgd);
+            }
+            DynamicDataSourceContextHolder.clearDataSourceType();
+
+        }
+        DynamicDataSourceContextHolder.clearDataSourceType();
+
+
+        List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber);
+        DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+        for (LtkjExamJcsqd examJcsqd : one2) {
+            ltkjExamJcsqdService.save(examJcsqd);
+
+            List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(examJcsqd.getTmh());
+            DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+            for (LtkjExamJcbgd examJcbgd : one3) {
+                ltkjExamJcbgdService.save(examJcbgd);
+            }
+            DynamicDataSourceContextHolder.clearDataSourceType();
+
+        }
+        DynamicDataSourceContextHolder.clearDataSourceType();
+
+        return AjaxResult.success();
+    }
+
+    /**
      * 鏌ヨ浣撴璁板綍瀹㈡埛鍒楄〃
-     *
-     * @param tjNumber
-     * @param checkStatus
-     * @param page
-     * @param pageSize
-     * @param compId
-     * @param beginTime
-     * @param endTime
-     * @return
      */
     @GetMapping("/getList")
     @ApiOperation(value = "鏌ヨ浣撴璁板綍瀹㈡埛鍒楄〃")//0寰�1宸�
@@ -320,6 +376,7 @@
                             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 {
@@ -413,6 +470,7 @@
                             LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
                             wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
                             transitionService.remove(wqq);
+                            asyncService.updateCheckType(tjNumber);
                             return AjaxResult.success("鎿嶄綔鎴愬姛");
                         }
                         return AjaxResult.error("鎿嶄綔澶辫触");
@@ -434,16 +492,17 @@
      */
     @GetMapping("/updateCheckType")
     @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏")
-//    @PreAuthorize("@ss.hasPermi('check:check:updateCheckType')")
     public AjaxResult updateCheckType(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) {
         if(redisCache.hasKey("updateCheckType"+tjNumber)) {
-            return redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber);
+            List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber);
+            return AjaxResult.success(cacheMapValue);
         }
         return getAjaxResult(tjNumber);
     }
 
     private AjaxResult getAjaxResult(String tjNumber) {
-        final long l = System.currentTimeMillis();
+
+        asyncService.updateCheckType(tjNumber);
         List<Map<String, Object>> list = new ArrayList<>();
         TjOrder one = orderService.getOrderByTjNum(tjNumber);
 
@@ -467,7 +526,11 @@
                 if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
                     for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                         final TjProject byId = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
-                        tjOrderDetail.setProject(byId);
+                        if(null==byId){
+                            detailService.removeById(tjOrderDetail.getOrderDetailId());
+                        }else {
+                            tjOrderDetail.setProject(byId);
+                        }
                         List<TjStandard> list2 = tjStandardService.getTjStandardListByProId(String.valueOf(tjOrderDetail.getProId()));
                         if (list2.size() == 0) {
                             tjOrderDetail.setStandard(new TjStandard());
@@ -482,7 +545,13 @@
                     String summary = remark.getSummary();
                     if (null != summary) {
                           String[] split = summary.split(";");
-                        parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(Arrays.asList(split)));
+//                        List<Long> longList = new ArrayList<>();
+//                        for (String str : split) {
+//                            if(!"".equals(str)){
+//                                longList.add(Long.valueOf(str));
+//                            }
+//                        }
+                        parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(split));
 
                     } else {
                         parent.put("parentAdvice", null);
@@ -498,8 +567,6 @@
                 }
 //                }
             }
-            final long l1 = System.currentTimeMillis();
-            System.out.println("++++++++++++++++++++++++++++++++++++++++++==============="+(l1-l));
             return AjaxResult.success(list);
         }
         return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁锛�");
@@ -553,6 +620,7 @@
                 customer.setTjTime(tjOrder.getCreateTime());
                 customer.setFinishTime(tjOrder.getFinishTime());
                 customer.setConfirmStatus(String.valueOf(tjOrder.getStatus()));
+                customer.setTjCategory(tjOrder.getTjCategory());
                 if (tjOrder.getFirmId() == null) {
                     customer.setTjCompName("鏃�");
                 } else {

--
Gitblit v1.8.0