From b69bc7c024582dadf34f88e43ff0bcc0f8e07f9f Mon Sep 17 00:00:00 2001 From: tangxiaobao <303826152@qq.com> Date: 星期一, 16 八月 2021 20:01:13 +0800 Subject: [PATCH] 特殊群体标签重复bug修改 --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java | 159 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 147 insertions(+), 12 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java index 894dd5e..595488a 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.dtos.community.ExportSpecialUserDTO; import com.panzhihua.common.model.dtos.community.ExportUserDTO; +import com.panzhihua.common.model.dtos.user.ComMngUserTagDTO; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.dtos.user.InputUserTagsDTO; import com.panzhihua.common.model.dtos.user.PageInputUserDTO; @@ -16,12 +18,16 @@ import com.panzhihua.common.model.vos.community.ComMngStructHouseVO; import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO; +import com.panzhihua.common.model.vos.user.ComMngTagVO; import com.panzhihua.common.model.vos.user.CommunityUserInfoVO; import com.panzhihua.common.model.vos.user.InputUserInfoVO; import com.panzhihua.common.utlis.IdCard; import com.panzhihua.common.utlis.SensitiveUtil; +import com.panzhihua.common.utlis.StringUtils; +import com.panzhihua.service_user.dao.ComMngUserTagDAO; import com.panzhihua.service_user.dao.SysUserInputDAO; import com.panzhihua.service_user.model.dos.ComMngFamilyInfoDO; +import com.panzhihua.service_user.model.dos.ComMngUserTagDO; import com.panzhihua.service_user.model.dos.SysUserDO; import com.panzhihua.service_user.model.dos.SysUserInputDO; import com.panzhihua.service_user.service.SysUserInputService; @@ -34,6 +40,7 @@ import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -49,6 +56,8 @@ private SysUserInputDAO sysUserInputDAO; @Resource private StringRedisTemplate stringRedisTemplate; + @Resource + private ComMngUserTagDAO comMngUserTagDAO; /** * 批量导入居民用户 * @param list 居民用户集合 @@ -82,12 +91,13 @@ if(count==0){ SysUserInputDO sysUserInputDO=new SysUserInputDO(); String doorNumber = eexcelUserDTO.getDoorNumber(); - List<ComMngStructHouseVO> collect = comMngStructHouseVOS1.stream().filter(comMngStructHouseVO -> comMngStructHouseVO.getHouseName().equals(doorNumber)).collect(Collectors.toList()); - if (ObjectUtils.isEmpty(collect)) { - throw new ServiceException("门牌号后台不存在或格式错误,错误门牌号为"+doorNumber); - }else{ - sysUserInputDO.setHouseCode(collect.get(0).getHouseCode()); - } + //暂时注释门牌号匹配设置房屋编号功能 +// List<ComMngStructHouseVO> collect = comMngStructHouseVOS1.stream().filter(comMngStructHouseVO -> comMngStructHouseVO.getHouseName().equals(doorNumber)).collect(Collectors.toList()); +// if (ObjectUtils.isEmpty(collect)) { +// throw new ServiceException("门牌号后台不存在或格式错误,错误门牌号为"+doorNumber); +// }else{ +// sysUserInputDO.setHouseCode(collect.get(0).getHouseCode()); +// } sysUserInputDO.setAreaId(comMngStructAreaVO.getId()); sysUserInputDO.setCommunityId(comMngStructAreaVO.getCommunityId()); sysUserInputDO.setCompany(eexcelUserDTO.getCompany()); @@ -205,6 +215,9 @@ iPage.getRecords().forEach(record->{ record.setPhone(SensitiveUtil.desensitizedPhoneNumber(record.getPhone())); record.setIdCard(SensitiveUtil.desensitizedIdNumber(record.getIdCard())); + if(!StringUtils.isEmpty(record.getTags()) && record.getTags().endsWith(",")){ + record.setTags(record.getTags().substring(0,record.getTags().length()-1)); + } }); return R.ok(iPage); } @@ -214,22 +227,28 @@ SysUserInputDO userInputDO=new SysUserInputDO(); userInputDO.setId(inputUserTagsDTO.getId()); userInputDO.setTags(inputUserTagsDTO.getTags()); - List<SysUserInputDO> all = sysUserInputDAO.selectList(new QueryWrapper<SysUserInputDO>().lambda().eq(SysUserInputDO::getIdCard,userInputDO.getIdCard())); + List<SysUserInputDO> all = sysUserInputDAO.selectList(new QueryWrapper<SysUserInputDO>().lambda().eq(SysUserInputDO::getId,userInputDO.getId())); all.forEach(d->{ - d.setTags(inputUserTagsDTO.getTags()); + if(!StringUtils.isEmpty(d.getTags())){ + d.setTags(d.getTags()+","+inputUserTagsDTO.getTags()); + }else{ + d.setTags(inputUserTagsDTO.getTags()); + } sysUserInputDAO.updateById(userInputDO); + }); return R.ok(); } @Override - public R export(ExportUserDTO exportUserDTO) { - return null; + public R exportInputUser(ExportUserDTO exportUserDTO) { + List<EexcelUserDTO> eexcelUserDTOS=sysUserInputDAO.selectExport(exportUserDTO); + return R.ok(eexcelUserDTOS); } @Override - public InputUserInfoVO inputUserDetail(Long id) { + public R inputUserDetail(Long id) { InputUserInfoVO inputUserInfoVO = new InputUserInfoVO(); SysUserInputDO sysUserInputDO = sysUserInputDAO.selectById(id); if (!org.springframework.util.ObjectUtils.isEmpty(sysUserInputDO)) { @@ -278,6 +297,122 @@ List<ComMngStructHouseVO> comMngStructHouseVOS = sysUserInputDAO.selectUserHouseList(inputUserInfoVO.getIdCard()); inputUserInfoVO.setComMngStructHouseVOS(comMngStructHouseVOS); } - return inputUserInfoVO; + return R.ok(inputUserInfoVO); + } + + @Override + public R specialInputUser(PageInputUserDTO pageInputUserDTO) { + Page page = new Page<>(); + Long pageNum = pageInputUserDTO.getPageNum(); + Long pageSize = pageInputUserDTO.getPageSize(); + if (null==pageNum||0==pageNum) { + pageNum = 1l; + } + if (null==pageSize||0==pageSize) { + pageSize = 10l; + } + page.setSize(pageSize); + page.setCurrent(pageNum); + IPage<InputUserInfoVO> iPage = sysUserInputDAO.specialInputUser(page, pageInputUserDTO); + iPage.getRecords().forEach(record->{ + record.setPhone(SensitiveUtil.desensitizedPhoneNumber(record.getPhone())); + record.setIdCard(SensitiveUtil.desensitizedIdNumber(record.getIdCard())); + }); + return R.ok(iPage); + } + + @Override + public R specialInputUserTags(ComMngUserTagDTO comMngUserTagDTO) { + Page page = new Page<>(); + Long pageNum = comMngUserTagDTO.getPageNum(); + Long pageSize = comMngUserTagDTO.getPageSize(); + if (null==pageNum||0==pageNum) { + pageNum = 1l; + } + if (null==pageSize||0==pageSize) { + pageSize = 10l; + } + page.setSize(pageSize); + page.setCurrent(pageNum); + IPage<ComMngTagVO> iPage = comMngUserTagDAO.pageSpecialInputUserTags(page, comMngUserTagDTO); + return R.ok(iPage); + } + + @Override + public R saveSpecialInputUserTags(ComMngTagVO comMngTagVO) { + if(null!=comMngTagVO.getId()&&comMngTagVO.getId()!=0){ + ComMngUserTagDO comMngUserTagDO = comMngUserTagDAO.selectById(comMngTagVO.getId()); + if(null==comMngUserTagDO){ + return R.fail("标签不存在"); + } + if(comMngUserTagDO.getSysFlag()==1){ + return R.fail("系统预置标签不可修改"); + } + ComMngUserTagDO exist = comMngUserTagDAO.selectOne(new QueryWrapper<ComMngUserTagDO>().lambda().eq(ComMngUserTagDO::getTagName,comMngTagVO.getTagName())); + if(null!=exist && !exist.getId().equals(comMngTagVO.getId())){ + return R.fail("标签重复"); + } + comMngUserTagDO.setTagName(comMngTagVO.getTagName()); + comMngUserTagDAO.updateById(comMngUserTagDO); + }else{ + ComMngUserTagDO comMngUserTagDO = comMngUserTagDAO.selectOne(new QueryWrapper<ComMngUserTagDO>().lambda().eq(ComMngUserTagDO::getCommunityId,comMngTagVO.getCommunityId()). + eq(ComMngUserTagDO::getTagName,comMngTagVO.getTagName())); + if(comMngUserTagDO != null && comMngUserTagDO.getCommunityId().equals(comMngTagVO.getCommunityId())){ + return R.fail("标签重复"); + } + ComMngUserTagDO comMngUserTagDO1 = new ComMngUserTagDO(); + comMngUserTagDO1.setTagName(comMngTagVO.getTagName()); + comMngUserTagDO1.setCommunityId(comMngTagVO.getCommunityId()); + comMngUserTagDO1.setSysFlag(0); + comMngUserTagDO1.setCreateAt(new Date()); + comMngUserTagDAO.insert(comMngUserTagDO1); + } + return R.ok(); + } + + @Override + public R deleteSpecialInputUserTags(Long id) { + ComMngUserTagDO comMngUserTagDO = comMngUserTagDAO.selectById(id); + if(null==comMngUserTagDO){ + return R.fail("标签不存在"); + } + if(comMngUserTagDO.getSysFlag()==1){ + return R.fail("系统预置标签不可删除"); + } + int delete = comMngUserTagDAO.deleteById(id); + if(delete>0){ + return R.ok(); + } + return R.fail("删除失败"); + } + + @Override + public R deleteSpecialInputUser(Long id) { + SysUserInputDO sysUserInputDO = sysUserInputDAO.selectById(id); + if(null==sysUserInputDO){ + return R.fail("用户不存在"); + } + List<SysUserInputDO> sysUserInputDOS = sysUserInputDAO.selectList(new QueryWrapper<SysUserInputDO>().lambda().eq(SysUserInputDO::getIdCard,sysUserInputDO.getIdCard())); + sysUserInputDOS.forEach(sysUserInput ->{ + sysUserInput.setTags(null); + sysUserInput.setKeyPersonnel(0); + sysUserInput.setSpecialServiceFamily(0); + sysUserInput.setSoldier(0); + sysUserInput.setLowincomeHouseholds(0); + sysUserInput.setLowincomePeople(0); + sysUserInput.setOldPeople(0); + sysUserInput.setDisability(0); + }); + boolean update = this.updateBatchById(sysUserInputDOS); + if(update){ + return R.ok(); + } + return R.fail(); + } + + @Override + public R specialUserExport(ExportSpecialUserDTO exportSpecialUserDTO) { + List<EexcelUserDTO> eexcelUserDTOS=sysUserInputDAO.specialUserExport(exportSpecialUserDTO); + return R.ok(eexcelUserDTOS); } } -- Gitblit v1.7.1