diff --git a/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPropertyManagementDTO.java b/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPropertyManagementDTO.java index 18de590a..e6a95dec 100644 --- a/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPropertyManagementDTO.java +++ b/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPropertyManagementDTO.java @@ -50,6 +50,15 @@ public class IcPropertyManagementDTO implements Serializable { @ExcelProperty(value = "物业名称") @ColumnWidth(30) private String name; + + /** + * 组织ID + */ + private String agencyId; + /** + * 组织名称 + */ + private String agencyName; /** * 客户id */ diff --git a/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java b/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java index 0b3f3ea9..5bef2866 100644 --- a/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java +++ b/code/smart-community/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java @@ -72,5 +72,7 @@ public class IcPropertyManagementFormDTO extends PageFormDTO implements Serializ private String customerId; + @NotBlank(message = "组织ID不能为空", groups = {AddShowGroup.class, UpdateShowGroup.class}) + private String agencyId; } \ No newline at end of file diff --git a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPropertyManagementEntity.java b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPropertyManagementEntity.java index 81a75f86..86008774 100644 --- a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPropertyManagementEntity.java +++ b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPropertyManagementEntity.java @@ -52,4 +52,11 @@ public class IcPropertyManagementEntity extends BaseEpmetEntity { * 烟台需求:物业联系人电话 */ private String contactMobile; + + private String level; + private String agencyId; + private String agencyName; + private String agencyPid; + + private String agencyPids; } diff --git a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java index 558383ed..14a8d1c6 100644 --- a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java +++ b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java @@ -15,6 +15,7 @@ import com.epmet.commons.tools.utils.*; import com.epmet.constants.ImportTaskConstants; import com.epmet.dao.IcNeighborHoodPropertyDao; import com.epmet.dao.IcPropertyManagementDao; +import com.epmet.dto.CustomerAgencyDTO; import com.epmet.dto.IcNeighborHoodDTO; import com.epmet.dto.IcPropertyManagementDTO; import com.epmet.dto.form.IcPropertyManagementFormDTO; @@ -27,6 +28,7 @@ import com.epmet.excel.handler.IcPropertyManagementImportListener; import com.epmet.excel.yt.IcPropertyManagementImportExcelData; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.OssFeignClient; +import com.epmet.service.CustomerAgencyService; import com.epmet.service.PropertyManagementService; import com.epmet.utils.ImportTaskUtils; import com.github.pagehelper.PageHelper; @@ -66,6 +68,9 @@ public class PropertyManagementServiceImpl implements PropertyManagementService private IcPropertyManagementDao icPropertyManagementDao; @Resource private IcNeighborHoodPropertyDao icNeighborHoodPropertyDao; + + @Resource + private CustomerAgencyService customerAgencyService; @Autowired private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; @Autowired @@ -103,11 +108,25 @@ public class PropertyManagementServiceImpl implements PropertyManagementService // 物业名字平台内唯一 // 如果输入的物业名字已经存在,直接返回物业id formDTO.setName(formDTO.getName().trim()); - IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(formDTO.getCustomerId(), formDTO.getName(), null); - if (null != entity) { - throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "物业名称已存在", "物业名称已存在"); - } + + + +// IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(formDTO.getCustomerId(), formDTO.getName(), null); +// if (null != entity) { +// throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "物业名称已存在", "物业名称已存在"); +// } IcPropertyManagementEntity icPropertyManagementEntity = ConvertUtils.sourceToTarget(formDTO, IcPropertyManagementEntity.class); + + if(StringUtils.isNotEmpty(formDTO.getAgencyId())) { + CustomerAgencyDTO agency = customerAgencyService.get(formDTO.getAgencyId()); + if(agency != null) { + icPropertyManagementEntity.setLevel(agency.getLevel()); + icPropertyManagementEntity.setAgencyName(agency.getOrganizationName()); + icPropertyManagementEntity.setAgencyPid(agency.getPid()); + icPropertyManagementEntity.setAgencyPids(agency.getPids()); + } + } + icPropertyManagementDao.insert(icPropertyManagementEntity); if (CollectionUtils.isNotEmpty(formDTO.getNeighborHoodIdList())) { formDTO.getNeighborHoodIdList().forEach(neighborHoodId -> { @@ -255,6 +274,10 @@ public class PropertyManagementServiceImpl implements PropertyManagementService result.setNeighborHoodNames(CollectionUtils.isNotEmpty(neighborHoodList) ? StringUtils.join(neighborHoodNames, StrConstant.COMMA_ZH) : StrConstant.EPMETY_STR); result.setNeighborHoodList(neighborHoodList); result.setTotalNeighborHood(CollectionUtils.isNotEmpty(neighborHoodList)?neighborHoodList.size():NumConstant.ZERO); + + if(!"community".equals(staffInfoCacheResult.getLevel()) && StringUtils.isNotEmpty(result.getAgencyName())) { + result.setName(result.getName() + "("+ result.getAgencyName() +")"); + } }); return new PageData<>(list, pageInfo.getTotal(), pageSize); } diff --git a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.54__alter_ic_complaints.sql b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.54__alter_ic_complaints.sql new file mode 100644 index 00000000..ec2a3540 --- /dev/null +++ b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.54__alter_ic_complaints.sql @@ -0,0 +1,6 @@ +ALTER TABLE `epmet_gov_org`.`ic_property_management` + ADD COLUMN `LEVEL` varchar(32) NULL DEFAULT 'community' COMMENT '机关级别(社区级:community,\r\n乡(镇、街道)级:street,\r\n区县级: district,\r\n市级: city\r\n省级:province) 机关级别(社区级:community,乡(镇、街道)级:street,区县级: district,市级: city省级:province)' AFTER `CONTACT_MOBILE`, + ADD COLUMN `AGENCY_ID` varchar(64) NULL COMMENT '所属社区' AFTER `LEVEL`, + ADD COLUMN `AGENCY_NAME` varchar(255) NULL COMMENT '社区名称' AFTER `AGENCY_ID`; + ADD COLUMN `AGENCY_PID` varchar(64) NULL COMMENT '上级组织机构ID' AFTER `AGENCY_NAME`, + ADD COLUMN `AGENCY_PIDS` varchar(1024) NULL COMMENT '所有上级组织机构ID(以英文:隔开)' AFTER `PID`; \ No newline at end of file diff --git a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml index 64c35920..339407b8 100644 --- a/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml +++ b/code/smart-community/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPropertyManagementDao.xml @@ -98,6 +98,10 @@ and m.CONTACT_MOBILE like concat('%',#{contactMobile},'%') )t + + where t.AGENCY_ID = #{agencyId} or t.AGENCY_PIDS like concat('%',#{agencyId},'%') + + order by t.totalNeighborHood desc,t.CREATED_TIME desc \ No newline at end of file