springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/PopulMarriageEnum.java
@@ -18,8 +18,7 @@ SO(30, "丧偶"), LH(40, "离婚"), FJ(50, "分居"), QT(90, "其他"), QT(60, "其他"), WSM(90, "未说明的婚姻状况"); private final Integer code; springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationConfirmServeExcelListen.java
New file @@ -0,0 +1,566 @@ package com.panzhihua.common.listen; 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.ComMngRealAssetsExcelVO; import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.utlis.ListUtils; import com.panzhihua.common.utlis.PayUtil; import com.panzhihua.common.utlis.StringUtils; import lombok.extern.slf4j.Slf4j; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Objects; import java.util.stream.Collectors; /** * @description: 实有人口导入监听 * @author: Null * @date: 2021/3/11 13:26 */ @Slf4j public class ComMngPopulationConfirmServeExcelListen extends AnalysisEventListener<Map<Integer, String>> { private CommunityService communityService; private Long communityId; private static int headSize = 0; private Map<Integer, String> headData; public ComMngPopulationConfirmServeExcelListen(CommunityService communityService, Long communityId) { this.communityService = communityService; this.communityId = communityId; } /** * 每隔5条存储数据库,实际使用中可以3000条,然后清理list ,方便内存回收 */ private static final int BATCH_COUNT = 5000; List<Map<Integer, String>> list = new ArrayList<Map<Integer, String>>(); @Override public void invoke(Map<Integer, String> data, AnalysisContext context) { list.add(data); if (list.size() >= BATCH_COUNT) { saveData(); list.clear(); } } /** * 这里会一行行的返回头 * * @param headMap * @param context */ @Override public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) { headSize = headMap.size(); headData = headMap; } @Override public void doAfterAllAnalysed(AnalysisContext context) { saveData(); log.info("所有数据解析完成!"); } /** * 不是固定的列只能手动处理 */ 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(); List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>(); for (Map<Integer, String> oneData : list) { ComMngPopulationServeExcelVO vo = new ComMngPopulationServeExcelVO(); //姓名和身份证都为空,为空户,无需操作,否则就解析年龄,性别,出生年月日 if (StringUtils.isNotEmpty(oneData.get(0)) || StringUtils.isNotEmpty(oneData.get(1))) { if (StringUtils.isEmpty(oneData.get(0))) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第1列"); importErrorVO.setErrorMsg("名字不可为空,请填写姓名"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setName(oneData.get(0)); if (StringUtils.isEmpty(oneData.get(1))) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第2列" + oneData.get(1)); importErrorVO.setErrorMsg("身份证号不可为空,请填写身份证号"); populationImportErrorVOList.add(importErrorVO); index++; continue; } //判断身份证号码位数 if (oneData.get(1).length() != 18) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第2列" + oneData.get(1)); importErrorVO.setErrorMsg("身份证号位数有误,请检查身份证号码是否正确"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setCardNo(oneData.get(1)); //根据身份证号码解析年龄以及性别 //获取用户生日 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(2))) { // String nation = oneData.get(2); // if(!nation.contains("族")){ // ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); // importErrorVO.setErrorPosition("第" + index + "行,第3列"); // importErrorVO.setErrorMsg("您填写的民族格式有误"); // populationImportErrorVOList.add(importErrorVO); // index++; // continue; // } vo.setNation(oneData.get(2)); } if (StringUtils.isNotEmpty(oneData.get(3))) { vo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCodeByName(oneData.get(3))); } if (StringUtils.isNotEmpty(oneData.get(4))) { Integer isOk = PopulHouseUseEnum.getCodeByName(oneData.get(4)); if (isOk.equals(-1)) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第5列"); importErrorVO.setErrorMsg("您填写的是否租住有误"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setIsRent(isOk); } if (StringUtils.isNotEmpty(oneData.get(5))) { String ra = convertRelation(oneData.get(5)); 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(); importErrorVO.setErrorPosition("第" + index + "行,第7列"); importErrorVO.setErrorMsg("街路巷不可为空"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setRoad(oneData.get(6)); if (StringUtils.isEmpty(oneData.get(7))) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第8列"); importErrorVO.setErrorMsg("小区号不可为空"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setDoorNo(oneData.get(7).trim()); if (StringUtils.isEmpty(oneData.get(8))) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第9列"); importErrorVO.setErrorMsg("楼排号不可为空"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setFloor(oneData.get(8).trim()); if (StringUtils.isEmpty(oneData.get(9))) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第10列"); importErrorVO.setErrorMsg("单元号不可为空"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setUnitNo(oneData.get(9).trim()); if (StringUtils.isEmpty(oneData.get(10))) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第11列"); importErrorVO.setErrorMsg("户室不可为空"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setHouseNo(oneData.get(10).trim()); if (StringUtils.isNotEmpty(oneData.get(11))) { vo.setBuildPurpose(oneData.get(11).trim()); } if (StringUtils.isNotEmpty(oneData.get(12))) { vo.setBuildArea(oneData.get(12).trim()); } if (StringUtils.isNotEmpty(oneData.get(13))) { Integer isOk = PopulHouseStatusEnum.getCodeByName(oneData.get(13).trim()); if (isOk.equals(-1)) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第14列"); importErrorVO.setErrorMsg("您填写的房屋状态有误"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setHouseStatus(isOk); } if (StringUtils.isNotEmpty(oneData.get(14))) { Integer isOk = PopulHousePurposeEnum.getCodeByName(oneData.get(14).trim()); if (isOk.equals(-1)) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第15列"); importErrorVO.setErrorMsg("您填写的房屋用途有误"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setHousePurpose(PopulHousePurposeEnum.getCodeByName(oneData.get(14).trim())); } if (StringUtils.isNotEmpty(oneData.get(15))) { Integer isOk = PopulHouseControlStatusEnum.getCodeByName(oneData.get(15)); if (isOk.equals(-1)) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第16列"); importErrorVO.setErrorMsg("您填写的管控状态有误"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setControlStatus(isOk); } if (StringUtils.isNotEmpty(oneData.get(16))) { vo.setPhone(oneData.get(16).trim()); } if (StringUtils.isNotEmpty(oneData.get(17))) { vo.setNativePlace(oneData.get(17).trim()); } if (StringUtils.isNotEmpty(oneData.get(18))) { vo.setCultureLevel(PopulCultureLevelEnum.getCodeByName(oneData.get(18))); } if (StringUtils.isNotEmpty(oneData.get(19))) { String ma = convertMarriage(oneData.get(19)); 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()); } if (StringUtils.isNotEmpty(oneData.get(21))) { vo.setBloodType(oneData.get(21).trim()); } if (StringUtils.isNotEmpty(oneData.get(22))) { vo.setReligion(oneData.get(22).trim()); } if (StringUtils.isNotEmpty(oneData.get(23))) { vo.setProfession(oneData.get(23).trim()); } if (StringUtils.isNotEmpty(oneData.get(24))) { vo.setWorkCompany(oneData.get(24).trim()); } if (StringUtils.isNotEmpty(oneData.get(25))) { Integer isOk = PopulOutOrLocalEnum.getCodeByName(oneData.get(25)); if (isOk.equals(-1)) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第26列"); importErrorVO.setErrorMsg("您填写的本地/外地有误"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setOutOrLocal(isOk); } if (StringUtils.isNotEmpty(oneData.get(26))) { vo.setCensusRegister(oneData.get(26).trim()); } if (StringUtils.isEmpty(oneData.get(27))) { vo.setResidence(0); } else { vo.setResidence(PopulIsOkEnum.getCodeByName(oneData.get(27).trim())); } if (StringUtils.isNotEmpty(oneData.get(28))) { vo.setAddress(oneData.get(28).trim()); } if (StringUtils.isNotEmpty(oneData.get(29))) { Integer isOk = PopulPersonTypeEnum.getCodeByName(oneData.get(29)); if (isOk.equals(-1)) { ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行,第30列"); importErrorVO.setErrorMsg("您填写的人员类型有误"); populationImportErrorVOList.add(importErrorVO); index++; continue; } vo.setPersonType(isOk); } if (StringUtils.isNotEmpty(oneData.get(30))) { vo.setCountry(oneData.get(30).trim()); } if (StringUtils.isNotEmpty(oneData.get(31))) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("YYYY-dd-MM HH:mm:ss"); vo.setDateOfDeparture(simpleDateFormat.parse(oneData.get(31))); } if (StringUtils.isNotEmpty(oneData.get(32))) { vo.setPersonStatus(oneData.get(32).trim()); } if (StringUtils.isNotEmpty(oneData.get(33))) { vo.setMonthlyIncome(oneData.get(33).trim()); } if (StringUtils.isNotEmpty(oneData.get(34))) { vo.setFamilyStatus(oneData.get(34).trim()); } if (StringUtils.isNotEmpty(oneData.get(35))) { vo.setGoalInChina(oneData.get(35).trim()); } if (StringUtils.isNotEmpty(oneData.get(36))) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("YYYY-dd-MM HH:mm:ss"); vo.setDateOfArrival(simpleDateFormat.parse(oneData.get(36))); } if (StringUtils.isNotEmpty(oneData.get(37))) { vo.setRemark(oneData.get(37).trim()); } if (StringUtils.isNotEmpty(oneData.get(38))) { vo.setIdCardPositive(oneData.get(38).trim()); } if (StringUtils.isNotEmpty(oneData.get(39))) { vo.setIdCardBack(oneData.get(39).trim()); } if (StringUtils.isNotEmpty(oneData.get(40))) { vo.setHouseHold(oneData.get(40).trim()); } if (StringUtils.isEmpty(oneData.get(41))) { vo.setDeath(0); } else { vo.setDeath(PopulIsOkEnum.getCodeByName(oneData.get(41).trim())); } for (int i = 42; 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<ComMngPopulationServeExcelVO> newVoList = voList.stream().filter(ListUtils.distinctByKey(ComMngPopulationServeExcelVO::getDistinctPass)).collect(Collectors.toList()); R r = communityService.listSavePopulationConfirm(newVoList, communityId); if (!R.isOk(r)) { String errMsg = r.getMsg(); List<ComMngPopulationImportErrorVO> errorList = JSON.parseArray(errMsg, ComMngPopulationImportErrorVO.class); if (!errorList.isEmpty()) { populationImportErrorVOList.addAll(errorList); } throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList)); } else { if (!populationImportErrorVOList.isEmpty()) { throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList)); } } } catch (NumberFormatException e) { e.printStackTrace(); List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>(); ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行"); importErrorVO.setErrorMsg("数据格式有误,请检查文档内数据"); populationImportErrorVOList.add(importErrorVO); throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList)); } catch (ParseException e1) { e1.printStackTrace(); List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>(); ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); importErrorVO.setErrorPosition("第" + index + "行"); importErrorVO.setErrorMsg("数据格式有误,请检查文档内数据"); populationImportErrorVOList.add(importErrorVO); throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList)); } } 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; } } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java
@@ -434,6 +434,8 @@ }else{ if(!populationImportErrorVOList.isEmpty()){ throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList)); }else { R r1 = communityService.listSavePopulationConfirm(newVoList, communityId); } } } catch (NumberFormatException e) { springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/ComExServicemanDTO.java
New file @@ -0,0 +1,110 @@ package com.panzhihua.common.model.dtos.community; import com.panzhihua.common.model.helper.encrypt.EncryptQuery; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; import java.util.Date; /** * 退役军人DTO */ @Data @ApiModel("退役军人") public class ComExServicemanDTO implements Serializable { private static final long serialVersionUID = 1L; /** * 分页-当前页数 */ @ApiModelProperty(value = "分页-当前页数",example = "1") private Long pageNum; /** * 分页-每页记录数 */ @ApiModelProperty(value = "分页-每页记录数",example = "10") private Long pageSize; /** * 年龄开始查询字段 */ @ApiModelProperty("年龄开始查询字段") private String ageStart; /** * 年龄开始时间查询字段 */ @ApiModelProperty(value = "年龄开始时间查询字段",hidden = true) private String ageStartTime; /** * 年龄结束查询字段 */ @ApiModelProperty("年龄结束查询字段") private String ageEnd; /** * 年龄结束时间查询字段 */ @ApiModelProperty(value = "年龄结束时间查询字段",hidden = true) private String ageEndTime; /** * 民族 */ @ApiModelProperty("民族") private String nation; /** * 主键id */ @ApiModelProperty(value="主键id") private Long id; /** * 街道id */ @ApiModelProperty(value="街道id",hidden = true) private Integer streetId; /** * 社区id */ @ApiModelProperty(value="社区id",hidden = true) private Long CommunityId; /** * 姓名 */ @ApiModelProperty(value="姓名") private String name; /** * 性别 */ @ApiModelProperty(value="性别") private String sex; /** * 身份证号码 */ @ApiModelProperty(value="身份证号码") @EncryptQuery private String cardNo; /** * 联系电话 */ @ApiModelProperty(value="联系电话") private String phone; /** * 创建时间 */ @ApiModelProperty(value="创建时间") private Date createAt; /** * 修改时间 */ @ApiModelProperty(value="修改时间") private Date updateAt; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/ComMngPopulationDTO.java
@@ -86,7 +86,7 @@ * 小区id(实有房屋id) */ @ApiModelProperty(value="小区id(实有房屋id)") private Integer villageId; private Long villageId; /** * 家庭成员(姓名) */ springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/ExportComMngCarExcelDTO.java
@@ -21,4 +21,8 @@ @ApiModelProperty(value = "车主名称") private String userName; @ApiModelProperty(value = "小区id",hidden = true) private Long villageId; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComExServicemanVO.java
New file @@ -0,0 +1,33 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; /** * 退役军人Vo */ @Data @ApiModel("退役军人") public class ComExServicemanVO { /** * 退役军人id */ @ApiModelProperty("退役军人id") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("姓名") private String name; @ApiModelProperty("更新时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date updateAt; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngCarVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -18,6 +20,7 @@ public class ComMngCarVO implements Serializable { @ApiModelProperty("主键") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("社区ID") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngCascadeHouseVO.java
@@ -1,5 +1,7 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -12,6 +14,7 @@ * 房屋id */ @ApiModelProperty("房屋id") @JsonSerialize(using = ToStringSerializer.class) private Long houseId; /** springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationCarVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -18,6 +20,7 @@ public class ComMngPopulationCarVO implements Serializable { @ApiModelProperty("主键") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("车牌号") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationHouseAdminVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -18,6 +20,7 @@ * 实有房屋id */ @ApiModelProperty("实有房屋id") @JsonSerialize(using = ToStringSerializer.class) private Long id; /** * 房屋地址 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationServeExcelVO.java
@@ -144,7 +144,7 @@ @ExcelProperty(value = "是否死亡(是/否)", index = 41) private Integer death; @ExcelProperty(value = "退役军人(是/否)", index = 41) @ExcelProperty(value = "退役军人(是/否)", index = 42) private Integer veterans; @ExcelProperty(value = "残疾人(是/否)", index = 43) springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptClass; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import com.panzhihua.common.model.helper.sensitive.Sensitive; @@ -30,6 +32,7 @@ * 自增 id */ @ApiModelProperty("实有人口id") @JsonSerialize(using = ToStringSerializer.class) private Long id; /** * 街道id @@ -45,6 +48,7 @@ * 小区id(实有房屋id) */ @ApiModelProperty("小区id(实有房屋id)") @JsonSerialize(using = ToStringSerializer.class) private long villageId; /** * 家庭成员(姓名) @@ -147,7 +151,7 @@ @ApiModelProperty("文化程度(1.小学 2.初中 3.高中 4.中专 5.大专 6.本科 7.硕士 8.博士 9.其他)") private Integer cultureLevel; @ApiModelProperty("婚姻状况(1.未婚 2.已婚 3.离异 4.丧偶 5.分居 6.其他)") @ApiModelProperty("婚姻状况(10.未婚 20.已婚 21.初婚 22.再婚 23.复婚 30.丧偶 40.离婚 90.未说明的婚姻状况 60.其他)") private Integer marriage; @ApiModelProperty("健康状况") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngRealAssetsVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -17,6 +19,7 @@ public class ComMngRealAssetsVO implements Serializable { @ApiModelProperty("主键") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty(value = "社区ID",hidden = true) springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngRealCompanyTotalVO.java
New file @@ -0,0 +1,20 @@ package com.panzhihua.common.model.vos.community; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * 实有单位统计返回参数 */ @Data @ApiModel("实有单位统计返回参数") public class ComMngRealCompanyTotalVO { /** * 实有单位总数 */ @ApiModelProperty("实有单位总数") private Long companyTotal; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngRealCompanyVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.community; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -17,6 +19,7 @@ public class ComMngRealCompanyVO implements Serializable { @ApiModelProperty("主键") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty(value = "社区ID",hidden = true) springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/GridEventStatisticsVO.java
@@ -34,4 +34,10 @@ @ApiModelProperty("实有房屋总数") private Integer houseTotal = 0; @ApiModelProperty("走访任务当日完成数量") private Integer zfTodayNum = 0; @ApiModelProperty("走访任务当月完成数量") private Integer zfMonthNum = 0; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/ComHouseMemberVo.java
@@ -1,5 +1,7 @@ package com.panzhihua.common.model.vos.user; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptClass; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import com.panzhihua.common.model.helper.sensitive.Sensitive; @@ -14,6 +16,7 @@ public class ComHouseMemberVo { @ApiModelProperty("房屋成员用户id") @JsonSerialize(using = ToStringSerializer.class) private Long populId; @ApiModelProperty("姓名") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/ComMngFamilyInfoVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.user; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.panzhihua.common.validated.AddGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -21,9 +23,11 @@ public class ComMngFamilyInfoVO { @ApiModelProperty("自增id") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("本人id") @JsonSerialize(using = ToStringSerializer.class) private Long userId; @ApiModelProperty("与本人关系") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/ComMngHouseVo.java
@@ -1,5 +1,7 @@ package com.panzhihua.common.model.vos.user; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptClass; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import io.swagger.annotations.ApiModel; @@ -12,6 +14,7 @@ public class ComMngHouseVo { @ApiModelProperty("房屋id") @JsonSerialize(using = ToStringSerializer.class) private Long houseId; @ApiModelProperty("房屋地址") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/InputUserInfoVO.java
@@ -1,6 +1,8 @@ package com.panzhihua.common.model.vos.user; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptClass; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import com.panzhihua.common.model.helper.sensitive.Sensitive; @@ -25,6 +27,7 @@ public class InputUserInfoVO implements Serializable { @ApiModelProperty("用户编号") @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("生日") springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -1454,6 +1454,15 @@ R pageQueryComMngRealCompany(@RequestBody PageComMngRealCompanyDTO pageComMngRealCompanyDTO); /** * 社区后台实有单位统计 * * @param communityId 社区id * @return 统计结果 */ @PostMapping("/common/data/company/statistics") R getComMngRealCompanyTotalByAdmin(@RequestParam("communityId") Long communityId); /** * 社区后台添加修改实有单位 * * @param comMngRealCompanyVO @@ -3626,4 +3635,13 @@ */ @GetMapping("/eventgrid/community/list") R getCommunityLists(); /** * 分页查询退役军人列表 * * @param comExServicemanDTO 请求参数 * @return 退役军人列表 */ @PostMapping("/population/page/exServiceman") R pageExServiceman(@RequestBody ComExServicemanDTO comExServicemanDTO); } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/user/UserService.java
@@ -620,7 +620,7 @@ * @param id * @return */ @DeleteMapping("common/data/special/delete") @DeleteMapping("common/data/special/delete1") R deleteSpecialInputUser(@RequestParam(value = "id") Long id); /** springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommonDataApi.java
@@ -395,10 +395,18 @@ return communityService.specialInputUser(pageInputUserDTO); } @ApiOperation(value = "特殊群体统计接口", response = ComMngPopulationVO.class) @PostMapping("/special/statistics") public R getComMngRealCompanyTotalByAdmin() { //获取登陆用户绑定社区id Long communityId = this.getLoginUserInfo().getCommunityId(); return communityService.getComMngRealCompanyTotalByAdmin(communityId); } @ApiOperation(value = "特殊群体/删除", response = InputUserInfoVO.class) @DeleteMapping("/special/delete") public R deleteSpecialInputUser(@RequestParam(value = "id") Long id) { return userService.deleteSpecialInputUser(id); return communityService.deleteSpecialInputUser(id); } // @ApiOperation(value = "特殊群体 导出特殊群体Excel") @@ -567,6 +575,14 @@ return communityService.pageQueryComMngRealCompany(pageComMngRealCompanyDTO); } @ApiOperation(value = "实有单位统计接口", response = ComMngRealCompanyVO.class) @PostMapping("/company/statistics") public R getSpecialInputUserTagsTotalByAdmin() { //获取登陆用户绑定社区id Long communityId = this.getLoginUserInfo().getCommunityId(); return communityService.getComMngRealCompanyTotalByAdmin(communityId); } @ApiOperation(value = "添加/修改实有单位") @PostMapping("/company/save") public R saveComMngRealCompany(@RequestBody ComMngRealCompanyVO comMngRealCompanyVO) { springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/PopulationApi.java
@@ -7,12 +7,13 @@ import com.alibaba.fastjson.JSON; import com.panzhihua.common.constants.Constants; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.enums.PopulIsOkEnum; import com.panzhihua.common.enums.PopulOutOrLocalEnum; import com.panzhihua.common.enums.PopulPoliticalOutlookEnum; import com.panzhihua.common.enums.PopulSexEnum; import com.panzhihua.common.listen.ComMngPopulationConfirmServeExcelListen; import com.panzhihua.common.listen.ComMngPopulationServeExcelListen; import com.panzhihua.common.model.dtos.community.*; import com.panzhihua.common.model.vos.community.ComExServicemanVO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.*; @@ -98,6 +99,30 @@ return R.ok(); } /** * 确认导入实有人口(有则更新,无则新建) * * @param file * @param request * @return 导入结果 */ @ApiOperation(value = "excel-确认导入实有人口") @PostMapping(value = "/import/confirm",consumes = "multipart/*", headers = "content-type=multipart/form-date") public R listSavePopulationConfirm(@RequestParam MultipartFile file, HttpServletRequest request){ //获取文件名 String fileName = file.getOriginalFilename(); log.info("传入文件名字【{}】", fileName); InputStream inputStream = null; try { inputStream = file.getInputStream(); ComMngPopulationConfirmServeExcelListen comMngPopulationConfirmServeExcelListen = new ComMngPopulationConfirmServeExcelListen(communityService, this.getCommunityId()); EasyExcel.read(inputStream, null, comMngPopulationConfirmServeExcelListen).sheet().doRead(); } catch (IOException e) { log.error("导入模板失败【{}】", e.getMessage()); e.printStackTrace(); } return R.ok(); } @ApiOperation(value = "excel导入实有人口notoken") @PostMapping(value = "/serve/import/noToken", consumes = "multipart/*", headers = "content-type=multipart/form-date") @@ -526,4 +551,15 @@ Long communityId = this.getLoginUserInfo().getCommunityId(); return communityService.getHouseTotalByAdmin(communityId); } @ApiOperation(value = "分页查询退役军人列表", response = ComExServicemanVO.class) @PostMapping("/pageExServiceman") public R pageExServiceman(@RequestBody ComExServicemanDTO comExServicemanDTO) { //获取登陆用户绑定社区id LoginUserInfoVO loginUser = this.getLoginUserInfo(); if(loginUser != null){ comExServicemanDTO.setCommunityId(loginUser.getCommunityId()); } return communityService.pageExServiceman(comExServicemanDTO); } } springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/UserApi.java
@@ -84,6 +84,7 @@ } if(StringUtils.isNotEmpty(userInfoAppDTO.getNickName())){ loginUserInfo.setNickName(userInfoAppDTO.getNickName()); loginUserInfo.setName(userInfoAppDTO.getNickName()); loginUserInfo.setImageUrl(null); } return userService.putUser(loginUserInfo); springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommonDataApi.java
@@ -135,6 +135,17 @@ } /** * 社区后台实有单位统计 * * @param communityId 社区id * @return 统计结果 */ @PostMapping("/company/statistics") public R getComMngRealCompanyTotalByAdmin(@RequestParam("communityId") Long communityId){ return comMngRealCompanyService.getComMngRealCompanyTotalByAdmin(communityId); } /** * 社区后台添加修改实有单位 * * @param comMngRealCompanyVO springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/PopulationApi.java
@@ -1,12 +1,13 @@ package com.panzhihua.service_community.api; import com.panzhihua.common.model.dtos.community.ComExServicemanDTO; import com.panzhihua.common.model.dtos.grid.PagePopulationListDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationExportDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationListDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationRelationHouseDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationSubordinateDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.service_community.service.ComExServicemanService; import com.panzhihua.service_community.service.ComMngPopulationHouseService; import com.panzhihua.service_community.service.ComMngPopulationService; import lombok.extern.slf4j.Slf4j; @@ -24,6 +25,8 @@ private ComMngPopulationService comMngPopulationService; @Resource private ComMngPopulationHouseService comMngPopulationHouseService; @Resource private ComExServicemanService comExServicemanService; /** * 获取人口数据信息 @@ -131,5 +134,16 @@ return comMngPopulationHouseService.populationRelationHouse(relationHouseDTO); } /** * 分页查询退役军人列表 * * @param comExServicemanDTO 请求参数 * @return 退役军人列表 */ @PostMapping("/page/exServiceman") public R pageExServiceman(@RequestBody ComExServicemanDTO comExServicemanDTO){ return comExServicemanService.getPageExServiceman(comExServicemanDTO); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActMicroWishDAO.java
@@ -71,7 +71,7 @@ "AND w.`status` = #{comActMicroWishVO.status} " + " </if> " + "<if test='comActMicroWishVO.status == 3 and comActMicroWishVO.isPageMyWish==null'>" + "AND ( w.`status` = 3 or w.`status` = 5 ) " + "AND w.`status` = 3 " + " </if> " + "<if test='comActMicroWishVO.status != null and comActMicroWishVO.status!=0 and comActMicroWishVO.isPageMyWish!=null and comActMicroWishVO.status==1'>" + "AND w.`status` =1 " + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComExServicemanDAO.java
New file @@ -0,0 +1,57 @@ package com.panzhihua.service_community.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.model.dtos.community.ComExServicemanDTO; import com.panzhihua.common.model.dtos.community.ComMngRealCompanyBelongsDTO; import com.panzhihua.common.model.dtos.community.ExportRealCompanyExcelDTO; import com.panzhihua.common.model.dtos.community.PageComMngRealCompanyDTO; import com.panzhihua.common.model.vos.community.ComExServicemanVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyBelongsVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyExcelVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyVO; import com.panzhihua.service_community.model.dos.ComExServicemanDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.util.List; /** * @description: 退役军人 * @author: txb * @date: 2021/7/15 14:00 */ @Mapper public interface ComExServicemanDAO extends BaseMapper<ComExServicemanDO> { @Select("<script> " + " SELECT " + " id, " + " com_name AS comName, " + " legal_person AS legalPerson, " + " leader, " + " contacts_phone AS contactsPhone, " + " scope, " + " credit_code AS creditCode, " + " province_adcode AS provinceAdcode, " + " city_adcode AS cityAdcode, " + " district_adcode AS districtAdcode, " + " address, " + " create_at AS createAt " + "FROM " + " com_ex_serviceman where 1=1" + "<if test='pageComMngRealCompanyDTO.legalPerson != null and pageComMngRealCompanyDTO.legalPerson.trim() != ""'>" + " and t.legal_person LIKE concat( #{pageComMngRealCompanyDTO.legalPerson}, '%' ) " + " </if> " + "<if test='pageComMngRealCompanyDTO.comName != null and pageComMngRealCompanyDTO.comName.trim() != ""'>" + " and t.com_name LIKE concat( '%',#{pageComMngRealCompanyDTO.comName}, '%' ) " + " </if> " + "<if test='pageComMngRealCompanyDTO.communityId != null and pageComMngRealCompanyDTO.communityId != 0'>" + " and t.community_id = #{pageComMngRealCompanyDTO.communityId} " + " </if> " + " order by t.create_at desc" + "</script>") IPage<ComExServicemanVO> pageQueryComExServiceman(Page page, @Param(value = "comExServicemanDTO") ComExServicemanDTO comExServicemanDTO); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngCarDAO.java
@@ -88,6 +88,9 @@ "<if test='exportComMngCarExcelDTO.communityId != null and exportComMngCarExcelDTO.communityId != 0'>" + " and t.community_id = #{exportComMngCarExcelDTO.communityId} " + " </if> " + "<if test='exportComMngCarExcelDTO.villageId != null and exportComMngCarExcelDTO.villageId != 0'>" + " and t.village_id = #{exportComMngCarExcelDTO.villageId} " + " </if> " + "<if test='exportComMngCarExcelDTO.userName != null and exportComMngCarExcelDTO.userName.trim() != ""'>" + " and t.user_name LIKE concat( #{exportComMngCarExcelDTO.userName}, '%' ) " + " </if> " + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java
@@ -69,10 +69,12 @@ "cmp.remark, " + "cmv.alley, " + "cmp.native_place, " + "cmphu.relation, " + "cmp.nation " + "FROM " + "com_mng_population AS cmp " + "LEFT JOIN com_mng_village AS cmv ON cmv.village_id = cmp.village_id " + "LEFT JOIN com_mng_population_house_user AS cmphu ON cmphu.popul_id = cmp.id " + "<where>" + "<if test='comMngPopulationVO.name != null and comMngPopulationVO.name.trim() != ""'>" + "AND cmp.`name` LIKE concat(#{comMngPopulationVO.name},'%') " + @@ -155,10 +157,12 @@ "cmp.birthday, " + "cmp.update_at, " + "cmp.address, " + "cmp.is_rent " + "cmp.is_rent, " + "cmphu.relation " + "FROM " + "com_mng_population AS cmp " + "LEFT JOIN com_mng_village AS cmv ON cmv.village_id = cmp.village_id " + "LEFT JOIN com_mng_population_house_user AS cmphu ON cmphu.popul_id = cmp.id " + "<where>" + "<if test='comMngPopulationVO.name != null and comMngPopulationVO.name != ""'>" + "AND cmp.`name` LIKE concat(#{comMngPopulationVO.name},'%') " + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationHouseDAO.java
@@ -142,7 +142,7 @@ " AND cmv.alley = #{populationHouseAdminDTO.road} " + " </if> " + "<if test='populationHouseAdminDTO.doorNo != null and populationHouseAdminDTO.doorNo != "" '>" + " AND cmv.houseNum = #{populationHouseAdminDTO.doorNo} " + " AND cmv.house_num = #{populationHouseAdminDTO.doorNo} " + " </if> " + "<if test='populationHouseAdminDTO.floor != null and populationHouseAdminDTO.floor != "" '>" + " AND cmph.floor = #{populationHouseAdminDTO.floor} " + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationHouseUserDAO.java
@@ -27,6 +27,9 @@ @Select("select house_id from com_mng_population_house_user where popul_id = #{populationId}") List<Long> getPopulationHouseIdByUserId(@Param("populationId") Long populationId); @Select("select relation from com_mng_population_house_user where popul_id = #{populationId}") List<Integer> getPopulationRelationByUserId(@Param("populationId") Long populationId); @Select("select popul_id from com_mng_population_house_user where house_id = #{houseId}") List<Long> getPopulationHouseIdByhHosueId(@Param("houseId") Long houseId); springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngRealCompanyDAO.java
@@ -6,9 +6,7 @@ import com.panzhihua.common.model.dtos.community.ExportRealCompanyExcelDTO; import com.panzhihua.common.model.dtos.community.ComMngRealCompanyBelongsDTO; import com.panzhihua.common.model.dtos.community.PageComMngRealCompanyDTO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyBelongsVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyExcelVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyVO; import com.panzhihua.common.model.vos.community.*; import com.panzhihua.service_community.model.dos.ComMngRealCompanyDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -88,7 +86,8 @@ " street.name AS streetName, " + " act.name AS communityName, " + " street.street_id AS streetId, " + " act.community_id AS communityId " + " act.community_id AS communityId, " + " act.create_at AS creatAt " + " FROM " + " com_act act " + " LEFT JOIN com_street street ON act.street_id = street.street_id " + @@ -103,4 +102,7 @@ " limit 1 " + "</script>") ComMngRealCompanyBelongsVO queryComMngRealCompanyBelongs(@Param(value = "pageComMngRealCompanyBelongsDTO") ComMngRealCompanyBelongsDTO comMngRealCompanyBelongsDTO); @Select("select count(id) as companyTotal from com_mng_real_company where community_id = #{communityId}") ComMngRealCompanyTotalVO getComMngRealCompanyTotalByAdmin(@Param("communityId") Long communityId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComExServicemanDO.java
New file @@ -0,0 +1,142 @@ package com.panzhihua.service_community.model.dos; import com.baomidou.mybatisplus.annotation.*; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import lombok.Data; import java.io.Serializable; import java.util.Date; @Data @TableName(value = "com_ex_serviceman") public class ComExServicemanDO implements Serializable { private static final long serialVersionUID = 1L; /** * 自增 id */ @TableId(type = IdType.INPUT) private Long id; /** * 用户 id */ private Long userId; /** * 街道 id */ private Long streetId; /** * 社区 id */ private Long actId; /** * 0是正常1是异常 id */ private Integer status; /** * 机构 */ private String organization; /** * 名字 */ private String name; /** * 身份证号码 */ @EncryptDecryptField private String cardNo; /** * 性别 */ private String sex; /** * 出生年月 */ private String birthday; /** * 残疾人证 */ private String level; /** * 文化程度(取字典表国家编码)) */ private String cultureLevel; /** * 性别名称 */ private String sexName; /** * 联系电话 */ @EncryptDecryptField private String phone; /** * 头像 */ private String image; /** * 民族 */ private String nation; /** * 残疾部位/类别 */ private String disableType; /** * 残疾界别 */ private String disableLevel; /** * 监护人联系电话 */ @EncryptDecryptField private String guardianPhone; /** * 地址 */ private String address; /** * 创建时间 */ @TableField(fill = FieldFill.INSERT) private Date createAt; /** * 创建用户 */ private Long createBy; /** * 修改时间 */ @TableField(fill = FieldFill.UPDATE) private Date updateAt; /** * 修改用户 */ private Long updateBy; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComLowIncomePeopleCopyDO.java
New file @@ -0,0 +1,138 @@ package com.panzhihua.service_community.model.dos; import com.baomidou.mybatisplus.annotation.*; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import lombok.Data; import java.io.Serializable; import java.util.Date; @Data @TableName(value = "com_low_income_people_copy") public class ComLowIncomePeopleCopyDO implements Serializable { private static final long serialVersionUID = 1L; /** * 自增 id */ @TableId(type = IdType.INPUT) private Long id; /** * 用户 id */ private Long userId; /** * 街道 id */ private Long streetId; /** * 社区 id */ private Long actId; /** * 月份 */ private String month; /** * 户主名字 */ private String name; /** * 性别 */ private String sex; /** * 家庭成员人数 */ private String familyMemberTotal; /** * 家庭月收入(元) */ private String familyMonthIncome; /** * 家庭成员身份证号 */ @EncryptDecryptField private String familyMemberCardNo; /** * 文化程度(取字典表国家编码)) */ private String cultureLevel; /** * 性别名称 */ private String sexName; /** * 民族 */ private String nation; /** * 身份证号码 */ @EncryptDecryptField private String cardNo; /** * 联系电话 */ @EncryptDecryptField private String phone; /** * 地址 */ private String address; /** * 出生年月 */ private String birthday; /** * 申请事由 */ private String applyForReason; /** * 备注 */ private String note; /** * 创建时间 */ @TableField(fill = FieldFill.INSERT) private Date createAt; /** * 创建用户 */ private Long createBy; /** * 修改时间 */ @TableField(fill = FieldFill.UPDATE) private Date updateAt; /** * 修改用户 */ private Long updateBy; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComLowSecurityPeopleDO.java
New file @@ -0,0 +1,149 @@ package com.panzhihua.service_community.model.dos; import com.baomidou.mybatisplus.annotation.*; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; @Data @TableName(value = "com_low_security_people") public class ComLowSecurityPeopleDO implements Serializable { private static final long serialVersionUID = 1L; /** * 自增 id */ @TableId(type = IdType.INPUT) private Long id; /** * 用户 id */ private Long userId; /** * 街道 id */ private Long streetId; /** * 社区 id */ private Long actId; /** * 名字 */ private String name; /** * 性别 */ private String sex; /** * 家庭成员身份证号 */ @EncryptDecryptField private String familyMemberCardNo; /** * 家庭情况 */ private String familyStatus; /** * 文化程度(取字典表国家编码)) */ private String cultureLevel; /** * 低保类别 */ private String level; /** * 性别名称 */ private String sexName; /** * 民族 */ private String nation; /** * 身份证号码 */ @EncryptDecryptField private String cardNo; /** * 联系电话 */ @EncryptDecryptField private String phone; /** * 地址 */ private String address; /** * 出生年月 */ private String birthday; /** * 家庭成员 */ private String familyMember; /** * 保障人数 */ private Integer securityNumber; /** * 享受低保金额(元) */ private BigDecimal subsidiesAmount; /** * 享社保卡账号 */ private String socialSecurityCardNumber; /** * 备注 */ private String note; /** * 创建时间 */ @TableField(fill = FieldFill.INSERT) private Date createAt; /** * 创建用户 */ private Long createBy; /** * 修改时间 */ @TableField(fill = FieldFill.UPDATE) private Date updateAt; /** * 修改用户 */ private Long updateBy; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationDO.java
@@ -43,6 +43,11 @@ * 年龄 */ // private Integer age; /** * 证件类型 */ private String certificateType; /** * 身份证号码 */ @@ -53,6 +58,12 @@ * 临时用 */ private String cardNoStr; /** * 默认为身份证到期时间,可以是其他证件到期时间 */ private Date cardNoExpirationDate; /** * 街路巷 */ @@ -78,7 +89,7 @@ */ private Integer politicalOutlook; /** * 工作单位 * 工作单位/学校 */ private String workCompany; /** @@ -98,52 +109,41 @@ * 户口所在地 */ private String censusRegister; /** * 备注 * 人员类型(1、户籍人员2、留守人员3、外地人员4、境外人员) */ private String remark; private String personType; /** * 标签集合(多个标签以,隔开) * 国家code(取字典表国家标准编码) */ private String label; private String country; /** * 创建时间 * 离开日期(境外人员填写) */ @TableField(fill = FieldFill.INSERT) private Date createAt; /** * 修改时间 */ @TableField(fill = FieldFill.UPDATE) private Date updateAt; private Date dateOfDeparture; /** * 籍贯 */ private String nativePlace; /** * 民族 * 民族code,从字典表取国家标准码 */ private String nationCode; /** * 民族 */ private String nation; /** * 是否租住(0.否 1.是) */ private Integer isRent; /** * 小区名字 */ @TableField(exist = false) private String villageName; /** * 与户主关系(1.户主 2.配偶 3.子女 4.孙女 5.父母 6.其他) */ // private Integer relation; // // private String relationStr; /** * 文化程度(1.小学 2.初中 3.高中 4.中专 5.大专 6.本科 7.硕士 8.博士 9.其他) @@ -162,9 +162,49 @@ private String healthy; /** * 居住地址 * 血型 */ private String address; private String bloodType; /** * 宗教信仰 */ private String religion; /** * 职业 */ private String profession; /** * 人员状态:正常、失联、出国(取字典表) */ private String personStatus; /** * 是否死亡 1是 、0否 */ private String death; /** * 头像图片地址 */ private String headPortrait; /** * 月收入情况 */ private String monthlyIncome; /** * 家庭情况(取字典表国家标准编码) */ private String familyStatus; /** * 来华目的(境外人员填写) */ private String goalInChina; /** * 出生年月日 @@ -172,6 +212,74 @@ private String birthday; /** * 抵达日期(境外人员填写) */ private Date dateOfArrival; /** * 标签集合(多个标签以,隔开) */ private String label; /** * 证件照(人面像)照片 */ private String cardPhotoFront; /** * 证件照(国徽面)照片 */ private String cardPhotoBack; /** * 户口本照片 */ private String familyBook; /** * 删除标识 */ private Integer deleteFlag; /** * 备注 */ private String remark; /** * 创建时间 */ @TableField(fill = FieldFill.INSERT) private Date createAt; /** * 修改时间 */ @TableField(fill = FieldFill.UPDATE) private Date updateAt; /** * 小区名字 */ @TableField(exist = false) private String villageName; /** * 与户主关系(1.户主 2.配偶 3.子女 4.孙女 5.父母 6.其他) */ // private Integer relation; // // private String relationStr; /** * 是否居住地 */ private String residence; /** * 居住地址 */ private String address; /** * 居住地房屋id */ private Long houseId; springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationHouseDO.java
@@ -1,6 +1,8 @@ package com.panzhihua.service_community.model.dos; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import java.io.Serializable; springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngPopulationHouseUserDO.java
@@ -63,6 +63,12 @@ private Date createAt; /** * 更改时间 */ @TableField(fill = FieldFill.UPDATE) private Date updateAt; /** * 与户主关系(1.户主 2.配偶 3.子女 4.孙女 5.父母 6.其他) */ public interface relation{ @@ -89,6 +95,7 @@ ", populId=" + populId + ", houseId=" + houseId + ", createAt=" + createAt + ", updateAt=" + updateAt + "}"; } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngVillageDO.java
@@ -2,6 +2,8 @@ import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import java.io.Serializable; import java.util.Date; @@ -18,6 +20,7 @@ * villageId */ @TableId(value = "village_id",type = IdType.INPUT) @JsonSerialize(using = ToStringSerializer.class) private Long villageId; /** * 街路巷 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComExServicemanService.java
New file @@ -0,0 +1,31 @@ package com.panzhihua.service_community.service; import com.baomidou.mybatisplus.extension.service.IService; import com.panzhihua.common.model.dtos.community.CascadeHouseDTO; import com.panzhihua.common.model.dtos.community.ComExServicemanDTO; import com.panzhihua.common.model.dtos.community.ComMngPopulationHouseAdminDTO; import com.panzhihua.common.model.dtos.community.ComMngPopulationHouseEditAdminDTO; import com.panzhihua.common.model.dtos.grid.PageComMngVillageBuildHouseAppDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationRelationHouseDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationSubordinateDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.service_community.model.dos.ComExServicemanDO; import com.panzhihua.service_community.model.dos.ComMngPopulationHouseDO; import java.util.List; /** * @auther txb * @create 2021-07-15 15:52:31 * @describe 退役军人服务类 */ public interface ComExServicemanService extends IService<ComExServicemanDO> { /** * 分页查询退役军人列表 * @param comExServicemanDTO 请求参数 * @return 退役军人列表 */ R getPageExServiceman(ComExServicemanDTO comExServicemanDTO); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComMngRealCompanyService.java
@@ -6,6 +6,8 @@ import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComMngRealCompanyExcelVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyVO; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; @@ -61,4 +63,12 @@ * @return */ R belongsComMngRealCompany(ComMngRealCompanyBelongsDTO comMngRealCompanyBelongsDTO); /** * 社区后台实有单位统计 * * @param communityId 社区id * @return 统计结果 */ R getComMngRealCompanyTotalByAdmin(Long communityId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComExServicemanServiceImpl.java
New file @@ -0,0 +1,56 @@ package com.panzhihua.service_community.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.model.dtos.community.*; import com.panzhihua.common.model.dtos.grid.PageComMngVillageBuildHouseAppDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationRelationHouseDTO; import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationSubordinateDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComExServicemanVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyBelongsVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyExcelVO; import com.panzhihua.common.model.vos.community.ComMngRealCompanyVO; import com.panzhihua.service_community.dao.ComExServicemanDAO; import com.panzhihua.service_community.dao.ComMngRealCompanyDAO; import com.panzhihua.service_community.model.dos.ComExServicemanDO; import com.panzhihua.service_community.model.dos.ComMngRealCompanyDO; import com.panzhihua.service_community.service.ComExServicemanService; import com.panzhihua.service_community.service.ComMngRealCompanyService; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; /** * @description: 退役军人 * @author: txb * @date: 2021/7/15 16:00 */ @Service public class ComExServicemanServiceImpl extends ServiceImpl<ComExServicemanDAO, ComExServicemanDO> implements ComExServicemanService { @Resource private ComExServicemanDAO comExServicemanDAO; @Override public R getPageExServiceman(ComExServicemanDTO comExServicemanDTO) { Page page = new Page<>(); Long pageNum = comExServicemanDTO.getPageNum(); Long pageSize = comExServicemanDTO.getPageSize(); if (null == pageNum || 0 == pageNum) { pageNum = 1l; } if (null == pageSize || 0 == pageSize) { pageSize = 10l; } page.setSize(pageSize); page.setCurrent(pageNum); IPage<ComExServicemanVO> iPage = comExServicemanDAO.pageQueryComExServiceman(page, comExServicemanDTO); return R.ok(iPage); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -180,6 +180,15 @@ // if (!comMngFamilyInfoVOS.isEmpty()) { // comMngPopulationVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS); // } //设置户主关系 List<ComMngPopulationHouseUserDO> comMngPopulationHouseUserDOS = comMngPopulationHouseUserDAO.selectList((new QueryWrapper<ComMngPopulationHouseUserDO>().lambda().eq(ComMngPopulationHouseUserDO::getPopulId, populationId))); if (!comMngPopulationHouseUserDOS.isEmpty()) { comMngPopulationVO.setRelation(comMngPopulationHouseUserDOS.get(comMngPopulationHouseUserDOS.size() - 1).getRelation()); } //设置年龄 if (StringUtils.isNotEmpty(comMngPopulationVO.getBirthday())) { comMngPopulationVO.setAge(AgeUtils.getAgeFromBirthTimes(comMngPopulationVO.getBirthday())); } //查询当前用户电子档信息 if (!StringUtils.isEmpty(comMngPopulationDO.getCardNo())) { @@ -398,6 +407,7 @@ if (populationDO == null) { //不存在实有人口,则新增 populationDO = savePopulationDO(vo, comActDO, comMngVillageDO); ComMngPopulationHouseUserDO comMngPopulationHouseUserDO = savePopulationHouseUser(vo, populationDO, populationHouseDO); } else { //如果存在人口信息,且是自用房,则更新人口默认的房屋信息 if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) { @@ -514,6 +524,19 @@ } comMngPopulationHouseDAO.insert(populationHouseDO); return populationHouseDO; } private ComMngPopulationHouseUserDO savePopulationHouseUser(ComMngPopulationServeExcelVO vo, ComMngPopulationDO comMngPopulationDO, ComMngPopulationHouseDO comMngPopulationHouseDO) { //查询该房屋未建立,执行建立房屋信息 ComMngPopulationHouseUserDO populationHouseUserDO = new ComMngPopulationHouseUserDO(); populationHouseUserDO.setId(Snowflake.getId()); populationHouseUserDO.setPopulId(comMngPopulationDO.getId()); populationHouseUserDO.setHouseId(comMngPopulationHouseDO.getId()); populationHouseUserDO.setRelationId(comMngPopulationHouseDO.getStatus()); populationHouseUserDO.setRelation(vo.getRelation()); populationHouseUserDO.setCreateAt(new Date()); comMngPopulationHouseUserDAO.insert(populationHouseUserDO); return populationHouseUserDO; } /** @@ -713,6 +736,7 @@ if (!vo.getHouseEditDTOList().isEmpty()) { for (ComMngPopulationHouseEditDTO houseEditDto : vo.getHouseEditDTOList()) { ComMngPopulationHouseUserDO populationHouseUserDO = new ComMngPopulationHouseUserDO(); populationHouseUserDO.setId(Snowflake.getId()); populationHouseUserDO.setPopulId(populationDO.getId()); populationHouseUserDO.setHouseId(houseEditDto.getId()); if (houseEditDto.getIsResidence().equals(ComMngPopulationHouseEditDTO.isResidence.yes)) { @@ -745,7 +769,20 @@ } } } populationDO.setUpdateAt(new Date()); ComMngPopulationHouseUserDO comMngPopulationHouseUserDO = comMngPopulationHouseUserDAO.selectOne(new QueryWrapper<ComMngPopulationHouseUserDO>().lambda() .eq(ComMngPopulationHouseUserDO::getPopulId, vo.getId())); if (comMngPopulationHouseUserDO != null) { comMngPopulationHouseUserDO.setRelation(vo.getRelation()); comMngPopulationHouseUserDAO.updateById(comMngPopulationHouseUserDO); }else { comMngPopulationHouseUserDO = new ComMngPopulationHouseUserDO(); comMngPopulationHouseUserDO.setId(Snowflake.getId()); comMngPopulationHouseUserDO.setPopulId(vo.getId()); comMngPopulationHouseUserDO.setRelation(vo.getRelation()); comMngPopulationHouseUserDO.setCreateAt(new Date()); comMngPopulationHouseUserDAO.insert(comMngPopulationHouseUserDO); } if (populationDAO.updateById(populationDO) > 0) { return R.ok(); } else { springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngRealCompanyServiceImpl.java
@@ -145,4 +145,9 @@ return R.ok(comMngRealCompanyBelongsVO); } @Override public R getComMngRealCompanyTotalByAdmin(Long communityId) { return R.ok(this.baseMapper.getComMngRealCompanyTotalByAdmin(communityId)); } } springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventGridMemberWarnLogServiceImpl.java
@@ -137,51 +137,42 @@ .lambda().eq(EventGridMemberGpsLogDO::getPositionStation,EventGridMemberGpsLogDO.positionStation.no)); if(!memberGpsLogDOS.isEmpty()){ memberGpsLogDOS.forEach(memberGpsLog -> { //取出经纬度信息 if(StringUtils.isNotEmpty(memberGpsLog.getLngLat())){ String []lngLat = memberGpsLog.getLngLat().split(","); Double lat = Double.valueOf(lngLat[0]); Double lng = Double.valueOf(lngLat[1]); //遍历所有网格信息匹配网格员的坐标点是否在网格内 Boolean isOk = true; Integer workStatus = 2; for (EventGridDataDO gridData:gridDataDOList) { if(StringUtils.isNotEmpty(gridData.getData())){ List<LatLngVO> latLngList = LngLatUtils.getLatLngFromText(gridData.getData()); if(LngLatUtils.isInPolygon(latLngList,lng,lat)){//匹配通过 isOk = false; memberGpsLog.setGridId(gridData.getId()); memberGpsLog.setGridCommunityId(gridData.getGridCommunityId()); memberGpsLog.setGridStreetId(gridData.getGridStreetId()); memberGpsLog.setGridName(gridData.getGridName()); Integer workStatus = 0; //判断当前网格员与此网格是否有关系 Integer count = eventGridMemberRelationMapper.selectCount(new QueryWrapper<EventGridMemberRelationDO>() .lambda().eq(EventGridMemberRelationDO::getGridMemberId,memberGpsLog.getGridMemberId()) .eq(EventGridMemberRelationDO::getGridId,memberGpsLog.getGridId())); if(count > 0){ //有关系说明此网格员未脱岗 memberGpsLog.setPositionStation(EventGridMemberGpsLogDO.positionStation.normal); isOk = false; workStatus = 1; }else{ //没关系说明此网格员脱岗了,需要添加预警信息 memberGpsLog.setPositionStation(EventGridMemberGpsLogDO.positionStation.abnormal); workStatus = 2; //新增网格员预警信息 EventGridMemberWarnLogDO memberWarnLogDO = new EventGridMemberWarnLogDO(); BeanUtils.copyProperties(memberGpsLog,memberWarnLogDO); memberWarnLogDO.setId(null); memberWarnLogDO.setContent("工作时间未在网格内预警"); memberWarnLogDO.setHappenAt(memberGpsLog.getCreateAt()); this.baseMapper.insert(memberWarnLogDO); } memberGpsLog.setGridId(gridData.getId()); memberGpsLog.setGridCommunityId(gridData.getGridCommunityId()); memberGpsLog.setGridStreetId(gridData.getGridStreetId()); memberGpsLog.setGridName(gridData.getGridName()); memberGpsLog.setPositionStation(EventGridMemberGpsLogDO.positionStation.normal); eventGridMemberGpsLogMapper.updateById(memberGpsLog); //修改用户工作状态 this.baseMapper.setUserWorkStatus(memberGpsLog.getGridMemberId(),workStatus); }else{ break; } } } } if(isOk){//此网格员脱岗 memberGpsLog.setPositionStation(EventGridMemberGpsLogDO.positionStation.abnormal); workStatus = 2; //新增网格员预警信息 EventGridMemberWarnLogDO memberWarnLogDO = new EventGridMemberWarnLogDO(); BeanUtils.copyProperties(memberGpsLog,memberWarnLogDO); @@ -192,19 +183,7 @@ eventGridMemberGpsLogMapper.updateById(memberGpsLog); //修改用户工作状态 this.baseMapper.setUserWorkStatus(memberGpsLog.getGridMemberId(),2); } } } //判断这个网格员的点是否能匹配上所有的网格 if(isOk){ //新增网格员预警信息 EventGridMemberWarnLogDO memberWarnLogDO = new EventGridMemberWarnLogDO(); BeanUtils.copyProperties(memberGpsLog,memberWarnLogDO); memberWarnLogDO.setId(null); memberWarnLogDO.setContent("工作时间未在网格内预警"); memberWarnLogDO.setHappenAt(memberGpsLog.getCreateAt()); this.baseMapper.insert(memberWarnLogDO); this.baseMapper.setUserWorkStatus(memberGpsLog.getGridMemberId(),workStatus); } } }); springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java
@@ -1923,7 +1923,12 @@ */ @Override public R getGridEventStatisticsByApp(Long gridId){ return R.ok(this.baseMapper.getGridEventStatisticsByApp(gridId)); GridEventStatisticsVO result = this.baseMapper.getGridEventStatisticsByApp(gridId); if(result != null){ result.setTodayNum(result.getTodayNum() + result.getZfTodayNum()); result.setMonthNum(result.getMonthNum() + result.getZfMonthNum()); } return R.ok(result); } /** springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventMapper.xml
@@ -598,7 +598,10 @@ AND grid_id = #{gridId} </if> ) AS todayEducationNum, ( SELECT count( id ) FROM `event` WHERE event_category = 2 AND event_status = 2 ) AS educationNum, ( SELECT count( id ) FROM `event` WHERE event_category = 2 AND event_status = 2 <if test="gridId!=null"> AND grid_id = #{gridId} </if>) AS educationNum, ( SELECT count( id ) @@ -615,7 +618,10 @@ AND grid_id = #{gridId} </if> ) AS todaySpecialTotal, ( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 6 AND event_status = 2 AND event_process_status = 2 ) AS specialTotal, ( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 6 AND event_status = 2 AND event_process_status = 2 <if test="gridId!=null"> AND grid_id = #{gridId} </if>) AS specialTotal, ( SELECT count( cmph.id ) @@ -626,7 +632,31 @@ <if test="gridId!=null"> egd.id = #{gridId} </if> ) AS houseTotal ) AS houseTotal, ( SELECT count( id ) FROM event_visiting_tasks WHERE event_status = 2 AND submit_date BETWEEN DATE_FORMAT( CURDATE(), '%Y-%m-%d %H:%i:%s' ) AND NOW() <if test="gridId!=null"> AND grid_id = #{gridId} </if> ) as zfTodayNum, ( SELECT count( id ) FROM event_visiting_tasks WHERE event_status = 2 AND submit_date BETWEEN DATE_FORMAT( DATE_ADD( curdate(), INTERVAL - DAY ( curdate())+ 1 DAY ), '%Y-%m-%d %H:%i:%s' ) AND NOW() <if test="gridId!=null"> AND grid_id = #{gridId} </if> ) as zfMonthNum FROM `event` WHERE @@ -892,7 +922,7 @@ </select> <select id="getUserBaseInfo" parameterType="java.lang.Long" resultType="java.util.Map"> select name,image_url from sys_user where user_id = #{gridMemberId} select nick_name,image_url from sys_user where user_id = #{gridMemberId} </select> <select id="getScreenEventList" parameterType="com.panzhihua.common.model.dtos.community.bigscreen.event.ScreenEventListDTO"