From 84f9e624d5e67e9c87bfa670c36be2deb4de1add Mon Sep 17 00:00:00 2001 From: Yen Date: Thu, 20 Jul 2023 16:53:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E5=90=88union?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 + .../com/qs/serve/common/util/JsonUtil.java | 2 + .../entity/dto/TbsContractCostSubItem.java | 10 ++-- .../TbsCostApplyOperationServiceImpl.java | 57 +++++++++++++++++++ .../service/impl/TbsCostApplyServiceImpl.java | 26 ++++----- 5 files changed, 78 insertions(+), 18 deletions(-) diff --git a/pom.xml b/pom.xml index e10c5f69..d7146001 100644 --- a/pom.xml +++ b/pom.xml @@ -114,6 +114,7 @@ ${fastjson.version} + com.github.pagehelper pagehelper-spring-boot-starter diff --git a/src/main/java/com/qs/serve/common/util/JsonUtil.java b/src/main/java/com/qs/serve/common/util/JsonUtil.java index 2e7c66b7..69fae846 100644 --- a/src/main/java/com/qs/serve/common/util/JsonUtil.java +++ b/src/main/java/com/qs/serve/common/util/JsonUtil.java @@ -7,6 +7,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.MapperFeature; import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import lombok.experimental.UtilityClass; import java.util.ArrayList; @@ -31,6 +32,7 @@ public class JsonUtil { static { MAPPER.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true); MAPPER.setSerializationInclusion(JsonInclude.Include.NON_NULL); + //MAPPER.registerModule(new JavaTimeModule()); } /** diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsContractCostSubItem.java b/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsContractCostSubItem.java index 35f207d5..34cf01ed 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsContractCostSubItem.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsContractCostSubItem.java @@ -17,9 +17,9 @@ public class TbsContractCostSubItem { private String activityCode; private String activityPurpose; private String costCode; - private LocalDate startDate; - private LocalDate endDate; - private LocalDate writeOffDate; + private String startDate; + private String endDate; + private String writeOffDate; private String productType; private String product; private String accountCode; @@ -35,7 +35,7 @@ public class TbsContractCostSubItem { private String payItem; private String payCondition; private BigDecimal money; - private LocalDate payDate; + private String payDate; private String actualPayDate; private Integer payCompleteState; private String payRemark; @@ -45,7 +45,7 @@ public class TbsContractCostSubItem { public static class ToDoItem{ private String serviceDescription; private String deliveryStandard; - private LocalDate deliveryDate; + private String deliveryDate; private String agreeRemark; } diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java index 7a432219..5c85a06a 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java @@ -6,6 +6,7 @@ import com.qs.serve.common.model.consts.BudgetLogRollbackFlag; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.util.Assert; import com.qs.serve.common.util.AuthContextUtils; +import com.qs.serve.common.util.SpringUtils; import com.qs.serve.common.util.StringUtils; import com.qs.serve.modules.seeyon.entity.CtpAffair; import com.qs.serve.modules.seeyon.entity.SyAffairStateResult; @@ -14,8 +15,10 @@ import com.qs.serve.modules.seeyon.entity.bo.CtpAddNodeParam; import com.qs.serve.modules.seeyon.enums.SyAffairState; import com.qs.serve.modules.seeyon.service.SeeYonOperationService; import com.qs.serve.modules.seeyon.service.SeeYonRequestService; +import com.qs.serve.modules.sys.entity.SysPostUser; import com.qs.serve.modules.sys.entity.SysUser; import com.qs.serve.modules.sys.mapper.SysUserMapper; +import com.qs.serve.modules.sys.service.SysPostUserService; import com.qs.serve.modules.sys.service.SysUserService; import com.qs.serve.modules.tbs.common.TbsActivityState; import com.qs.serve.modules.tbs.common.TbsCostApplyState; @@ -38,6 +41,7 @@ import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; import java.util.Locale; +import java.util.Map; import java.util.stream.Collectors; /** @@ -77,6 +81,21 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService return TbsSeeYonConst.CostApplyConf.Code(); } + + @Override + public String checkAffairSummery(String targetId) { + TbsCostApply tbsCostApply = costApplyService.getById(targetId); + String templateCode = getTemplateCode(); + if(tbsCostApply.getContractFlag()!=null&&tbsCostApply.getContractFlag().equals(1)){ + templateCode = TbsSeeYonConst.CostApplyContractConf.Code(); + } + R result = getRequestService().checkAffairSummery(templateCode,targetId); + if(result.getData()==null){ + return "next"; + } + return result.getData(); + } + @Override public R addNode(CtpAddNodeParam param) { getRequestService().testConnection(); @@ -119,6 +138,44 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService return requestService; } + @Override + public R> pageAffair(String targetId) { + boolean existFormId = checkSyFormIdIsNotNull(targetId); + if (!existFormId){ + return R.ok(new ArrayList<>()); + } + String templateCode = getTemplateCode(); + TbsCostApply costApply = costApplyService.getById(targetId); + if(costApply.getContractFlag()!=null&&costApply.getContractFlag().equals(1)){ + templateCode = TbsSeeYonConst.CostApplyContractConf.Code(); + } + R> syResult = getRequestService().commonListAffairs(targetId,null,templateCode); + List ctpAffairs = syResult.getData(); + if(ctpAffairs.size()>0){ + List oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList()); + List userList = getSysUserService().listByOaMemberIds(oaUserIds); + SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class); + List userIds = userList.stream().map(SysUser::getId).collect(Collectors.toList()); + List postUserList = postUserService.listByUserIds(userIds); + Map> postMap = postUserList.stream().collect(Collectors.groupingBy(SysPostUser::getUserId)); + List result = new ArrayList<>(); + for (CtpAffair ctpAffair : ctpAffairs) { + CtpAffairVo ctpAffairVo = new CtpAffairVo(); + ctpAffairVo.setAffairInfo(ctpAffair); + for (SysUser user : userList) { + if(ctpAffair.getMemberId().equals(user.getSyUserId())){ + ctpAffairVo.setUserInfo(user.toSysUserVo()); + List postUsers = postMap.get(user.getId()); + ctpAffairVo.setUserPostList(postUsers); + } + } + result.add(ctpAffairVo); + } + return R.ok(result); + } + return R.ok(new ArrayList<>()); + } + @Override public SysUserMapper getUserMapper() { return userMapper; diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java index 7375bb53..8f546549 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java @@ -229,7 +229,7 @@ public class TbsCostApplyServiceImpl extends ServiceImpl lqw = new LambdaQueryWrapper<>(); lqw.eq(TbsCostContract::getCostApplyId,tbsCostApply.getId()); @@ -276,8 +276,8 @@ public class TbsCostApplyServiceImpl extends ServiceImpl formIdResult = seeYonService.getFormId(TbsSeeYonConst.CostApplyConf.Code(),tbsCostApply.getId()); + R formIdResult = seeYonService.getFormId(templateCode,tbsCostApply.getId()); if(formIdResult.getStatus()==200){ formId = formIdResult.getData(); } @@ -434,7 +434,7 @@ public class TbsCostApplyServiceImpl extends ServiceImpl