From 23cbab8e322e7aa6fda98dde4540b01ecf3c4fd1 Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期三, 28 二月 2024 12:18:18 +0800
Subject: [PATCH] 1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java |  173 ++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 133 insertions(+), 40 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 b5e73da..8ce2102 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
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ltkj.common.annotation.RepeatSubmit;
 import com.ltkj.common.core.domain.AjaxResult;
 import com.ltkj.common.core.domain.entity.SysUser;
 import com.ltkj.common.core.redis.RedisCache;
@@ -12,6 +13,7 @@
 import com.ltkj.common.utils.SecurityUtils;
 import com.ltkj.common.utils.StringUtils;
 import com.ltkj.framework.config.MatchUtils;
+import com.ltkj.framework.config.UserHoder;
 import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
 import com.ltkj.hosp.domain.*;
 import com.ltkj.hosp.mapper.TestMapper;
@@ -37,6 +39,7 @@
 import java.util.stream.Collectors;
 
 import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.save;
+import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.setClipRect;
 
 /**
  * @Author: 瑗垮畨璺嘲绉戞妧鏈夐檺鍏徃/璧典匠璞�
@@ -266,17 +269,15 @@
                                    @ApiParam(value = "鐘舵�� 0鍚屾剰 1鎷掔粷 榛樿鍚屾剰") @RequestParam(defaultValue = "0") Integer status,
                                    @ApiParam(value = "椹冲洖鐞嗙敱") @RequestParam(required = false) String remark) {
         int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
-        if (num > 0) return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘瀹℃牳!");
+        if (num > 0) return AjaxResult.error("璇峰厛鍚屾浣撴椤圭洰!");
         if (null != tjNumber) {
             Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId());
             SysUser sysUser = userService.getById(userId);
-            LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
-            wq1.eq(TjOrder::getTjNumber, tjNumber);
-            TjOrder tjOrder = orderService.getOne(wq1);
+            TjOrder tjOrder = orderService.getOrderByTjNum(tjNumber);
             if (null != tjOrder) {
                 tjOrder.setConfirmTime(new DateTime());
                 tjOrder.setConfirmDoctor(sysUser.getNickName());
-                tjOrder.setConfirmStatus(remark);
+                tjOrder.setConfirmStatus(String.valueOf(status));
                 if (status == 0) {
                     tjOrder.setStatus(TjConstants.TJ_CHECK);
                     asyncService.updateCheckType(tjNumber);
@@ -306,38 +307,50 @@
      */
     @GetMapping("/dataSynchronization")
     @ApiOperation(value = "鍚屾sql server鏁版嵁鍒版湰鍦版暟鎹簱鏁版嵁鎺ュ彛")
+    @RepeatSubmit
     public AjaxResult dataSynchronization(@RequestParam String tjNumber) {
         //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12
         final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData");
         if ("Y".equals(getInfoFromSqlData)) {
-            List<LtkjHysqd> one = testMapper.getHysqdByTmh(tjNumber);
-            if (one != null) {
-                DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
-                ltkjHysqdService.saveBatch(one);
-                DynamicDataSourceContextHolder.clearDataSourceType();
-                for (LtkjHysqd ltkjHysqd : one) {
-                    List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh());
-                    if (one1 != null) {
-                        DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
-                        ltkjHybgdService.saveBatch(one1);
-                        DynamicDataSourceContextHolder.clearDataSourceType();
+            TjOrder order = orderService.getOrderByTjNum(tjNumber);
+            if (null != order) {
+                List<LtkjHysqd> one = testMapper.getHysqdByTmh(order.getCardId());
+                if (one != null && one.size() > 0) {
+                    for (LtkjHysqd ltkjHysqd : one) {
+//                        DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+                        LtkjHysqd hysqd = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh());
+                        if (hysqd == null) {
+                            ltkjHysqdService.save(ltkjHysqd);
+                            DynamicDataSourceContextHolder.clearDataSourceType();
+                            List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh());
+                            if (one1 != null && one1.size() > 0) {
+                                DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+                                ltkjHybgdService.saveBatch(one1);
+                                DynamicDataSourceContextHolder.clearDataSourceType();
+                            }
+                        }
                     }
                 }
-            }
 
-            List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber);
-            if (one2 != null) {
-                DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
-                ltkjExamJcsqdService.saveBatch(one2);
-                DynamicDataSourceContextHolder.clearDataSourceType();
-                for (LtkjExamJcsqd ltkjExamJcsqd : one2) {
-                    List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(ltkjExamJcsqd.getTmh());
-                    if (one3 != null) {
-                        DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
-                        ltkjExamJcbgdService.saveBatch(one3);
-                        DynamicDataSourceContextHolder.clearDataSourceType();
-                    }
-                }
+//                List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber);
+//                if (one2 != null && one2.size() > 0) {
+//                    DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+//                    ltkjExamJcsqdService.saveBatch(one2);
+//                    DynamicDataSourceContextHolder.clearDataSourceType();
+//                    for (LtkjExamJcsqd ltkjExamJcsqd : one2) {
+//                        List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(ltkjExamJcsqd.getTmh());
+//                        if (one3 != null && one3.size() > 0) {
+//                            DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
+//                            ltkjExamJcbgdService.saveBatch(one3);
+//                            DynamicDataSourceContextHolder.clearDataSourceType();
+//                        }
+//                    }
+//                }
+                //鍚屾鍖栭獙椤圭洰
+                testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
+                //鍚屾妫�鏌ラ」鐩�
+                testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
+                asyncService.updateCheckType(order.getTjNumber());
             }
         }
         return AjaxResult.success("鍚屾鎴愬姛");
@@ -358,8 +371,7 @@
                               @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");
+        //        String config = configService.selectConfigByKey("tj_confirm");
 //        DateTime beginTimes = null;
 //        DateTime endTimes = null;
 //        if (null != beginTime && null != endTime) {
@@ -494,6 +506,7 @@
                         if (customerService.updateById(customer)) {
                             LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
                             wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
+                            wqq.eq(TbTransition::getCardId, customer.getCardId());
                             transitionService.remove(wqq);
                             asyncService.updateCheckType(tjNumber);
                             return AjaxResult.success("鎿嶄綔鎴愬姛");
@@ -510,18 +523,18 @@
 
 
     /**
-     * 鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏
+     * 鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�旈潪鍖栭獙椤圭洰
      *
      * @param tjNumber
      * @return
      */
     @GetMapping("/updateCheckType")
-    @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏")
+    @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�旈潪鍖栭獙椤圭洰")
     public AjaxResult updateCheckType(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) {
-        if (redisCache.hasKey("updateCheckType" + tjNumber)) {
-            List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber);
-            return AjaxResult.success(cacheMapValue);
-        }
+//        if (redisCache.hasKey("updateCheckType" + tjNumber)) {
+//            List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber);
+//            return AjaxResult.success(cacheMapValue);
+//        }
         return getAjaxResult(tjNumber);
     }
 
@@ -544,9 +557,17 @@
                 parent.put("checkAdvice", one.getCheckAdvice());
                 TjProject project = projectService.selectTjProjectByProId(remark.getProId());
                 //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
-                if ("N".equals(project.getNeedReport())){
+                if ("N".equals(project.getNeedReport())) {
                     continue;
                 }
+
+
+                //鍒ゆ柇璇ラ」鐩槸鍚︽楠岀椤圭洰  2024/2/28g
+                if (project.getDeptId() == 241) {
+                    continue;
+                }
+
+
                 if (null != project) {
                     parent.put("parent", project.getProName());
                     parent.put("parentId", project.getProId().toString());
@@ -567,7 +588,7 @@
                             tjOrderDetail.setStandard(list2.get(0));
                         } else {
                             final int ageType = StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday()));
-                            TjStandard tjStandard1 = tjStandardService.getListBySexAndType(customer.getCusSex(),ageType,String.valueOf(tjOrderDetail.getProId()));
+                            TjStandard tjStandard1 = tjStandardService.getListBySexAndType(customer.getCusSex(), ageType, String.valueOf(tjOrderDetail.getProId()));
                             tjOrderDetail.setStandard(tjStandard1);
                         }
                     }
