yinzuomei 3 years ago
parent
commit
63b31e8618
  1. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java
  2. 12
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPolicyDTO.java
  3. 10
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPolicyRuleDTO.java
  4. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/policy/IcPolicyRuleFormDTO.java
  5. 28
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPolicyController.java
  6. 5
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPolicyService.java
  7. 81
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPolicyServiceImpl.java

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java

@ -27,6 +27,7 @@ public enum DictTypeEnum {
IC_EVENT_SOURCE_TYPE("ic_event_source_type","事件管理",19), IC_EVENT_SOURCE_TYPE("ic_event_source_type","事件管理",19),
IC_SERVICE_TYPE("ic_service_type","服务类别",20), IC_SERVICE_TYPE("ic_service_type","服务类别",20),
IC_DANGER_TYPE("ic_danger_type","危化品种类",24), IC_DANGER_TYPE("ic_danger_type","危化品种类",24),
POLICY_LEVEL("policy_level","政策级别",25),
; ;
private final String code; private final String code;

12
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPolicyDTO.java

@ -1,10 +1,13 @@
package com.epmet.dto; package com.epmet.dto;
import com.epmet.commons.tools.dto.form.FileCommonDTO;
import com.epmet.dto.form.policy.IcPolicyRuleFormDTO;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
@ -30,6 +33,11 @@ public class IcPolicyDTO implements Serializable {
*/ */
private String policyLevel; private String policyLevel;
/**
* 政策级别0市级1区级2街道级
*/
private String policyLevelName;
/** /**
* 生效起止日期 * 生效起止日期
*/ */
@ -52,5 +60,9 @@ public class IcPolicyDTO implements Serializable {
*/ */
private String content; private String content;
//以下三个详情接口返回
private List<IcPolicyCategoryDTO> categoryList;
private List<FileCommonDTO> attachmentList;
private List<IcPolicyRuleFormDTO> ruleList;
} }

10
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPolicyRuleDTO.java

@ -1,8 +1,10 @@
package com.epmet.dto; package com.epmet.dto;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.Data;
/** /**
@ -44,31 +46,37 @@ public class IcPolicyRuleDTO implements Serializable {
/** /**
* 删除标记 0未删除1已删除 * 删除标记 0未删除1已删除
*/ */
@JsonIgnore
private String delFlag; private String delFlag;
/** /**
* 乐观锁 * 乐观锁
*/ */
@JsonIgnore
private Integer revision; private Integer revision;
/** /**
* 创建人 * 创建人
*/ */
@JsonIgnore
private String createdBy; private String createdBy;
/** /**
* 创建时间 * 创建时间
*/ */
@JsonIgnore
private Date createdTime; private Date createdTime;
/** /**
* 更新人 * 更新人
*/ */
@JsonIgnore
private String updatedBy; private String updatedBy;
/** /**
* 更新时间 * 更新时间
*/ */
@JsonIgnore
private Date updatedTime; private Date updatedTime;
} }

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/policy/IcPolicyRuleFormDTO.java

@ -33,5 +33,10 @@ public class IcPolicyRuleFormDTO implements Serializable {
* 统计信息 * 统计信息
*/ */
private List<IcPolicyRuleDetailDTO> statRuleList; private List<IcPolicyRuleDetailDTO> statRuleList;
/**
* ruleId
*/
private String id;
} }

28
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPolicyController.java

@ -8,6 +8,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.IcPolicyDTO; import com.epmet.dto.IcPolicyDTO;
import com.epmet.dto.IcPolicyItemResultDTO; import com.epmet.dto.IcPolicyItemResultDTO;
import com.epmet.dto.IcPolicyRuleDTO;
import com.epmet.dto.form.policy.IcPolicyFormDTO; import com.epmet.dto.form.policy.IcPolicyFormDTO;
import com.epmet.dto.form.policy.IcPolicyPageFormDTO; import com.epmet.dto.form.policy.IcPolicyPageFormDTO;
import com.epmet.service.IcPolicyService; import com.epmet.service.IcPolicyService;
@ -74,7 +75,7 @@ public class IcPolicyController {
} }
/** /**
* * 政策列表
* @param tokenDto * @param tokenDto
* @param formDTO * @param formDTO
* @return * @return
@ -88,5 +89,30 @@ public class IcPolicyController {
return new Result<PageData<IcPolicyDTO>>().ok(page); return new Result<PageData<IcPolicyDTO>>().ok(page);
} }
/**
* 细则列表
* @param customerId
* @param policyId
* @return
*/
@PostMapping("rulelist/{policyId}")
public Result<List<IcPolicyRuleDTO>> ruleList(@RequestHeader("customerId") String customerId,@PathVariable("policyId") String policyId) {
return new Result<List<IcPolicyRuleDTO>>().ok(icPolicyService.ruleList(customerId,policyId));
}
/**
* 删除政策
* @param policyId
* @return
*/
@PostMapping("delete/{policyId}")
public Result deletePolicy(@PathVariable("policyId") String policyId) {
icPolicyService.deleteById(policyId);
return new Result<>();
}
@PostMapping("detail/{policyId}")
public Result<IcPolicyDTO> policyDetail(@LoginUser TokenDto tokenDto,@PathVariable("policyId") String policyId) {
return new Result<IcPolicyDTO>().ok(icPolicyService.policyDetail(tokenDto.getCustomerId(),policyId));
}
} }

