zxc 3 years ago
parent
commit
a4de7bbb92
  1. 33
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/IcPartyActServiceImpl.java

33
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/IcPartyActServiceImpl.java

@ -248,17 +248,7 @@ public class IcPartyActServiceImpl extends BaseServiceImpl<IcPartyActDao, IcPart
formDTO.setPath(icPartyOrgDTO.getOrgPids().equals("") || icPartyOrgDTO.getOrgPids().equals(NumConstant.ZERO_STR) ? icPartyOrgDTO.getId() : icPartyOrgDTO.getOrgPids().concat(":").concat(icPartyOrgDTO.getId())); formDTO.setPath(icPartyOrgDTO.getOrgPids().equals("") || icPartyOrgDTO.getOrgPids().equals(NumConstant.ZERO_STR) ? icPartyOrgDTO.getId() : icPartyOrgDTO.getOrgPids().concat(":").concat(icPartyOrgDTO.getId()));
List<ActAndScheduleListResultDTO.ActivityListDTO> activityList = baseDao.getActivityList(formDTO); List<ActAndScheduleListResultDTO.ActivityListDTO> activityList = baseDao.getActivityList(formDTO);
if (CollectionUtils.isNotEmpty(activityList)){ if (CollectionUtils.isNotEmpty(activityList)){
List<String> partyOrgIdsNoDistinct = new ArrayList<>(); disposeActivityList(formDTO,activityList);
activityList.forEach(a -> {
partyOrgIdsNoDistinct.addAll(a.getJoinOrgList().stream().map(m -> m.getPartyOrgId()).collect(Collectors.toList()));
});
List<String> partyOrgIds = partyOrgIdsNoDistinct.stream().distinct().collect(Collectors.toList());
List<ActAndScheduleListResultDTO.JoinOrgDTO> partyOrg = partyOrgDao.getPartyOrg(partyOrgIds);
activityList.forEach(a -> {
a.setIsMe(formDTO.getStaffId().equals(a.getStaffId()));
a.getJoinOrgList().forEach(po -> partyOrg.stream().filter(p -> p.getPartyOrgId().equals(po.getPartyOrgId())).forEach(p -> po.setPartyOrgName(p.getPartyOrgName())));
a.setJoinOrgs(a.getJoinOrgList().stream().map(m -> m.getPartyOrgName()).collect(Collectors.toList()));
});
} }
List<ActAndScheduleListResultDTO.ScheduleListDTO> scheduleList = scheduleDao.getScheduleList(formDTO); List<ActAndScheduleListResultDTO.ScheduleListDTO> scheduleList = scheduleDao.getScheduleList(formDTO);
if (CollectionUtils.isNotEmpty(scheduleList)){ if (CollectionUtils.isNotEmpty(scheduleList)){
@ -293,9 +283,7 @@ public class IcPartyActServiceImpl extends BaseServiceImpl<IcPartyActDao, IcPart
List<ActAndScheduleListResultDTO> result = constructHomeSearchData(formDTO.getStartDate(), formDTO.getEndDate()); List<ActAndScheduleListResultDTO> result = constructHomeSearchData(formDTO.getStartDate(), formDTO.getEndDate());
List<ActAndScheduleListResultDTO.ActivityListDTO> activityList = baseDao.getActivityList(formDTO); List<ActAndScheduleListResultDTO.ActivityListDTO> activityList = baseDao.getActivityList(formDTO);
if (CollectionUtils.isNotEmpty(activityList)){ if (CollectionUtils.isNotEmpty(activityList)){
activityList.forEach(a -> { disposeActivityList(formDTO,activityList);
a.setIsMe(formDTO.getStaffId().equals(a.getStaffId()));
});
Map<String, List<ActAndScheduleListResultDTO.ActivityListDTO>> groupByDateId = activityList.stream().collect(Collectors.groupingBy(ActAndScheduleListResultDTO.ActivityListDTO::getDateId)); Map<String, List<ActAndScheduleListResultDTO.ActivityListDTO>> groupByDateId = activityList.stream().collect(Collectors.groupingBy(ActAndScheduleListResultDTO.ActivityListDTO::getDateId));
result.forEach(r -> { result.forEach(r -> {
groupByDateId.forEach((dateId,list) -> { groupByDateId.forEach((dateId,list) -> {
@ -323,6 +311,23 @@ public class IcPartyActServiceImpl extends BaseServiceImpl<IcPartyActDao, IcPart
} }
return result; return result;
} }
public void disposeActivityList(ActAndScheduleListFormDTO formDTO,List<ActAndScheduleListResultDTO.ActivityListDTO> activityList){
List<String> partyOrgIdsNoDistinct = new ArrayList<>();
activityList.forEach(a -> {
partyOrgIdsNoDistinct.addAll(a.getJoinOrgList().stream().map(m -> m.getPartyOrgId()).collect(Collectors.toList()));
});
List<String> partyOrgIds = partyOrgIdsNoDistinct.stream().distinct().collect(Collectors.toList());
List<ActAndScheduleListResultDTO.JoinOrgDTO> partyOrg = partyOrgDao.getPartyOrg(partyOrgIds);
if (CollectionUtils.isNotEmpty(activityList)) {
activityList.forEach(a -> {
a.setIsMe(formDTO.getStaffId().equals(a.getStaffId()));
a.getJoinOrgList().forEach(po -> partyOrg.stream().filter(p -> p.getPartyOrgId().equals(po.getPartyOrgId())).forEach(p -> po.setPartyOrgName(p.getPartyOrgName())));
a.setJoinOrgs(a.getJoinOrgList().stream().map(m -> m.getPartyOrgName()).collect(Collectors.toList()));
});
}
}
public static List<ActAndScheduleListResultDTO> constructHomeSearchData(String startDate,String endDate){ public static List<ActAndScheduleListResultDTO> constructHomeSearchData(String startDate,String endDate){
List<ActAndScheduleListResultDTO> result = new ArrayList<>(); List<ActAndScheduleListResultDTO> result = new ArrayList<>();
if (StringUtils.isNotBlank(startDate) && StringUtils.isNotBlank(endDate)){ if (StringUtils.isNotBlank(startDate) && StringUtils.isNotBlank(endDate)){

Loading…
Cancel
Save