Browse Source

Merge remote-tracking branch 'origin/dev_areacode_dict' into dev_areaCode

# Conflicts:
#	epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java
#	epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java
#	epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java
dev_shibei_match
yinzuomei 5 years ago
parent
commit
da4e58bee7
  1. 18
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/commonservice/AddAreaCodeDictResultDTO.java
  2. 15
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java
  3. 3
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java
  4. 13
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java
  5. 5
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/AreaCodeChildDTO.java
  6. 32
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/AddAreaCodeDictFormDTO.java
  7. 10
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java
  8. 5
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/fallback/EpmetCommonServiceOpenFeignClientFallback.java
  9. 14
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/AreaCodeController.java
  10. 6
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/AreaCodeChildDao.java
  11. 1
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/AreaCodeDao.java
  12. 10
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/AreaCodeService.java
  13. 84
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/AreaCodeServiceImpl.java
  14. 36
      epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/AreaCodeChildDao.xml
  15. 6
      epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/AreaCodeDao.xml

18
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/commonservice/AddAreaCodeDictResultDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto.result.commonservice;
import lombok.Data;
import java.io.Serializable;
/**
* 003新增街道或者社区地区编码 入参
*
* @author yinzuomei@elink-cn.com
* @date 2021/2/5 17:39
*/
@Data
public class AddAreaCodeDictResultDTO implements Serializable {
private static final long serialVersionUID = 7505566589581480619L;
private String code;
}

15
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java

@ -3,8 +3,10 @@ package com.epmet.datareport.controller.screen;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.datareport.service.evaluationindex.screen.AgencyService;
import com.epmet.dto.form.AddAreaCodeDictFormDTO;
import com.epmet.dto.form.AreaCodeDictFormDTO;
import com.epmet.dto.result.AreaCodeDictResultDTO;
import com.epmet.dto.result.commonservice.AddAreaCodeDictResultDTO;
import com.epmet.dto.result.plugins.AgencyNodeDTO;
import com.epmet.evaluationindex.screen.dto.form.CompartmentByBizTypeFormDTO;
import com.epmet.evaluationindex.screen.dto.form.CompartmentFormDTO;
@ -29,7 +31,6 @@ public class AgencyController {
@Autowired
private AgencyService agencyService;
/**
* @param
* @Description 1组织机构树 只返回 is_display = '1'
@ -83,6 +84,18 @@ public class AgencyController {
return new Result<List<AreaCodeDictResultDTO>>().ok(agencyService.areaCodeDictTree(formDTO));
}
/**
* @return com.epmet.commons.tools.utils.Result
* @param
* @author yinzuomei
* @description 003新增街道或者社区地区编码
* @Date 2021/2/5 17:39
**/
@PostMapping("addstreetcomm")
public Result<AddAreaCodeDictResultDTO> addStreetCommAreaCode(@RequestBody AddAreaCodeDictFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO);
return new Result<AddAreaCodeDictResultDTO>().ok(agencyService.addStreetCommAreaCode(formDTO));
}
/**
* @param agencyId
* @author yinzuomei

3
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java

@ -1,7 +1,9 @@
package com.epmet.datareport.service.evaluationindex.screen;
import com.epmet.dto.form.AddAreaCodeDictFormDTO;
import com.epmet.dto.form.AreaCodeDictFormDTO;
import com.epmet.dto.result.AreaCodeDictResultDTO;
import com.epmet.dto.result.commonservice.AddAreaCodeDictResultDTO;
import com.epmet.dto.result.ScreenCustomerAgencyDTO;
import com.epmet.dto.result.plugins.AgencyNodeDTO;
import com.epmet.evaluationindex.screen.dto.form.CompartmentByBizTypeFormDTO;
@ -49,6 +51,7 @@ public interface AgencyService {
*/
List<AreaCodeDictResultDTO> areaCodeDictTree(AreaCodeDictFormDTO formDTO);
AddAreaCodeDictResultDTO addStreetCommAreaCode(AddAreaCodeDictFormDTO formDTO);
/**
* @param agencyId
* @author yinzuomei

13
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java

@ -10,8 +10,10 @@ import com.epmet.constant.DataSourceConstant;
import com.epmet.datareport.dao.evaluationindex.screen.ScreenCustomerAgencyDao;
import com.epmet.datareport.dao.evaluationindex.screen.ScreenCustomerGridDao;
import com.epmet.datareport.service.evaluationindex.screen.AgencyService;
import com.epmet.dto.form.AddAreaCodeDictFormDTO;
import com.epmet.dto.form.AreaCodeDictFormDTO;
import com.epmet.dto.result.AreaCodeDictResultDTO;
import com.epmet.dto.result.commonservice.AddAreaCodeDictResultDTO;
import com.epmet.dto.result.ScreenCustomerAgencyDTO;
import com.epmet.dto.result.plugins.AgencyNodeDTO;
import com.epmet.evaluationindex.screen.constant.ScreenConstant;
@ -256,6 +258,17 @@ public class AgencyServiceImpl implements AgencyService {
return new ArrayList<>();
}
@Override
public AddAreaCodeDictResultDTO addStreetCommAreaCode(AddAreaCodeDictFormDTO formDTO) {
Result<String> res = commonServiceOpenFeignClient.addStreetCommAreaCode(formDTO);
if (res.success() && null != res.getData()) {
AddAreaCodeDictResultDTO resultDTO = new AddAreaCodeDictResultDTO();
resultDTO.setCode(res.getData());
return resultDTO;
}
throw new RenException(res.getMsg() + res.getInternalMsg());
}
/**
* @param agencyId
* @author yinzuomei

5
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/AreaCodeChildDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
@ -36,7 +37,7 @@ public class AreaCodeChildDTO implements Serializable {
/**
* 主键
*/
private Integer id;
private String id;
/**
* 省份code

32
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/AddAreaCodeDictFormDTO.java

@ -0,0 +1,32 @@
package com.epmet.dto.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 003新增街道或者社区地区编码 入参
*
* @author yinzuomei@elink-cn.com
* @date 2021/2/5 17:39
*/
@Data
public class AddAreaCodeDictFormDTO implements Serializable {
/**
* 街道或者社区所属的上一级areaCode
*/
@NotBlank(message = "parentAreaCode不能为空")
private String parentAreaCode;
/**
* 新增的街道或者社区名称
*/
@NotBlank(message = "name不能为空")
private String name;
/**
* 传入此列时代表修改名称
*/
private String code;
}