5
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPolicyService.java

@ -4,6 +4,7 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IcPolicyDTO; import com.epmet.dto.IcPolicyDTO;
import com.epmet.dto.IcPolicyItemResultDTO; import com.epmet.dto.IcPolicyItemResultDTO;
import com.epmet.dto.IcPolicyRuleDTO;
import com.epmet.dto.form.policy.IcPolicyFormDTO; import com.epmet.dto.form.policy.IcPolicyFormDTO;
import com.epmet.dto.form.policy.IcPolicyPageFormDTO; import com.epmet.dto.form.policy.IcPolicyPageFormDTO;
import com.epmet.entity.IcPolicyEntity; import com.epmet.entity.IcPolicyEntity;
@ -39,4 +40,8 @@ public interface IcPolicyService extends BaseService<IcPolicyEntity> {
* @return * @return
*/ */
PageData<IcPolicyDTO> policyList(IcPolicyPageFormDTO formDTO); PageData<IcPolicyDTO> policyList(IcPolicyPageFormDTO formDTO);
List<IcPolicyRuleDTO> ruleList(String customerId,String policyId);
IcPolicyDTO policyDetail(String customerId,String policyId);
} }

81
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPolicyServiceImpl.java

@ -1,35 +1,43 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.Constant; import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.form.FileCommonDTO; import com.epmet.commons.tools.dto.form.FileCommonDTO;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.enums.DictTypeEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.*; import com.epmet.dao.*;
import com.epmet.dto.IcPolicyCategoryDTO; import com.epmet.dto.IcPolicyCategoryDTO;
import com.epmet.dto.IcPolicyDTO; import com.epmet.dto.IcPolicyDTO;
import com.epmet.dto.IcPolicyItemResultDTO; import com.epmet.dto.IcPolicyItemResultDTO;
import com.epmet.dto.IcPolicyRuleDTO;
import com.epmet.dto.form.policy.IcPolicyFormDTO; import com.epmet.dto.form.policy.IcPolicyFormDTO;
import com.epmet.dto.form.policy.IcPolicyPageFormDTO; import com.epmet.dto.form.policy.IcPolicyPageFormDTO;
import com.epmet.dto.form.policy.IcPolicyRuleDetailDTO; import com.epmet.dto.form.policy.IcPolicyRuleDetailDTO;
import com.epmet.dto.form.policy.IcPolicyRuleFormDTO; import com.epmet.dto.form.policy.IcPolicyRuleFormDTO;
import com.epmet.entity.*; import com.epmet.entity.*;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.service.IcPolicyService; import com.epmet.service.IcPolicyService;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 政策表 * 政策表
@ -48,7 +56,8 @@ public class IcPolicyServiceImpl extends BaseServiceImpl<IcPolicyDao, IcPolicyEn
private HeartAttachmentDao heartAttachmentDao; private HeartAttachmentDao heartAttachmentDao;
@Autowired @Autowired
private IcPolicyRuleDetailDao icPolicyRuleDetailDao; private IcPolicyRuleDetailDao icPolicyRuleDetailDao;
@Autowired
private EpmetAdminOpenFeignClient adminOpenFeignClient;
/** /**
* 房屋信息统计信息查询有哪些可选项 * 房屋信息统计信息查询有哪些可选项
@ -211,7 +220,77 @@ public class IcPolicyServiceImpl extends BaseServiceImpl<IcPolicyDao, IcPolicyEn
formDTO.setAgencyId(staffInfo.getAgencyId()); formDTO.setAgencyId(staffInfo.getAgencyId());
PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.getIsPage()); PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.getIsPage());
List<IcPolicyDTO> list = baseDao.policyList(formDTO); List<IcPolicyDTO> list = baseDao.policyList(formDTO);
if (CollectionUtils.isNotEmpty(list)) {
for (IcPolicyDTO icPolicyDTO : list) {
// 查询字典表
Result<Map<String, String>> levelRes = adminOpenFeignClient.dictMap(DictTypeEnum.POLICY_LEVEL.getCode());
Map<String, String> levelMap = levelRes.success() && MapUtils.isNotEmpty(levelRes.getData()) ? levelRes.getData() : new HashMap<>();
icPolicyDTO.setPolicyLevelName(MapUtils.isNotEmpty(levelMap) && levelMap.containsKey(icPolicyDTO.getPolicyLevel()) ? levelMap.get(icPolicyDTO.getPolicyLevel()) : StrConstant.EPMETY_STR);
}
}
PageInfo<IcPolicyDTO> pageInfo = new PageInfo<>(list); PageInfo<IcPolicyDTO> pageInfo = new PageInfo<>(list);
return new PageData<>(list, pageInfo.getTotal()); return new PageData<>(list, pageInfo.getTotal());
} }
@Override
public List<IcPolicyRuleDTO> ruleList(String customerId, String policyId) {
LambdaQueryWrapper<IcPolicyRuleEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(IcPolicyRuleEntity::getCustomerId, customerId)
.eq(IcPolicyRuleEntity::getIcPolicyId, policyId)
.orderByAsc(IcPolicyRuleEntity::getSort);
List<IcPolicyRuleEntity> list = icPolicyRuleDao.selectList(wrapper);
return ConvertUtils.sourceToTarget(list, IcPolicyRuleDTO.class);
}
@Override
public IcPolicyDTO policyDetail(String customerId, String policyId) {
IcPolicyEntity policyEntity = baseDao.selectById(policyId);
IcPolicyDTO icPolicyDTO = ConvertUtils.sourceToTarget(policyEntity, IcPolicyDTO.class);
if (null != icPolicyDTO) {
icPolicyDTO.setPolicyId(policyId);
LambdaQueryWrapper<HeartAttachmentEntity> attWrapper = new LambdaQueryWrapper<>();
attWrapper.eq(HeartAttachmentEntity::getBusinessId, policyId)
.orderByAsc(HeartAttachmentEntity::getSort);
List<HeartAttachmentEntity> attList = heartAttachmentDao.selectList(attWrapper);
icPolicyDTO.setAttachmentList(CollectionUtils.isNotEmpty(attList) ? ConvertUtils.sourceToTarget(attList, FileCommonDTO.class) : new ArrayList<>());
LambdaQueryWrapper<IcPolicyCategoryEntity> cateWrapper = new LambdaQueryWrapper<>();
cateWrapper.eq(IcPolicyCategoryEntity::getIcPolicyId, policyId);
List<IcPolicyCategoryEntity> cateList = icPolicyCategoryDao.selectList(cateWrapper);
icPolicyDTO.setCategoryList(CollectionUtils.isNotEmpty(cateList) ? ConvertUtils.sourceToTarget(cateList, IcPolicyCategoryDTO.class) : new ArrayList<>());
List<IcPolicyRuleDTO> ruleDTOList = ruleList(customerId, policyId);
List<IcPolicyRuleFormDTO> ruleList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(ruleDTOList)) {
ruleList = ConvertUtils.sourceToTarget(ruleDTOList, IcPolicyRuleFormDTO.class);
for (IcPolicyRuleFormDTO rule : ruleList) {
LambdaQueryWrapper<IcPolicyRuleDetailEntity> ruleDetailWrapper = new LambdaQueryWrapper<>();
ruleDetailWrapper.eq(IcPolicyRuleDetailEntity::getRuleId, rule.getId())
.eq(IcPolicyRuleDetailEntity::getGroupType, "resi")
.orderByAsc(IcPolicyRuleDetailEntity::getSort);
List<IcPolicyRuleDetailEntity> resiList = icPolicyRuleDetailDao.selectList(ruleDetailWrapper);
List<IcPolicyRuleDetailDTO> resiRuleList = CollectionUtils.isNotEmpty(resiList) ? ConvertUtils.sourceToTarget(resiList, IcPolicyRuleDetailDTO.class) : new ArrayList<>();
rule.setResiRuleList(resiRuleList);
ruleDetailWrapper.eq(IcPolicyRuleDetailEntity::getRuleId, rule.getId())
.eq(IcPolicyRuleDetailEntity::getGroupType, "house")
.orderByAsc(IcPolicyRuleDetailEntity::getSort);
List<IcPolicyRuleDetailEntity> houseList = icPolicyRuleDetailDao.selectList(ruleDetailWrapper);
List<IcPolicyRuleDetailDTO> houseRuleList = CollectionUtils.isNotEmpty(houseList) ? ConvertUtils.sourceToTarget(houseList, IcPolicyRuleDetailDTO.class) : new ArrayList<>();
rule.setHouseRuleList(houseRuleList);
ruleDetailWrapper.eq(IcPolicyRuleDetailEntity::getRuleId, rule.getId())
.eq(IcPolicyRuleDetailEntity::getGroupType, "stat")
.orderByAsc(IcPolicyRuleDetailEntity::getSort);
List<IcPolicyRuleDetailEntity> statList = icPolicyRuleDetailDao.selectList(ruleDetailWrapper);
List<IcPolicyRuleDetailDTO> statRuleList = CollectionUtils.isNotEmpty(statList) ? ConvertUtils.sourceToTarget(statList, IcPolicyRuleDetailDTO.class) : new ArrayList<>();
;
rule.setStatRuleList(statRuleList);
}
}
icPolicyDTO.setRuleList(ruleList);
}
return icPolicyDTO;
}
} }
Loading…
Cancel
Save