@@ -601,6 +622,78 @@
     }
 
 
+    /**
+     * 鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�斿寲楠岄」鐩�
+     *
+     * @param tjNumber
+     * @return
+     */
+    @GetMapping("/updateCheckTypeHuaYan")
+    @ApiOperation(value = "鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏鈥斺�斺�斺�斿寲楠岄」鐩�")
+    public AjaxResult updateCheckTypeHuaYan(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) {
+//        asyncService.updateCheckType(tjNumber);
+        List<Map<String, Object>> list = new ArrayList<>();
+        TjOrder one = orderService.getOrderByTjNum(tjNumber);
+
+        if (one == null) {
+            return AjaxResult.error("鏆傛棤鏁版嵁锛侊紒");
+        }
+        TjCustomer customer = customerService.getById(one.getUserId());
+        List<TjOrderRemark> remarkList = orderRemarkService.addHuaYanTable(tjNumber);
+        List<TjOrderDetail> tjOrderDetails = detailService.addHuaYanTable(tjNumber);
+
+
+        if (null != remarkList && remarkList.size() > 0) {
+            for (TjOrderRemark remark : remarkList) {
+                Map<String, Object> parent = new HashMap<>();
+                parent.put("checkAdvice", one.getCheckAdvice());
+                parent.put("parent", remark.getProName());
+                parent.put("parentId", remark.getProId().toString());
+
+                if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
+                    for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
+                        final TjProject byId = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
+                        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());
+                        } else if (list2.size() == 1) {
+                            tjOrderDetail.setStandard(list2.get(0));
+                        } else {
+                            final int ageType = StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday()));
+                            TjStandard tjStandard1 = tjStandardService.getListBySexAndType(customer.getCusSex(), ageType, String.valueOf(tjOrderDetail.getProId()));
+                            tjOrderDetail.setStandard(tjStandard1);
+                        }
+                    }
+
+                    String summary = remark.getSummary();
+                    if (null != summary) {
+                        String[] split = summary.split(";");
+                        parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(split));
+                    } else {
+                        parent.put("parentAdvice", null);
+                    }
+                    parent.put("sons", tjOrderDetails);
+                    parent.put("remark", remark.getRemark());
+                    if (remark.getDoctorName() != null && null != userService.getById(remark.getDoctorName())) {
+                        parent.put("doctorName", userService.getById(remark.getDoctorName()).getNickName());
+                    }
+
+                    list.add(parent);
+                } else {
+                    return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁");
+                }
+            }
+            return AjaxResult.success(list);
+        }
+        return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁锛�");
+    }
+
+
     @GetMapping("/getTm")
     @ApiOperation(value = "鑾峰彇鏉$爜")
 //    @PreAuthorize("@ss.hasPermi('check:check:getTm')")

--
Gitblit v1.8.0