From b311ca2f01e9602c1bf8caab04b4d641b314e341 Mon Sep 17 00:00:00 2001 From: liyj <15602261488@163.com> Date: Sun, 29 Sep 2024 12:48:09 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/gzdyh_test' into gzdyh_test --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java | 107 ++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 77 insertions(+), 30 deletions(-) diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java index 10e0e84..d4a7f02 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java @@ -3,19 +3,21 @@ 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.po.CaseFeedbackHis; -import cn.huge.module.cases.domain.po.CaseInfoUnfold; +import cn.huge.base.common.utils.ObjectUtils; +import cn.huge.module.cases.consts.CaseTaskConsts; +import cn.huge.module.cases.domain.po.*; import cn.huge.module.client.api.impl.CustClientImpl; import cn.huge.module.client.api.impl.SysClientImpl; import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.cases.dao.mapper.CaseFeedbackMapper; -import cn.huge.module.cases.domain.po.CaseFeedback; import cn.huge.module.cust.dto.CtUserDTO; import cn.huge.module.sys.dto.FileIdInfoBaseDTO; import cn.huge.module.sys.dto.FileInfoBaseDTO; import cn.huge.module.sys.dto.FileTypeInfoBaseDTO; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.google.common.collect.Maps; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -62,6 +64,12 @@ @Autowired private CaseInfoUnfoldService unfoldService; + + @Autowired + private CaseTaskService caseTaskService; + + @Autowired + private CaseAssistInfoService caseAssistInfoService; /** * 更新对象 @@ -154,37 +162,72 @@ } /** - * 获取办理反馈信息 + * 获取办理信息 + * @param caseId + * @param userId + * @return + */ + public Map<String, Object> getFeedbackInfo(String caseId, String caseTaskId, String userId){ + Map<String, Object> result = Maps.newHashMap(); + CaseInfoUnfold caseInfoUnfold = unfoldService.getById(caseId); + CaseTask caseTask = caseTaskService.getById(caseTaskId); + // 承办部门查询扩展表 + if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) { + if (ObjectUtils.isNotEmpty(caseInfoUnfold)) { + result.put("handleUserId", caseInfoUnfold.getMediatorId()); + result.put("handleUnitName", caseInfoUnfold.getMediateUnitName()); + result.put("handleUserName", caseInfoUnfold.getMediator()); + result.put("assistUnitName", caseInfoUnfold.getAssistUnitName()); + result.put("acceptTime", caseInfoUnfold.getAcceptTime()); + } + }else { + // 配合部门查询联合处置信息表 + CaseAssistInfo caseAssistInfo = caseAssistInfoService.getByCaseTaskId(caseTaskId); + result.put("handleUnitName", caseInfoUnfold.getMediateUnitName()); + result.put("handleUserId", caseAssistInfo.getAssistUserId()); + result.put("handleUserName", caseAssistInfo.getAssistUserName()); + result.put("assistUnitName", caseAssistInfo.getAssistUnitName()); + result.put("acceptTime", caseAssistInfo.getAcceptTime()); + } + return result; + } + + /** + * 获取办理反馈记录 * @param id 条件 * @return Page */ public Map<String, Object> listFeedback(String id) { - Map<String, Object> result = new HashMap<>(); + try { + Map<String, Object> result = new HashMap<>(); + CaseInfoUnfold caseInfoUnfold = unfoldService.getById(id); + if(ObjectUtils.isNotEmpty(caseInfoUnfold)){ + result.put("manager", caseInfoUnfold.getMediator()); + } + QueryWrapper<CaseFeedback> caseFeedbackQueryWrapper = new QueryWrapper<>(); + caseFeedbackQueryWrapper.eq("case_id", id); + List<CaseFeedback> caseFeedbackList = mapper.selectList(caseFeedbackQueryWrapper); - QueryWrapper<CaseInfoUnfold> caseInfoUnfoldQueryWrapper = new QueryWrapper<>(); - caseInfoUnfoldQueryWrapper.eq("case_id", id); - CaseInfoUnfold caseInfoUnfold = unfoldService.getOne(caseInfoUnfoldQueryWrapper); - result.put("manager", caseInfoUnfold.getMediator()); - QueryWrapper<CaseFeedback> caseFeedbackQueryWrapper = new QueryWrapper<>(); - caseFeedbackQueryWrapper.eq("case_id", id); - List<CaseFeedback> caseFeedbackList = mapper.selectList(caseFeedbackQueryWrapper); + String ownerIds = caseFeedbackList.stream().map(CaseFeedback::getId).collect(Collectors.joining("','")); + ownerIds = "'"+ ownerIds + "'"; + Map<String, Object> map = new HashMap<>(); + map.put("mainId", id); + map.put("ownerIds", ownerIds); + List<FileIdInfoBaseDTO> fileInfoList = sysClient.listIdInfoByOwnerIdList(map); - String ownerIds = caseFeedbackList.stream().map(CaseFeedback::getId).collect(Collectors.joining("','")); - ownerIds = "'"+ ownerIds + "'"; - Map<String, Object> map = new HashMap<>(); - map.put("mainId", id); - map.put("ownerIds", ownerIds); - List<FileIdInfoBaseDTO> fileInfoList = sysClient.listIdInfoByOwnerIdList(map); - - for(CaseFeedback caseFeedback: caseFeedbackList){ - for(FileIdInfoBaseDTO fileInfo: fileInfoList){ - if(caseFeedback.getId().equals(fileInfo.getOwnerId())){ - caseFeedback.setFileInfoList(fileInfo.getFileList()); + for(CaseFeedback caseFeedback: caseFeedbackList){ + for(FileIdInfoBaseDTO fileInfo: fileInfoList){ + if(caseFeedback.getId().equals(fileInfo.getOwnerId())){ + caseFeedback.setFileInfoList(fileInfo.getFileList()); + } } } + result.put("caseFeedbackList", caseFeedbackList); + return result; + }catch (Exception e){ + log.error("[caseFeedbackService.listFeedback]调用失败,异常信息:"+e, e); + throw new ServiceException("caseFeedbackService.listFeedback", e); } - result.put("caseFeedbackList", caseFeedbackList); - return result; } /** @@ -200,11 +243,16 @@ caseFeedback.setHandleUserId(loginUser.getId()); caseFeedback.setHandleUserName(loginUser.getTrueName()); Date nowDate = DateUtils.getNowDate(); - caseFeedback.setId(utilsClient.getNewTimeId()); caseFeedback.setUpdateTime(nowDate); caseFeedback.setCreateTime(nowDate); - //todo 承办、配合--查询task - + QueryWrapper<CaseInfoUnfold> caseInfoUnfoldQueryWrapper = new QueryWrapper<>(); + caseInfoUnfoldQueryWrapper.eq("id", caseFeedback.getCaseId()); + CaseInfoUnfold caseInfoUnfold = unfoldService.getOne(caseInfoUnfoldQueryWrapper); + if(caseInfoUnfold.getMediateUnitId().equals(loginUser.getUnitId())){ + caseFeedback.setHandleType(CaseTaskConsts.HANDLE_TYPE_1); + }else{ + caseFeedback.setHandleType(CaseTaskConsts.HANDLE_TYPE_2); + } this.save(caseFeedback); }catch (Exception e){ log.error("[caseFeedbackService.savecaseFeedback]调用失败,异常信息:"+e, e); @@ -235,9 +283,8 @@ caseFeedback.setHandleUserId(loginUser.getId()); caseFeedback.setHandleUserName(loginUser.getTrueName()); caseFeedback.setId(utilsClient.getNewTimeId()); + caseFeedback.setHandleType(caseFeedback1.getHandleType()); caseFeedback.setUpdateTime(nowDate); - //todo 承办、配合--查询task - mapper.updateById(caseFeedback); }catch (Exception e){ log.error("[caseFeedbackService.updateFeedback]调用失败,异常信息:"+e, e); -- Gitblit v1.8.0