Browse Source

Merge branch 'dev_resi_export' of http://git.elinkit.com.cn:7070/r/epmet-cloud into dev_resi_export

release
wangxianzhang 4 years ago
parent
commit
a96506718d
  1. 10
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcBuildingDTO.java
  2. 13
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseDTO.java
  3. 15
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/ImportGeneralDTO.java
  4. 29
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/HouseChartFormDTO.java
  5. 10
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcBulidingAddFormDTO.java
  6. 50
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseChartResultDTO.java
  7. 1
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseListResultDTO.java
  8. 10
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcBuildingListResultDTO.java
  9. 74
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SubUserHouseListResultDTO.java
  10. 1
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java
  11. 35
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java
  12. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcBuildingEntity.java
  13. 6
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/BuildingInfoModel.java
  14. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java
  15. 21
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java
  16. 3
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java
  17. 24
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java
  18. 40
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java
  19. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java
  20. 2
      epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.17__edit_building_and_house.sql
  21. BIN
      epmet-module/gov-org/gov-org-server/src/main/resources/excel/building_template.xlsx
  22. BIN
      epmet-module/gov-org/gov-org-server/src/main/resources/excel/house_template.xlsx
  23. 4
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml
  24. 85
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/IcExportTemplateDTO.java
  25. 39
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/EditIFormItemFormDTO.java
  26. 62
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcExportTemplateController.java
  27. 18
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormItemController.java
  28. 16
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcExportTemplateConfigDao.java
  29. 16
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcExportTemplateDao.java
  30. 56
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/entity/IcExportTemplateConfigEntity.java
  31. 54
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/entity/IcExportTemplateEntity.java
  32. 78
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcExportTemplateService.java
  33. 13
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormItemService.java
  34. 83
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcExportTemplateServiceImpl.java
  35. 48
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormItemServiceImpl.java
  36. 13
      epmet-module/oper-customize/oper-customize-server/src/main/resources/db/migration/V0.0.21__addcol_item_build.sql
  37. 24
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcExportTemplateConfigDao.xml
  38. 23
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcExportTemplateDao.xml
  39. 5
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormItemDao.xml
  40. 10
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/StatsResiWarnFormDTO.java
  41. 29
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/UserChartFormDTO.java
  42. 1
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcStatsResiWarnUserResultDTO.java
  43. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StaffBasicInfoResultDTO.java
  44. 42
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserChartResultDTO.java
  45. 9
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserWarnNameListResultDTO.java
  46. 13
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java
  47. 9
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsResiWarnController.java
  48. 6
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java
  49. 5
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsResiWarnService.java
  50. 18
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java
  51. 10
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java
  52. 65
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsResiWarnServiceImpl.java
  53. 4
      epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml

10
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcBuildingDTO.java

