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/TjHzLogController.java | 160 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 141 insertions(+), 19 deletions(-) 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); + } + } -- Gitblit v1.8.0