From e4636b43d19c8f288962cd44c9d61ea89a9239fb Mon Sep 17 00:00:00 2001 From: DESKTOP-71BH0QO\L、ming <172680469@qq.com> Date: 星期日, 25 四月 2021 18:44:37 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComOpsHouseDAO.java | 2 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java | 48 +++++++++++++-- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngVolunteerMngDO.java | 4 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngVolunteerMngVO.java | 3 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationImportErrorVO.java | 17 +++++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java | 36 ++++++++--- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RealNameUtil.java | 7 + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java | 13 ++++ springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java | 1 springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java | 2 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngProvinceServiceImpl.java | 6 + 11 files changed, 114 insertions(+), 25 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java index 8fb47aa..2301858 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java @@ -155,6 +155,7 @@ public R addVolunteer(@RequestBody @Validated(AddGroup.class) ComMngVolunteerMngVO comMngVolunteerMngVO){ comMngVolunteerMngVO.setState(1); comMngVolunteerMngVO.setCommunityId(this.getCommunityId()); + comMngVolunteerMngVO.setSubmitUserId(this.getUserId()); return communityService.addVolunteer(comMngVolunteerMngVO); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java index 0a9306b..ba18d57 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java @@ -42,7 +42,7 @@ pageQuestnaireDTO.setForParty(1 == isPartymember.intValue()); pageQuestnaireDTO.setForVolunteer(1 == isVolunteer.intValue()); pageQuestnaireDTO.setUserId(loginUserInfo.getUserId()); - pageQuestnaireDTO.setState(0); +// pageQuestnaireDTO.setState(0); return communityService.pageQuestnaire(pageQuestnaireDTO, loginUserInfo.getCommunityId()); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java index 36fd6b8..00b482f 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/listen/ComMngPopulationServeExcelListen.java @@ -2,6 +2,7 @@ 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.enums.PopulIsOkEnum; @@ -9,11 +10,13 @@ import com.panzhihua.common.enums.PopulSexEnum; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.community.ComMngPopulationImportErrorVO; import com.panzhihua.common.model.vos.community.ComMngPopulationServeExcelVO; import com.panzhihua.common.model.vos.community.ComMngVillageServeExcelVO; import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.utlis.AgeUtils; import com.panzhihua.common.utlis.IdCardUtil; +import com.panzhihua.common.utlis.StringUtils; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -82,18 +85,37 @@ 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(oneData.get(0) == null){ - throw new ServiceException("500", "名字不可为空:第" + index + "行,第1列"); + ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); + importErrorVO.setErrorPosition("第" + index + "行,第1列"); + importErrorVO.setErrorMsg("名字不可为空,请填写姓名"); + populationImportErrorVOList.add(importErrorVO); + index++; + continue; } vo.setName(oneData.get(0)); - if(oneData.get(1) == null){ - throw new ServiceException("500", "身份证号不可为空:第" + index + "行,第2列"); + if(StringUtils.isEmpty(oneData.get(1))){ + ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); + importErrorVO.setErrorPosition("第" + index + "行,第2列"); + importErrorVO.setErrorMsg("身份证号不可为空,请填写身份证号"); + populationImportErrorVOList.add(importErrorVO); + index++; + continue; } +// if(!IdCardUtil.identityValidator(oneData.get(1))){ +// throw new ServiceException("500", "身份证号格式错误:第" + index + "行,第2列"); +// } //判断身份证号码位数 if(oneData.get(1).length() != 18){ - throw new ServiceException("500", "身份证号位数不正确:第" + index + "行,第2列"); + ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); + importErrorVO.setErrorPosition("第" + index + "行,第2列"); + importErrorVO.setErrorMsg("身份证号位数有误,请检查身份证号码是否正确"); + populationImportErrorVOList.add(importErrorVO); + index++; + continue; } vo.setCardNo(oneData.get(1)); //根据身份证号码解析年龄以及性别 @@ -164,12 +186,22 @@ voList.add(vo); index++; } - R r = communityService.listSavePopulationServeExcelVO(voList, communityId); - if (!R.isOk(r)) { - throw new ServiceException(r.getMsg()); + 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)); } } catch (NumberFormatException e) { - throw new ServiceException("500", "填写数据格式错误:第" + index + "行" + e.getMessage()); + List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>(); + ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); + importErrorVO.setErrorPosition("第" + index + "行"); + importErrorVO.setErrorMsg("数据格式有误,请检查文档内数据"); + populationImportErrorVOList.add(importErrorVO); + index++; + throw new ServiceException("500", JSON.toJSONString(populationImportErrorVOList)); } } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationImportErrorVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationImportErrorVO.java new file mode 100644 index 0000000..fd8a0e9 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngPopulationImportErrorVO.java @@ -0,0 +1,17 @@ +package com.panzhihua.common.model.vos.community; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ComMngPopulationImportErrorVO implements Serializable { + + @ExcelProperty(value = "错误位置", index = 0) + private String errorPosition; + + @ExcelProperty(value = "错误原因", index = 0) + private String errorMsg; + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngVolunteerMngVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngVolunteerMngVO.java index c4d257e..5d02c0c 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngVolunteerMngVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngVolunteerMngVO.java @@ -78,4 +78,7 @@ @ApiModelProperty(value = "用户userid",hidden = true) private Long userId; + + @ApiModelProperty(value = "申请提交人ID",hidden = true) + private Long submitUserId; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RealNameUtil.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RealNameUtil.java index 3d20909..85242e1 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RealNameUtil.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RealNameUtil.java @@ -28,7 +28,9 @@ boolean result=false; String headerkey="Authorization"; String headervalue="Basic "; - String basicStr = CLIENT_ID + ":" + SECRET + ":" + System.currentTimeMillis(); + Long time = System.currentTimeMillis(); + String basicStr = CLIENT_ID + ":" + SECRET + ":" + time; + log.info("请求时间戳:" + time); String encodeToString = Base64.getEncoder().encodeToString(basicStr.getBytes()); JSONObject jsonObject=new JSONObject(); jsonObject.put("idNumber",idcard); @@ -36,6 +38,7 @@ String param=jsonObject.toJSONString(); log.info("请求公安实名认证接口,请求地址:" + URL); log.info("请求公安实名认证接口,请求参数:" + param); + log.info("请求公安实名认证接口,请求头参数:" + headervalue + encodeToString); String postByJson = HttpClientUtil.sendPostByJson(URL, param, 0, headerkey, headervalue + encodeToString); log.info("请求公安实名认证接口,返回参数:" + postByJson); int code = JSONObject.parseObject(postByJson).getIntValue("code"); @@ -46,7 +49,7 @@ } public static void main(String[] args) { - boolean b = RealNameUtil.authentication("340823199112282557", "黄宏发f"); + boolean b = RealNameUtil.authentication("340823199112282557", "黄宏发"); System.out.println(b); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComOpsHouseDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComOpsHouseDAO.java index 71410ee..028fb8a 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComOpsHouseDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComOpsHouseDAO.java @@ -71,7 +71,7 @@ "AND d.status in (1,3) \n" + " </if> " + "<if test='pageComOpsHouseDTO.houseCommunityName != null and pageComOpsHouseDTO.houseCommunityName.trim() != ""'>" + - " and d.`house_community_name` LIKE concat( #{pageComOpsHouseDTO.houseCommunityName}, '%' ) \n" + + " and d.`house_community_name` LIKE concat( '%', #{pageComOpsHouseDTO.houseCommunityName}, '%' ) \n" + " </if> " + "<if test='pageComOpsHouseDTO.mobile != null and pageComOpsHouseDTO.mobile.trim() != ""'>" + " and d.`mobile` LIKE concat( #{pageComOpsHouseDTO.mobile}, '%' ) \n" + diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngVolunteerMngDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngVolunteerMngDO.java index e201029..09de831 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngVolunteerMngDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComMngVolunteerMngDO.java @@ -84,4 +84,8 @@ * 社区id */ private Long communityId; + /** + * 申请提交人ID + */ + private Long submitUserId; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java index 0dba0b2..8214ad8 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java @@ -56,9 +56,14 @@ comActActivityDO.setPublishAt(now);//发布时间 } //如果发布时间大于现在时间状态改为进行中 - if(now.getTime()<comActActivityVO.getBeginAt().getTime()){ + /*if(now.getTime()<comActActivityVO.getBeginAt().getTime()){ comActActivityDO.setStatus(3); + }*/ + //结束时间大于当前时间则设置为“进行中” + if(comActActivityVO.getSignUpEnd()!=null && now.getTime()<comActActivityVO.getSignUpEnd().getTime()){ + comActActivityDO.setStatus(4); } + boolean save = this.save(comActActivityDO); if(!save){ return R.fail(); @@ -78,6 +83,12 @@ public R putActivity(ComActActivityVO comActActivityVO) { ComActActivityDO comActActivityDO=new ComActActivityDO(); BeanUtils.copyProperties(comActActivityVO,comActActivityDO); + + //结束时间大于当前时间则设置为“进行中” + Date now = new Date(); + if(comActActivityVO.getSignUpEnd()!=null && now.getTime()<comActActivityVO.getSignUpEnd().getTime()){ + comActActivityDO.setStatus(4); + } boolean b = this.updateById(comActActivityDO); if (b) { return R.ok(); diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java index 6b5f083..e86f969 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java @@ -1,5 +1,6 @@ package com.panzhihua.service_community.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -193,31 +194,38 @@ @Override public R listSavePopulation(List<ComMngPopulationServeExcelVO> list, Long communityId) { - if (list.size() == 0) { - return R.fail("数据为空!"); - } + List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>(); List<ComMngPopulationDO> comMngPopulationDOS = populationDAO.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId, communityId)); //查询该社区所有(实有房屋)小区 // List<ComMngVillageDO> villageDOList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId, communityId)); + ComActDO comActDO = comActDAO.selectById(communityId); + ArrayList<ComMngPopulationDO> populationDOList = Lists.newArrayList(); int index = 2; for (ComMngPopulationServeExcelVO vo : list) { //判断DB和exel数据重复判断 boolean result = comMngPopulationDOS.stream().anyMatch(population -> population.getCardNo().equals(vo.getCardNo())); if (result) { - return R.fail(501,"导入实有人口已存在(" + vo.getCardNo() + ")"); + ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); + importErrorVO.setErrorMsg("导入实有人口已存在(" + vo.getCardNo() + ")"); + importErrorVO.setErrorPosition("第" + index + "行,第2列"); + populationImportErrorVOList.add(importErrorVO); + index++; + continue; +// return R.fail(501,"导入实有人口已存在(" + vo.getCardNo() + ")"); } - index++; - } - ComActDO comActDO = comActDAO.selectById(communityId); - ArrayList<ComMngPopulationDO> populationDOList = Lists.newArrayList(); - list.forEach(vo -> { + ComMngPopulationDO comMngPopulationDO = new ComMngPopulationDO(); //查询街路巷是否存在 ComMngVillageDO comMngVillageDO = comActVillageDAO.selectOne(new QueryWrapper<ComMngVillageDO>().eq("alley",vo.getRoad()).eq("house_num",vo.getDoorNo()).eq("community_id",communityId)); // ComMngVillageDO comMngVillageDO = villageDOList.stream().filter(village -> village.getAlley().equals(vo.getRoad()) && village.getHouseNum().equals(Integer.valueOf(vo.getDoorNo()))).findFirst().orElse(null); BeanUtils.copyProperties(vo, comMngPopulationDO); if (comMngVillageDO == null) { - throw new ServiceException("查无:" + vo.getRoad() + "小区/房租地址,请先新建地址"); + ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO(); + importErrorVO.setErrorMsg("查无:" + vo.getRoad() + "小区/房租地址,请先新建地址"); + importErrorVO.setErrorPosition("第" + index + "行,第7,8列"); + populationImportErrorVOList.add(importErrorVO); + index++; + continue; } List<String> userTag = vo.getUserTagStr().stream().map(userTagStr -> userTagStr.split("\\(")[0]).collect(Collectors.toList()); comMngPopulationDO.setVillageId(comMngVillageDO.getVillageId()); @@ -226,7 +234,13 @@ comMngPopulationDO.setLabel(Joiner.on(",").join(userTag)); comMngPopulationDO.setVillageName(comMngVillageDO.getGroupAt()); populationDOList.add(comMngPopulationDO); - }); + index++; + } + //如果有错误,返回错误 + if(!populationImportErrorVOList.isEmpty()){ + return R.fail(JSON.toJSONString(populationImportErrorVOList)); + } + this.saveBatch(populationDOList); return R.ok("共计导入实有人口数量:" + populationDOList.size()); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngProvinceServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngProvinceServiceImpl.java index bec79a9..47853a8 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngProvinceServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngProvinceServiceImpl.java @@ -10,9 +10,11 @@ import com.panzhihua.service_community.dao.ComMngCityDAO; import com.panzhihua.service_community.dao.ComMngDistrictDAO; import com.panzhihua.service_community.dao.ComMngProvinceDAO; +import com.panzhihua.service_community.dao.ComMngStructAreaDAO; import com.panzhihua.service_community.model.dos.ComMngCityDO; import com.panzhihua.service_community.model.dos.ComMngDistrictDO; import com.panzhihua.service_community.model.dos.ComMngProvinceDO; +import com.panzhihua.service_community.model.dos.ComMngStructAreaDO; import com.panzhihua.service_community.service.ComMngProvinceService; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -34,6 +36,8 @@ @Resource private ComMngDistrictDAO comMngDistrictDAO; + @Resource + private ComMngStructAreaDAO comMngStructAreaDAO; @Override public R getProvince() { @@ -80,7 +84,6 @@ List<ComMngAreaVO> vos = new ArrayList<>(); provinceDOS.forEach(p -> { ComMngAreaVO pvo = new ComMngAreaVO(p.getProvinceAdcode(), p.getProvinceName()); - vos.add(pvo); List<ComMngCityDO> citys = cityDOS.stream().filter(city -> city.getProvinceAdcode().equals(p.getProvinceAdcode()) && city.getCityAdcode().equals(510400)).collect(Collectors.toList()); citys.forEach(c -> { ComMngAreaVO cityVo = new ComMngAreaVO(c.getCityAdcode(), c.getCityName()); @@ -93,6 +96,7 @@ cityVo.getChildren().add(districtVo); }); }); + vos.add(pvo); }); return R.ok(vos); } -- Gitblit v1.7.1