From ce8db97536e2ffa4513c79f39939ed796c5160ff Mon Sep 17 00:00:00 2001
From: liyj <15602261488@163.com>
Date: Sun, 22 Sep 2024 16:53:26 +0800
Subject: [PATCH] 1、获取tab和button接口优化
---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java | 152 ++++++++++++++++++++++++++++++++++++++------------
1 files changed, 115 insertions(+), 37 deletions(-)
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
index 5bd8845..6cb637b 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
@@ -3,6 +3,8 @@
import cn.huge.base.common.exception.ServiceException;
import cn.huge.base.common.utils.DateUtils;
import cn.huge.base.common.utils.IdUtils;
+import cn.huge.module.cases.domain.dto.FileRelateDTO;
+import cn.huge.module.cases.domain.dto.QuiltUnitDTO;
import cn.huge.module.client.api.impl.CustClientImpl;
import cn.huge.module.client.api.impl.SysClientImpl;
import cn.huge.module.client.api.impl.UtilsClientImpl;
@@ -11,10 +13,13 @@
import cn.huge.module.cust.dto.CtUserDTO;
import cn.huge.module.sys.constant.FileOwnerTypeBaseEnum;
import cn.huge.module.sys.constant.SyTimeEnum;
+import cn.huge.module.sys.dto.FileIdInfoBaseDTO;
import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO;
import cn.huge.module.sys.dto.FileInfoBaseDTO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import lombok.extern.slf4j.Slf4j;
@@ -133,23 +138,52 @@
/**
* 添加督办
* @param caseSupervise 实体对象
- * @param userId 用户信息编号
*/
public void addCaseSupervise(CaseSupervise caseSupervise, String userId){
try{
- // 获取当前登录用户
- CtUserDTO loginUser = custClient.clientGetUserAll(userId);
- Date nowDate = DateUtils.getNowDate();
- caseSupervise.setSupUserId(loginUser.getId());
- caseSupervise.setSupUserName(loginUser.getTrueName());
- caseSupervise.setSupTime(nowDate);
- caseSupervise.setSupStatus(0);
- caseSupervise.setCreateTime(nowDate);
- caseSupervise.setUpdateTime(nowDate);
- //todo 配置时限
- Integer timeTerm = sysClient.getTimeLimit("dyh_case_supervise", SyTimeEnum.SY_TIME_03.getIndex());
- caseSupervise.setReplyTerm(timeTerm);
- this.save(caseSupervise);
+ List<QuiltUnitDTO> quiltUnitDTOList = caseSupervise.getQuiltUnitDTOList();
+ Integer timeTerm = sysClient.getTimeLimitHour(SyTimeEnum.SY_TIME_5.getIndex());
+ List<CaseSupervise> caseSuperviseList = new ArrayList<>();
+ List<FileRelateDTO> fileRelateDTOList = sysClient.listFileRelateByOwnerId(caseSupervise.getId());
+ int count = 0;
+ List<FileRelateDTO> fileRelateDTOListNew = new ArrayList<>();
+ for(QuiltUnitDTO quiltUnitDTO: quiltUnitDTOList){
+ CaseSupervise caseSuperviseNew = new CaseSupervise();
+ BeanUtils.copyProperties(caseSupervise, caseSuperviseNew);
+ // 获取当前登录用户
+ CtUserDTO loginUser = custClient.clientGetUserAll(userId);
+ Date nowDate = DateUtils.getNowDate();
+ caseSuperviseNew.setSupUserId(loginUser.getId());
+ caseSuperviseNew.setSupUserName(loginUser.getTrueName());
+ caseSuperviseNew.setSupUnitId(loginUser.getUnitId());
+ caseSuperviseNew.setSupUnitName(loginUser.getUnitName());
+ caseSuperviseNew.setSupTime(nowDate);
+ caseSuperviseNew.setQuiltUnitId(quiltUnitDTO.getQuiltUnitId());
+ caseSuperviseNew.setQuiltUnitName(quiltUnitDTO.getQuiltUnitName());
+ caseSuperviseNew.setSupStatus(0);
+ caseSuperviseNew.setCreateTime(nowDate);
+ caseSuperviseNew.setUpdateTime(nowDate);
+ caseSuperviseNew.setReplyTerm(timeTerm);
+ //给每条督办添加附件信息
+ if(0 != count){
+ String caseSupId = utilsClient.getNewTimeId();
+ caseSuperviseNew.setId(caseSupId);
+ for(FileRelateDTO fileRelateDTO: fileRelateDTOList){
+ String fileRealateId = utilsClient.getNewTimeSysId();
+ FileRelateDTO fileRelateDTONew = new FileRelateDTO();
+ BeanUtils.copyProperties(fileRelateDTO, fileRelateDTONew);
+ fileRelateDTONew.setOwnerId(caseSuperviseNew.getId());
+ fileRelateDTONew.setId(fileRealateId);
+ fileRelateDTOListNew.add(fileRelateDTONew);
+ }
+ }
+ caseSuperviseList.add(caseSuperviseNew);
+ count++;
+ }
+ this.saveBatch(caseSuperviseList);
+ if(CollectionUtils.isNotEmpty(fileRelateDTOListNew)){
+ sysClient.saveFileRelateList(fileRelateDTOListNew);
+ }
}catch (Exception e){
log.error("[CaseSuperviseService.saveCaseSupervise]调用失败,异常信息:"+e, e);
throw new ServiceException("CaseSuperviseService.saveCaseSupervise", e);
@@ -168,7 +202,7 @@
caseSupervise.setSupStatus(1);
caseSupervise.setReplyUserId(loginUser.getId());
caseSupervise.setReplyUserName(loginUser.getTrueName());
- caseSupervise.setReplyTime(String.valueOf(now));
+ caseSupervise.setReplyTime(now);
caseSupervise.setUpdateTime(now);
mapper.updateCaseSupervise(caseSupervise);
}catch (Exception e){
@@ -181,41 +215,85 @@
* 流转办理-督办列表
* @param caseId 事项Id
*/
- public Map<String, Object> listCaseSupervise(String caseId){
+ public Page<CaseSupervise> pageCaseSupervise(String caseId, PageRequest page, int supStatus, String userId, int type){
try{
- List<CaseSupervise> repliedList = new ArrayList<>();
- List<CaseSupervise> noReplyList = new ArrayList<>();
- QueryWrapper<CaseSupervise> caseSuperviseQueryWrapper = new QueryWrapper<>();
- caseSuperviseQueryWrapper.eq("case_id", caseId);
- List<CaseSupervise> caseSuperviseList = mapper.selectList(caseSuperviseQueryWrapper);
+ CtUserDTO loginUser = custClient.clientGetUserAll(userId);
+ String quiltUnitId = loginUser.getUnitId();
+ Map<String, Object> terms = new HashMap<>();
+ terms.put("caseId", caseId);
+ terms.put("type", type);
+ if(1 == type){
+ terms.put("supStatus", supStatus);
+ terms.put("quiltUnitId", quiltUnitId);
+ }
+ long countSuperviseList = mapper.countCaseSupervise(terms);
+ List<CaseSupervise> caseSuperviseList = mapper.pageCaseSupervise(terms, page);
Map<String, Object>map = new HashMap<>();
- map.put("ownerIds", caseSuperviseList.stream().map(CaseSupervise::getId).collect(Collectors.joining("','")));
- map.put("types", FileOwnerTypeBaseEnum.OWNER_TYPE_506.getIndex());
- List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(map, caseId);
+ map.put("mainId", caseId);
+ map.put("ownerIds", "'" + caseSuperviseList.stream().map(CaseSupervise::getId).collect(Collectors.joining("','"))+ "'");
+ map.put("types", "'"+ FileOwnerTypeBaseEnum.OWNER_TYPE_506.getIndex()+ "','" +FileOwnerTypeBaseEnum.OWNER_TYPE_507.getIndex()+"'");
+ List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(map);
for(CaseSupervise caseSupervise: caseSuperviseList){
for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){
if(caseSupervise.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){
caseSupervise.setFileInfoList(fileIdTypeInfoBaseDTO.getFileList());
}
}
- if(0 == caseSupervise.getSupStatus()){
- noReplyList.add(caseSupervise);
- }else if(1 == caseSupervise.getSupStatus()){
- repliedList.add(caseSupervise);
- }
}
- int count = noReplyList.size();
- Map<String, Object> result = new HashMap<>();
- result.put("count", count);
- result.put("noReplyList", noReplyList);
- result.put("repliedList", repliedList);
- return result;
+ return new PageImpl<CaseSupervise>(caseSuperviseList, page, countSuperviseList);
}catch (Exception e){
- log.error("[CaseSuperviseService.listCaseSupervise]调用失败,异常信息:"+e, e);
- throw new ServiceException("CaseSuperviseService.listCaseSupervise", e);
+ log.error("[CaseSuperviseService.pageReplied]调用失败,异常信息:"+e, e);
+ throw new ServiceException("CaseSuperviseService.pageReplied", e);
}
}
+ /**
+ * 首页-督办
+ * @param page
+ * @param terms
+ */
+ public Page<CaseSupervise> pageMyTaskDb(PageRequest page, Map<String, Object> terms){
+ try{
+ long countSuperviseList = mapper.countMyTaskDb(terms);
+ List<CaseSupervise> caseSuperviseList = mapper.pageMyTaskDb(page, terms);
+ return new PageImpl<CaseSupervise>(caseSuperviseList, page, countSuperviseList);
+ }catch (Exception e){
+ log.error("[CaseSuperviseService.pageReplied]调用失败,异常信息:"+e, e);
+ throw new ServiceException("CaseSuperviseService.pageReplied", e);
+ }
+ }
+ /**
+ * 查询督办数量
+ * @param supStatus 回复状态
+ * @param quiltUnitId 被督办组织编号
+ * @return long
+ */
+ public long countCaseSuperviseList(Integer supStatus, String quiltUnitId){
+ return mapper.countCaseSuperviseList(supStatus, quiltUnitId);
+ }
+
+ /**
+ * 根据督办编号查询督办信息
+ * @param id 督办编号
+ * @return List
+ */
+ public CaseSupervise getById(String id){
+ try {
+ CaseSupervise caseSupervise = mapper.selectById(id);
+ Map<String, Object> terms = new HashMap<>();
+ terms.put("mainId", "'" + caseSupervise.getCaseId() + "'");
+ terms.put("ownerIds", "'" + id + "'");
+ List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(terms);
+ if(CollectionUtils.isNotEmpty(fileIdTypeInfoBaseDTOList)){
+ caseSupervise.setFileInfoList(fileIdTypeInfoBaseDTOList.get(0).getFileList());
+ }
+ return caseSupervise;
+ }catch (Exception e){
+ log.error("[CaseSuperviseService.getById]调用失败,异常信息:"+e, e);
+ throw new ServiceException("CaseSuperviseService.getById", e);
+ }
+
+ }
}
--
Gitblit v1.8.0