From 929ff93a7a9db5b9fb0e3ce8e45a66ce59ea1767 Mon Sep 17 00:00:00 2001
From: 罗元桥 <2376770955@qq.com>
Date: 星期三, 11 八月 2021 17:53:57 +0800
Subject: [PATCH] Merge branch 'test' into 'master'

---
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationVeteransExcelListen.java |  603 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 601 insertions(+), 2 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationVeteransExcelListen.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationVeteransExcelListen.java
index b2c37ad..f755d4e 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationVeteransExcelListen.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationVeteransExcelListen.java
@@ -1,5 +1,6 @@
 package com.panzhihua.common.listen;
 
+import cn.hutool.core.date.DateUtil;
 import com.alibaba.excel.context.AnalysisContext;
 import com.alibaba.excel.event.AnalysisEventListener;
 import com.alibaba.fastjson.JSONArray;
@@ -20,8 +21,6 @@
 import org.springframework.data.redis.core.StringRedisTemplate;
 import org.springframework.data.redis.core.ValueOperations;
 
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -121,8 +120,608 @@
 
 
             int index = 2;
+            try {
+                String[] parsePatterns = new String[]{"yyyy-MM-dd", "yyyy-M-dd", "yyyy-MM-d", "yyyy-M-d", "yyyy/MM/dd", "yyyy/M/dd", "yyyy/MM/d", "yyyy/M/d"};
+                ArrayList<ComMngPopulationVeteransExcelVO> voList = Lists.newArrayList();
+//                List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>();
+                ArrayList<ComMngPopulationVeteransMistakeExcelVO> mistakes = Lists.newArrayList();
+                for (Map<Integer, String> oneData : list) {
+                    ComMngPopulationVeteransExcelVO vo = new ComMngPopulationVeteransExcelVO();
+                    if (StringUtils.isNotEmpty(oneData.get(0))){
+                        vo.setSerialNumber(oneData.get(0));
+                    }
+                    //姓名和身份证都为空,为空户,无需操作,否则就解析年龄,性别,出生年月日
+                    if(StringUtils.isNotEmpty(oneData.get(3)) || StringUtils.isNotEmpty(oneData.get(4))){
+                        if(StringUtils.isEmpty(oneData.get(3))){
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            index++;
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("名字不可为空,请填写姓名");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setName(oneData.get(3));
+                        if(StringUtils.isEmpty(oneData.get(4))){
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            index++;
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("身份证号不可为空,请填写身份证");
+                            mistakes.add(mistake);
+                            continue;
+                        }
 
+                        //判断身份证号码位数
+                        if(oneData.get(4).length() != 18){
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            index++;
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("身份证号位数有误,请检查身份证号码是否正确");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setCardNo(oneData.get(4).toUpperCase());
+                        //根据身份证号码解析年龄以及性别
+                        //获取用户生日
+                        String birthday = vo.getCardNo().substring(6, 14);
+                        if(StringUtils.isNotEmpty(birthday)){
+                            String year = birthday.substring(0,4);
+                            String month = birthday.substring(4,6);
+                            String day = birthday.substring(6,8);
+                            vo.setBirthday(year + "-" + month + "-" + day);
+                        }
+//                    //设置用户年龄
+//                    vo.setAge(AgeUtils.getAgeFromBirthTime(birthday));
+                        //获取用户性别
+                        int sex = Integer.parseInt(vo.getCardNo().substring(16, 17));
+                        if(sex%2 == 1){
+                            vo.setSex(PopulSexEnum.nan.getCode());
+                        }else{
+                            vo.setSex(PopulSexEnum.nv.getCode());
+                        }
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(1))){
+                        vo.setPersonStatus(oneData.get(1));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(2))){
+                        vo.setOrganization(oneData.get(2));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(5))){
+                        vo.setPhone(oneData.get(5));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(6))){
+                        vo.setPhoto(oneData.get(6));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(7))){
+                        Integer isOk = PopulRegiterNatureEnum.getCodeByName(oneData.get(7).trim());
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的户籍性质有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setRegiterNature(isOk);
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(8))){
+                        vo.setCensusRegister(oneData.get(8).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(9))){
+                        Integer isOk = PopulOutOrLocalEnum.getCodeByName(oneData.get(9));
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的本地/外地有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setOutOrLocal(isOk);
+                    }else {
+                        vo.setOutOrLocal(PopulOutOrLocalEnum.getCodeByName("本地"));
+                    }
+                    if(StringUtils.isEmpty(oneData.get(10))){
+                        index++;
+                        ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                        setVeteransMistake(oneData, mistake);
+                        mistake.setMistake("街路巷不可为空");
+                        mistakes.add(mistake);
+                        continue;
+                    }
+                    vo.setRoad(oneData.get(10));
+                    if(StringUtils.isEmpty(oneData.get(11))){
+                        index++;
+                        ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                        setVeteransMistake(oneData, mistake);
+                        mistake.setMistake("小区号不可为空");
+                        mistakes.add(mistake);
+                        continue;
+                    }
+                    vo.setDoorNo(oneData.get(11).trim());
+//                    if(StringUtils.isEmpty(oneData.get(12))){
+//                        index++;
+//                        ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+//                        setVeteransMistake(oneData, mistake);
+//                        mistake.setMistake("楼排号不可为空");
+//                        mistakes.add(mistake);
+//                        continue;
+//                    }
+                    if(StringUtils.isNotEmpty(oneData.get(12))) {
+                        vo.setFloor(oneData.get(12).trim());
+                    }
+//                    if(StringUtils.isEmpty(oneData.get(13))){
+//                        index++;
+//                        ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+//                        setVeteransMistake(oneData, mistake);
+//                        mistake.setMistake("单元号不可为空");
+//                        mistakes.add(mistake);
+//                        continue;
+//                    }
+                    if(StringUtils.isNotEmpty(oneData.get(13))) {
+                        vo.setUnitNo(oneData.get(13).trim());
+                    }
+//                    if(StringUtils.isEmpty(oneData.get(14))){
+//                        index++;
+//                        ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+//                        setVeteransMistake(oneData, mistake);
+//                        mistake.setMistake("户室不可为空");
+//                        mistakes.add(mistake);
+//                        continue;
+//                    }
+                    if(StringUtils.isNotEmpty(oneData.get(14))) {
+                        vo.setHouseNo(oneData.get(14).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(15))){
+                        Integer isOk = PopulHouseUseEnum.getCodeByName(oneData.get(15));
+                        if(isOk.equals(-1)){
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            index++;
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的是否租住有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setIsRent(isOk);
+                    }else {
+                        vo.setIsRent(PopulHouseUseEnum.getCodeByName("否"));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(16))){
+                        Integer isOk = PopulHouseStatusEnum.getCodeByName(oneData.get(16).trim());
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的房屋状态有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setHouseStatus(isOk);
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(17))){
+                        Integer isOk = PopulHousePurposeEnum.getCodeByName(oneData.get(17).trim());
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的房屋用途有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setHousePurpose(isOk);
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(18))){
+                        Integer isOk = PopulHouseControlStatusEnum.getCodeByName(oneData.get(18));
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的管控状态有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setControlStatus(isOk);
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(19))){
+                        vo.setEnlistDate(DateUtil.parse(oneData.get(19), parsePatterns));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(20))){
+                        vo.setRetireDate(DateUtil.parse(oneData.get(20), parsePatterns));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(21))){
+                        vo.setPersonCategory(oneData.get(21).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(22))){
+                        vo.setNation(oneData.get(22).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(23))){
+                        vo.setHealthy(oneData.get(23).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(24))){
+                        Integer isOk = PopulPoliticalOutlookEnum.getCodeByName(oneData.get(24));
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的政治面貌有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setPoliticalOutlook(isOk);
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(25))){
+                        Integer isOk = PopulMarriageEnum.getCodeByName(oneData.get(25));
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的政治面貌有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setMarriage(isOk);
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(26))){
+                        vo.setHouseSituation(oneData.get(26).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(27))){
+                        vo.setHouseSituationOther(oneData.get(27).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(28))){
+                        vo.setBuildArea(oneData.get(28).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(29))){
+                        vo.setEmploymentSituation(oneData.get(29).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(30))){
+                        vo.setIncumbencyType(oneData.get(30).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(31))){
+                        vo.setEmploymentSituationOther(oneData.get(31).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(32))){
+                        vo.setEndowmentInsurance(oneData.get(32).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(33))){
+                        vo.setMedicalInsurance(oneData.get(33).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(34))){
+                        vo.setAnnualIncome(oneData.get(34).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(35))){
+                        vo.setFatherHealthy(oneData.get(35).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(36))){
+                        vo.setMotherHealthy(oneData.get(36).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(37))){
+                        vo.setSpouseHealthy(oneData.get(37).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(38))){
+                        vo.setSonHealthy(oneData.get(38).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(39))){
+                        vo.setDaughterHealthy(oneData.get(39).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(40))){
+                        vo.setMainDifficulty(oneData.get(40).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(41))){
+                        vo.setOtherDifficulty(oneData.get(41).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(42))){
+                        vo.setMainDemand(oneData.get(42).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(43))){
+                        vo.setMainDemandOther(oneData.get(43).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(44))){
+                        vo.setAcademicTraining(oneData.get(44).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(45))){
+                        Integer isOk = PopulHouseUseEnum.getCodeByName(oneData.get(45));
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的是否已参加退役军人培训(政府性质)有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setIsVeteransTraining(isOk);
+                    }else {
+                        vo.setIsVeteransTraining(PopulHouseUseEnum.getCodeByName("否"));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(46))){
+                        vo.setEducationBeforeEnlistment(oneData.get(46).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(47))){
+                        vo.setReEducation(oneData.get(47).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(48))){
+                        vo.setMajor(oneData.get(48).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(49))){
+                        vo.setMajorOther(oneData.get(49).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(50))){
+                        vo.setOnceEngagedIndustry(oneData.get(50).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(51))){
+                        vo.setOnceEngagedIndustryOther(oneData.get(51).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(52))){
+                        vo.setIntendedPlaceOfEmployment(oneData.get(52).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(53))){
+                        vo.setIntendedPlaceOfEmploymentOther(oneData.get(53).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(54))){
+                        vo.setUnemploymedEngagedIndustry(oneData.get(54).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(55))){
+                        vo.setUnemploymedEngagedIndustryOther(oneData.get(55).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(56))){
+                        Integer isOk = PopulHouseUseEnum.getCodeByName(oneData.get(56));
+                        if(isOk.equals(-1)){
+                            index++;
+                            ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
+                            setVeteransMistake(oneData, mistake);
+                            mistake.setMistake("您填写的是否有创业意愿有误");
+                            mistakes.add(mistake);
+                            continue;
+                        }
+                        vo.setIsBusiness(isOk);
+                    }else {
+                        vo.setIsBusiness(PopulHouseUseEnum.getCodeByName("否"));
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(57))){
+                        vo.setBusinessDesire(oneData.get(57).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(58))){
+                        vo.setRemark(oneData.get(58).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(59))){
+                        vo.setFillUnit(oneData.get(59).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(60))){
+                        vo.setFillPerson(oneData.get(50).trim());
+                    }
+                    if(StringUtils.isNotEmpty(oneData.get(61))){
+                        vo.setFillPersonPhone(oneData.get(61).trim());
+                    }
+                    vo.getUserTagStr().add("退役军人");
+                    for (int i = 62; i < headSize; i++) {
+                        if (oneData.get(i) != null && oneData.get(i).equals("是")) {
+                            vo.getUserTagStr().add(headData.get(i).substring(0,headData.get(i).indexOf("(")));
+                        }
+                    }
+                    //将重复的数据进行MD5加密实现去重
+                    String distinct = vo.getName() + vo.getCardNo() + vo.getRoad() + vo.getDoorNo() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
+                    try {
+                        String distinctPass = PayUtil.MD5(distinct);
+                        if(StringUtils.isNotEmpty(distinctPass)){
+                            vo.setDistinctPass(distinctPass);
+                        }
+                    }catch (Exception e){
+                        log.error("组装MD5加密字段失败,数据表格行数:" + index);
+                        continue;
+                    }
+                    voList.add(vo);
+                    index++;
+                }
+                //客户需要暂时注释,等客户处理完成需要恢复
+//            if(populationImportErrorVOList.isEmpty()){
+//                R r = communityService.listSavePopulationServeExcelVO(voList, communityId);
+//                if (!R.isOk(r)) {
+//                    throw new ServiceException(r.getMsg());
+//                }
+//            }else{
+//                throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList));
+//            }
+                //根据list中的IdCard城市来去重
+                List<ComMngPopulationVeteransExcelVO> newVoList = voList.stream().filter(ListUtils.distinctByKey(ComMngPopulationVeteransExcelVO::getDistinctPass)).collect(Collectors.toList());
+                log.info("开始进入业务层处理逻辑");
+                R r = communityService.listSavePopulationVeteransExcelVO(newVoList, communityId);
+                log.info("业务层处理逻辑完成");
+                if (!R.isOk(r)) {
+                    log.info("业务层处理成功");
+                    List<ComMngPopulationVeteransMistakeExcelVO> list = JSONArray.parseArray(JSONArray.toJSONString(r.getData()), ComMngPopulationVeteransMistakeExcelVO.class);
+//                    String errMsg = r.getMsg();
+//                    List<ComMngPopulationImportErrorVO> errorList = JSON.parseArray(errMsg,ComMngPopulationImportErrorVO.class);
+//                    if(!errorList.isEmpty()){
+//                        populationImportErrorVOList.addAll(errorList);
+//                    }
+                    mistakes.addAll(list);
+                    log.info("将错误数据存入redis中");
+                    valueOperations.set(Veterans,JSONArray.toJSONString(mistakes),1, TimeUnit.HOURS);
+                    log.info("将错误数据存入redis中成功");
+                    throw new ServiceException("500", Veterans);
+                }else{
+                    log.info("业务层处理逻辑失败");
+                    if(!mistakes.isEmpty()){
+                        log.info("业务层处理逻辑失败,将错误数据缓存到redis中");
+                        valueOperations.set(Veterans,JSONArray.toJSONString(mistakes),1, TimeUnit.HOURS);
+                        log.info("业务层处理逻辑失败,将错误数据缓存到redis中成功");
+                        throw new ServiceException("500", Veterans);
+                    }
+                }
+            } catch (NumberFormatException e) {
+                log.info("处理数据时失败");
+                e.printStackTrace();
+//                List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>();
+//                ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
+//                importErrorVO.setErrorPosition("第" + index + "行");
+//                importErrorVO.setErrorMsg("数据格式有误,请检查文档内数据");
+//                populationImportErrorVOList.add(importErrorVO);
+                log.error("数据格式有误,第" + index + "行");
+                throw new ServiceException("500", "导入失败111");
+            }
         }
 
