From 9155df2aeab5b0d95c89dd928dbaefbfbaeae9d1 Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 05 九月 2024 17:10:35 +0800 Subject: [PATCH] zjh 2024-09-05 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjBigPositiveController.java | 154 ++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 116 insertions(+), 38 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjBigPositiveController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjBigPositiveController.java index a549a1a..c38eb28 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjBigPositiveController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjBigPositiveController.java @@ -1,8 +1,22 @@ package com.ltkj.web.controller.system; +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.SysUser; +import com.ltkj.common.utils.SecurityUtils; +import com.ltkj.hosp.domain.TjOrderDetail; +import com.ltkj.hosp.service.ITjOrderDetailService; +import com.ltkj.hosp.service.ITjProjectService; +import com.ltkj.hosp.service.TjAsyncService; +import com.ltkj.system.domain.SysPost; +import com.ltkj.system.domain.SysUserPost; +import com.ltkj.system.service.ISysPostService; +import com.ltkj.system.service.ISysUserPostService; +import com.ltkj.system.service.ISysUserService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -34,6 +48,19 @@ @Autowired private ITjBigPositiveService tjBigPositiveService; + @Resource + private ITjOrderDetailService detailService; + @Resource + private ISysUserService userService; + @Resource + private ITjProjectService projectService; + + @Resource + private ISysUserPostService userPostService; + @Resource + private ISysPostService postService; + @Resource + private TjAsyncService asyncService; /** * 鏌ヨ閲嶅ぇ闃虫�ц褰曞垪琛� */ @@ -45,48 +72,99 @@ } /** - * 瀵煎嚭閲嶅ぇ闃虫�ц褰曞垪琛� + * 鏂板/绉婚櫎 閲嶅ぇ闃虫�ц褰� 鍒ゆ柇flag */ - @Log(title = "閲嶅ぇ闃虫�ц褰�", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, TjBigPositive tjBigPositive) { - List<TjBigPositive> list = tjBigPositiveService.selectTjBigPositiveList(tjBigPositive); - ExcelUtil<TjBigPositive> util = new ExcelUtil<TjBigPositive>(TjBigPositive.class); - util.exportExcel(response, list, "閲嶅ぇ闃虫�ц褰曟暟鎹�"); - } - - /** - * 鑾峰彇閲嶅ぇ闃虫�ц褰曡缁嗕俊鎭� - */ - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) { - return success(tjBigPositiveService.selectTjBigPositiveById(id)); - } - - /** - * 鏂板閲嶅ぇ闃虫�ц褰� - */ - @Log(title = "閲嶅ぇ闃虫�ц褰�", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody TjBigPositive tjBigPositive) { - return toAjax(tjBigPositiveService.insertTjBigPositive(tjBigPositive)); + SysUser sysUser = SecurityUtils.getLoginUser().getUser(); + Integer ksId = null; + if (null != sysUser) { + ksId = Math.toIntExact(sysUser.getDeptId()); + } + + if (ksId == null) { + return AjaxResult.error("璇疯緭鍏ョ瀹d"); + } + //鏍规嵁褰撳墠鐧婚檰鐨勪汉鐨勭瀹d锛岃幏鍙栬绉戝涓嬬殑鎵�鏈夐」鐩� + List<Long> postIds = sysUser.getPostIds(); + List<Long> ksproList = null; + if (postIds != null) { + for (Long postId : postIds) { + LambdaQueryWrapper<SysUserPost> wq111 = new LambdaQueryWrapper<>(); + wq111.eq(SysUserPost::getPostId, postId); + SysUserPost one = userPostService.getOne(wq111); + if (one != null) { + SysPost byId = postService.getById(one.getPostId()); + if (byId.getPostName().equals("褰曞叆鍛�")) { + ksproList = projectService.getKsTjProjectIdListBydeptId(String.valueOf(ksId)); + } + } + } + } else { + ksproList = projectService.getKsTjProjectIdList(); + } + + if (ksproList == null || ksproList.size() == 0) { + return AjaxResult.error("璇峰畬鍠勭瀹ら」鐩俊鎭�"); + } + if ("1".equals(tjBigPositive.getFlag())){ + LambdaQueryWrapper<TjBigPositive> wq=new LambdaQueryWrapper<>(); + wq.eq(TjBigPositive::getTjNumber,tjBigPositive.getTjNumber()); + wq.eq(TjBigPositive::getProParentId,tjBigPositive.getProParentId()); + wq.eq(TjBigPositive::getProId,tjBigPositive.getProId()); + final List<TjBigPositive> list = tjBigPositiveService.list(wq); + LambdaQueryWrapper<TjOrderDetail> wqq=new LambdaQueryWrapper<>(); + wqq.eq(TjOrderDetail::getProId,tjBigPositive.getProId()); + wqq.eq(TjOrderDetail::getOrderId,tjBigPositive.getOrderId()); + wqq.last("limit 1"); + TjOrderDetail tjOrderDetails = detailService.getOne(wqq); + if (list==null||list.size()==0){ + tjBigPositiveService.save(tjBigPositive); + //鏇存敼detail琛ㄧ姸鎬� + if (tjOrderDetails!=null){ + tjOrderDetails.setIsPositive(1L); + detailService.updateById(tjOrderDetails); + //鏇存柊缂撳瓨 + asyncService.updateOrdeltile2(tjOrderDetails, sysUser); + asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId)); + return AjaxResult.success("娣诲姞鎴愬姛"); + } + return AjaxResult.error("鍑洪敊浜嗭紝璇疯仈绯诲伐浣滀汉鍛�"); + }else { + tjBigPositiveService.updateById(tjBigPositive); + //鏇存柊缂撳瓨 +// asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId)); + if (tjOrderDetails!=null){ + asyncService.updateOrdeltile2(tjOrderDetails, sysUser); + asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId)); + } + return AjaxResult.success("娣诲姞鎴愬姛"); + } + }else if ("0".equals(tjBigPositive.getFlag())){ + LambdaQueryWrapper<TjBigPositive> wq11=new LambdaQueryWrapper<>(); + wq11.eq(TjBigPositive::getTjNumber,tjBigPositive.getTjNumber()); + wq11.eq(TjBigPositive::getProParentId,tjBigPositive.getProParentId()); + wq11.eq(TjBigPositive::getProId,tjBigPositive.getProId()); + tjBigPositiveService.remove(wq11); + //鏇存敼detail琛ㄧ姸鎬� + LambdaQueryWrapper<TjOrderDetail> wqq=new LambdaQueryWrapper<>(); + wqq.eq(TjOrderDetail::getProId,tjBigPositive.getProId()); + wqq.eq(TjOrderDetail::getOrderId,tjBigPositive.getOrderId()); + wqq.last("limit 1"); + TjOrderDetail tjOrderDetails = detailService.getOne(wqq); + if (tjOrderDetails!=null){ + tjOrderDetails.setIsPositive(Long.valueOf(0)); + detailService.updateById(tjOrderDetails); + //鏇存柊缂撳瓨 + asyncService.updateOrdeltile2(tjOrderDetails, sysUser); + asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId)); + return AjaxResult.success("鍒犻櫎鎴愬姛"); + } + return AjaxResult.error("鍑洪敊浜嗭紝璇疯仈绯诲伐浣滀汉鍛�"); + + } + return AjaxResult.error("鍑洪敊浜嗭紝璇疯仈绯诲伐浣滀汉鍛�"); } - /** - * 淇敼閲嶅ぇ闃虫�ц褰� - */ - @Log(title = "閲嶅ぇ闃虫�ц褰�", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody TjBigPositive tjBigPositive) { - return toAjax(tjBigPositiveService.updateTjBigPositive(tjBigPositive)); - } - /** - * 鍒犻櫎閲嶅ぇ闃虫�ц褰� - */ - @Log(title = "閲嶅ぇ闃虫�ц褰�", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(tjBigPositiveService.deleteTjBigPositiveByIds(ids)); - } } -- Gitblit v1.8.0