diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java index effdcdb01f..f4d0b3e96b 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/AgentServiceTrendAnalysisRstDTO.java @@ -34,14 +34,14 @@ public class AgentServiceTrendAnalysisRstDTO { // private List data; - public static class DataObj { + public static class DataObj { private String name; - private Integer value; + private T value; public DataObj() { } - public DataObj(String name, Integer value) { + public DataObj(String name, T value) { this.name = name; this.value = value; } @@ -50,7 +50,7 @@ public class AgentServiceTrendAnalysisRstDTO { return name; } - public Integer getValue() { + public T getValue() { return value; } } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java index 9ff7596263..84de811f72 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java @@ -6,6 +6,7 @@ import com.epmet.entity.LingshanAgentServiceRecordEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.List; import java.util.Set; @@ -26,4 +27,16 @@ public interface LingshanAgentServiceRecordDao extends BaseDao screenAgentListAndServiceQty(@Param("agentIds") Set agentIds); + + /** + * @Description: 办结率 + * @param timeStart: + * @param timeEnd: + * @Return java.lang.Double + * @Author: wangxianzhang + * @Date: 2023/5/16 8:17 PM + */ + Double calculateClosedRatio(@Param("timeStart") Date timeStart, + @Param("timeEnd") Date timeEnd, + @Param("orgIdPath") String orgIdPath); } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyUnitServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyUnitServiceImpl.java index 6674005ab3..a70be9590d 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyUnitServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyUnitServiceImpl.java @@ -729,7 +729,7 @@ public class IcPartyUnitServiceImpl extends BaseServiceImpl q = new LambdaQueryWrapper<>(); - q.and(q1 -> q1.eq(IcPartyUnitEntity::getAgencyId, agencyId).or(q2 -> q2.eq(IcPartyUnitEntity::getPids, orgIdPath))); + q.and(q1 -> q1.eq(IcPartyUnitEntity::getAgencyId, agencyId).or(q2 -> q2.likeRight(IcPartyUnitEntity::getPids, orgIdPath))); return baseDao.selectCount(q); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java index 95d4b4e254..bb9c85c2d7 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java @@ -570,6 +570,16 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ @Override public List serviceTrendAnalysis(String orgType, String orgId) { + String orgIdPath; + + if (OrgInfoConstant.AGENCY.equals(orgType)) { + AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(orgId); + orgIdPath = PidUtils.convertPid2OrgIdPath(agencyInfo.getId(), agencyInfo.getPids()); + } else { + GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(orgId); + orgIdPath = PidUtils.convertPid2OrgIdPath(gridInfo.getId(), gridInfo.getPids()); + } + // 计算得到时间列表 Map dateCatelogue = generateTimeCatelogue(); @@ -582,18 +592,21 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ // 1.受理数 // 受理数,使用processTime计算,processTime可用于表示受理时间和驳回时间。要查询受理数,要查询状态为已受理和已结案两种状态,使用processTime+processStatus结合查询 LambdaQueryWrapper rq = new LambdaQueryWrapper<>(); + rq.likeRight(LingshanAgentServiceRecordEntity::getOrgIdPath, orgIdPath); rq.ge(LingshanAgentServiceRecordEntity::getProcessTime, timeStart); rq.le(LingshanAgentServiceRecordEntity::getProcessTime, timeEnd); rq.in(LingshanAgentServiceRecordEntity::getProcessStatus, LingShanAgentServiceProcessStatusEnum.ACCEPTED.getStatusCode(), LingShanAgentServiceProcessStatusEnum.CLOSED.getStatusCode()); Integer acceptCount = agentServiceRecordDao.selectCount(rq); - // 2.办结率 todo + // 2.办结率 + // 本月办结的服务/本月提交的服务 + Double closedRatio = agentServiceRecordDao.calculateClosedRatio(timeStart, timeEnd, orgIdPath); // 3.组合数据 ArrayList dataList = new ArrayList<>(); - dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj("受理数", acceptCount)); - dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj("办结率", 0)); + dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj<>("受理数", acceptCount)); + dataList.add(new AgentServiceTrendAnalysisRstDTO.DataObj<>("办结率", closedRatio)); AgentServiceTrendAnalysisRstDTO rd = new AgentServiceTrendAnalysisRstDTO(monthName, dataList); return rd; }).collect(Collectors.toList()); @@ -607,7 +620,7 @@ public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceServ * @Date: 2023/5/16 1:53 PM */ public Map generateTimeCatelogue() { - Date startDate = DateUtils.addDateMonths(new Date(), -11); + Date startDate = DateUtils.addDateMonths(new Date(), -12); HashMap rm = new LinkedHashMap<>(); for (int c = 1; c <= 12; c++) { diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml index c995f3532d..cea5229e87 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml @@ -58,5 +58,16 @@ group by r.AGENT_ID, r.GRID_ID + + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/PartyCenterHousePageFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/PartyCenterHousePageFormDTO.java index 267b23e03f..7bdd159105 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/PartyCenterHousePageFormDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/lingshan/PartyCenterHousePageFormDTO.java @@ -19,9 +19,22 @@ public class PartyCenterHousePageFormDTO extends PageFormDTO { */ private String buildingName; + /** + * pc端默认传1 + * 灵山项目:是否党员中心户:1是;0不是 + */ + private String partyCenterHouseFlag; + + /** + * 所属楼栋id + * 大屏用 + */ + private String buildingId; + //tokenDto. private String customerId; //tokenDto. private String staffId; + } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseBindLianHuDetailDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseBindLianHuDetailDTO.java new file mode 100644 index 0000000000..378f8fb9d9 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseBindLianHuDetailDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.result.lingshan; + +import lombok.Data; + +/** + * @Description 绑定联户入参明细 + * @Author yzm + * @Date 2023/5/16 20:16 + */ +@Data +public class PartyCenterHouseBindLianHuDetailDTO { + /** + * 小区id + * 楼栋id + * 单元id + * 房屋id + */ + private String id; + + /** + * 小区: + * 楼栋: + * 单元: + * 房屋 + */ + private String type; +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseResultDTO.java index d42084013a..e649184ce0 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/PartyCenterHouseResultDTO.java @@ -13,6 +13,7 @@ public class PartyCenterHouseResultDTO { private String houseName; /** * 门牌号 + * 房号 */ private String doorName; @@ -26,6 +27,9 @@ public class PartyCenterHouseResultDTO { * 所属单元id */ private String buildingUnitId; + /** + *单元号 + */ private String unitName; /** @@ -71,10 +75,18 @@ public class PartyCenterHouseResultDTO { * 房主电话 */ private String ownerPhone; + /** + * 加密房主电话 + */ + private String showOwnerPhone; /** * 房主身份证 */ private String ownerIdCard; + /** + * 加密房主身份证 + */ + private String showOwnerIdCard; private String remark; /** diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java index 3ee3a3562d..300e28f0d4 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java @@ -282,6 +282,7 @@ public class IcHouseController { * @param formDTO * @return */ + @MaskResponse(fieldNames = { "showOwnerPhone", "showOwnerIdCard" }, fieldsMaskType = { MaskResponse.MASK_TYPE_MOBILE, MaskResponse.MASK_TYPE_ID_CARD }) @PostMapping("party-center-house-list") public Result> queryPartyCenterHouseList(@LoginUser TokenDto tokenDto, @RequestBody PartyCenterHousePageFormDTO formDTO) { formDTO.setCustomerId(tokenDto.getCustomerId()); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java index 74f29ac7bc..4a31416e26 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java @@ -241,4 +241,7 @@ public interface IcHouseDao extends BaseDao { List getHouseStatusCount(@Param("orgId") String orgId,@Param("orgType") String orgType, @Param("timeStart")Date timeStart,@Param("timeEnd")Date timeEnd); List getHousePictureList(@Param("orgId") String orgId,@Param("orgType") String orgType, @Param("timeStart")Date timeStart,@Param("timeEnd")Date timeEnd,@Param("purpose") String purpose,@Param("rentFlag") Integer rentFlag); + @Param("buildingName") String buildingName, + @Param("buildingId") String buildingId, + @Param("partyCenterHouseFlag") String partyCenterHouseFlag); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java index 577bc8dc67..eb13875839 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java @@ -588,7 +588,7 @@ public class IcHouseServiceImpl extends BaseServiceImpl list=baseDao.selectListPartyCenterHouse(formDTO.getCustomerId(),staffInfoCacheResult.getAgencyId(), - formDTO.getNeighborHoodName(),formDTO.getBuildingName()); + formDTO.getNeighborHoodName(),formDTO.getBuildingName(),formDTO.getBuildingId(),formDTO.getPartyCenterHouseFlag()); list.forEach(item -> { item.setHouseTypeName(HouseTypeEnums.getTypeValue(item.getHouseType())); item.setPurposeName(HousePurposeEnums.getTypeValue(item.getPurpose())); 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 d7ecec82cc..f0aa18203f 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 @@ -767,7 +767,7 @@ public class IcPartyServiceCenterServiceImpl extends BaseServiceImpl q = new QueryWrapper().select(" org_type, count(*) qtyOfType") .lambda() - .and(c1 -> c1.eq(IcPartyServiceCenterEntity::getOrgId, orgId).or(c2 -> c2.eq(IcPartyServiceCenterEntity::getPids, orgIdPath))) + .and(c1 -> c1.eq(IcPartyServiceCenterEntity::getOrgId, orgId).or(c2 -> c2.likeRight(IcPartyServiceCenterEntity::getPids, orgIdPath))) .groupBy(IcPartyServiceCenterEntity::getOrgType); List l = icPartyServiceCenterDao.selectList(q); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index ef3046cd3e..88b7a7b176 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -939,35 +939,51 @@ ih.HOUSE_TYPE houseType, ih.PURPOSE, ih.RENT_FLAG, + (case when ih.RENT_FLAG = '0' then '自住' + when ih.RENT_FLAG = '1' then '出租' + when ih.RENT_FLAG = '2' then '闲置' + when ih.RENT_FLAG = '3' then '未出售' + else '' end) as houseStatusName, ih.OWNER_NAME, ih.OWNER_PHONE, + ih.OWNER_PHONE as showOwnerPhone, ih.OWNER_ID_CARD, + ih.OWNER_ID_CARD as showOwnerIdCard, ih.REMARK, (select count(r.ID) - from lingshan_lianhu_house_rel r + from lingshan_party_center_house_lianhu r where r.PARTY_CENTER_HOUSE_ID=ih.ID and r.DEL_FLAG='0' )as totalLianHu FROM ic_house ih - inner join ic_building_unit u - on(ih.BUILDING_UNIT_ID=u.ID) - INNER JOIN ic_building b ON ( ih.BUILDING_ID = b.ID ) - INNER JOIN ic_neighbor_hood h ON ( b.NEIGHBOR_HOOD_ID = h.ID ) - left join customer_grid cg on(h.GRID_ID=cg.ID) - left join customer_agency ca on(h.AGENCY_ID=ca.ID) + inner join ic_building_unit u + on(ih.BUILDING_UNIT_ID=u.ID) + INNER JOIN ic_building b ON ( ih.BUILDING_ID = b.ID ) + INNER JOIN ic_neighbor_hood h ON ( b.NEIGHBOR_HOOD_ID = h.ID ) + left join customer_grid cg on(h.GRID_ID=cg.ID) + left join customer_agency ca on(h.AGENCY_ID=ca.ID) WHERE ih.DEL_FLAG = '0' AND b.DEL_FLAG = '0' AND h.DEL_FLAG = '0' - AND ih.PARTY_CENTER_HOUSE_FLAG='1' - AND (h.AGENCY_ID=#{agencyId} or h.AGENCY_PIDS like concat('%',#{agencyId},'%') ) + + AND ih.PARTY_CENTER_HOUSE_FLAG='1' + and h.NEIGHBOR_HOOD_NAME like concat('%',#{neighborHoodName},'%') and b.BUILDING_NAME like concat('%',#{buildingName},'%') + + and b.id = #{buildingId} + + + + AND (h.AGENCY_ID=#{agencyId} or h.AGENCY_PIDS like concat('%',#{agencyId},'%') ) + + order by ca.CREATED_TIME asc,cg.CREATED_TIME asc,h.CREATED_TIME asc diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/LingShanPartyOrgServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/LingShanPartyOrgServiceImpl.java index d869e728cf..105ba5c1d6 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/LingShanPartyOrgServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partyOrg/service/impl/LingShanPartyOrgServiceImpl.java @@ -66,7 +66,7 @@ public class LingShanPartyOrgServiceImpl implements LingShanPartyOrgService, Res // 街道及以上级别,用pids,因为要从社区开始查,本级及下级 q = new QueryWrapper().select(" party_org_type, count(*) childrenQty").lambda() // 本组织下级的所有子级,不含本级 - .like(IcPartyOrgEntity::getAgencyPids, orgIdPath) + .likeRight(IcPartyOrgEntity::getAgencyPids, orgIdPath) .groupBy(IcPartyOrgEntity::getPartyOrgType); } @@ -168,7 +168,7 @@ public class LingShanPartyOrgServiceImpl implements LingShanPartyOrgService, Res } /** - * @Description: 查询支部。支部是直属的 + * @Description: 查询支部。支部是直属的!!!!!!!!!!!!!!!!!!!!!!!!!!! * @param orgId: * @param orgType: * @Return java.util.List diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partyOrg/IcPartyOrgDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partyOrg/IcPartyOrgDao.xml index d2592642d3..d81f18e48b 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partyOrg/IcPartyOrgDao.xml +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partyOrg/IcPartyOrgDao.xml @@ -314,9 +314,9 @@ from ic_party_org o left join ic_party_member m on (o.ID = m.SSZB and m.DEL_FLAG = 0) where o.DEL_FLAG = 0 - and o.AGENCY_ID = #{orgId} + and o.AGENCY_PIDS like #{orgId} and o.PARTY_ORG_TYPE = 5 group by o.ID, o.PARTY_ORG_NAME, o.LATITUDE, o.LONGITUDE - + \ No newline at end of file