10
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java

@ -6,6 +6,7 @@ import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.feign.fallback.EpmetCommonServiceOpenFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -103,4 +104,13 @@ public interface EpmetCommonServiceOpenFeignClient {
*/
@PostMapping("commonservice/areacode/areacodedicttree")
Result<List<AreaCodeDictResultDTO>> areaCodeDictTree(@RequestBody AreaCodeDictFormDTO formDTO);
/**
* @param formDTO
* @author yinzuomei
* @description 003新增街道或者社区地区编码
* @Date 2021/2/5 17:39
**/
@PostMapping(value = "commonservice/areacode/addstreetcommareacode", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<String> addStreetCommAreaCode(@RequestBody AddAreaCodeDictFormDTO formDTO);
}

5
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/fallback/EpmetCommonServiceOpenFeignClientFallback.java

@ -84,4 +84,9 @@ public class EpmetCommonServiceOpenFeignClientFallback implements EpmetCommonSer
public Result<List<AreaCodeDictResultDTO>> areaCodeDictTree(AreaCodeDictFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "areaCodeDictTree", formDTO);
}
@Override
public Result<String> addStreetCommAreaCode(AddAreaCodeDictFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "addStreetCommAreaCode", formDTO);
}
}

14
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/AreaCodeController.java

@ -22,9 +22,10 @@ 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.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.AreaCodeDTO;
import com.epmet.dto.form.AddAreaCodeDictFormDTO;
import com.epmet.dto.form.AreaCodeDictFormDTO;
import com.epmet.dto.result.AreaCodeDictResultDTO;
import com.epmet.service.AreaCodeService;
@ -95,4 +96,15 @@ public class AreaCodeController {
return new Result<List<AreaCodeDictResultDTO>>().ok(areaCodeService.areaCodeDictTreePlus(formDTO));
}
/**
* @param formDTO
* @author yinzuomei
* @description 003新增街道或者社区地区编码
* @Date 2021/2/5 17:39
**/
@PostMapping("addstreetcommareacode")
Result<String> addStreetCommAreaCode(@RequestBody AddAreaCodeDictFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
return new Result<String>().ok(areaCodeService.addStreetCommAreaCode(formDTO));
}
}

6
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/AreaCodeChildDao.java

