From f6283db320dc079860a3ce4a482a1f7bd31e52ad Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期四, 23 十一月 2023 17:26:12 +0800
Subject: [PATCH] 回复

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java      |    6 +
 ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzReplyLog.java                      |    9 ++
 ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java |    4 +
 ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzLog.java                           |   26 ++++++
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzLogController.java      |  160 +++++++++++++++++++++++++++++++++++----
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzReplyLogController.java |   20 ++++
 ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCustomer.java                        |    4 +
 7 files changed, 208 insertions(+), 21 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
index f9f7bd0..ac5be6f 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
@@ -1302,6 +1302,8 @@
                         customer.setTjTime(order.getCreateTime());
                         customer.setTjNumber(order.getTjNumber());
                         customer.setTjStatus(1L);
+                        customer.setOrderId(order.getOrderId());
+                        customer.setIsHz(order.getIsHz());
                         LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
                         wq.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
                         wq.in(TjOrderRemark::getType, 0,3);
@@ -1356,6 +1358,8 @@
                         }
                         customer.setTjTime(order.getCreateTime());
                         customer.setTjNumber(order.getTjNumber());
+                        customer.setOrderId(order.getOrderId());
+                        customer.setIsHz(order.getIsHz());
                         customer.setTjStatus(0L);
                         LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
                         wq.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
index 7c9cb83..c0280d0 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
@@ -182,6 +182,8 @@
                 }
                 customer.setTjTime(order.getCreateTime());
                 customer.setTjNumber(order.getTjNumber());
+                customer.setOrderId(order.getOrderId());
+                customer.setIsHz(order.getIsHz());
                 customerLis.add(customer);
 
             }
@@ -240,6 +242,8 @@
                             }
                             customer.setTjTime(order.getCreateTime());
                             customer.setTjNumber(order.getTjNumber());
+                            customer.setOrderId(order.getOrderId());
+                            customer.setIsHz(order.getIsHz());
                             list11111.add(customer);
                         }
                     }
@@ -313,6 +317,8 @@
                         }
                         customer.setTjTime(order.getCreateTime());
                         customer.setTjNumber(order.getTjNumber());
