diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AppointmentMiniFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AppointmentMiniFormDTO.java index 30afc1b872..cfaf9da56a 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AppointmentMiniFormDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AppointmentMiniFormDTO.java @@ -53,10 +53,12 @@ public class AppointmentMiniFormDTO implements Serializable { /** * 组织ID */ + @NotBlank(message = "orgId不能为空",groups = AppointmentMiniForm.class) private String orgId; /** * 组织类型,grid:网格,agency:组织 */ + @NotBlank(message = "orgType不能为空",groups = AppointmentMiniForm.class) private String orgType; } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java index 59462d429b..cdd4d8d7d6 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java @@ -1,5 +1,6 @@ package com.epmet.dto.result; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; @@ -40,6 +41,12 @@ public class AllMattersResultDTO implements Serializable { private String centerName; + @JsonIgnore + private String startTime; + + @JsonIgnore + private String endTime; + public AllMattersResultDTO() { this.matterName = ""; this.allowTime = ""; diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AppointmentRecordResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AppointmentRecordResultDTO.java index 4858babc52..c3024a6bbb 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AppointmentRecordResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AppointmentRecordResultDTO.java @@ -41,6 +41,8 @@ public class AppointmentRecordResultDTO implements Serializable { private String remark; private String recordId; + private String centerName; + private String address; /** * 预约时间 @@ -51,6 +53,8 @@ public class AppointmentRecordResultDTO implements Serializable { @JsonIgnore private String timeId; + @JsonIgnore + private String matterId; public AppointmentRecordResultDTO() { this.sort = NumConstant.ZERO; diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java index ad1ff57769..065dc62906 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java @@ -59,4 +59,6 @@ public interface IcPartyServiceCenterDao extends BaseDao getAllMatters(@Param("orgId")String orgId); + List getAllMattersByOrgId(@Param("matterIds")List matterIds); + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java index a2f543d0c3..4cd1e6dc3d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java @@ -348,19 +348,10 @@ public class IcPartyServiceCenterServiceImpl extends BaseServiceImpl registerRelation = userOpenFeignClient.resiRelationInfo(tokenDto.getUserId()); - if (!registerRelation.success()){ - throw new EpmetException(String.format("查询居民{%s}信息失败",tokenDto.getUserId())); - } IcMatterAppointmentRecordEntity e = ConvertUtils.sourceToTarget(formDTO, IcMatterAppointmentRecordEntity.class); e.setCustomerId(customerId); - if (StringUtils.isNotBlank(formDTO.getOrgId())){ - e.setOrgId(formDTO.getOrgId()); - e.setOrgType(formDTO.getOrgType()); - }else { - e.setOrgId(registerRelation.getData().getGridId()); - e.setOrgType(PartyServiceCenterConstant.ORG_TYPE_GRID); - } + e.setOrgId(formDTO.getOrgId()); + e.setOrgType(formDTO.getOrgType()); if (e.getOrgType().equals(PartyServiceCenterConstant.ORG_TYPE_GRID)){ GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(e.getOrgId()); if (null == gridInfo){ @@ -540,10 +531,24 @@ public class IcPartyServiceCenterServiceImpl extends BaseServiceImpl appointmentRecordMini(AppointmentRecordMiniFormDTO formDTO,TokenDto tokenDto) { List result = matterAppointmentRecordDao.appointmentRecordMini(formDTO.getGridId(), tokenDto.getUserId()); - if (CollectionUtils.isNotEmpty(result)){ - return result; + if (CollectionUtils.isEmpty(result)){ + return new ArrayList<>(); } - return new ArrayList<>(); + List allMatters = baseDao.getAllMattersByOrgId(result.stream().map(m -> m.getMatterId()).collect(Collectors.toList())); + allMatters.forEach(matter -> { + List timeList = getTimeList(matter.getStartTime(), matter.getEndTime(), NumConstant.THIRTY); + AtomicReference sort = new AtomicReference<>(NumConstant.ONE); + result.forEach(r -> { + if (r.getMatterId().equals(matter.getMatterId())){ + r.setSort(sort.getAndSet(sort.get() + NumConstant.ONE)); + List time = new ArrayList<>(); + List list = Arrays.asList(r.getTimeId().split(",")); + list.forEach(l -> timeList.stream().filter( t -> l.equals(t.getTimeId())).forEach(t -> time.add(t.getTime()))); + r.setAppointmentTime(time); + } + }); + }); + return result; } /** diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcMatterAppointmentRecordDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcMatterAppointmentRecordDao.xml index 3709847fd8..4270ac8b44 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcMatterAppointmentRecordDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcMatterAppointmentRecordDao.xml @@ -21,7 +21,8 @@ ar.REMARK, ar.TIME_ID, cm.MATTER_NAME, - ar.ID AS recordId + ar.ID AS recordId, + ar.matter_id as matterId FROM ic_matter_appointment_record ar LEFT JOIN ic_party_service_center_matter cm ON (cm.ID = ar.MATTER_ID AND cm.DEL_FLAG = 0) WHERE ar.DEL_FLAG = 0 @@ -55,9 +56,13 @@ ar.TIME_ID, cm.MATTER_NAME, ar.ID AS recordId, - ar.APPOINTMENT_DATE + ar.APPOINTMENT_DATE, + ar.MATTER_ID as matterId, + c.CENTER_NAME, + c.ADDRESS FROM ic_matter_appointment_record ar LEFT JOIN ic_party_service_center_matter cm ON (cm.ID = ar.MATTER_ID AND cm.DEL_FLAG = 0) + LEFT JOIN ic_party_service_center c ON (c.ID = cm.PARTY_SERVICE_CENTER_ID AND c.DEL_FLAG = 0) WHERE ar.DEL_FLAG = 0 AND ar.ORG_ID = #{orgId} AND ar.CREATED_BY = #{userId} diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml index 26fa48e448..97f5e43cbf 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml @@ -102,4 +102,19 @@ WHERE sc.DEL_FLAG = 0 AND ID = #{centerId} + + + \ No newline at end of file