@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.AreaCodeChildDTO;
import com.epmet.entity.AreaCodeChildEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -35,4 +36,9 @@ public interface AreaCodeChildDao extends BaseDao<AreaCodeChildEntity> {
List<AreaCodeChildDTO> selectAllChild();
AreaCodeChildDTO selectByCode(@Param("code") String code);
List<AreaCodeChildDTO> selectByPCodeAndName(@Param("parentAreaCode") String parentAreaCode, @Param("name") String name);
AreaCodeChildDTO selectMaxChild(@Param("parentAreaCode") String parentAreaCode);
}

1
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/dao/AreaCodeDao.java

@ -35,4 +35,5 @@ public interface AreaCodeDao extends BaseDao<AreaCodeEntity> {
List<AreaCodeDTO> selectAllArea();
AreaCodeDTO selectByCountyCode(String countyCode);
}

10
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/AreaCodeService.java

@ -20,10 +20,10 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.AreaCodeDTO;
import com.epmet.dto.form.AddAreaCodeDictFormDTO;
import com.epmet.dto.form.AreaCodeDictFormDTO;
import com.epmet.dto.result.AreaCodeDictResultDTO;
import com.epmet.entity.AreaCodeEntity;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Map;
@ -105,4 +105,12 @@ public interface AreaCodeService extends BaseService<AreaCodeEntity> {
List<AreaCodeDictResultDTO> areaCodeDictTree(AreaCodeDictFormDTO formDTO);
List<AreaCodeDictResultDTO> areaCodeDictTreePlus(AreaCodeDictFormDTO formDTO);
/**
* @param formDTO
* @author yinzuomei
* @description 003新增街道或者社区地区编码
* @Date 2021/2/5 17:39
**/
String addStreetCommAreaCode(AddAreaCodeDictFormDTO formDTO);
}

84
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/AreaCodeServiceImpl.java

