manailin
2021-06-12 7a2e1fd9e34ab58caf9fa8565e94dd9fcd174a1a
Merge remote-tracking branch 'origin/test_excel610' into test_excel610

# Conflicts:
# springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngBuildingExcelListen.java
# springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
# springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActBuildingServiceImpl.java
13个文件已修改
7个文件已添加
501 ■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/BcDictionaryConstants.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulCultureLevelEnum.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulMarriageEnum.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulPoliticalOutlookEnum.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngBuildingExcelListen.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/BcDictionaryVO.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationServeExcelVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/BuildingApi.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/DictionaryApi.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/BcDictionaryItemDAO.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/BcDictionaryItemDO.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationDO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationHouseUserDO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/BcDictionaryService.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActBuildingService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BcDictionaryServiceImpl.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActBuildingServiceImpl.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/BcDictionaryConstants.java
New file
@@ -0,0 +1,49 @@
package com.panzhihua.common.constants;
/** 字典表key
 * @author xyh
 * @date 2021/6/11 15:53
 */
public class  BcDictionaryConstants {
    /**
     * 家庭关系
     */
    public static final String FAMILY = "family";
    /**
     * 民族
     */
    public static final String NATION = "nation";
    /**
     * 性别
     */
    public static final String SEX = "sex";
    /**
     * 婚姻状况
     */
    public static final String MARRY = "marry";
    /**
     * 国家
     */
    public static final String COUNTRY = "country";
    /**
     * 学历
     */
    public static final String EDUCATION = "education";
    /**
     * 生育史
     */
    public static final String CHILDBEARING_HISTORY = "childbearing history";
    /**
     * 职业
     */
    public static final String PROFESSION = "profession";
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulCultureLevelEnum.java
@@ -35,7 +35,7 @@
                return item.getCode();
            }
        }
        return -1;
        return QT.getCode();
    }
    public static String getCnDescByName(Integer code) {
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulMarriageEnum.java
@@ -10,12 +10,17 @@
@Getter
public enum PopulMarriageEnum
{
    WH(1, "未婚"),
    YH(2, "已婚"),
    LY(3, "离异"),
    SO(4, "丧偶"),
    FJ(5, "分居"),
    QT(6, "其他");
    WH(10, "未婚"),
    YH(20, "已婚"),
    CH(21, "初婚"),
    ZH(22, "再婚"),
    FH(23, "复婚"),
    SO(30, "丧偶"),
    LH(40, "离婚"),
    FJ(50, "分居"),
    QT(90, "其他"),
    WSM(90, "未说明的婚姻状况");
    private final Integer code;
    private final String name;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulPoliticalOutlookEnum.java
@@ -38,7 +38,7 @@
                return item.getCode();
            }
        }
        return -1;
        return THE_MASSES.getCode();
    }
    public static String getCnDescByName(Integer code) {
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngBuildingExcelListen.java
@@ -10,7 +10,6 @@
import com.panzhihua.common.model.vos.community.ComMngPopulationImportErrorVO;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.service.grid.GridService;
import com.panzhihua.common.utlis.ListUtils;
import com.panzhihua.common.utlis.Snowflake;
import lombok.extern.slf4j.Slf4j;
@@ -18,7 +17,6 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * @description: 社区楼栋导入监听
@@ -26,7 +24,6 @@
 */
@Slf4j
public class ComMngBuildingExcelListen extends AnalysisEventListener<Map<Integer, String>> {
    private CommunityService communityService;
    private GridService gridService;
@@ -132,8 +129,8 @@
            }
            //根据list中的IdCard城市来去重
            List<ComMngBuildingExcelVO> newVoList = voList.stream().filter(ListUtils.distinctByKey(ComMngBuildingExcelVO::getName)).collect(Collectors.toList());
            R r = communityService.listSaveBuildingExcelVO(newVoList, communityId, 123141L);
//            List<ComMngBuildingExcelVO> newVoList = voList.stream().filter(ListUtils.distinctByKey(ComMngBuildingExcelVO::getName)).collect(Collectors.toList());
            R r = communityService.listSaveBuildingExcelVO(voList, communityId);
            if (!R.isOk(r)) {
                String errMsg = r.getMsg();
                List<ComMngPopulationImportErrorVO> errorList = JSON.parseArray(errMsg, ComMngPopulationImportErrorVO.class);
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java
@@ -3,25 +3,20 @@
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import com.panzhihua.common.constants.BcDictionaryConstants;
import com.panzhihua.common.enums.*;
import com.panzhihua.common.exceptions.ServiceException;
import com.panzhihua.common.model.vos.BcDictionaryVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComMngPopulationImportErrorVO;
import com.panzhihua.common.model.vos.community.ComMngPopulationServeExcelVO;
import com.panzhihua.common.model.vos.community.ComMngVillageServeExcelVO;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.utlis.*;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -81,6 +76,15 @@
     * 不是固定的列只能手动处理
     */
    private void saveData() {
        R<List<BcDictionaryVO>> dictionaryR = communityService.listDictionaryByKey(BcDictionaryConstants.FAMILY);
        Map<String,String> dictMap = dictionaryR.getData().stream().collect(Collectors.toMap(BcDictionaryVO::getDictName,BcDictionaryVO::getDictValue));
//        Map<String,Integer> dictMap = new HashMap<>();
//        for(BcDictionaryVO vo : dictionaryR.getData()){
//            dictMap.put(vo.getDictName(),Integer.valueOf(vo.getDictValue()));
//        }
        int index = 2;
        try {
            ArrayList<ComMngPopulationServeExcelVO> voList = Lists.newArrayList();
@@ -100,7 +104,7 @@
                    vo.setName(oneData.get(0));
                    if(StringUtils.isEmpty(oneData.get(1))){
                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                        importErrorVO.setErrorPosition("第" + index + "行,第2列");
                        importErrorVO.setErrorPosition("第" + index + "行,第2列"+oneData.get(1));
                        importErrorVO.setErrorMsg("身份证号不可为空,请填写身份证号");
                        populationImportErrorVOList.add(importErrorVO);
                        index++;
@@ -110,7 +114,7 @@
                    //判断身份证号码位数
                    if(oneData.get(1).length() != 18){
                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                        importErrorVO.setErrorPosition("第" + index + "行,第2列");
                        importErrorVO.setErrorPosition("第" + index + "行,第2列"+oneData.get(1));
                        importErrorVO.setErrorMsg("身份证号位数有误,请检查身份证号码是否正确");
                        populationImportErrorVOList.add(importErrorVO);
                        index++;
@@ -149,16 +153,7 @@
                    vo.setNation(oneData.get(2));
                }
                if(StringUtils.isNotEmpty(oneData.get(3))){
                    Integer isOk = PopulPoliticalOutlookEnum.getCodeByName(oneData.get(3));
                    if(isOk.equals(-1)){
                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                        importErrorVO.setErrorPosition("第" + index + "行,第4列");
                        importErrorVO.setErrorMsg("您填写的政治面貌有误");
                        populationImportErrorVOList.add(importErrorVO);
                        index++;
                        continue;
                    }
                    vo.setPoliticalOutlook(isOk);
                    vo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCodeByName(oneData.get(3)));
                }
                if(StringUtils.isNotEmpty(oneData.get(4))){
                    Integer isOk = PopulHouseUseEnum.getCodeByName(oneData.get(4));
@@ -172,18 +167,42 @@
                    }
                    vo.setIsRent(isOk);
                }
                //TODO 先存中文后期改为枚举
                if(StringUtils.isNotEmpty(oneData.get(5))){
                    Integer isOk = PopulRelationEnum.getCodeByName(oneData.get(5));
                    if(isOk.equals(-1)){
                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                        importErrorVO.setErrorPosition("第" + index + "行,第6列");
                        importErrorVO.setErrorMsg("您填写的与户主关系有误");
                        populationImportErrorVOList.add(importErrorVO);
                        index++;
                        continue;
                    String ra = oneData.get(5);
                    if(Objects.equals(ra,"女儿")){
                        ra = "女";
                    }else if(Objects.equals(ra,"儿子")){
                        ra = "子";
                    }else if(Objects.equals(ra,"大女")){
                        ra = "长女";
                    }else if(Objects.equals(ra,"二女")){
                        ra = "次女";
                    }else if(Objects.equals(ra,"非亲属")){
                        ra = "其他";
                    }else if(Objects.equals(ra,"姐")){
                        ra = "姐姐";
                    }else if(Objects.equals(ra,"户主")){
                        ra = "本人";
                    }else if(Objects.equals(ra,"妻子")){
                        ra = "妻";
                    }else if(Objects.equals(ra,"哥") || Objects.equals(ra,"哥哥")){
                        ra = "兄";
                    }
                    vo.setRelation(isOk);
                    String relation = dictMap.get(ra);
                    if(StringUtils.isEmpty(relation)){
                        vo.setRelationStr(ra);
//                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
//                        importErrorVO.setErrorPosition("第" + index + "行,第6列");
//                        importErrorVO.setErrorMsg("您填写的与户主关系有误");
//                        populationImportErrorVOList.add(importErrorVO);
//                        index++;
//                        continue;
                    }else{
                        vo.setRelation(Integer.valueOf(relation));
                    }
                }
                if(StringUtils.isEmpty(oneData.get(6))){
                    ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
@@ -280,28 +299,41 @@
                    vo.setNativePlace(oneData.get(17).trim());
                }
                if(StringUtils.isNotEmpty(oneData.get(18))){
                    Integer isOk = PopulCultureLevelEnum.getCodeByName(oneData.get(18));
                    if(isOk.equals(-1)){
                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                        importErrorVO.setErrorPosition("第" + index + "行,第19列");
                        importErrorVO.setErrorMsg("您填写的文化程度有误");
                        populationImportErrorVOList.add(importErrorVO);
                        index++;
                        continue;
                    }
                    vo.setCultureLevel(isOk);
                    vo.setCultureLevel(PopulCultureLevelEnum.getCodeByName(oneData.get(18)));
                }
                if(StringUtils.isNotEmpty(oneData.get(19))){
                    Integer isOk = PopulMarriageEnum.getCodeByName(oneData.get(19));
                    if(isOk.equals(-1)){
                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                        importErrorVO.setErrorPosition("第" + index + "行,第20列");
                        importErrorVO.setErrorMsg("您填写的婚姻状况有误");
                        populationImportErrorVOList.add(importErrorVO);
                        index++;
                        continue;
                    String ma = oneData.get(19);
                    if(Objects.equals("已",ma)){
                        ma = "已婚";
                    }else if(Objects.equals("未",ma)){
                        ma = "未婚";
                    }else if(Objects.equals("初",ma)){
                        ma = "初婚";
                    }else if(Objects.equals("再",ma)){
                        ma = "再婚";
                    }else if(Objects.equals("复",ma)){
                        ma = "复婚";
                    }else if(Objects.equals("丧",ma)){
                        ma = "丧偶";
                    }else if(Objects.equals("离",ma)){
                        ma = "离婚";
                    }else if(Objects.equals("分",ma)){
                        ma = "分居";
                    }
                    vo.setMarriage(isOk);
                    Integer isOk = PopulMarriageEnum.getCodeByName(ma);
                    if(isOk.equals(-1)){
                        vo.setMarriageStr(ma);
//                        ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
//                        importErrorVO.setErrorPosition("第" + index + "行,第20列");
//                        importErrorVO.setErrorMsg("您填写的婚姻状况有误");
//                        populationImportErrorVOList.add(importErrorVO);
//                        index++;
//                        continue;
                    }else{
                        vo.setMarriage(isOk);
                    }
                }
                if(StringUtils.isNotEmpty(oneData.get(20))){
                    vo.setHealthy(oneData.get(20).trim());
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/BcDictionaryVO.java
New file
@@ -0,0 +1,23 @@
package com.panzhihua.common.model.vos;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * @author xyh
 * @date 2021/6/11 16:27
 */
@ApiModel("字典项")
@Data
public class BcDictionaryVO implements Serializable {
    @ApiModelProperty(value = "字典项名称")
    private String dictName;
    @ApiModelProperty(value = "字典项值")
    private String dictValue;
    @ApiModelProperty(value = "字典项助记码")
    private String code;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationServeExcelVO.java
@@ -31,6 +31,7 @@
    @ExcelProperty(value = "与户主关系(1.户主 2.配偶 3.子女 4.孙女 5.父母 6.其他)", index = 5)
    private Integer relation;
    private String relationStr;
    @ExcelProperty(value = "街路巷", index = 6)
    private String road;
@@ -74,6 +75,8 @@
    @ExcelProperty(value = "婚姻状况(1.未婚 2.已婚 3.离异 4.丧偶 5.分居 6.其他)", index = 19)
    private Integer marriage;
    private String marriageStr;
    @ExcelProperty(value = "健康状况", index = 20)
    private String healthy;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -17,6 +17,7 @@
import com.panzhihua.common.model.dtos.shop.PageComShopStoreDTO;
import com.panzhihua.common.model.dtos.user.PageInputUserDTO;
import com.panzhihua.common.model.dtos.vaccines.*;
import com.panzhihua.common.model.vos.BcDictionaryVO;
import com.panzhihua.common.model.vos.IPageVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.SystemmanagementConfigVO;
@@ -2735,6 +2736,15 @@
     * @return
     */
    @PostMapping("/building/batchSave")
    R listSaveBuildingExcelVO(@RequestBody List<ComMngBuildingExcelVO> newVoList,@RequestParam("communityId") Long communityId);
    /**
     * 根据字典key查询字典项
     * @param key
     * @return
     */
    @GetMapping("/dictionary/listDictionaryByKey")
    R<List<BcDictionaryVO>> listDictionaryByKey(@RequestParam("key") String key);
    R listSaveBuildingExcelVO(@RequestBody List<ComMngBuildingExcelVO> newVoList,@RequestParam("communityId") Long communityId,@RequestParam("streetId")Long streetId);
    /**
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/BuildingApi.java
@@ -24,8 +24,8 @@
    @PostMapping("/batchSave")
    R listSaveBuildingExcelVO(@RequestBody List<ComMngBuildingExcelVO> newVoList, @RequestParam("communityId") Long communityId, @RequestParam("streetId")Long streetId){
    R listSaveBuildingExcelVO(@RequestBody List<ComMngBuildingExcelVO> newVoList, @RequestParam("communityId") Long communityId){
        return comActBuildingService.batchSaveBuilding(newVoList,communityId,streetId);
        return comActBuildingService.batchSaveBuilding(newVoList,communityId);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/DictionaryApi.java
New file
@@ -0,0 +1,34 @@
package com.panzhihua.service_community.api;
import com.panzhihua.common.model.vos.BcDictionaryVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_community.service.BcDictionaryService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/** 字典
 * @author xyh
 * @date 2021/6/11 16:11
 */
@Slf4j
@RestController
@RequestMapping("/dictionary")
public class DictionaryApi {
    @Resource
    private BcDictionaryService bcDictionaryService;
    /**
     * 根据字典key查询自典项
     * @param key
     * @return
     */
    @GetMapping("/listDictionaryByKey")
    R<List<BcDictionaryVO>> listDictionaryByKey(@RequestParam("key")String key){
        return bcDictionaryService.getDictionaryByKey(key);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/BcDictionaryItemDAO.java
New file
@@ -0,0 +1,24 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.service_community.model.dos.BcDictionaryItemDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
 * 字典项
 * @author xyh
 * @since 2021-06-11
 */
@Mapper
public interface BcDictionaryItemDAO extends BaseMapper<BcDictionaryItemDO> {
    @Select("SELECT d.dict_name,di.dict_value,di.dict_item_name,di.mnemonic_code " +
            "FROM  bc_dictionary d INNER JOIN bc_dictionary_item di ON d.id = di.dict_id " +
            "WHERE di.enabled = 1 AND di.delete_flag = 0 AND  d.enabled = 1 AND d.delete_flag = 0 " +
            "AND d.dict_key = #{key} ")
    List<BcDictionaryItemDO> getDictionaryByKey(@Param("key") String key);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/BcDictionaryItemDO.java
New file
@@ -0,0 +1,89 @@
package com.panzhihua.service_community.model.dos;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
 * 字典项表
 * </p>
 *
 * @author xyh
 * @since 2021-06-11
 */
@Data
@TableName("bc_dictionary_item")
public class BcDictionaryItemDO implements Serializable {
    private static final long serialVersionUID = -7900409296242392578L;
    /**
     * 字典项名
     */
    private String dictItemName;
    /**
     * 字典项值
     */
    private String dictValue;
    /**
     * 助记码
     */
    private String mnemonicCode;
    /**
     * 字典id
     */
    private Long dictId;
    /**
     * 启用状态(0:停用,1:启用)
     */
    private Boolean enabled;
    /**
     * 机构id
     */
    private Long orgPathId;
    /**
     * 排序号
     */
    private Integer sort;
    /**
     * 备注说明
     */
    private String remarks;
    /**
     * 创建者
     */
    private Long createUser;
    /**
     * 创建时间
     */
    private Date createDate;
    /**
     * 修改者
     */
    private Long modifyUser;
    /**
     * 修改时间
     */
    private Date modifyDate;
    /**
     * 删除标识(0:未删除,1:已删除)
     */
    private Boolean deleteFlag;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationDO.java
@@ -134,6 +134,8 @@
     */
    private Integer relation;
    private String relationStr;
    /**
     * 文化程度(1.小学 2.初中 3.高中 4.中专 5.大专 6.本科 7.硕士 8.博士 9.其他)
     */
@@ -144,6 +146,9 @@
     */
    private Integer marriage;
    private String marriageStr;
    /**
     * 健康状况
     */
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationHouseUserDO.java
@@ -41,6 +41,8 @@
     */
    private Integer relation;
    private String relationStr;
    /**
     * 创建时间
     */
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/BcDictionaryService.java
New file
@@ -0,0 +1,22 @@
package com.panzhihua.service_community.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.vos.BcDictionaryVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_community.model.dos.BcDictionaryItemDO;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/11 16:05
 */
public interface BcDictionaryService extends IService<BcDictionaryItemDO> {
    /**
     * 根据字典key 查询字典项
     * @param key
     * @return
     */
    R<List<BcDictionaryVO>> getDictionaryByKey(String key);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActBuildingService.java
@@ -14,5 +14,5 @@
public interface ComActBuildingService extends IService<ComMngBuildingDO> {
    R batchSaveBuilding(List<ComMngBuildingExcelVO> newVoList, Long communityId, Long streetId);
    R batchSaveBuilding(List<ComMngBuildingExcelVO> newVoList, Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BcDictionaryServiceImpl.java
New file
@@ -0,0 +1,36 @@
package com.panzhihua.service_community.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.vos.BcDictionaryVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_community.dao.BcDictionaryItemDAO;
import com.panzhihua.service_community.model.dos.BcDictionaryItemDO;
import com.panzhihua.service_community.service.BcDictionaryService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/11 16:06
 */
@Service
public class BcDictionaryServiceImpl extends ServiceImpl<BcDictionaryItemDAO, BcDictionaryItemDO> implements BcDictionaryService {
    @Override
    public R<List<BcDictionaryVO>> getDictionaryByKey(String key) {
        List<BcDictionaryItemDO> list = baseMapper.getDictionaryByKey(key);
        List<BcDictionaryVO> listVO = new ArrayList<>();
        for (BcDictionaryItemDO dictionaryItemDO:list){
            BcDictionaryVO bcDictionaryVO = new BcDictionaryVO();
            bcDictionaryVO.setCode(dictionaryItemDO.getMnemonicCode());
            bcDictionaryVO.setDictName(dictionaryItemDO.getDictItemName());
            bcDictionaryVO.setDictValue(dictionaryItemDO.getDictValue());
            listVO.add(bcDictionaryVO);
        }
        return R.ok(listVO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActBuildingServiceImpl.java
@@ -1,10 +1,12 @@
package com.panzhihua.service_community.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComMngBuildingExcelVO;
import com.panzhihua.common.model.vos.community.ComMngPopulationImportErrorVO;
import com.panzhihua.common.utlis.Snowflake;
import com.panzhihua.service_community.dao.ComActDAO;
import com.panzhihua.service_community.dao.ComActVillageDAO;
@@ -38,17 +40,26 @@
    private GridBuildRelationService gridBuildRelationService;
    @Override
    public R batchSaveBuilding(List<ComMngBuildingExcelVO> newVoList, Long communityId, Long streetId) {
    public R batchSaveBuilding(List<ComMngBuildingExcelVO> newVoList, Long communityId) {
        ArrayList<ComMngBuildingDO> list = Lists.newArrayList();
        int index = 2;
        List<GridBuildRelationDO> keyList = new ArrayList<>();
        for (ComMngBuildingExcelVO vo : newVoList) {
            ComMngVillageDO comMngVillageDO = comActVillageDAO.selectOne(new QueryWrapper<ComMngVillageDO>().eq("alley", vo.getAlley()).eq("house_num", vo.getDoorNo()).eq("community_id", communityId));
            if (comMngVillageDO == null) {
        List<ComMngPopulationImportErrorVO> errorList = new ArrayList<>();
        for(ComMngBuildingExcelVO vo:newVoList){
            ComMngVillageDO comMngVillageDO = comActVillageDAO.selectOne(new QueryWrapper<ComMngVillageDO>().eq("alley",vo.getAlley()).eq("house_num",vo.getDoorNo()).eq("community_id",communityId));
            if(comMngVillageDO == null){
                continue;
            }
            List<ComMngBuildingDO> buildingDOList = this.baseMapper.selectList(new QueryWrapper<ComMngBuildingDO>().eq("street_id",comMngVillageDO.getStreetId()).eq("act_id",communityId).eq("village_id",comMngVillageDO.getVillageId()).eq("name",vo.getName()));
            if(buildingDOList.size() > 0){
                ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
                importErrorVO.setErrorMsg("重复楼栋");
                importErrorVO.setErrorPosition("第" + index + "行");
                errorList.add(importErrorVO);
                continue;
            }
            ComMngBuildingDO comMngBuildingDO = new ComMngBuildingDO();
            BeanUtils.copyProperties(vo, comMngBuildingDO);
            BeanUtils.copyProperties(vo,comMngBuildingDO);
            comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
            comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
            comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
@@ -58,9 +69,18 @@
            comMngBuildingDO.setPath(path.toString());
            comMngBuildingDO.setGridId(vo.getGridId());
            list.add(comMngBuildingDO);
            GridBuildRelationDO gridBuildRelation = getGridBuildRelationDO(communityId, streetId, vo, comMngBuildingDO);
            index ++;
            GridBuildRelationDO gridBuildRelation = getGridBuildRelationDO(communityId, comMngVillageDO.getStreetId(), vo, comMngBuildingDO);
            keyList.add(gridBuildRelation);
        }
        if(list.size()>0){
            this.saveBatch(list);
        }
        if(errorList.size() > 0){
            return R.fail(JSON.toJSONString(errorList));
        }
        gridBuildRelationService.saveBatchGridBuildRelation(keyList);
        this.saveBatch(list);
        return R.ok();
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -465,7 +465,10 @@
                    populationDO.setHouseNo(vo.getHouseNo());
                    populationDO.setHouseAddress(address);
                    populationDO.setCardNo(AESUtil.encrypt128(populationDO.getCardNo(), aesKey));
                    populationDO.setPhone(AESUtil.encrypt128(populationDO.getPhone(), aesKey));
                    if(StringUtils.isNotEmpty(populationDO.getPhone())){
                        populationDO.setPhone(AESUtil.encrypt128(populationDO.getPhone(), aesKey));
                    }
                    populationDO.setHouseId(populationHouseDO.getId());
                    this.baseMapper.updateById(populationDO);
                }
@@ -481,6 +484,7 @@
                    populationHouseUserDO.setHouseId(populationHouseDO.getId());
                    populationHouseUserDO.setPopulId(populationDO.getId());
                    populationHouseUserDO.setRelation(populationDO.getRelation());
                    populationHouseUserDO.setRelationStr(populationDO.getRelationStr());
                    comMngPopulationHouseUserDAO.insert(populationHouseUserDO);
                }
            }