+                        customer.setOrderId(orderId);
+                        customer.setIsHz(order.getIsHz());
                         customer.setTjStatus(Long.valueOf(type));
                         List<TjOrderRemark> list = remarkService.getTjOrderRemarkListByYjNum(order.getTjNumber());
                         if (null != list && list.size() > 0) {
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzLogController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzLogController.java
index ed449ea..1a36d3d 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzLogController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzLogController.java
@@ -1,20 +1,24 @@
 package com.ltkj.web.controller.system;
 
+import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ltkj.common.core.domain.entity.SysDept;
+import com.ltkj.hosp.domain.TjHzReplyLog;
+import com.ltkj.hosp.domain.TjOrder;
+import com.ltkj.hosp.service.ITjHzReplyLogService;
+import com.ltkj.hosp.service.ITjOrderService;
+import com.ltkj.system.service.ISysDeptService;
+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.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ltkj.common.annotation.Log;
 import com.ltkj.common.core.controller.BaseController;
 import com.ltkj.common.core.domain.AjaxResult;
@@ -37,23 +41,57 @@
     @Autowired
     private ITjHzLogService tjHzLogService;
 
+    @Resource
+    private ISysDeptService deptService;
+    @Resource
+    private ITjOrderService tjOrderService;
+    @Autowired
+    private ITjHzReplyLogService tjHzReplyLogService;
+
+
     /**
      * 鏌ヨ浼氳瘖鐢宠璁板綍鍒楄〃
      */
     @GetMapping("/list")
     public TableDataInfo list(TjHzLog tjHzLog) {
         startPage();
-        LambdaQueryWrapper<TjHzLog> wq=new LambdaQueryWrapper<>();
-        if (tjHzLog.getTjNumber()!=null){
-            wq.eq(TjHzLog::getTjNumber,tjHzLog.getTjNumber());
+        LambdaQueryWrapper<TjHzLog> wq = new LambdaQueryWrapper<>();
+        if (tjHzLog.getTjNumber() != null) {
+            wq.eq(TjHzLog::getTjNumber, tjHzLog.getTjNumber());
         }
-        if (tjHzLog.getUserName()!=null){
-            wq.like(TjHzLog::getUserName,tjHzLog.getUserName());
+        if (tjHzLog.getUserName() != null) {
+            wq.like(TjHzLog::getUserName, tjHzLog.getUserName());
         }
-        if (tjHzLog.getHzType()!=null){
-            wq.eq(TjHzLog::getHzType,tjHzLog.getHzType());
+        if (tjHzLog.getHzType() != null) {
+            wq.eq(TjHzLog::getHzType, tjHzLog.getHzType());
         }
         List<TjHzLog> list = tjHzLogService.list(wq);
+
+        for (TjHzLog hzLog : list) {
+            List<String> a = new ArrayList<>();
+            List<String> b = new ArrayList<>();
+            if ("0".equals(tjHzLog.getHzType())) {
+                continue;
+            }
+            if (hzLog.getHzDeptId() != null) {
+                final String[] split = hzLog.getHzDeptId().split(",");
+                for (String s : split) {
+                    final SysDept byId = deptService.getById(s);
+                    a.add(byId.getDeptName());
+                    b.add(String.valueOf(byId.getDeptId()));
+                }
+            }
+            hzLog.setHzDeptNameList(a);
+            hzLog.setHzDeptIdList(b);
+            //浼氳瘖璁板綍鐨勮瘎璁�
+            if (hzLog.getId() != null) {
+                LambdaQueryWrapper<TjHzReplyLog> wq1 = new LambdaQueryWrapper<>();
+                wq1.eq(TjHzReplyLog::getHzId, hzLog.getId());
+                List<TjHzReplyLog> list1 = tjHzReplyLogService.list(wq1);
+                hzLog.setHzReplyLogsList(list1);
+            }
+
+        }
         return getDataTable(list);
     }
 
@@ -82,17 +120,40 @@
      */
     @Log(title = "浼氳瘖鐢宠璁板綍", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@RequestBody TjHzLog tjHzLog){
+    public AjaxResult add(@RequestBody TjHzLog tjHzLog) {
+        if (tjHzLog.getHzDeptIdList() == null && "1".equals(tjHzLog.getHzType())) {
+            return AjaxResult.error("璇烽�夋嫨绉戝");
+        }
+        if (tjHzLog.getHzDeptIdList() != null) {
+            StringBuilder str = new StringBuilder();
+            for (int i = 0; i < tjHzLog.getHzDeptIdList().size(); i++) {
+
+                str = str.append(tjHzLog.getHzDeptIdList().get(i));
+                if (i != tjHzLog.getHzDeptIdList().size() - 1) {
+                    str = str.append(",");
+                }
+            }
+            tjHzLog.setHzDeptId(String.valueOf(str));
+        }
+        //淇敼褰撳墠浼氳瘖鐘舵��
+        if (tjHzLog.getOrderId() == null) {
+            return AjaxResult.error("鍑洪敊浜嗭紝璇疯仈绯诲伐浣滀汉鍛�");
+        }
+        final TjOrder byId = tjOrderService.getById(tjHzLog.getOrderId());
+        if (byId != null) {
+            byId.setIsHz(1);
+            tjOrderService.updateById(byId);
+        }
+
         return toAjax(tjHzLogService.save(tjHzLog));
     }
 
     /**
      * 淇敼浼氳瘖鐢宠璁板綍
-
      */
     @Log(title = "浼氳瘖鐢宠璁板綍 ", businessType = BusinessType.UPDATE)
     @PutMapping
-    public AjaxResult edit(@RequestBody TjHzLog tjHzLog){
+    public AjaxResult edit(@RequestBody TjHzLog tjHzLog) {
         return toAjax(tjHzLogService.saveOrUpdate(tjHzLog));
     }
 
@@ -101,7 +162,68 @@
      */
     @Log(title = "浼氳瘖鐢宠璁板綍 ", businessType = BusinessType.DELETE)
     @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[]ids) {
+    public AjaxResult remove(@PathVariable Long[] ids) {
         return toAjax(tjHzLogService.removeByIds(Arrays.asList(ids)));
     }
+
+    /**
+     * 鍒ゆ柇浼氳瘖璁板綍鏄惁鍚湁褰撳墠鐧诲綍鐨勯儴闂�
+     */
+    @GetMapping("/hzHasDept")
+    public AjaxResult hzHasDept(@RequestParam String tjNumber,
+                                @RequestParam String deptId) {
+        List<TjHzLog> res = new ArrayList<>();
+        LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
+        wq1.eq(TjOrder::getTjNumber, tjNumber);
+        wq1.eq(TjOrder::getIsHz, 1);
+        final List<TjOrder> list = tjOrderService.list(wq1);
+        if (list == null || list.size() == 0) {
+            return AjaxResult.success(0);
+        }
+        for (TjOrder tjOrder : list) {
+            LambdaQueryWrapper<TjHzLog> wq2 = new LambdaQueryWrapper<>();
+            wq2.eq(TjHzLog::getOrderId, tjOrder.getOrderId());
+            List<TjHzLog> list1 = tjHzLogService.list(wq2);
+            for (TjHzLog tjHzLog : list1) {
+                if ("0".equals(tjHzLog.getHzType())) {
+                    res.add(tjHzLog);
+                } else if ("1".equals(tjHzLog.getHzType())) {
+                    final String[] split = tjHzLog.getHzDeptId().split(",");
+//                    if ("100".equals(deptId)){
+//                        res.add(tjHzLog);
+//                        continue;
+//                    }
+                    if (Arrays.asList(split).contains(deptId)) {
+                        res.add(tjHzLog);
+                    }
+                } else {
+                    continue;
+                }
+            }
+        }
+        for (TjHzLog re : res) {
+            List<String> a = new ArrayList<>();
+            List<String> b = new ArrayList<>();
+//            if ("0".equals(re.getHzType())) {
+//                continue;
+//            }
+            if (re.getHzDeptId() != null) {
+                final String[] split = re.getHzDeptId().split(",");
+                for (String s : split) {
+                    final SysDept byId = deptService.getById(s);
+                    a.add(byId.getDeptName());
+                    b.add(String.valueOf(byId.getDeptId()));
+                }
+            }
+            re.setHzDeptNameList(a);
+            re.setHzDeptIdList(b);
+            //浼氳瘖璁板綍鐨勮瘎璁�
+            LambdaQueryWrapper<TjHzReplyLog> wq11 = new LambdaQueryWrapper<>();
+            wq11.eq(TjHzReplyLog::getHzId, re.getId());
+            List<TjHzReplyLog> list1 = tjHzReplyLogService.list(wq11);
+            re.setHzReplyLogsList(list1);
+        }
+        return AjaxResult.success(res);
+    }
+
 }
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzReplyLogController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzReplyLogController.java
index 7fde2f6..042dd11 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzReplyLogController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHzReplyLogController.java
@@ -2,8 +2,13 @@
 
 import java.util.Arrays;
 import java.util.List;
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ltkj.common.core.domain.entity.SysDept;
+import com.ltkj.hosp.domain.TjHzLog;
+import com.ltkj.system.service.ISysDeptService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -35,13 +40,20 @@
     @Autowired
     private ITjHzReplyLogService tjHzReplyLogService;
 
+    @Resource
+    private ISysDeptService deptService;
+
     /**
      * 鏌ヨ浼氳瘖鍥炲璁板綍鍒楄〃
      */
     @GetMapping("/list")
     public TableDataInfo list(TjHzReplyLog tjHzReplyLog) {
         startPage();
-        List<TjHzReplyLog> list = tjHzReplyLogService.selectTjHzReplyLogList(tjHzReplyLog);
+        LambdaQueryWrapper<TjHzReplyLog> wq=new LambdaQueryWrapper<>();
+        if (tjHzReplyLog.getTjNumber()!=null){
+            wq.eq(TjHzReplyLog::getHzId,tjHzReplyLog.getHzId());
+        }
+        List<TjHzReplyLog> list = tjHzReplyLogService.list(wq);
         return getDataTable(list);
     }
 
@@ -70,6 +82,12 @@
     @Log(title = "浼氳瘖鍥炲璁板綍", businessType = BusinessType.INSERT)
     @PostMapping
     public AjaxResult add(@RequestBody TjHzReplyLog tjHzReplyLog) {
+        if (tjHzReplyLog.getReplyDeptId()!=null){
+            final SysDept byId = deptService.getById(tjHzReplyLog.getReplyDeptId());
+            if (byId!=null){
+                tjHzReplyLog.setReplyDeptName(byId.getDeptName());
+            }
+        }
         return toAjax(tjHzReplyLogService.save(tjHzReplyLog));
     }
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCustomer.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCustomer.java
index 6d23daf..b941fd3 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCustomer.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjCustomer.java
@@ -295,6 +295,10 @@
     private String wechat;
 
 
+    @TableField(exist = false)
+    private Integer isHz;
+
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzLog.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzLog.java
index 42d19eb..3c2ad70 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzLog.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzLog.java
@@ -1,10 +1,15 @@
 package com.ltkj.hosp.domain;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.ltkj.common.annotation.Excel;
 import com.ltkj.common.core.domain.BaseEntity;
 import lombok.Data;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.List;
 
 /**
  * 浼氳瘖鐢宠璁板綍
@@ -20,17 +25,20 @@
     /**
      * 浼氳瘖id
      */
+    @JsonSerialize(using = ToStringSerializer.class)
     private Long id;
 
     /**
      * 浼氳瘖璁㈠崟id
      */
+    @JsonSerialize(using = ToStringSerializer.class)
     @Excel(name = "浼氳瘖璁㈠崟id")
     private Long orderId;
 
     /**
      * 鐢ㄦ埛id
      */
+    @JsonSerialize(using = ToStringSerializer.class)
     @Excel(name = "鐢ㄦ埛id")
     private Long userId;
 
@@ -71,6 +79,24 @@
     @Excel(name = "浼氳瘖鐢宠浜哄悕")
     private String hzDoctorName;
 
+    /**
+     * 浼氳瘖绉戝[]
+     */
+    @TableField(exist = false)
+    private List<String> hzDeptIdList;
+
+
+    /**
+     * 浼氳瘖绉戝[]
+     */
+    @TableField(exist = false)
+    private List<String> hzDeptNameList;
+
+    /**
+     * 浼氳瘖绉戝[]
+     */
+    @TableField(exist = false)
+    private List<TjHzReplyLog> hzReplyLogsList;
 
     @Override
     public String toString() {
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzReplyLog.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzReplyLog.java
index 0761b3c..424f30e 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzReplyLog.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjHzReplyLog.java
@@ -1,5 +1,7 @@
 package com.ltkj.hosp.domain;
 
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.ltkj.common.annotation.Excel;
 import com.ltkj.common.core.domain.BaseEntity;
 import lombok.Data;
@@ -19,11 +21,13 @@
     /**
      * 浼氳瘖id
      */
+    @JsonSerialize(using = ToStringSerializer.class)
     private Long id;
 
     /**
      * 浼氳瘖璁㈠崟id
      */
+    @JsonSerialize(using = ToStringSerializer.class)
     @Excel(name = "浼氳瘖璁㈠崟id")
     private Long orderId;
 
@@ -37,6 +41,7 @@
      * 鐢ㄦ埛id
      */
     @Excel(name = "鐢ㄦ埛id")
+    @JsonSerialize(using = ToStringSerializer.class)
     private Long userId;
 
     /**
@@ -55,6 +60,7 @@
      * 鍥炲鍖荤敓
      */
     @Excel(name = "鍥炲鍖荤敓")
+    @JsonSerialize(using = ToStringSerializer.class)
     private Long replyDoctorId;
 
     /**
@@ -67,6 +73,7 @@
      * 鍥炲閮ㄩ棬
      */
     @Excel(name = "鍥炲閮ㄩ棬")
+    @JsonSerialize(using = ToStringSerializer.class)
     private Long replyDeptId;
 
     /**
@@ -91,7 +98,7 @@
     /**
      * 浼氳瘖鐢宠id
      */
-    @Excel(name = "浼氳瘖鐢宠id")
+    @JsonSerialize(using = ToStringSerializer.class)
     private Long hzId;
 
     /**

--
Gitblit v1.8.0