+    private void setVeteransMistake(Map<Integer, String> map, ComMngPopulationVeteransMistakeExcelVO vo){
+        vo.setSerialNumber(map.get(0));
+        vo.setPersonStatus(map.get(1));
+        vo.setOrganization(map.get(2));
+        vo.setName(map.get(3));
+        vo.setCardNo(map.get(4));
+        vo.setPhone(map.get(5));
+        vo.setPhoto(map.get(6));
+        vo.setRegiterNature(map.get(7));
+        vo.setCensusRegister(map.get(8));
+        vo.setOutOrLocal(map.get(9));
+        vo.setRoad(map.get(10));
+        vo.setDoorNo(map.get(11));
+        vo.setFloor(map.get(12));
+        vo.setUnitNo(map.get(13));
+        vo.setHouseNo(map.get(14));
+        vo.setIsRent(map.get(15));
+        vo.setHouseStatus(map.get(16));
+        vo.setHousePurpose(map.get(17));
+        vo.setControlStatus(map.get(18));
+        vo.setEnlistDate(map.get(19));
+        vo.setRetireDate(map.get(20));
+        vo.setPersonCategory(map.get(21));
+        vo.setNation(map.get(22));
+        vo.setHealthy(map.get(23));
+        vo.setPoliticalOutlook(map.get(24));
+        vo.setMarriage(map.get(25));
+        vo.setHouseSituation(map.get(26));
+        vo.setHouseSituationOther(map.get(27));
+        vo.setBuildArea(map.get(28));
+        vo.setEmploymentSituation(map.get(29));
+        vo.setIncumbencyType(map.get(30));
+        vo.setEmploymentSituationOther(map.get(31));
+        vo.setEndowmentInsurance(map.get(32));
+        vo.setMedicalInsurance(map.get(33));
+        vo.setAnnualIncome(map.get(34));
+        vo.setFatherHealthy(map.get(35));
+        vo.setMotherHealthy(map.get(36));
+        vo.setSpouseHealthy(map.get(37));
+        vo.setSonHealthy(map.get(38));
+        vo.setDaughterHealthy(map.get(39));
+        vo.setMainDifficulty(map.get(40));
+        vo.setOtherDifficulty(map.get(41));
+        vo.setMainDemand(map.get(42));
+        vo.setMainDemandOther(map.get(43));
+        vo.setAcademicTraining(map.get(44));
+        vo.setIsVeteransTraining(map.get(45));
+        vo.setEducationBeforeEnlistment(map.get(46));
+        vo.setReEducation(map.get(47));
+        vo.setMajor(map.get(48));
+        vo.setMajorOther(map.get(49));
+        vo.setOnceEngagedIndustry(map.get(50));
+        vo.setOnceEngagedIndustryOther(map.get(51));
+        vo.setIntendedPlaceOfEmployment(map.get(52));
+        vo.setIntendedPlaceOfEmploymentOther(map.get(53));
+        vo.setUnemploymedEngagedIndustry(map.get(54));
+        vo.setUnemploymedEngagedIndustryOther(map.get(55));
+        vo.setIsBusiness(map.get(56));
+        vo.setBusinessDesire(map.get(57));
+        vo.setRemark(map.get(58));
+        vo.setFillUnit(map.get(59));
+        vo.setFillPerson(map.get(60));
+        vo.setFillPersonPhone(map.get(61));
+    }
+
+    private String convertMarriage(String ma) {
+
+        if(Objects.equals("已",ma) || Objects.equals("一",ma)){
+            ma = "已婚";
+        }else if(Objects.equals("未",ma) || 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) || Objects.equals("丧偶偶",ma)){
+            ma = "丧偶";
+        }else if(Objects.equals("离",ma) || Objects.equals("离异",ma) || Objects.equals("离异婚",ma)){
+            ma = "离婚";
+        }else if(Objects.equals("分",ma)){
+            ma = "分居";
+        }
+
+        return ma;
+    }
+
+    private String convertRelation(String ra) {
+        if(ra.contains("户主")){
+            ra = "户主";
+        }else if(Objects.equals(ra,"女儿")){
+            ra = "女";
+        }else if(Objects.equals(ra,"儿子") || Objects.equals(ra,"儿")){
+            ra = "子";
+        }else if(Objects.equals(ra,"大女")){
+            ra = "长女";
+        }else if(Objects.equals(ra,"二女") || Objects.equals(ra,"此女")){
+            ra = "次女";
+        }else if(Objects.equals(ra,"二子")){
+            ra = "次子";
+        }else if(Objects.equals(ra,"长男") || ra.contains("长子")){
+            ra = "长子";
+        }else if(Objects.equals(ra,"非亲属") || ra.contains("女友")  || ra.contains("女朋友")
+                || ra.contains("男友") || ra.contains("男朋友")){
+            ra = "其他";
+        }else if(Objects.equals(ra,"姐")){
+            ra = "姐姐";
+        }else if(Objects.equals(ra,"户主")){
+            ra = "本人";
+        }else if(Objects.equals(ra,"妻子") || Objects.equals(ra,"媳妇")){
+            ra = "妻";
+        }else if(Objects.equals(ra,"哥") || 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 = "养子或继子";
+        }else if(Objects.equals(ra,"继女") || Objects.equals(ra,"养女")){
+            ra = "养女或继女";
+        }else if(ra.contains("儿媳")||ra.contains("长媳")){
+            ra = "儿媳";
+        }else if(Objects.equals(ra,"三姨") || Objects.equals(ra,"姨姨")){
+            ra = "姨母";
+        }else if(Objects.equals(ra,"二外孙女")){
+            ra = "外孙女";
+        }else if(Objects.equals(ra,"外孙")){
+            ra = "外孙子";
+        }else if(Objects.equals(ra,"侄儿")){
+            ra = "侄子";
+        }else if(ra.contains("表")){
+            ra = "表兄弟、表姐妹";
+        }else if(Objects.equals(ra,"继父") || 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 = "孙媳妇或外孙媳妇";
+        }else if(Objects.equals(ra,"妹")){
+            ra = "妹妹";
+        }else if(Objects.equals(ra,"祖父母")){
+            ra = "祖父母或外祖父母";
+        }else if(Objects.equals(ra,"姐妹") || Objects.equals(ra,"兄弟")){
+            ra = "兄弟姐妹";
+        }else if(Objects.equals(ra,"其他姐妹") || Objects.equals(ra,"其他兄弟")){
+            ra = "其他兄弟姐妹";
+        }else if(Objects.equals(ra,"奶奶")){
+            ra = "祖母";
+        }else if(Objects.equals(ra,"爷爷")){
+            ra = "祖父";
+        }else if(Objects.equals(ra,"爷爷")){
+            ra = "祖父";
+        }else if(ra.contains("堂")){
+            ra = "堂兄弟、堂姐妹";
+        }
+
+        return ra;
+    }
 
 }

--
Gitblit v1.7.1