@ -17,12 +17,14 @@
package com.epmet.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSON;
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.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
@ -31,11 +33,14 @@ import com.epmet.dao.AreaCodeChildDao;
import com.epmet.dao.AreaCodeDao;
import com.epmet.dto.AreaCodeChildDTO;
import com.epmet.dto.AreaCodeDTO;
import com.epmet.dto.form.AddAreaCodeDictFormDTO;
import com.epmet.dto.form.AreaCodeDictFormDTO;
import com.epmet.dto.result.AreaCodeDictResultDTO;
import com.epmet.entity.AreaCodeEntity;
import com.epmet.redis.AreaCodeRedis;
import com.epmet.service.AreaCodeChildService;
import com.epmet.service.AreaCodeService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -51,6 +56,7 @@ import java.util.stream.Collectors;
* @author generator generator@elink-cn.com
* @since v1.0.0 2021-01-07
*/
@Slf4j
@Service
public class AreaCodeServiceImpl extends BaseServiceImpl<AreaCodeDao, AreaCodeEntity> implements AreaCodeService {
@ -58,7 +64,8 @@ public class AreaCodeServiceImpl extends BaseServiceImpl<AreaCodeDao, AreaCodeEn
private AreaCodeRedis areaCodeRedis;
@Autowired
private AreaCodeChildDao childDao;
@Autowired
private AreaCodeChildService areaCodeChildService;
@Override
public PageData<AreaCodeDTO> page(Map<String, Object> params) {
IPage<AreaCodeEntity> page = baseDao.selectPage(
@ -554,4 +561,79 @@ public class AreaCodeServiceImpl extends BaseServiceImpl<AreaCodeDao, AreaCodeEn
}
return threeDto;
}
/**
* @param formDTO
* @author yinzuomei
* @description 003新增街道或者社区地区编码
* @Date 2021/2/5 17:39
**/
@Override
public String addStreetCommAreaCode(AddAreaCodeDictFormDTO formDTO) {
String originalParentCode = formDTO.getParentAreaCode().replaceAll("_UD", "");
if (originalParentCode.length() < NumConstant.SIX) {
throw new RenException("目前只允许添加街道或社区");
}
if (StringUtils.isNotBlank(formDTO.getCode())) {
AreaCodeChildDTO areaCodeChildDTO = childDao.selectByCode(formDTO.getCode().trim());
if (null == areaCodeChildDTO) {
throw new RenException("code不存在");
}
areaCodeChildDTO.setName(formDTO.getName().trim());
areaCodeChildService.update(areaCodeChildDTO);
return areaCodeChildDTO.getCode();
}
AreaCodeChildDTO parent = childDao.selectByCode(formDTO.getParentAreaCode().trim());
if (null == parent) {
AreaCodeDTO areaCodeDTOP = baseDao.selectByCountyCode(formDTO.getParentAreaCode().trim());
if (null == areaCodeDTOP) {
throw new RenException("parentAreaCode不存在");
}
}
//同一级不允许重名
List<AreaCodeChildDTO> list = childDao.selectByPCodeAndName(formDTO.getParentAreaCode().trim(), formDTO.getName().trim());
if (CollUtil.isNotEmpty(list)) {
throw new RenException("name已存在");
}
AreaCodeChildDTO areaCodeChildDTO = new AreaCodeChildDTO();
areaCodeChildDTO.setName(formDTO.getName().trim());
areaCodeChildDTO.setPCode(formDTO.getParentAreaCode().trim());
if (formDTO.getParentAreaCode().length() == NumConstant.SIX) {
//如果是增加街道
areaCodeChildDTO.setLevel(NumConstant.FOUR);
} else {
areaCodeChildDTO.setLevel(null != parent && null != parent.getLevel() ? parent.getLevel() + 1 : null);
}
//获取子级中最大的编码
AreaCodeChildDTO maxChildDto = childDao.selectMaxChild(formDTO.getParentAreaCode().trim());
if (null == maxChildDto) {
//默认添加001
areaCodeChildDTO.setCode(formDTO.getParentAreaCode().concat("001_UD"));
} else {
//去掉_UD +1赋值;370124001225_UD 锦源社区
/*String[] codeArr = maxChildDto.getCode().split(StrConstant.UNDER_LINE);
long code = Long.parseLong(codeArr[NumConstant.ZERO]) + NumConstant.ONE;
areaCodeChildDTO.setCode(String.valueOf(code).concat("_UD"));*/
String subStr = maxChildDto.getCode().replaceAll(formDTO.getParentAreaCode(), "");
String[] codeArr = subStr.split(StrConstant.UNDER_LINE);
long num = Long.parseLong(codeArr[NumConstant.ZERO]) + NumConstant.ONE;
String numStr = String.valueOf(num);
String temp = "";
if (numStr.length() == 2) {
temp = "0".concat(numStr);
} else if (numStr.length() == 1) {
temp = "00".concat(numStr);
} else {
temp = numStr;
}
areaCodeChildDTO.setCode(formDTO.getParentAreaCode().concat(temp).concat("_UD"));
/*log.info("最大="+maxChildDto.getCode()+";去初父级("+formDTO.getParentAreaCode()+"):"+subStr);
log.info("数字位+1="+num);
log.info("temp="+temp);*/
}
//保存到area_code_child表
areaCodeChildService.save(areaCodeChildDTO);
return areaCodeChildDTO.getCode();
}
}

36
epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/AreaCodeChildDao.xml

@ -7,4 +7,40 @@
<select id="selectAllChild" resultType="com.epmet.dto.AreaCodeChildDTO">
select * from area_code_child
</select>
<select id="selectByCode" resultType="com.epmet.dto.AreaCodeChildDTO">
SELECT
*
FROM
area_code_child m
WHERE
m.DEL_FLAG = '0'
and m.`CODE`=#{code}
</select>
<!-- 根据p_code、name查询社区列表 -->
<select id="selectByPCodeAndName" resultType="com.epmet.dto.AreaCodeChildDTO">
SELECT
*
FROM
area_code_child m
WHERE
m.DEL_FLAG = '0'
AND m.P_CODE = #{parentAreaCode}
and m.`NAME`=#{name}
</select>
<!-- 根据p_code查询下一级中最大的编码 -->
<select id="selectMaxChild" resultType="com.epmet.dto.AreaCodeChildDTO">
SELECT
*
FROM
area_code_child m
WHERE
m.DEL_FLAG = '0'
AND m.P_CODE = #{parentAreaCode}
ORDER BY
m.`CODE` DESC
LIMIT 1
</select>
</mapper>

6
epmet-module/epmet-common-service/common-service-server/src/main/resources/mapper/AreaCodeDao.xml

@ -5,6 +5,10 @@
<select id="selectAllArea" resultType="com.epmet.dto.AreaCodeDTO">
select * from area_code;
select * from area_code
</select>
<select id="selectByCountyCode" resultType="com.epmet.dto.AreaCodeDTO">
select * from area_code m where m.COUNTY_CODE=#{countyCode}
</select>
</mapper>
Loading…
Cancel
Save