@ -85,6 +85,16 @@ public class IcBuildingDTO implements Serializable {
*/
private Integer totalHouseNum;
/**
* 楼长姓名
*/
private String buildingLeaderName;
/**
* 楼长电话
*/
private String buildingLeaderMobile;
/**
* 中心点位经度
*/

13
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
@ -57,12 +58,12 @@ public class IcHouseDTO implements Serializable {
* 所属楼栋id
*/
private String buildingId;
private String buildingName;
/**
* 所属单元id
*/
private String buildingUnitId;
private String unitName;
/**
* 房屋名字后台插入时生成
*/
@ -77,17 +78,17 @@ public class IcHouseDTO implements Serializable {
* 房屋类型这里存储字典value就可以
*/
private String houseType;
private String houseTypeName;
/**
* 存储字典value
*/
private String purpose;
private String purposeName;
/**
* 1出租0未出租
*/
private Integer rentFlag;
private String rentName;
/**
* 房主姓名
*/

15
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/ImportGeneralDTO.java

@ -45,6 +45,16 @@ public class ImportGeneralDTO implements Serializable {
private String buildingName;
private String buildingId;
/**
* 楼长姓名
*/
private String buildingLeaderName;
/**
* 楼长电话
*/
private String buildingLeaderMobile;
/**
* 房屋类型
*/
@ -152,4 +162,9 @@ public class ImportGeneralDTO implements Serializable {
* 小区重复状态
*/
private Boolean neighborHoodExistStatus = false;
/**
* 排序
*/
private Integer sort;
}

29
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/HouseChartFormDTO.java

@ -0,0 +1,29 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @author sun
* @dscription 人房房屋总数饼图-接口入参
*/
@Data
public class HouseChartFormDTO implements Serializable {
private static final long serialVersionUID = 405799151478155056L;
/**
* 组织网格小区Id
*/
private String orgId;
/**
* 组织网格小区类型 agency grid village
*/
private String orgType;
//token这信息
private String customerId;
private String userId;
}

10
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcBulidingAddFormDTO.java

@ -123,6 +123,16 @@ public class IcBulidingAddFormDTO implements Serializable {
private String latitude;
/**
* 楼长姓名
*/
private String buildingLeaderName;
/**
* 楼长电话
*/
private String buildingLeaderMobile;

50
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseChartResultDTO.java

@ -0,0 +1,50 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @author sun
* @dscription 人房房屋总数饼图-接口返参
*/
@Data
public class HouseChartResultDTO implements Serializable {
/**
* 组织网格小区Id
*/
private String orgId;
/**
* 组织网格小区类型 agency grid village
*/
private String orgType;
/**
* 房屋总数
*/
private Integer houseTotal;
/**
* 房屋自住总数
*/
private Integer zzHouseTotal;
/**
* 房屋自住总数占比保留两位小数带百分号的
*/
private String zzHouseRatio;
/**
* 房屋常住总数
*/
private Integer czHouseTotal;
/**
* 房屋常住总数占比保留两位小数带百分号的
*/
private String czHouseRatio;
/**
* 房屋闲置总数
*/
private Integer xzHouseTotal;
/**
* 房屋闲置总数占比保留两位小数带百分号的
*/
private String xzHouseRatio;
}

1
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseListResultDTO.java

@ -18,6 +18,7 @@ public class HouseListResultDTO implements Serializable {
private static final long serialVersionUID = 2063032844842070847L;
private String houseId;
private String houseName;
private String rentFlag;
private List<CategoryListBean> categoryList;
@NoArgsConstructor

10
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcBuildingListResultDTO.java

@ -41,4 +41,14 @@ public class IcBuildingListResultDTO extends PageFormDTO {
private Integer totalUnitNum;
private String longitude;
private String buildingType;
/**
* 楼长姓名
*/
private String buildingLeaderName;
/**
* 楼长电话
*/
private String buildingLeaderMobile;
}

74
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SubUserHouseListResultDTO.java

@ -0,0 +1,74 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @author sun
* @dscription 人房下级人房概览列表-接口返参
*/
@Data
public class SubUserHouseListResultDTO implements Serializable {
/**
* 组织网格小区Id
*/
private String orgId;
/**
* 组织网格小区名称
*/
private String orgName;
/**
* 组织网格小区类型 agency grid village
*/
private String orgType;
/**
* 房屋总数
*/
private Integer houseTotal;
/**
* 房屋自住总数
*/
private Integer zzHouseTotal;
/**
* 房屋自住总数占比保留两位小数带百分号的
*/
private String zzHouseRatio;
/**
* 房屋常住总数
*/
private Integer czHouseTotal;
/**
* 房屋常住总数占比保留两位小数带百分号的
*/
private String czHouseRatio;
/**
* 房屋闲置总数
*/
private Integer xzHouseTotal;
/**
* 房屋闲置总数占比保留两位小数带百分号的
*/
private String xzHouseRatio;
/**
* 居民总数
*/
private Integer userTotal;
/**
* 常住人口总数
*/
private Integer czUserTotal;
/**
* 常住人口占比保留两位小数带百分号的
*/
private String czUserRatio;
/**
* 流动人口总数
*/
private Integer ldUserTotal;
/**
* 流动人口占比保留两位小数带百分号的
*/
private String ldUserRatio;
}

1
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java

@ -96,7 +96,6 @@ public class BuildingController {
//效验数据
ValidatorUtils.validateEntity(formDTO, IcBulidingAddFormDTO.UpdateShowGroup.class);
String customerId = tokenDTO.getCustomerId();
// String customerId = "123123";
buildingService.updateBuilding(customerId,formDTO);
return new Result().ok("修改成功");
}

35
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java

@ -32,10 +32,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.constants.ImportTaskConstants;
import com.epmet.dto.form.*;
import com.epmet.dto.result.HouseInfoDTO;
import com.epmet.dto.result.IcHouseListResultDTO;
import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.dto.result.LoginUserDetailsResultDTO;
import com.epmet.dto.result.*;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.service.HouseService;
@ -48,7 +45,10 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.util.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Set;
/**
@ -250,4 +250,29 @@ public class HouseController implements ResultDataResolver {
}
return new Result<HouseInfoDTO>().ok(houseService.getHouseInfoDTO(tokenDto.getCustomerId(), houseId));
}
/**
* @Author sun
* @Description 人房房屋总数饼图
**/
@NoRepeatSubmit
@PostMapping("housechart")
public Result<HouseChartResultDTO> houseChart(@LoginUser TokenDto tokenDto, @RequestBody HouseChartFormDTO formDTO) {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setUserId(tokenDto.getUserId());
return new Result<HouseChartResultDTO>().ok(houseService.houseChart(formDTO));
}
/**
* @Author sun
* @Description 人房下级人房概览列表
**/
@NoRepeatSubmit
@PostMapping("subuserhouselist")
public Result<List<SubUserHouseListResultDTO>> subUserHouseList(@LoginUser TokenDto tokenDto, @RequestBody HouseChartFormDTO formDTO) {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setUserId(tokenDto.getUserId());
return new Result<List<SubUserHouseListResultDTO>>().ok(houseService.subUserHouseList(formDTO));
}
}

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcBuildingEntity.java

@ -80,6 +80,16 @@ public class IcBuildingEntity extends BaseEpmetEntity {
*/
private Integer totalHouseNum;
/**
* 楼长姓名
*/
private String buildingLeaderName;
/**
* 楼长电话
*/
private String buildingLeaderMobile;
/**
* 中心点位经度
*/

6
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/BuildingInfoModel.java

@ -36,6 +36,12 @@ public class BuildingInfoModel {
@ExcelProperty(value = "户数")
private Integer totalHouseNum;
@ExcelProperty(value = "楼长姓名")
private String buildingLeaderName;
@ExcelProperty(value = "楼长电话")
private String buildingLeaderMobile;
@ExcelIgnore
private Integer num;

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java

@ -34,6 +34,8 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import static com.epmet.constant.ImportErrorMsgConstants.*;

21
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java

@ -19,13 +19,8 @@ package com.epmet.service;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.IcHouseAddFormDTO;
import com.epmet.dto.form.IcHouseListFormDTO;
import com.epmet.dto.form.ImportInfoFormDTO;
import com.epmet.dto.form.NeighborHoodManageDelFormDTO;
import com.epmet.dto.result.HouseInfoDTO;
import com.epmet.dto.result.IcHouseListResultDTO;
import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
@ -68,4 +63,16 @@ public interface HouseService {
void allDelete(NeighborHoodManageDelFormDTO formDTO);
HouseInfoDTO getHouseInfoDTO(String customerId,String houseId);
/**
* @Author sun
* @Description 人房房屋总数饼图
**/
HouseChartResultDTO houseChart(HouseChartFormDTO formDTO);
/**
* @Author sun
* @Description 人房下级人房概览列表
**/
List<SubUserHouseListResultDTO> subUserHouseList(HouseChartFormDTO formDTO);
}

3
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java

@ -426,14 +426,11 @@ public class BuildingServiceImpl implements BuildingService {
if (null != count && count > 0) {
throw new RenException(EpmetErrorCode.BUILDING_NAME_EXITED.getCode(), EpmetErrorCode.BUILDING_NAME_EXITED.getMsg());
}
IcBuildingDTO icBuilding = icBuildingService.get(formDTO.getBuildingId());
if (!icBuilding.getNeighborHoodId().equals(formDTO.getNeighborHoodId())) {
//更新对应房屋小区id
List<IcHouseEntity> icHouseEntities = icHouseDao.selectList(new QueryWrapper<IcHouseEntity>().lambda().eq(IcHouseEntity::getBuildingId, formDTO.getBuildingId()));
if (!CollectionUtils.isEmpty(icHouseEntities)) {
//
throw new RenException(EpmetErrorCode.ORG_EDIT_FAILED.getCode(), "楼栋单元下存在房屋,无法更新");
}
}

24
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java

@ -27,10 +27,7 @@ import com.epmet.dto.IcBuildingDTO;
import com.epmet.dto.IcBuildingUnitDTO;
import com.epmet.dto.IcHouseDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.HouseInfoDTO;
import com.epmet.dto.result.IcHouseListResultDTO;
import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.dto.result.NeighborHoodManageDelResultDTO;
import com.epmet.dto.result.*;
import com.epmet.enums.HousePurposeEnums;
import com.epmet.enums.HouseTypeEnums;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
@ -344,4 +341,23 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver {
}
return houseInfo;
}
/**
* @Author sun
* @Description 人房房屋总数饼图
**/
@Override
public HouseChartResultDTO houseChart(HouseChartFormDTO formDTO) {
return null;
}
/**
* @Author sun
* @Description 人房下级人房概览列表
**/
@Override
public List<SubUserHouseListResultDTO> subUserHouseList(HouseChartFormDTO formDTO) {
return null;
}
}

40
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.OptionResultDTO;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
@ -18,11 +19,17 @@ import com.epmet.dto.IcResiCategoryStatsConfigDTO;
import com.epmet.dto.IcResiUserDTO;
import com.epmet.dto.ImportGeneralDTO;
import com.epmet.dto.form.HouseFormDTO;
import com.epmet.dto.result.HouseInfoDTO;
import com.epmet.dto.result.HouseListResultDTO;
import com.epmet.dto.result.HousesNameResultDTO;
import com.epmet.entity.IcHouseEntity;
import com.epmet.enums.HousePurposeEnums;
import com.epmet.enums.HouseRentFlagEnums;
import com.epmet.enums.HouseTypeEnums;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.feign.OperCustomizeOpenFeignClient;
import com.epmet.redis.IcHouseRedis;
import com.epmet.service.IcHouseService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@ -47,6 +54,10 @@ public class IcHouseServiceImpl extends BaseServiceImpl<IcHouseDao, IcHouseEntit
private OperCustomizeOpenFeignClient operCustomizeOpenFeignClient;
@Resource
private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
@Resource
private EpmetAdminOpenFeignClient epmetAdminOpenFeignClient;
@Resource
private IcHouseRedis icHouseRedis;
@Override
@ -77,7 +88,21 @@ public class IcHouseServiceImpl extends BaseServiceImpl<IcHouseDao, IcHouseEntit
@Override
public IcHouseDTO get(String id) {
IcHouseEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, IcHouseDTO.class);
IcHouseDTO dto = ConvertUtils.sourceToTarget(entity, IcHouseDTO.class);
dto.setHouseTypeName(HouseTypeEnums.getTypeValue(dto.getHouseType()));
dto.setRentName(HouseRentFlagEnums.getTypeValue(dto.getRentFlag()));
dto.setPurposeName(HousePurposeEnums.getTypeValue(dto.getPurpose()));
HouseInfoDTO houseInfo = icHouseRedis.getHouseInfo(id, dto.getCustomerId());
if (null != houseInfo) {
dto.setBuildingName(houseInfo.getNeighborHoodName().concat(houseInfo.getBuildingName()));
dto.setUnitName(houseInfo.getUnitName());
} else {
dto.setBuildingName(StrConstant.EPMETY_STR);
dto.setUnitName(StrConstant.EPMETY_STR);
}
return dto;
}
@Override
@ -188,6 +213,19 @@ public class IcHouseServiceImpl extends BaseServiceImpl<IcHouseDao, IcHouseEntit
HouseListResultDTO dto = new HouseListResultDTO();
dto.setHouseId(item.getId());
dto.setHouseName(item.getHouseName());
switch (item.getRentFlag()){
case NumConstant.ZERO:
dto.setRentFlag("自住");
break;
case NumConstant.ONE:
dto.setRentFlag("出租");
break;
case NumConstant.TWO:
dto.setRentFlag("闲置");
break;
default:
break;
}
List<HouseListResultDTO.CategoryListBean> categories = new ArrayList<>();
if (null != countMap && CollectionUtils.isNotEmpty(categoryList)) {
for (IcResiCategoryStatsConfigDTO category : categoryList) {

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java

@ -601,6 +601,8 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl<IcNeighborHoodDao
buildingEntity.setTotalUnitNum(info.getTotalUnitNum());
buildingEntity.setTotalFloorNum(info.getTotalFloorNum());
buildingEntity.setTotalHouseNum(info.getTotalHouseNum());
buildingEntity.setBuildingLeaderName(info.getBuildingLeaderName());
buildingEntity.setBuildingLeaderMobile(info.getBuildingLeaderMobile());
icBuildingService.insert(buildingEntity);
if (null != info.getTotalUnitNum() && info.getTotalUnitNum() > NumConstant.ZERO) {
//设置楼宇单元

2
epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.17__edit_building_and_house.sql

@ -0,0 +1,2 @@
alter table ic_building add COLUMN BUILDING_LEADER_NAME VARCHAR(11) comment '楼长姓名' AFTER TOTAL_HOUSE_NUM;
alter table ic_building add COLUMN BUILDING_LEADER_MOBILE VARCHAR(11) comment '楼长电话' AFTER BUILDING_LEADER_NAME;

BIN
epmet-module/gov-org/gov-org-server/src/main/resources/excel/building_template.xlsx

Binary file not shown.

BIN
epmet-module/gov-org/gov-org-server/src/main/resources/excel/house_template.xlsx

Binary file not shown.

4
epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml

@ -82,7 +82,9 @@
a.LONGITUDE as longitude,
a.LATITUDE as latitude,
a.TYPE as buildingTypeKey,
(SELECT COUNT(1) FROM ic_house WHERE DEL_FLAG = '0' AND BUILDING_ID = a.ID) AS realTotalHouseNum
(SELECT COUNT(1) FROM ic_house WHERE DEL_FLAG = '0' AND BUILDING_ID = a.ID) AS realTotalHouseNum,
a.BUILDING_LEADER_NAME,
a.BUILDING_LEADER_MOBILE
from ic_building a
LEFT JOIN ic_neighbor_hood b on a.NEIGHBOR_HOOD_ID = b.ID and b.DEL_FLAG='0'
left join customer_agency c on b.AGENCY_ID = c.ID and c.DEL_FLAG='0'

85
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/IcExportTemplateDTO.java

@ -0,0 +1,85 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 自定义表单导出模板
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@Data
public class IcExportTemplateDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 客户id
*/
private String customerId;
/**
* 表单CODE从字典获取
*/
private String formCode;
/**
* 模板名称
*/
private String name;
/**
* 0:动态1:文件
*/
private Integer type;
/**
* 文件地址http开头或者项目组模板存放相对路径
*/
private String url;
/**
* 排序
*/
private Integer sort;
/**
* 0未删除1已删除
*/
private Integer delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

39
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/EditIFormItemFormDTO.java

@ -0,0 +1,39 @@
package com.epmet.dto.form;
import com.epmet.dto.result.OptionDTO;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;
@Data
public class EditIFormItemFormDTO implements Serializable {
/**
* 客户id
* 可空为空时修改所有客户符合条件的记录
*/
private String customerId;
/**
* ic_form_item.id
*/
private String formItemId;
/**
* 组件名称对应的是ic_form_item.label
*/
@NotBlank(message = "label不能为空")
private String label;
/**
* 组件类型
*/
private String itemType;
/**
* ic_form_item_options
*/
private List<OptionDTO> options;
}

62
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcExportTemplateController.java

@ -0,0 +1,62 @@
package com.epmet.controller;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.IcExportTemplateDTO;
import com.epmet.service.IcExportTemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
/**
* 自定义表单导出模板
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@RestController
@RequestMapping("icExportTemplate")
public class IcExportTemplateController {
@Autowired
private IcExportTemplateService icExportTemplateService;
@RequestMapping("page")
public Result<PageData<IcExportTemplateDTO>> page(@RequestParam Map<String, Object> params){
PageData<IcExportTemplateDTO> page = icExportTemplateService.page(params);
return new Result<PageData<IcExportTemplateDTO>>().ok(page);
}
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET})
public Result<IcExportTemplateDTO> get(@PathVariable("id") String id){
IcExportTemplateDTO data = icExportTemplateService.get(id);
return new Result<IcExportTemplateDTO>().ok(data);
}
@NoRepeatSubmit
@PostMapping("save")
public Result save(@RequestBody IcExportTemplateDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
icExportTemplateService.save(dto);
return new Result();
}
@PostMapping("delete")
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
icExportTemplateService.delete(ids);
return new Result();
}
}

18
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormItemController.java

@ -18,6 +18,8 @@
package com.epmet.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.EditIFormItemFormDTO;
import com.epmet.dto.result.ColumnTableNameResultDTO;
import com.epmet.dto.result.ResiCategoryItemResultDTO;
import com.epmet.service.IcFormItemService;
@ -60,4 +62,20 @@ public class IcFormItemController {
return new Result().ok(r);
}
/**
* 修改组件的类型
* 来源于需求
* 16所患大病所患慢病更改为下拉框选择慢病类型高血压类风湿心脏病肝硬化糖尿病其他大病类别恶性肿瘤肾功能衰竭肝硬化或急性肝坏死脑中风急性心机梗塞急性坏死性胰腺炎器官移植系统性红斑狼疮再生障碍性贫血其他
* 17人户状况更改为下拉框选择类别人户一致人在户不在户在人不在
* 18居住情况类别缺少针对夫妻两人居住的类别增加其他分类类别与子女同住空巢独居其他
* @param formDTO
* @return
*/
@PostMapping("edit-item-type")
public Result editItemType(@RequestBody EditIFormItemFormDTO formDTO ){
ValidatorUtils.validateEntity(formDTO);
icFormItemService.editItemType(formDTO);
return new Result();
}
}

16
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcExportTemplateConfigDao.java

@ -0,0 +1,16 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.IcExportTemplateConfigEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 自定义表单导出模板配置项
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@Mapper
public interface IcExportTemplateConfigDao extends BaseDao<IcExportTemplateConfigEntity> {
}

16
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcExportTemplateDao.java

@ -0,0 +1,16 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.IcExportTemplateEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 自定义表单导出模板
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@Mapper
public interface IcExportTemplateDao extends BaseDao<IcExportTemplateEntity> {
}

56
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/entity/IcExportTemplateConfigEntity.java

@ -0,0 +1,56 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 自定义表单导出模板配置项
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("ic_export_template_config")
public class IcExportTemplateConfigEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户id
*/
private String customerId;
/**
* 模板主键id
*/
private String tempId;
/**
* 父id
*/
private String pid;
/**
* ic_form_item.id
*/
private String formItemId;
/**
* 表头宽度
*/
private Integer width;
/**
* 项标签
*/
private String label;
/**
* 排序
*/
private Integer sort;
}

54
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/entity/IcExportTemplateEntity.java

@ -0,0 +1,54 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 自定义表单导出模板
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("ic_export_template")
public class IcExportTemplateEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户id
*/
private String customerId;
/**
* 表单CODE从字典获取
*/
private String formCode;
/**
* 模板名称
*/
private String name;
/**
* 0:动态1:文件
*/
private Integer type;
/**
* 文件地址http开头或者项目组模板存放相对路径
*/
private String url;
/**
* 排序
*/
private Integer sort;
}

78
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcExportTemplateService.java

@ -0,0 +1,78 @@
package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IcExportTemplateDTO;
import com.epmet.entity.IcExportTemplateEntity;
import java.util.List;
import java.util.Map;
/**
* 自定义表单导出模板
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
public interface IcExportTemplateService extends BaseService<IcExportTemplateEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<IcExportTemplateDTO>
* @author generator
* @date 2022-04-21
*/
PageData<IcExportTemplateDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<IcExportTemplateDTO>
* @author generator
* @date 2022-04-21
*/
List<IcExportTemplateDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return IcExportTemplateDTO
* @author generator
* @date 2022-04-21
*/
IcExportTemplateDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2022-04-21
*/
void save(IcExportTemplateDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2022-04-21
*/
void update(IcExportTemplateDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2022-04-21
*/
void delete(String[] ids);
}

13
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormItemService.java

@ -19,6 +19,7 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.form.CustomerFormQueryDTO;
import com.epmet.dto.form.EditIFormItemFormDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.IcFormItemEntity;
@ -62,4 +63,16 @@ public interface IcFormItemService extends BaseService<IcFormItemEntity> {
* @return
*/
List<ResiCategoryItemResultDTO> listResiCategoryItems(String customerId);
/**
* 修改组件的类型
* 来源于需求
* 16所患大病所患慢病更改为下拉框选择慢病类型高血压类风湿心脏病肝硬化糖尿病其他大病类别恶性肿瘤肾功能衰竭肝硬化或急性肝坏死脑中风急性心机梗塞急性坏死性胰腺炎器官移植系统性红斑狼疮再生障碍性贫血其他
* 17人户状况更改为下拉框选择类别人户一致人在户不在户在人不在
* 18居住情况类别缺少针对夫妻两人居住的类别增加其他分类类别与子女同住空巢独居其他
*
* @param formDTO
* @return
*/
void editItemType(EditIFormItemFormDTO formDTO);
}

83
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcExportTemplateServiceImpl.java

@ -0,0 +1,83 @@
package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.IcExportTemplateDao;
import com.epmet.dto.IcExportTemplateDTO;
import com.epmet.entity.IcExportTemplateEntity;
import com.epmet.service.IcExportTemplateService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 自定义表单导出模板
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-04-21
*/
@Service
public class IcExportTemplateServiceImpl extends BaseServiceImpl<IcExportTemplateDao, IcExportTemplateEntity> implements IcExportTemplateService {
@Override
public PageData<IcExportTemplateDTO> page(Map<String, Object> params) {
IPage<IcExportTemplateEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, IcExportTemplateDTO.class);
}
@Override
public List<IcExportTemplateDTO> list(Map<String, Object> params) {
List<IcExportTemplateEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, IcExportTemplateDTO.class);
}
private QueryWrapper<IcExportTemplateEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<IcExportTemplateEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public IcExportTemplateDTO get(String id) {
IcExportTemplateEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, IcExportTemplateDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(IcExportTemplateDTO dto) {
IcExportTemplateEntity entity = ConvertUtils.sourceToTarget(dto, IcExportTemplateEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(IcExportTemplateDTO dto) {
IcExportTemplateEntity entity = ConvertUtils.sourceToTarget(dto, IcExportTemplateEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

48
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormItemServiceImpl.java

@ -18,13 +18,19 @@
package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.dao.IcFormItemDao;
import com.epmet.dao.IcFormItemOptionsDao;
import com.epmet.dto.form.CustomerFormQueryDTO;
import com.epmet.dto.form.EditIFormItemFormDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.IcFormItemEntity;
import com.epmet.service.IcFormItemService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@ -39,8 +45,11 @@ import java.util.stream.Collectors;
* @author generator generator@elink-cn.com
* @since v1.0.0 2021-10-26
*/
@Slf4j
@Service
public class IcFormItemServiceImpl extends BaseServiceImpl<IcFormItemDao, IcFormItemEntity> implements IcFormItemService {
@Autowired
private IcFormItemOptionsDao icFormItemOptionsDao;
/**
* 获取居民信息的查询条件组件列表
@ -152,4 +161,43 @@ public class IcFormItemServiceImpl extends BaseServiceImpl<IcFormItemDao, IcForm
return d;
}).collect(Collectors.toList());
}
/**
* 修改组件的类型
* 来源于需求
* 16所患大病所患慢病更改为下拉框选择慢病类型高血压类风湿心脏病肝硬化糖尿病其他大病类别恶性肿瘤肾功能衰竭肝硬化或急性肝坏死脑中风急性心机梗塞急性坏死性胰腺炎器官移植系统性红斑狼疮再生障碍性贫血其他
* 17人户状况更改为下拉框选择类别人户一致人在户不在户在人不在
* 18居住情况类别缺少针对夫妻两人居住的类别增加其他分类类别与子女同住空巢独居其他
*
* @param formDTO
* @return
*/
@Override
public void editItemType(EditIFormItemFormDTO formDTO) {
LambdaQueryWrapper<IcFormItemEntity> queryWrapper = new QueryWrapper<IcFormItemEntity>().lambda()
.eq(StringUtils.isNotBlank(formDTO.getCustomerId()),IcFormItemEntity::getCustomerId, formDTO.getCustomerId())
.eq(StringUtils.isNotBlank(formDTO.getFormItemId()),IcFormItemEntity::getId,formDTO.getFormItemId())
.eq(IcFormItemEntity::getLabel,formDTO.getLabel());
List<IcFormItemEntity> list=baseDao.selectList(queryWrapper);
if(CollectionUtils.isEmpty(list)){
return;
}
for(IcFormItemEntity entity:list){
//修改组件类型
entity.setItemType(formDTO.getItemType());
baseDao.updateById(entity);
if(!CollectionUtils.isEmpty(formDTO.getOptions())){
//todo
// 先删除后新增
/*int sort=1;
for(OptionDTO optionDTO:formDTO.getOptions()){
IcFormItemOptionsEntity optionsEntity=new IcFormItemOptionsEntity();
optionsEntity.setCustomerId();
}*/
}
}
}
}

13
epmet-module/oper-customize/oper-customize-server/src/main/resources/db/migration/V0.0.21__addcol_item_build.sql

@ -0,0 +1,13 @@
alter table ic_form_query_builder add COLUMN ITEM_TYPE VARCHAR(32) NOT NULL COMMENT '组件类型' after FORM_CODE;
alter table ic_form_query_builder add COLUMN LABEL VARCHAR(32) NOT NULL COMMENT '项标签' after FORM_ITEM_ID;
alter table ic_form_query_builder add COLUMN FUN_TYPE VARCHAR(32) COMMENT '值转换类型' after QUERY_TYPE;
update ic_form_query_builder set item_type=(
select i.ITEM_TYPE from ic_form_item i where i.id=FORM_ITEM_ID
and i.CUSTOMER_ID=CUSTOMER_ID
)where DEL_FLAG='0';
update ic_form_query_builder set LABEL=(
select i.LABEL from ic_form_item i where i.id=FORM_ITEM_ID
and i.CUSTOMER_ID=CUSTOMER_ID
)where DEL_FLAG='0';

24
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcExportTemplateConfigDao.xml

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dao.IcExportTemplateConfigDao">
<resultMap type="com.epmet.entity.IcExportTemplateConfigEntity" id="icExportTemplateConfigMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="tempId" column="TEMP_ID"/>
<result property="pid" column="PID"/>
<result property="formItemId" column="FORM_ITEM_ID"/>
<result property="width" column="WIDTH"/>
<result property="label" column="LABEL"/>
<result property="sort" column="SORT"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>

23
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcExportTemplateDao.xml

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dao.IcExportTemplateDao">
<resultMap type="com.epmet.entity.IcExportTemplateEntity" id="icExportTemplateMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="formCode" column="FORM_CODE"/>
<result property="name" column="NAME"/>
<result property="type" column="TYPE"/>
<result property="url" column="URL"/>
<result property="sort" column="SORT"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>

5
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormItemDao.xml

@ -100,7 +100,7 @@
temp.LABEL
from (
SELECT
ifnull(g.TABLE_NAME,'ic_resi_user') AS table_name,
IF(LENGTH(g.TABLE_NAME)>0,g.TABLE_NAME,'ic_resi_user') AS table_name,
#( CASE WHEN M.ITEM_GROUP_ID = '0' THEN 'ic_resi_user' ELSE g.TABLE_NAME END ) AS table_name,
m.COLUMN_NAME AS columnName,
m.LABEL
@ -127,8 +127,7 @@
ic_form_item_group m
WHERE
m.DEL_FLAG = '0'
AND m.TABLE_NAME IS NOT NULL
AND m.TABLE_NAME != ''
AND m.TABLE_NAME != 'ic_resi_user'
AND m.CUSTOMER_ID = #{customerId}
AND m.FORM_CODE = #{formCode}
)temp

10
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/StatsResiWarnFormDTO.java

@ -22,7 +22,6 @@ import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@ -40,7 +39,7 @@ public class StatsResiWarnFormDTO implements Serializable {
public interface ListSelectedBuilding {}
public interface ListSelectedUser {}
public interface AllUser {}
/**
* 当前页
@ -57,10 +56,11 @@ public class StatsResiWarnFormDTO implements Serializable {
@NotBlank(message = "组织id不能为空",groups = {ListSelectedBuilding.class})
private String agencyId;
@NotBlank(message = "配置id不能为空",groups = {ListSelectedUser.class})
@NotBlank(message = "配置id不能为空",groups = {ListSelectedUser.class, AllUser.class})
private String configId;
@NotNull(message = "楼栋不能为空",groups = {ListSelectedUser.class})
private List<String> buildingIdList;
@NotBlank(message = "楼栋不能为空",groups = {AllUser.class})
private String buildingId;
private String customerId;
}

29
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/UserChartFormDTO.java

@ -0,0 +1,29 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @author sun
* @dscription 人房居民总数饼图-接口入参
*/
@Data
public class UserChartFormDTO implements Serializable {
private static final long serialVersionUID = 405799151478155056L;
/**
* 组织网格小区Id
*/
private String orgId;
/**
* 组织网格小区类型 agency grid village
*/
private String orgType;
//token这信息
private String customerId;
private String userId;
}

1
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcStatsResiWarnUserResultDTO.java

@ -43,6 +43,7 @@ public class IcStatsResiWarnUserResultDTO implements Serializable {
private String neighborhoodName;
private String buildingName;
private String residentNames;
private Integer count;
private List<UserWarnNameListResultDTO> userList;
}

5
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StaffBasicInfoResultDTO.java

@ -96,4 +96,9 @@ public class StaffBasicInfoResultDTO implements Serializable {
* 地区编码全路径例如37,3702,370203,370203005,370203005015
*/
private List<String> areaCodePath;
/**
* 工作人员所属组织的行政地区编码
*/
private String areaCode;
}

42
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserChartResultDTO.java

@ -0,0 +1,42 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @author sun
* @dscription 人房居民总数饼图-接口返参
*/
@Data
public class UserChartResultDTO implements Serializable {
/**
* 组织网格小区Id
*/
private String orgId;
/**
* 组织网格小区类型 agency grid village
*/
private String orgType;
/**
* 居民总数
*/
private Integer userTotal;
/**
* 常住人口总数
*/
private Integer czUserTotal;
/**
* 常住人口占比保留两位小数带百分号的
*/
private String czUserRatio;
/**
* 流动人口总数
*/
private Integer ldUserTotal;
/**
* 流动人口占比保留两位小数带百分号的
*/
private String ldUserRatio;
}

9
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserWarnNameListResultDTO.java

@ -21,4 +21,13 @@ public class UserWarnNameListResultDTO implements Serializable {
private String residentName;
private String userId;
@JsonIgnore
private String unitId;
private String unitName;
@JsonIgnore
private String homeId;
private String doorName;
private String mobile;
private String idCard;
}

13
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java

@ -892,4 +892,17 @@ public class IcResiUserController implements ResultDataResolver {
});
return new Result();
}
/**
* @Author sun
* @Description 人房居民总数饼图
**/
@NoRepeatSubmit
@PostMapping("userchart")
public Result<HouseChartResultDTO> userChart(@LoginUser TokenDto tokenDto, @RequestBody UserChartFormDTO formDTO) {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setUserId(tokenDto.getUserId());
return new Result<HouseChartResultDTO>().ok(icResiUserService.userChart(formDTO));
}
}

9
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsResiWarnController.java

@ -18,6 +18,7 @@
package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
@ -29,6 +30,7 @@ import com.epmet.dto.form.StatsResiWarnFormDTO;
import com.epmet.dto.result.IcStatsResiResultDTO;
import com.epmet.dto.result.IcStatsResiWarnBuildingResultDTO;
import com.epmet.dto.result.IcUserWarnNoticeResultDTO;
import com.epmet.dto.result.UserWarnNameListResultDTO;
import com.epmet.service.IcStatsResiWarnService;
import com.epmet.service.StatsResiWarnService;
import org.springframework.beans.factory.annotation.Autowired;
@ -115,6 +117,13 @@ public class StatsResiWarnController {
return new Result().ok(statsResiWarnService.userWarnList(customerId,formDTO.getConfigId(), formDTO.getBuildingIdList(),formDTO.getPageNo(),formDTO.getPageSize()));
}
@PostMapping("alluserwarnlist")
public Result<PageData<UserWarnNameListResultDTO>> allUserWarnList(@LoginUser TokenDto tokenDto, @RequestBody StatsResiWarnFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, StatsResiWarnFormDTO.AllUser.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
return new Result<PageData<UserWarnNameListResultDTO>>().ok(statsResiWarnService.allUserWarnList(formDTO));
}
/**
* 统计所有
* @return

6
epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java

@ -244,4 +244,10 @@ public interface IcResiUserService extends BaseService<IcResiUserEntity> {
* @Date 2022/3/29 16:25
*/
EpidemicPreventionInfoDTO getEpidemicPreventionInfo(EpidemicPreventionFormDTO formDTO);
/**
* @Author sun
* @Description 人房居民总数饼图
**/
HouseChartResultDTO userChart(UserChartFormDTO formDTO);
}

5
epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsResiWarnService.java

@ -17,11 +17,14 @@
package com.epmet.service;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.form.IcUserWarnNoticeFormDTO;
import com.epmet.dto.form.StatsResiListFormDTO;
import com.epmet.dto.form.StatsResiWarnFormDTO;
import com.epmet.dto.result.IcStatsResiResultDTO;
import com.epmet.dto.result.IcStatsResiWarnBuildingResultDTO;
import com.epmet.dto.result.IcUserWarnNoticeResultDTO;
import com.epmet.dto.result.UserWarnNameListResultDTO;
import java.util.List;
import java.util.Map;
@ -53,6 +56,8 @@ public interface StatsResiWarnService{
*/
Map<String,Object> userWarnList(String customerId, String configId, List<String> buildingIdList, Integer pageNo, Integer pageSize);
PageData<UserWarnNameListResultDTO> allUserWarnList(StatsResiWarnFormDTO formDTO);
List<IcStatsResiResultDTO> list(String customerId,String id, String level);
List<IcStatsResiResultDTO> list2(StatsResiListFormDTO formDTO);

18
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java

@ -25,6 +25,7 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.ExceptionUtils;
@ -731,20 +732,21 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl<CustomerStaffDao,
return new Result<List<CustomerListResultDTO>>().ok(listResultDTO);
}
@Override
public Result<StaffBasicInfoResultDTO> selectStaffBasicInfo(String userId,String customerId) {
@Override
public Result<StaffBasicInfoResultDTO> selectStaffBasicInfo(String userId, String customerId) {
StaffBasicInfoResultDTO resultDTO = baseDao.selectStaffBasicInfo(userId);
if(null!=resultDTO){
resultDTO.setRoleList(baseDao.selectStaffRoles(userId,resultDTO.getCustomerId()));
if (null != resultDTO) {
resultDTO.setRoleList(baseDao.selectStaffRoles(userId, resultDTO.getCustomerId()));
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(customerId, userId);
if (null != staffInfo){
if (null != staffInfo) {
resultDTO.setAgencyId(staffInfo.getAgencyId());
resultDTO.setAgencyName(staffInfo.getAgencyName());
resultDTO.setLevel(staffInfo.getLevel());
resultDTO.setLongitude(staffInfo.getLongitude());
resultDTO.setLatitude(staffInfo.getLatitude());
AgencyInfoCache agency= CustomerOrgRedis.getAgencyInfo(staffInfo.getAgencyId());
AgencyInfoCache agency = CustomerOrgRedis.getAgencyInfo(staffInfo.getAgencyId());
resultDTO.setAreaCodePath(null != agency && !CollectionUtils.isEmpty(agency.getAreaCodePath()) ? agency.getAreaCodePath() : new ArrayList<>());
resultDTO.setAreaCode(null != agency && StringUtils.isNotBlank(agency.getAreaCode()) ? agency.getAreaCode() : StrConstant.EPMETY_STR);
}
//获取工作人员所属客户名
CustomerDTO dto = new CustomerDTO();
@ -757,8 +759,8 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl<CustomerStaffDao,
resultDTO.setCustomerName(customerResult.getData().getCustomerName());
}
}
return new Result<StaffBasicInfoResultDTO>().ok(resultDTO);
}
return new Result<StaffBasicInfoResultDTO>().ok(resultDTO);
}
/**
* @param formDTO

10
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java

@ -1600,4 +1600,14 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi
return new PageData<>(list, null == list?NumConstant.ZERO:list.size());
}
/**
* @Author sun
* @Description 人房居民总数饼图
**/
@Override
public HouseChartResultDTO userChart(UserChartFormDTO formDTO) {
return null;
}
}

65
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsResiWarnServiceImpl.java

@ -4,7 +4,9 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerIcHouseRedis;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
@ -16,6 +18,7 @@ import com.epmet.dto.IcResiCategoryWarnConfigDTO;
import com.epmet.dto.form.IcResiCategoryStatsConfigFormDTO;
import com.epmet.dto.form.IcUserWarnNoticeFormDTO;
import com.epmet.dto.form.StatsResiListFormDTO;
import com.epmet.dto.form.StatsResiWarnFormDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.IcResiUserEntity;
import com.epmet.entity.IcStatsResiWarnEntity;
@ -24,12 +27,13 @@ import com.epmet.feign.OperCustomizeOpenFeignClient;
import com.epmet.service.IcStatsResiWarnService;
import com.epmet.service.StatsResiWarnService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.math.BigDecimal;
@ -173,20 +177,18 @@ public class StatsResiWarnServiceImpl implements StatsResiWarnService {
//根据buildingID,tableName he columnName获取名字
//限制条数 一栋楼内最多显示1000 即可
for (String s : buildingIdList) {
PageHelper.startPage(NumConstant.ONE,NumConstant.ONE_HUNDRED,false).doSelectPage(()->{
List<UserWarnNameListResultDTO> dtos = icStatsResiWarnDao.userWarnListDTO(customerId, Arrays.asList(s), icResiCategoryWarnConfigDTO.getTableName(), icResiCategoryWarnConfigDTO.getColumnName());
if (!CollectionUtils.isEmpty(dtos)){
Map<String, List<UserWarnNameListResultDTO>> groupByBuild = dtos.stream().collect(Collectors.groupingBy(UserWarnNameListResultDTO::getBuildingId));
result.forEach(item->{
item.setConfigId(configId);
groupByBuild.forEach((k,v) -> {
if (item.getBuildingId().equals(k)){
item.setUserList(v);
}
});
List<UserWarnNameListResultDTO> dtos = icStatsResiWarnDao.userWarnListDTO(customerId, Arrays.asList(s), icResiCategoryWarnConfigDTO.getTableName(), icResiCategoryWarnConfigDTO.getColumnName());
if (!CollectionUtils.isEmpty(dtos)){
Map<String, List<UserWarnNameListResultDTO>> groupByBuild = dtos.stream().collect(Collectors.groupingBy(UserWarnNameListResultDTO::getBuildingId));
result.forEach(item->{
item.setConfigId(configId);
groupByBuild.forEach((k,v) -> {
if (item.getBuildingId().equals(k)){
item.setCount(v.size());
}
});
}
});
});
}
}
/*PageHelper.startPage(NumConstant.ONE,NumConstant.ONE_THOUSAND,false).doSelectPage(()->{
List<UserWarnNameListResultDTO> dtos = icStatsResiWarnDao.userWarnListDTO(customerId, buildingIdList, icResiCategoryWarnConfigDTO.getTableName(), icResiCategoryWarnConfigDTO.getColumnName());
@ -205,6 +207,41 @@ public class StatsResiWarnServiceImpl implements StatsResiWarnService {
return mapResult;
}
@Override
public PageData<UserWarnNameListResultDTO> allUserWarnList(StatsResiWarnFormDTO formDTO) {
//获取configId预警配置信息
IcResiCategoryWarnConfigDTO formDto = new IcResiCategoryWarnConfigDTO();
formDto.setId(formDTO.getConfigId());
Result<IcResiCategoryWarnConfigDTO> warnResult = operCustomizeOpenFeignClient.resiCategoryWarnInfoById(formDto);
if (!warnResult.success() || null == warnResult.getData()) {
throw new RenException("获取预警配置信息失败,configId="+ formDTO.getConfigId());
}
IcResiCategoryWarnConfigDTO icResiCategoryWarnConfigDTO = warnResult.getData();
PageHelper.startPage(formDTO.getPageNo(),formDTO.getPageSize());
List<UserWarnNameListResultDTO> list = icStatsResiWarnDao.userWarnListDTO(formDTO.getCustomerId(),
Collections.singletonList(formDTO.getBuildingId()),
icResiCategoryWarnConfigDTO.getTableName(),
icResiCategoryWarnConfigDTO.getColumnName());
PageInfo<UserWarnNameListResultDTO> pageInfo = new PageInfo<>(list);
if (CollectionUtils.isNotEmpty(list)) {
Set<String> homeIds = list.stream().map(UserWarnNameListResultDTO::getHomeId).collect(Collectors.toSet());
Result<List<HouseInfoDTO>> houseInfoRes = govOrgOpenFeignClient.queryListHouseInfo(homeIds, formDTO.getCustomerId());
if (!houseInfoRes.success() || CollectionUtils.isEmpty(houseInfoRes.getData())){
throw new EpmetException("查询居民所属房屋失败...");
}
Map<String, HouseInfoDTO> houseMap = houseInfoRes.getData().stream().collect(Collectors.toMap(HouseInfoDTO::getHomeId, Function.identity()));
list.forEach(item -> {
HouseInfoDTO houseInfo = houseMap.get(item.getHomeId());
if (null != houseInfo) {
item.setUnitName(houseInfo.getUnitName());
item.setDoorName(houseInfo.getDoorName());
}
});
}
return new PageData<>(list, pageInfo.getTotal());
}
@Override
public List<IcStatsResiResultDTO> list(String customerId,String id, String level) {
//获取所有配置类项 getshow

4
epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml

@ -153,6 +153,10 @@
<select id="userWarnListDTO" resultType="com.epmet.dto.result.UserWarnNameListResultDTO">
select
BUILD_ID as buildingId,
UNIT_ID,
HOME_ID,
MOBILE,
ID_CARD,
name as residentName,
ID AS userId
from ic_resi_user

Loading…
Cancel
Save