diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/icpartyact/form/IcPartyActAddOrUpdateFormDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/icpartyact/form/IcPartyActAddOrUpdateFormDTO.java index f6b234276b..e9d0c8bedb 100644 --- a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/icpartyact/form/IcPartyActAddOrUpdateFormDTO.java +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/icpartyact/form/IcPartyActAddOrUpdateFormDTO.java @@ -94,7 +94,8 @@ public class IcPartyActAddOrUpdateFormDTO implements Serializable { private String longitude; /** - * 活动开始前几天 + * 活动开始前几天,字典接口返回的 + * 0,1,3,5,7天 */ @NotNull(message = "自动发布时间不能为空", groups = {AddUserShowGroup.class, UpdateUserShowGroup.class}) private Integer autoPublicType; diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partyOrg/result/IcPartyOrgInfo.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partyOrg/result/IcPartyOrgInfo.java new file mode 100644 index 0000000000..5aba21de9a --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partyOrg/result/IcPartyOrgInfo.java @@ -0,0 +1,33 @@ +package com.epmet.resi.partymember.dto.partyOrg.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description + * @Author yzm + * @Date 2022/8/23 13:10 + */ +@Data +public class IcPartyOrgInfo implements Serializable { + /** + * 党组织ID + */ + private String id; + /** + * 党组织的上级ID,没有上级时为0 + */ + private String orgPid; + /** + * 党组织名称 + */ + private String partyOrgName; + + /** + * 党组织的id全路径(包含自身) + */ + private String partyOrgIdPath; + private String partyOrgNamePath; +} + diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/controller/IcPartyActController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/controller/IcPartyActController.java index eec51412b1..dc9da8f9a3 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/controller/IcPartyActController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/controller/IcPartyActController.java @@ -238,6 +238,12 @@ public class IcPartyActController { return new Result>().ok(icPartyActService.yearSearch01(formDTO)); } + /** + * 【党建日历】生成年度活动计划查询 + * @param tokenDto + * @param formDTO + * @return + */ @PostMapping("yearSearch") public Result> yearSearch(@LoginUser TokenDto tokenDto, @RequestBody YearSearchFormDTO formDTO){ ValidatorUtils.validateEntity(formDTO, YearSearchFormDTO.YearSearchForm.class); diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/IcPartyOrgService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/IcPartyOrgService.java index defd146e01..3bd50cf946 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/IcPartyOrgService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/IcPartyOrgService.java @@ -10,6 +10,7 @@ import com.epmet.resi.partymember.dto.partyOrg.form.GetParentOrgFormDTO; import com.epmet.resi.partymember.dto.partyOrg.form.PartyOrgTreeListDTO; import com.epmet.resi.partymember.dto.partyOrg.result.BranchlistTreeDTO; import com.epmet.resi.partymember.dto.partyOrg.result.DefaultPartyOrgResDTO; +import com.epmet.resi.partymember.dto.partyOrg.result.IcPartyOrgInfo; import com.epmet.resi.partymember.dto.partyOrg.result.IcPartyOrgTreeDTO; import java.util.List; @@ -136,4 +137,11 @@ public interface IcPartyOrgService extends BaseService { * @return */ DefaultPartyOrgResDTO defaultPartyOrg(String customerId, String userId); + + /** + * 查询党组织partyOrgIdPath + * @param icPartyOrgId + * @return + */ + IcPartyOrgInfo queryIcPartyOrgInfo(String icPartyOrgId); } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/IcPartyActServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/IcPartyActServiceImpl.java index 7c728bd892..dc1733f430 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/IcPartyActServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/IcPartyActServiceImpl.java @@ -174,9 +174,15 @@ public class IcPartyActServiceImpl extends BaseServiceImpl addOrUpdate(IcPartyActAddOrUpdateFormDTO formDTO) { CustomerStaffInfoCacheResult staffInfo=queryStaffInfo(formDTO.getCustomerId(),formDTO.getPublishStaffId()); IcPartyActEntity icPartyActEntity= ConvertUtils.sourceToTarget(formDTO,IcPartyActEntity.class); + //计算好自动发布的时间 icPartyActEntity.setAutoPublicTime(DateUtils.calDateBaseDay(formDTO.getHoldTime(),formDTO.getAutoPublicType())); icPartyActEntity.setPublishStaffName(staffInfo.getRealName()); icPartyActEntity.setOrgId(staffInfo.getAgencyId()); + + //!!!!!!!不用前端传的了。 我自己查询吧 + IcPartyOrgInfo icPartyOrgInfo=SpringContextUtils.getBean(IcPartyOrgService.class).queryIcPartyOrgInfo(formDTO.getPublishPartyOrgId()); + icPartyActEntity.setPublishOrgPath(icPartyOrgInfo.getPartyOrgIdPath()); + AgencyInfoCache agencyInfoCache= CustomerOrgRedis.getAgencyInfo(staffInfo.getAgencyId()); icPartyActEntity.setPid(agencyInfoCache.getPid()); if(StringUtils.isBlank(agencyInfoCache.getPid())||NumConstant.ZERO_STR.equals(agencyInfoCache.getPid())){ @@ -194,7 +200,9 @@ public class IcPartyActServiceImpl extends BaseServiceImpl{ joinOrg.setCustomerId(formDTO.getCustomerId()); joinOrg.setIcPartyActId(icPartyActEntity.getId()); + //!!!!!!!不用前端传的了。 我自己查询吧 + IcPartyOrgInfo joinPartyOrgInfo=SpringContextUtils.getBean(IcPartyOrgService.class).queryIcPartyOrgInfo(joinOrg.getId()); + joinOrg.setJoinOrgPath(joinPartyOrgInfo.getPartyOrgIdPath()); icPartyActOrgDao.insert(joinOrg); }); + //批量新增附件 List attachmentEntityList=ConvertUtils.sourceToTarget(formDTO.getAttachmentList(),ResiPartymemberAttachmentEntity.class); int attSort = 1; @@ -227,10 +240,9 @@ public class IcPartyActServiceImpl extends BaseServiceImpl map=new HashMap<>(); - map.put("icPartyActId",icPartyActEntity.getId()); - //已经发布的,编辑需要发消息 - if(sendMsg){ + + //已经发布的活动+且活动未开始的,编辑后需要发消息 + if (sendMsg && icPartyActEntity.getHoldTime().compareTo(new Date()) < 1) { PartyMeetingMessageMQMsg msg = new PartyMeetingMessageMQMsg(); msg.setCustomerId(formDTO.getCustomerId()); msg.setIcPartyActId(icPartyActEntity.getId()); @@ -239,6 +251,9 @@ public class IcPartyActServiceImpl extends BaseServiceImpl map=new HashMap<>(); + map.put("icPartyActId",icPartyActEntity.getId()); return map; } @@ -446,7 +461,7 @@ public class IcPartyActServiceImpl extends BaseServiceImpl implements IcPartyOrgService { @@ -402,4 +401,59 @@ public class IcPartyOrgServiceImpl extends BaseServiceImpl pids=new ArrayList<>(); + pids.add(icPartyOrgId); + + List names=new ArrayList<>(); + names.add(orgEntity.getPartyOrgName()); + + Map map=getPartyOrgIdPath(pids,names,orgEntity.getOrgPid()); + String partyOrgIdPath = map.containsKey("idPath") ? map.get("idPath") : StrConstant.EPMETY_STR; + String partyOrgNamePath = map.containsKey("namePath") ? map.get("namePath") : StrConstant.EPMETY_STR; + orgInfo.setPartyOrgIdPath(partyOrgIdPath); + orgInfo.setPartyOrgNamePath(partyOrgNamePath); + } + return orgInfo; + } + + private Map getPartyOrgIdPath(List pids,List names,String pid) { + Map map=new HashMap<>(); + IcPartyOrgEntity orgEntity=baseDao.selectById(pid); + if(null==orgEntity){ + return map; + } + pids.add(pid); + names.add(orgEntity.getPartyOrgName()); + if(StringUtils.isNotBlank(orgEntity.getOrgPid())&&!NumConstant.ZERO_STR.equals(orgEntity.getOrgPid())){ + return getPartyOrgIdPath(pids,names,orgEntity.getOrgPid()); + } + //倒序排列 + Collections.reverse(pids); + Collections.reverse(names); + + map.put("idPath", StringUtils.join(pids.toArray(),StrConstant.COLON)); + map.put("namePath", StringUtils.join(names.toArray(),StrConstant.HYPHEN)); + return map; + } }