From a2d12d52275c9fc34277d3e41c662a5ea9fb597f Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期三, 24 一月 2024 10:11:44 +0800
Subject: [PATCH] 报告合并判断心电图和附件

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjRulesController.java |  160 ++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 115 insertions(+), 45 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjRulesController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjRulesController.java
index 43ac36a..a3231db 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjRulesController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjRulesController.java
@@ -1,5 +1,7 @@
 package com.ltkj.web.controller.system;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
@@ -7,11 +9,13 @@
 import javax.servlet.http.HttpServletResponse;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ltkj.framework.config.MatchUtils;
 import com.ltkj.hosp.domain.*;
 import com.ltkj.hosp.service.*;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import org.checkerframework.checker.units.qual.A;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -52,39 +56,39 @@
     /**
      * 鏌ヨ瑙勫垯+鐥呯鍒楄〃
      */
-    @PreAuthorize("@ss.hasPermi('hosp:rules:list')")
+    //@PreAuthorize("@ss.hasPermi('hosp:rules:list')")
     @GetMapping("/list")
     @ApiOperation(value = "鏌ヨ瑙勫垯+鐥呯鍒楄〃")
     public TableDataInfo list(TjRules tjRules) {
         startPage();
-        LambdaQueryWrapper<TjRules> wq=new LambdaQueryWrapper<>();
-        if (tjRules.getProId()!=null){
-            wq.eq(TjRules::getProId,tjRules.getProId());
+        LambdaQueryWrapper<TjRules> wq = new LambdaQueryWrapper<>();
+        if (tjRules.getProId() != null) {
+            wq.eq(TjRules::getProId, tjRules.getProId());
         }
-        if (tjRules.getProName()!=null){
-            wq.like(TjRules::getProName,tjRules.getProName());
+        if (tjRules.getProName() != null) {
+            wq.like(TjRules::getProName, tjRules.getProName());
         }
-        if (tjRules.getRuleType()!=null){
-            wq.eq(TjRules::getRuleType,tjRules.getRuleType());
+        if (tjRules.getRuleType() != null) {
+            wq.eq(TjRules::getRuleType, tjRules.getRuleType());
         }
-        if (tjRules.getRuleStr()!=null){
-            wq.like(TjRules::getRuleStr,tjRules.getRuleStr());
+        if (tjRules.getRuleStr() != null) {
+            wq.like(TjRules::getRuleStr, tjRules.getRuleStr());
         }
-        if (tjRules.getBingzhong()!=null){
-            wq.like(TjRules::getBingzhong,tjRules.getBingzhong());
+        if (tjRules.getBingzhong() != null) {
+            wq.like(TjRules::getBingzhong, tjRules.getBingzhong());
         }
-        if (tjRules.getBzPinyin()!=null){
-            wq.like(TjRules::getBzPinyin,tjRules.getBzPinyin());
+        if (tjRules.getBzPinyin() != null) {
+            wq.like(TjRules::getBzPinyin, tjRules.getBzPinyin());
         }
-        if (tjRules.getSex()!=null){
-            wq.eq(TjRules::getSex,tjRules.getSex());
+        if (tjRules.getSex() != null) {
+            wq.eq(TjRules::getSex, tjRules.getSex());
         }
         wq.orderByAsc(TjRules::getSort);
         List<TjRules> list = tjRulesService.list(wq);
-        if (list!=null){
+        if (list != null) {
             for (TjRules rules : list) {
-                LambdaQueryWrapper<TjRuleAdvice> wq1=new LambdaQueryWrapper<>();
-                wq1.eq(TjRuleAdvice::getBz,rules.getAid());
+                LambdaQueryWrapper<TjRuleAdvice> wq1 = new LambdaQueryWrapper<>();
+                wq1.eq(TjRuleAdvice::getBz, rules.getAid());
                 final List<TjRuleAdvice> list1 = tjRuleAdviceService.list(wq1);
                 rules.setRuleAdvices(list1);
             }
@@ -103,22 +107,22 @@
                                        @ApiParam(value = "浣撴鍙�") @RequestParam String ruleStr) {
         TjOrder one = orderService.getOrderByTjNum(tjNumber);
         TjCustomer customer = customerService.getById(one.getUserId());
-        LambdaQueryWrapper<TjRules> wq=new LambdaQueryWrapper<>();
-        if (proId!=null){
-            wq.eq(TjRules::getProId,proId);
+        LambdaQueryWrapper<TjRules> wq = new LambdaQueryWrapper<>();
+        if (proId != null) {
+            wq.eq(TjRules::getProId, proId);
         }
-        if (ruleStr!=null){
-            wq.like(TjRules::getRuleStr,ruleStr);
+        if (ruleStr != null) {
+            wq.like(TjRules::getRuleStr, ruleStr);
         }
-        if (customer.getCusSex()!=null){
-            wq.eq(TjRules::getSex,customer.getCusSex());
+        if (customer.getCusSex() != null) {
+            wq.eq(TjRules::getSex, customer.getCusSex());
         }
         wq.orderByAsc(TjRules::getSort);
         List<TjRules> list = tjRulesService.list(wq);
-        if (list!=null){
+        if (list != null) {
             for (TjRules rules : list) {
-                LambdaQueryWrapper<TjRuleAdvice> wq1=new LambdaQueryWrapper<>();
-                wq1.eq(TjRuleAdvice::getBz,rules.getAid());
+                LambdaQueryWrapper<TjRuleAdvice> wq1 = new LambdaQueryWrapper<>();
+                wq1.eq(TjRuleAdvice::getBz, rules.getAid());
                 final List<TjRuleAdvice> list1 = tjRuleAdviceService.list(wq1);
                 rules.setRuleAdvices(list1);
             }
@@ -129,26 +133,26 @@
     /**
      * 瀵煎嚭瑙勫垯+鐥呯鍒楄〃
      */
-    @PreAuthorize("@ss.hasPermi('hosp:rules:export')")
+    //@PreAuthorize("@ss.hasPermi('hosp:rules:export')")
     @Log(title = "瑙勫垯+鐥呯", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     @ApiOperation(value = "瀵煎嚭瑙勫垯+鐥呯鍒楄〃")
     public void export(HttpServletResponse response, TjRules tjRules) {
-        LambdaQueryWrapper<TjRules> wq=new LambdaQueryWrapper<>();
-        if (tjRules.getProName()!=null){
-            wq.like(TjRules::getProName,tjRules.getProName());
+        LambdaQueryWrapper<TjRules> wq = new LambdaQueryWrapper<>();
+        if (tjRules.getProName() != null) {
+            wq.like(TjRules::getProName, tjRules.getProName());
         }
-        if (tjRules.getRuleType()!=null){
-            wq.eq(TjRules::getRuleType,tjRules.getRuleType());
+        if (tjRules.getRuleType() != null) {
+            wq.eq(TjRules::getRuleType, tjRules.getRuleType());
         }
-        if (tjRules.getBingzhong()!=null){
-            wq.like(TjRules::getBingzhong,tjRules.getBingzhong());
+        if (tjRules.getBingzhong() != null) {
+            wq.like(TjRules::getBingzhong, tjRules.getBingzhong());
         }
-        if (tjRules.getBzPinyin()!=null){
-            wq.like(TjRules::getBzPinyin,tjRules.getBzPinyin());
+        if (tjRules.getBzPinyin() != null) {
+            wq.like(TjRules::getBzPinyin, tjRules.getBzPinyin());
         }
-        if (tjRules.getSex()!=null){
-            wq.eq(TjRules::getSex,tjRules.getSex());
+        if (tjRules.getSex() != null) {
+            wq.eq(TjRules::getSex, tjRules.getSex());
         }
         List<TjRules> list = tjRulesService.list(wq);
         ExcelUtil<TjRules> util = new ExcelUtil<TjRules>(TjRules.class);
@@ -158,7 +162,7 @@
     /**
      * 鑾峰彇瑙勫垯+鐥呯璇︾粏淇℃伅
      */
-    @PreAuthorize("@ss.hasPermi('hosp:rules:query')")
+    //@PreAuthorize("@ss.hasPermi('hosp:rules:query')")
     @GetMapping(value = "/{aid}")
     @ApiOperation(value = "鑾峰彇瑙勫垯+鐥呯璇︾粏淇℃伅")
     public AjaxResult getInfo(@PathVariable("aid") String aid) {
@@ -168,7 +172,7 @@
     /**
      * 鏂板瑙勫垯+鐥呯
      */
-    @PreAuthorize("@ss.hasPermi('hosp:rules:add')")
+    // @PreAuthorize("@ss.hasPermi('hosp:rules:add')")
     @Log(title = "瑙勫垯+鐥呯", businessType = BusinessType.INSERT)
     @PostMapping
     @ApiOperation(value = "鏂板瑙勫垯+鐥呯")
@@ -179,7 +183,7 @@
     /**
      * 淇敼瑙勫垯+鐥呯
      */
-    @PreAuthorize("@ss.hasPermi('hosp:rules:edit')")
+    //@PreAuthorize("@ss.hasPermi('hosp:rules:edit')")
     @Log(title = "瑙勫垯+鐥呯", businessType = BusinessType.UPDATE)
     @PutMapping
     @ApiOperation(value = "淇敼瑙勫垯+鐥呯")
@@ -190,7 +194,7 @@
     /**
      * 鍒犻櫎瑙勫垯+鐥呯
      */
-    @PreAuthorize("@ss.hasPermi('hosp:rules:remove')")
+    //@PreAuthorize("@ss.hasPermi('hosp:rules:remove')")
     @Log(title = "瑙勫垯+鐥呯", businessType = BusinessType.DELETE)
     @DeleteMapping("/{aids}")
     @ApiOperation(value = "鍒犻櫎瑙勫垯+鐥呯")
@@ -200,4 +204,70 @@
         }
         return toAjax(true);
     }
+
+    /**
+     * 瑙勫垯鑷姩璁$畻
+     */
+    @GetMapping("/AutoGetRule")
+    @ApiOperation(value = "瑙勫垯鑷姩璁$畻")
+    public AjaxResult AutoGetRule(@ApiParam(value = "椤圭洰") @RequestParam String proId,
+                                  @ApiParam(value = "瀹㈡埛") @RequestParam String cusId,
+                                  @ApiParam(value = "鍏抽敭瀛�") @RequestParam(required = false) String keyWord,
+                                  @ApiParam(value = "缁撴灉鍊�") @RequestParam(required = false) BigDecimal keyNum) {
+
+        List<TjRules> res = new ArrayList<>();
+        if (proId==null){
+            return AjaxResult.success(res);
+        }
+        if (cusId==null){
+            return AjaxResult.success(res);
+        }
+        TjCustomer byId = customerService.getById(cusId);
+        if(byId==null){
+            return AjaxResult.success(res);
+        }
+        LambdaQueryWrapper<TjRules> wq = new LambdaQueryWrapper<>();
+        wq.eq(TjRules::getProId, proId);
+        wq.lt(TjRules::getAgeLt, MatchUtils.getAgeByIdCard(byId.getCusIdcard()));
+        wq.gt(TjRules::getAgeGt, MatchUtils.getAgeByIdCard(byId.getCusIdcard()));
+        wq.in(TjRules::getSex, 0, byId.getCusSex());
+        final List<TjRules> list = tjRulesService.list(wq);
+        if (list==null){
+            return AjaxResult.success(res);
+        }
+        for (TjRules tjRules : list) {
+            //鍒ゆ柇瑙勫垯绫诲瀷:鏁板��/鏂囧瓧
+            if ("2".equals(tjRules.getRuleType())) {
+
+                if (new BigDecimal(0).equals(tjRules.getRuleLt()) && new BigDecimal(0).equals(tjRules.getRuleGt())) {
+                    res.add(tjRules);
+                } else {
+                    if (keyNum != null) {
+                        if (tjRules.getRuleLt().compareTo(keyNum) < 0 && tjRules.getRuleGt().compareTo(keyNum) > 0) {
+                            res.add(tjRules);
+                        }
+                    }
+                }
+            } else if ("1".equals(tjRules.getRuleType())) {
+                if (keyWord!=null){
+                    if (tjRules.getRuleStr().contains(keyWord)) {
+                        res.add(tjRules);
+                    }
+                }
+
+            }
+        }
+        if (res!=null && res.size() > 0) {
+            //寤鸿璧嬪��
+            for (TjRules re : res) {
+                LambdaQueryWrapper<TjRuleAdvice> wq1 = new LambdaQueryWrapper<>();
+                wq1.eq(TjRuleAdvice::getBz, re.getAid());
+                final List<TjRuleAdvice> list1 = tjRuleAdviceService.list(wq1);
+                re.setRuleAdvices(list1);
+            }
+        }
+        return AjaxResult.success(res);
+    }
+
+
 }

--
Gitblit v1.8.0