From 50a3b0d23cb9a6e4bc0933b18432d882f2103c4a Mon Sep 17 00:00:00 2001 From: mx <1289317512@qq.com> Date: Wed, 25 Dec 2024 16:19:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=88=97=E8=A1=A8=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/controller/PsTaskController.java | 4 +- .../mapper/PsContractBusinessMapper.java | 2 +- .../service/IPsApproverRecordService.java | 2 + .../impl/PsApproverRecordServiceImpl.java | 29 ++++++++++++--- .../service/impl/PsTaskServiceImpl.java | 37 +++++++++++++++---- .../business/PsContractBusinessMapper.xml | 3 +- .../mapper/business/PsTaskMainMapper.xml | 8 ++-- 7 files changed, 65 insertions(+), 20 deletions(-) diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/controller/PsTaskController.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/controller/PsTaskController.java index 38ee78b..c7bbc51 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/controller/PsTaskController.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/controller/PsTaskController.java @@ -45,7 +45,7 @@ public class PsTaskController extends BaseController { /** * 查询主任务列表 */ - @Log(title = "查询主任务列表") +// @Log(title = "查询主任务列表") @SaCheckPermission("business:task:list") @GetMapping("/list") public TableDataInfo list(PsTaskQueryBo bo, PageQuery pageQuery) { @@ -55,7 +55,7 @@ public class PsTaskController extends BaseController { /** * 查询内外特任务列表 */ - @Log(title = "查询内外特任务列表") +// @Log(title = "查询内外特任务列表") @SaCheckPermission("business:task:list") @GetMapping("/childList") public TableDataInfo childList(@Validated(QueryGroup.class) PsTaskQueryBo bo, PageQuery pageQuery) { diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsContractBusinessMapper.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsContractBusinessMapper.java index 9dd1542..7b1eca5 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsContractBusinessMapper.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsContractBusinessMapper.java @@ -26,6 +26,6 @@ public interface PsContractBusinessMapper extends BaseMapperPlus selectTuoGuanBusinessList(@Param(Constants.WRAPPER) Wrapper queryWrapper); - List selectListByContractCodeAndComanyId(@Param(Constants.WRAPPER) Wrapper queryWrapper); + List selectListByContractCodeAndCompanyId(@Param(Constants.WRAPPER) Wrapper queryWrapper); } diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsApproverRecordService.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsApproverRecordService.java index 97b6142..2f43a9d 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsApproverRecordService.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsApproverRecordService.java @@ -60,6 +60,8 @@ public interface IPsApproverRecordService { Map getLastFail(List businessIds, List businessTypes); Map> getLastRecord(List contractCodes, List businessTypes); + + Map> getLastRecordByBus(List businessIds, List businessTypes); // // /** // * 新增审批记录 diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsApproverRecordServiceImpl.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsApproverRecordServiceImpl.java index d92accb..98d21c1 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsApproverRecordServiceImpl.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsApproverRecordServiceImpl.java @@ -149,13 +149,13 @@ public class PsApproverRecordServiceImpl implements IPsApproverRecordService { */ public String getLastFail(String businessId, String contractCode, List businessTypes){ PsApproverRecord record = baseMapper.selectOne(Wrappers.lambdaQuery() - .select(PsApproverRecord::getApproverStatus,PsApproverRecord::getApproverDesc) + .select(PsApproverRecord::getApproverStatus, PsApproverRecord::getApproverDesc) .eq(StringUtils.isNotBlank(businessId), PsApproverRecord::getBusinessId, businessId) .eq(StringUtils.isNotBlank(contractCode), PsApproverRecord::getContractCode, contractCode) .in(CollectionUtils.isNotEmpty(businessTypes), PsApproverRecord::getBusinessType, businessTypes) .orderByDesc(PsApproverRecord::getApplyDate).last("limit 1")); - return record!=null&&StringUtils.equals(ApproverStatusEnum.FAIL.getCode(),record.getApproverStatus()) - ?record.getApproverDesc():null; + return record != null && StringUtils.equals(ApproverStatusEnum.FAIL.getCode(), record.getApproverStatus()) + ? record.getApproverDesc() : null; } public Map getLastFail(List businessIds, List businessTypes){ @@ -184,8 +184,10 @@ public class PsApproverRecordServiceImpl implements IPsApproverRecordService { return new HashMap<>(); } QueryWrapper qw = Wrappers.query(); - qw.in("r.contract_code", contractCodes) - .in("r.business_type", businessTypes); + + qw + .in("r.contract_code", contractCodes) + .in("r.business_type", businessTypes); List record = baseMapper.getLastFail(qw); Map> map = new HashMap<>(); @@ -195,6 +197,23 @@ public class PsApproverRecordServiceImpl implements IPsApproverRecordService { } return map; } + + public Map> getLastRecordByBus(List businessIds, List businessTypes){ + if (businessIds.isEmpty()){ + return new HashMap<>(); + } + QueryWrapper qw = Wrappers.query(); + + qw.in("r.business_id", businessIds).in("r.business_type", businessTypes); + List record = baseMapper.getLastFail(qw); + + Map> map = new HashMap<>(); + for (PsApproverRecordVo v : record) { + List psApproverRecordVos = map.computeIfAbsent(v.getBusinessId(), s -> new ArrayList<>()); + psApproverRecordVos.add(v); + } + return map; + } // /** // * 新增审批记录 // * diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java index 20069fd..4650604 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java @@ -11,11 +11,8 @@ import com.pusong.business.domain.bo.MediaCompanySaveBo; import com.pusong.business.domain.bo.PsTaskMediaBo; import com.pusong.business.domain.bo.PsTaskQueryBo; import com.pusong.business.domain.vo.*; -import com.pusong.business.enums.ApproverTypeEnum; -import com.pusong.business.enums.ContractStatusEnum; -import com.pusong.business.enums.TaskStatusEnum; +import com.pusong.business.enums.*; import com.pusong.business.enums.TaskStatusEnum.AppointStatusEnum; -import com.pusong.business.enums.TaskTypeEnum; import com.pusong.business.mapper.*; import com.pusong.business.service.*; import com.pusong.business.service.approver.ApproverContainer; @@ -123,6 +120,21 @@ public class PsTaskServiceImpl implements IPsTaskService { // lqw.orderByAsc("assigned"); lqw.orderByDesc("main.create_time"); page = baseMapper.queryTaskPageList(pageQuery.build(), lqw); + + if (page.getSize() > 0){ + QueryWrapper queryWrapper = new QueryWrapper(); + List list = page.getRecords().stream().map(PsTaskMainVo::getId).toList(); + queryWrapper.in("task_id", list); + queryWrapper.ne("appoint_status", "50"); + queryWrapper.eq("del_flag", "0"); + List taskAppointVos = appointMapper.selectVoList(queryWrapper); + LinkedHashMap> collect = taskAppointVos.stream().collect(Collectors.groupingBy(PsTaskAppointVo::getTaskId, LinkedHashMap::new, Collectors.toList())); + for (PsTaskMainVo record : page.getRecords()) { + record.setPsTaskAppointVoList(collect.get(record.getId())); + } + } + + } fillInfo(page); @@ -132,30 +144,33 @@ public class PsTaskServiceImpl implements IPsTaskService { } private void fillInfo(Page page) { - String contractCode = null; if (page.getRecords().isEmpty()){ return; } Map> busMap = new HashMap<>(); List serviceCompanyIdList = page.getRecords().stream().map(PsTaskMainVo::getServiceCompanyId).toList(); List contractCodeList = page.getRecords().stream().map(PsTaskMainVo::getContractCode).toList(); +// List taskIdList = page.getRecords().stream().map(PsTaskMainVo::getId).map(Object::toString).toList(); QueryWrapper objectQueryWrapper = new QueryWrapper() .in("bus.contract_code", contractCodeList) .in("bus.company_id", serviceCompanyIdList); - List psContractBusinesses = businessMapper.selectListByContractCodeAndComanyId(objectQueryWrapper); + List psContractBusinesses = businessMapper.selectListByContractCodeAndCompanyId(objectQueryWrapper); for (PsContractBusinessDetailVo psContractBusiness : psContractBusinesses) { List psContractBusinesses1 = busMap.computeIfAbsent(psContractBusiness.getContractCode() + "_" + psContractBusiness.getCompanyId(), a -> new ArrayList<>()); psContractBusinesses1.add(psContractBusiness); } +// Map> lastFailMap = approverRecordService.getLastRecordByBus( taskIdList +// , List.of(ApproverTypeEnum.TASKCANCE.getCode())); + for (PsTaskMainVo vo : page.getRecords()) { if(vo.getStartDate() != null){ vo.setNumOfDat(DateUtils.calWorkDate(vo.getCreateTime(), new Date())); } //任务作废审批 - vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId() + "",null,List.of(ApproverTypeEnum.TASKCANCE.getCode()))); +// vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId() + "",null, List.of(ApproverTypeEnum.TASKCANCE.getCode()))); //装填服务公司信息 if (vo.getServiceCompanyId() != null){ @@ -168,6 +183,14 @@ public class PsTaskServiceImpl implements IPsTaskService { vo.setBusinessTypeName(vo.getBusinessType()); } +// List psApproverRecordVos = lastFailMap.get(vo.getId()); +// if (psApproverRecordVos != null && !psApproverRecordVos.isEmpty()) { +// PsApproverRecordVo record = psApproverRecordVos.get(0); +// String s = record != null && StringUtils.equals(ApproverStatusEnum.FAIL.getCode(), record.getApproverStatus()) +// ? record.getApproverDesc() : null; +// vo.setTaskStatusDesc(s); +// } + vo.setPsContractBusinesses(busMap.get(vo.getContractCode() + "_" + vo.getServiceCompanyId())); } diff --git a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractBusinessMapper.xml b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractBusinessMapper.xml index dbb2b83..35599f5 100644 --- a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractBusinessMapper.xml +++ b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractBusinessMapper.xml @@ -52,11 +52,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where cc.company_id = ${companyId} - select detail.*, bus.company_id from ps_contract_business bus left join ps_contract_business_detail detail on bus.id = detail.business_id + ${ew.getCustomSqlSegment} diff --git a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsTaskMainMapper.xml b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsTaskMainMapper.xml index 2bb95ef..ba18547 100644 --- a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsTaskMainMapper.xml +++ b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsTaskMainMapper.xml @@ -16,10 +16,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - + + + +