From bacb611129c74f77e75c9789b12f24fef85ecf15 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Tue, 31 May 2022 16:24:04 +0800 Subject: [PATCH 01/39] =?UTF-8?q?=E6=88=91=E7=9A=84=E5=AE=B6=E5=BA=AD?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/MyHomeController.java | 16 ++++++++++++++++ .../java/com/epmet/service/MyHomeService.java | 12 ++++++++++++ .../epmet/service/impl/MyHomeServiceImpl.java | 15 +++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java new file mode 100644 index 0000000000..97e28bd89f --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -0,0 +1,16 @@ +package com.epmet.controller; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/5/31 16:20 + */ +@Slf4j +@RestController +@RequestMapping("myHome") +public class MyHomeController { +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java new file mode 100644 index 0000000000..6b5cc6c5e9 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java @@ -0,0 +1,12 @@ +package com.epmet.service; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/5/31 16:21 + */ +public interface MyHomeService { +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java new file mode 100644 index 0000000000..d6e4ef65ab --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -0,0 +1,15 @@ +package com.epmet.service.impl; + +import com.epmet.service.MyHomeService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/5/31 16:22 + */ +@Service +@Slf4j +public class MyHomeServiceImpl implements MyHomeService { +} From 62b84a208c37b874ca7cc7bbec0ccfd9d03c924d Mon Sep 17 00:00:00 2001 From: Jackwang Date: Wed, 1 Jun 2022 14:11:56 +0800 Subject: [PATCH 02/39] =?UTF-8?q?=E4=B8=80=E6=88=B7=E4=B8=80=E6=A1=A3?= =?UTF-8?q?=E5=8D=95=E4=B8=AA=E4=BA=8C=E7=BB=B4=E7=A0=81=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=EF=BC=9B=E5=8F=8A=E6=89=B9=E9=87=8F=E6=89=93=E5=8C=85zip?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/enums/HouseQrcodeEnum.java | 40 +++++++++ .../epmet/dto/form/HouseQrcodeFormDTO.java | 19 +++++ .../dto/result/IcHouseListResultDTO.java | 5 ++ .../com/epmet/controller/HouseController.java | 72 +++++++++++++++- .../main/java/com/epmet/dao/IcHouseDao.java | 8 ++ .../java/com/epmet/entity/IcHouseEntity.java | 5 ++ .../java/com/epmet/service/HouseService.java | 9 ++ .../epmet/service/impl/HouseServiceImpl.java | 82 ++++++++++++++++++- .../src/main/resources/mapper/IcHouseDao.xml | 16 ++++ 9 files changed, 253 insertions(+), 3 deletions(-) create mode 100644 epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/HouseQrcodeFormDTO.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java new file mode 100644 index 0000000000..2cc8b464cb --- /dev/null +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java @@ -0,0 +1,40 @@ +package com.epmet.commons.tools.enums; + +/** +* @describe: 一户一档二维码信息 +* @author wangtong +* @date 2022/6/1 13:34 +* @params +* @return +*/ +public enum HouseQrcodeEnum { + + SUFFIX(".png", "二维码格式的后缀"), + PREFIX("http://localhost:8080/epmet-oper-gov", "二维码地址的前缀"); + + + private String code; + private String name; + + + HouseQrcodeEnum(String code, String name) { + this.code = code; + this.name = name; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/HouseQrcodeFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/HouseQrcodeFormDTO.java new file mode 100644 index 0000000000..85925ec8f0 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/HouseQrcodeFormDTO.java @@ -0,0 +1,19 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @program: epmet-cloud + * @description: + * @author: wangtong + * @create: 2022-06-01 13:44 + **/ +@Data +public class HouseQrcodeFormDTO implements Serializable { + + @NotNull(message = "id不可为空") + private String id; +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java index 4c1b40288f..d3fa0c0576 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java @@ -81,5 +81,10 @@ public class IcHouseListResultDTO implements Serializable { private Double sort; + /** + * 房屋编码 + */ + private String houseCode; + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index c79551d32a..38a243e368 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -30,13 +30,16 @@ import com.epmet.commons.tools.annotation.MaskResponse; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.dto.form.IcHouseFormDTO; +import com.epmet.commons.tools.enums.HouseQrcodeEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.feign.ResultDataResolver; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.BarcodeUtils; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; @@ -44,6 +47,7 @@ import com.epmet.commons.tools.utils.poi.excel.handler.ExcelFillRowMergeStrategy import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.constants.ImportTaskConstants; +import com.epmet.dao.IcHouseDao; import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; @@ -61,9 +65,12 @@ import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.imageio.ImageIO; +import javax.imageio.stream.ImageOutputStream; import javax.servlet.http.HttpServletResponse; -import java.io.InputStream; -import java.io.PrintWriter; +import java.awt.image.BufferedImage; +import java.io.*; +import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -90,6 +97,9 @@ public class HouseController implements ResultDataResolver { @Autowired private EpmetCommonServiceOpenFeignClient epmetCommonServiceOpenFeignClient; + @Autowired + private IcHouseDao icHouseDao; + @PostMapping("houselist") @MaskResponse(fieldNames = {"ownerIdCard", "ownerPhone"}, fieldsMaskType = { MaskResponse.MASK_TYPE_ID_CARD, MaskResponse.MASK_TYPE_MOBILE }) @@ -415,4 +425,62 @@ public class HouseController implements ResultDataResolver { } } + /** + * Desc: 生成某类型下的二维码 + * @param formDTO + * @author zxc + * @date 2022/3/2 10:32 上午 + */ + @PostMapping("createHouseQrcode") + public void createQrCode(@RequestBody HouseQrcodeFormDTO formDTO, HttpServletResponse response){ + ValidatorUtils.validateEntity(formDTO); + try { + IcHouseListResultDTO house = icHouseDao.selectHouseQrcodeById(formDTO.getId()); + if(null == house){ + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息","未查到房屋信息"); + } + //url组成:小程序地址?房屋编码 + String url = HouseQrcodeEnum.PREFIX.getCode()+"?houseCode="+house.getHouseCode(); + BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName(), url); + //BufferedImage 转 InputStream + ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); + ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream); + ImageIO.write(image, "png", imageOutput); + InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray()); + long length = imageOutput.length(); + String fileName = house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName()+".png"; + response.setContentType("application/octet-stream"); + response.setContentLength((int)length); + response.setHeader("Content-Disposition","attachment;filename="+ URLEncoder.encode(fileName, StrConstant.UTF_8)); + + //输出流 + byte[] bytes = new byte[1024]; + OutputStream outputStream = response.getOutputStream(); + long count = 0; + while(count < length){ + int len = inputStream.read(bytes, 0, 1024); + count +=len; + outputStream.write(bytes, 0, len); + } + outputStream.flush(); + } catch (Exception e) { + log.error("method exception", e); + } + } + + /** + * @describe: 批量下载一户一档的二维码 + * @author wangtong + * @date 2022/5/31 17:58 + * @params [loginUser, formDTO, response] + * @return void + */ + @PostMapping(value = "/downloadZip") + public void downloadZip(@LoginUser TokenDto loginUser, @RequestBody IcHouseListFormDTO formDTO, HttpServletResponse response) throws Exception { + //效验数据 + LoginUserDetailsResultDTO loginUserDetail = getLoginUserDetailsResultDTO(loginUser, "【查询房屋】查询当前staff所在组织信息失败"); + formDTO.setAgencyId(loginUserDetail.getAgencyId()); + ValidatorUtils.validateEntity(formDTO); + houseService.downloadZip(response,formDTO); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java index e1cb4de562..4983e09e52 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java @@ -102,4 +102,12 @@ public interface IcHouseDao extends BaseDao { */ HouseAgencyInfoResultDTO getHouseAgencyInfo(@Param("houseId") String houseId); + /** + * @describe: 通过id查询房屋信息 + * @author wangtong + * @date 2022/6/1 13:56 + * @params [id] + * @return com.epmet.dto.result.IcHouseListResultDTO + */ + IcHouseListResultDTO selectHouseQrcodeById(@Param("id") String id); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java index 9383210f9c..73d6dfb77d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java @@ -112,4 +112,9 @@ public class IcHouseEntity extends BaseEpmetEntity { */ private String remark; + /** + * 房屋编码 + */ + private String houseCode; + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index e60bfb50ae..f663027f15 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -117,4 +117,13 @@ public interface HouseService { * @return */ PageData getHouseUser(TokenDto tokenDto, IcHouseListFormDTO formDTO, Cache haveSearchCache); + + /** + * @describe: 批量下载一户一档的二维码 + * @author wangtong + * @date 2022/5/31 18:00 + * @params [formDTO] + * @return void + */ + void downloadZip(HttpServletResponse response,IcHouseListFormDTO formDTO) throws Exception; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 0d23fd40fa..8a66ed40ea 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSON; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; +import com.epmet.commons.tools.enums.HouseQrcodeEnum; import com.epmet.commons.tools.enums.OrgTypeEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; @@ -18,6 +19,7 @@ import com.epmet.commons.tools.redis.common.CustomerOrgRedis; import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.BarcodeUtils; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.CustomerGridConstant; @@ -52,14 +54,19 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; +import javax.imageio.ImageIO; import javax.servlet.http.HttpServletResponse; -import java.io.InputStream; +import java.awt.image.BufferedImage; +import java.io.*; +import java.net.URLEncoder; import java.text.NumberFormat; import java.util.*; import java.util.concurrent.ExecutorService; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; @Slf4j @Service @@ -760,4 +767,77 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { return list; } + + @Override + public void downloadZip(HttpServletResponse response,IcHouseListFormDTO formDTO) throws Exception { + // 查询pids + String pids = null; + if (StringUtils.isNotBlank(formDTO.getAgencyId())) { + pids = getPids(formDTO.getAgencyId()); + } + if (StringUtils.isNotBlank(formDTO.getLevel()) && OrgTypeEnum.AGENCY.getCode().equals(formDTO.getLevel())){ + pids = getPids(formDTO.getAgencyId()); + } + formDTO.setPids(pids); + + //response + response.reset(); + //文件的名称 + String downloadFilename = "二维码压缩包.zip"; + //转换中文否则可能会产生乱码 + downloadFilename = URLEncoder.encode(downloadFilename, "UTF-8"); + // 指明response的返回对象是文件流 + response.setContentType("application/octet-stream; charset=UTF-8"); + //设置下载格式和名称 + response.setHeader("Content-Disposition", "attachment;filename=" + downloadFilename); + ZipOutputStream zip = new ZipOutputStream(response.getOutputStream()); + + List houseList = icHouseDao.searchHouseByPage(formDTO); + + for(IcHouseListResultDTO house : houseList){ + + BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName(), + HouseQrcodeEnum.PREFIX.getCode()+"?houseCode="+house.getHouseCode()); + + try { + byte[] buf = new byte[8192]; + int len; + //添加到zip + zip.putNextEntry(new ZipEntry(getFileName(house))); + InputStream inputStream = bufferedImageToInputStream(image); + //输出压缩包 + while ((len = inputStream.read(buf)) > 0) { + zip.write(buf, 0, len); + } + inputStream.close(); + } catch (IOException e) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "组装zip信息有误","组装zip信息有误"); + } + } + zip.close(); + } + + /** + * 将BufferedImage转换为InputStream + * + * @param image: 图片流 + * @date 2022/4/8 15:29 + * @author YD + */ + public static InputStream bufferedImageToInputStream(BufferedImage image) throws IOException { + ByteArrayOutputStream os = new ByteArrayOutputStream(); + ImageIO.write(image, "png", os); + try (InputStream input = new ByteArrayInputStream(os.toByteArray())) { + return input; + } + } + + /** + * 获取文件名 + */ + public static String getFileName(IcHouseListResultDTO house) { + return house.getNeighborHoodName() + File.separator +house.getBuildingName() + File.separator +house.getUnitNum() + File.separator + house.getDoorName() + HouseQrcodeEnum.SUFFIX.getCode(); + } + + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index 5fe411e6ee..1eaa2327bd 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -100,6 +100,7 @@ a.OWNER_NAME as ownerName, a.OWNER_PHONE as ownerPhone, a.OWNER_ID_CARD as ownerIdCard, + a.HOUSE_CODE, a.ID as houseId, c.ID as neighborHoodId, @@ -373,5 +374,20 @@ INNER JOIN ic_neighbor_hood nh ON (nh.ID = h.NEIGHBOR_HOOD_ID AND nh.DEL_FLAG = '0') WHERE h.ID = #{houseId} + From 49eb26d653eec81814ca99a0cc9ef2005b8ef2d0 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Wed, 1 Jun 2022 15:19:12 +0800 Subject: [PATCH 03/39] =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E8=A1=A8=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/IcResiUserConfirmDTO.java | 164 ++++++++++++++++++ .../IcResiUserConfirmController.java | 82 +++++++++ .../com/epmet/dao/IcResiUserConfirmDao.java | 16 ++ .../epmet/entity/IcResiUserConfirmEntity.java | 131 ++++++++++++++ .../epmet/excel/IcResiUserConfirmExcel.java | 105 +++++++++++ .../epmet/redis/IcResiUserConfirmRedis.java | 30 ++++ .../service/IcResiUserConfirmService.java | 78 +++++++++ .../impl/IcResiUserConfirmServiceImpl.java | 87 ++++++++++ .../resources/mapper/IcResiUserConfirmDao.xml | 39 +++++ 9 files changed, 732 insertions(+) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/excel/IcResiUserConfirmExcel.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/redis/IcResiUserConfirmRedis.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java create mode 100644 epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java new file mode 100644 index 0000000000..04cef90792 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java @@ -0,0 +1,164 @@ +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +public class IcResiUserConfirmDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id customer.id + */ + private String customerId; + + /** + * 组织Id + */ + private String agencyId; + + /** + * 组织的pids + */ + private String pids; + + /** + * 网格ID + */ + private String gridId; + + /** + * 姓 + */ + private String surname; + + /** + * 名 + */ + private String name; + + /** + * 手机号 + */ + private String mobile; + + /** + * 性别 + */ + private String gender; + + /** + * 身份证号 + */ + private String idCard; + + /** + * 出生日期 + */ + private String birthday; + + /** + * 户籍所在地地区码 + */ + private String hjszdCode; + + /** + * 户籍所在地 + */ + private String hjszd; + + /** + * 现居住地地区码 + */ + private String xjzdCode; + + /** + * 现居住地 + */ + private String xjzd; + + /** + * 民族【字典表】 + */ + private String mz; + + /** + * 与户主关系 + */ + private String yhzgx; + + /** + * 审核状态0未审核,1审核通过,2审核不通过 + */ + private String confirmResult; + + /** + * 审核不通过的原因 + */ + private String reason; + + /** + * 删除标识 0.未删除 1.已删除 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + + /** + * ic_resi_user表id + */ + private String icUserId; + + /** + * 操作类型:新增add 修改 update 删除 delete + */ + private String submitType; + + /** + * 删除原因 + */ + private String deleteReason; + + /** + * 操作说明 + */ + private String operationDescribe; + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java new file mode 100644 index 0000000000..0c2ca8bb4c --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java @@ -0,0 +1,82 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.aop.NoRepeatSubmit; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.IcResiUserConfirmDTO; +import com.epmet.excel.IcResiUserConfirmExcel; +import com.epmet.service.IcResiUserConfirmService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@RestController +@RequestMapping("icResiUserConfirm") +public class IcResiUserConfirmController { + + @Autowired + private IcResiUserConfirmService icResiUserConfirmService; + + @RequestMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = icResiUserConfirmService.page(params); + return new Result>().ok(page); + } + + @RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) + public Result get(@PathVariable("id") String id){ + IcResiUserConfirmDTO data = icResiUserConfirmService.get(id); + return new Result().ok(data); + } + + @NoRepeatSubmit + @PostMapping("save") + public Result save(@RequestBody IcResiUserConfirmDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + icResiUserConfirmService.save(dto); + return new Result(); + } + + @NoRepeatSubmit + @PostMapping("update") + public Result update(@RequestBody IcResiUserConfirmDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + icResiUserConfirmService.update(dto); + return new Result(); + } + + @PostMapping("delete") + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + icResiUserConfirmService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = icResiUserConfirmService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IcResiUserConfirmExcel.class); + } + + + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java new file mode 100644 index 0000000000..b75a795424 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java @@ -0,0 +1,16 @@ +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IcResiUserConfirmEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Mapper +public interface IcResiUserConfirmDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java new file mode 100644 index 0000000000..5fa0f886c9 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java @@ -0,0 +1,131 @@ +package com.epmet.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("ic_resi_user_confirm") +public class IcResiUserConfirmEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id customer.id + */ + private String customerId; + + /** + * 组织Id + */ + private String agencyId; + + /** + * 组织的pids + */ + private String pids; + + /** + * 网格ID + */ + private String gridId; + + /** + * 姓 + */ + private String surname; + + /** + * 名 + */ + private String name; + + /** + * 手机号 + */ + private String mobile; + + /** + * 性别 + */ + private String gender; + + /** + * 身份证号 + */ + private String idCard; + + /** + * 出生日期 + */ + private String birthday; + + /** + * 户籍所在地地区码 + */ + private String hjszdCode; + + /** + * 户籍所在地 + */ + private String hjszd; + + /** + * 现居住地地区码 + */ + private String xjzdCode; + + /** + * 现居住地 + */ + private String xjzd; + + /** + * 民族【字典表】 + */ + private String mz; + + /** + * 与户主关系 + */ + private String yhzgx; + + /** + * 审核状态0未审核,1审核通过,2审核不通过 + */ + private String confirmResult; + + /** + * 审核不通过的原因 + */ + private String reason; + + /** + * ic_resi_user表id + */ + private String icUserId; + + /** + * 操作类型:新增add 修改 update 删除 delete + */ + private String submitType; + + /** + * 删除原因 + */ + private String deleteReason; + + /** + * 操作说明 + */ + private String operationDescribe; + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/IcResiUserConfirmExcel.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/IcResiUserConfirmExcel.java new file mode 100644 index 0000000000..be302d0a35 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/IcResiUserConfirmExcel.java @@ -0,0 +1,105 @@ +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +public class IcResiUserConfirmExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "客户Id customer.id") + private String customerId; + + @Excel(name = "组织Id") + private String agencyId; + + @Excel(name = "组织的pids") + private String pids; + + @Excel(name = "网格ID") + private String gridId; + + @Excel(name = "姓") + private String surname; + + @Excel(name = "名") + private String name; + + @Excel(name = "手机号") + private String mobile; + + @Excel(name = "性别") + private String gender; + + @Excel(name = "身份证号") + private String idCard; + + @Excel(name = "出生日期") + private String birthday; + + @Excel(name = "户籍所在地地区码") + private String hjszdCode; + + @Excel(name = "户籍所在地") + private String hjszd; + + @Excel(name = "现居住地地区码") + private String xjzdCode; + + @Excel(name = "现居住地") + private String xjzd; + + @Excel(name = "民族【字典表】") + private String mz; + + @Excel(name = "与户主关系") + private String yhzgx; + + @Excel(name = "审核状态0未审核,1审核通过,2审核不通过") + private String confirmResult; + + @Excel(name = "审核不通过的原因") + private String reason; + + @Excel(name = "删除标识 0.未删除 1.已删除") + private Integer delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + @Excel(name = "ic_resi_user表id") + private String icUserId; + + @Excel(name = "操作类型:新增add 修改 update 删除 delete") + private String submitType; + + @Excel(name = "删除原因") + private String deleteReason; + + @Excel(name = "操作说明") + private String operationDescribe; + + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/redis/IcResiUserConfirmRedis.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/redis/IcResiUserConfirmRedis.java new file mode 100644 index 0000000000..7d94a32386 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/redis/IcResiUserConfirmRedis.java @@ -0,0 +1,30 @@ +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Component +public class IcResiUserConfirmRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java new file mode 100644 index 0000000000..49ee7ab60e --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java @@ -0,0 +1,78 @@ +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IcResiUserConfirmDTO; +import com.epmet.entity.IcResiUserConfirmEntity; + +import java.util.List; +import java.util.Map; + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +public interface IcResiUserConfirmService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2022-06-01 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2022-06-01 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IcResiUserConfirmDTO + * @author generator + * @date 2022-06-01 + */ + IcResiUserConfirmDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2022-06-01 + */ + void save(IcResiUserConfirmDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2022-06-01 + */ + void update(IcResiUserConfirmDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2022-06-01 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java new file mode 100644 index 0000000000..2b8e58ceff --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java @@ -0,0 +1,87 @@ +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.IcResiUserConfirmDao; +import com.epmet.dto.IcResiUserConfirmDTO; +import com.epmet.entity.IcResiUserConfirmEntity; +import com.epmet.redis.IcResiUserConfirmRedis; +import com.epmet.service.IcResiUserConfirmService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Service +public class IcResiUserConfirmServiceImpl extends BaseServiceImpl implements IcResiUserConfirmService { + + @Autowired + private IcResiUserConfirmRedis icResiUserConfirmRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IcResiUserConfirmDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IcResiUserConfirmDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public IcResiUserConfirmDTO get(String id) { + IcResiUserConfirmEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IcResiUserConfirmDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IcResiUserConfirmDTO dto) { + IcResiUserConfirmEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserConfirmEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IcResiUserConfirmDTO dto) { + IcResiUserConfirmEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserConfirmEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml new file mode 100644 index 0000000000..8d84dc6b0b --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 2a1ba5e48809a5ca3408131d3170ab08bce7e9b2 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Wed, 1 Jun 2022 16:42:12 +0800 Subject: [PATCH 04/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=A2=9E=E5=88=A0=E6=94=B9=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/enums/HomeMemberOperationEnum.java | 42 +++++ .../com/epmet/dto/IcResiUserConfirmDTO.java | 7 +- .../dto/form/IcResiUserConfirmGetDTO.java | 25 +++ .../dto/form/IcResiUserConfirmSubmitDTO.java | 165 ++++++++++++++++++ .../epmet/controller/MyHomeController.java | 75 ++++++++ .../com/epmet/dao/IcResiUserConfirmDao.java | 13 +- .../java/com/epmet/dao/IcResiUserDao.java | 10 ++ .../epmet/entity/IcResiUserConfirmEntity.java | 2 +- .../service/IcResiUserConfirmService.java | 41 ++++- .../impl/IcResiUserConfirmServiceImpl.java | 59 ++++++- .../resources/mapper/IcResiUserConfirmDao.xml | 9 +- .../main/resources/mapper/IcResiUserDao.xml | 17 ++ 12 files changed, 454 insertions(+), 11 deletions(-) create mode 100644 epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HomeMemberOperationEnum.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmGetDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HomeMemberOperationEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HomeMemberOperationEnum.java new file mode 100644 index 0000000000..9009bdb141 --- /dev/null +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HomeMemberOperationEnum.java @@ -0,0 +1,42 @@ +package com.epmet.commons.tools.enums; + +/** + * 组织级别枚举类 + * dev|test|prod + * + * @author jianjun liu + * @date 2020-07-03 11:14 + **/ +public enum HomeMemberOperationEnum { + + + ADD("add", "新增"), + UPDATE("update", "修改"), + DELETE("delele", "删除"); + + + private String code; + private String name; + + + HomeMemberOperationEnum(String code, String name) { + this.code = code; + this.name = name; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java index 04cef90792..4c6749ced7 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java @@ -1,8 +1,9 @@ package com.epmet.dto; +import lombok.Data; + import java.io.Serializable; import java.util.Date; -import lombok.Data; /** @@ -144,7 +145,7 @@ public class IcResiUserConfirmDTO implements Serializable { /** * ic_resi_user表id */ - private String icUserId; + private String icResiUserId; /** * 操作类型:新增add 修改 update 删除 delete @@ -161,4 +162,4 @@ public class IcResiUserConfirmDTO implements Serializable { */ private String operationDescribe; -} \ No newline at end of file +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmGetDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmGetDTO.java new file mode 100644 index 0000000000..10e36979f5 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmGetDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 查询家庭成员信息 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +public class IcResiUserConfirmGetDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * ic_resi_user表id + */ + private String icResiUserId; + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java new file mode 100644 index 0000000000..11cb831f9b --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java @@ -0,0 +1,165 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 居民信息审核表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +public class IcResiUserConfirmSubmitDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id customer.id + */ + private String customerId; + + /** + * 组织Id + */ + private String agencyId; + + /** + * 组织的pids + */ + private String pids; + + /** + * 网格ID + */ + private String gridId; + + /** + * 姓 + */ + private String surname; + + /** + * 名 + */ + private String name; + + /** + * 手机号 + */ + private String mobile; + + /** + * 性别 + */ + private String gender; + + /** + * 身份证号 + */ + private String idCard; + + /** + * 出生日期 + */ + private String birthday; + + /** + * 户籍所在地地区码 + */ + private String hjszdCode; + + /** + * 户籍所在地 + */ + private String hjszd; + + /** + * 现居住地地区码 + */ + private String xjzdCode; + + /** + * 现居住地 + */ + private String xjzd; + + /** + * 民族【字典表】 + */ + private String mz; + + /** + * 与户主关系 + */ + private String yhzgx; + + /** + * 审核状态0未审核,1审核通过,2审核不通过 + */ + private String confirmResult; + + /** + * 审核不通过的原因 + */ + private String reason; + + /** + * 删除标识 0.未删除 1.已删除 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + + /** + * ic_resi_user表id + */ + private String icResiUserId; + + /** + * 操作类型:新增add 修改 update 删除 delete + */ + private String submitType; + + /** + * 删除原因 + */ + private String deleteReason; + + /** + * 操作说明 + */ + private String operationDescribe; + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index 97e28bd89f..66eba278c4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -1,6 +1,18 @@ package com.epmet.controller; +import com.epmet.commons.tools.enums.HomeMemberOperationEnum; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.IcResiUserConfirmDTO; +import com.epmet.dto.form.IcResiUserConfirmGetDTO; +import com.epmet.dto.form.IcResiUserConfirmSubmitDTO; +import com.epmet.service.IcResiUserConfirmService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -13,4 +25,67 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("myHome") public class MyHomeController { + + @Autowired + private IcResiUserConfirmService icResiUserConfirmService; + + /** + * @describe: 新增家庭成员 + * @author wangtong + * @date 2022/6/1 15:50 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("addMember") + public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + dto.setOperationDescribe(HomeMemberOperationEnum.ADD.getCode()); + return icResiUserConfirmService.addMember(dto); + } + + /** + * @describe: 修改家庭成员 + * @author wangtong + * @date 2022/6/1 15:27 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("editMember") + public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + dto.setOperationDescribe(HomeMemberOperationEnum.UPDATE.getCode()); + return icResiUserConfirmService.editMember(dto); + } + + /** + * @describe: 删除家庭成员 + * @author wangtong + * @date 2022/6/1 16:10 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("delMember") + public Result delMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + dto.setOperationDescribe(HomeMemberOperationEnum.DELETE.getCode()); + return icResiUserConfirmService.delMember(dto); + } + + /** + * @describe: 查询家庭成员信息 + * @author wangtong + * @date 2022/6/1 16:14 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("getMemberDetail") + public Result getMemberDetail(@RequestBody IcResiUserConfirmGetDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + return icResiUserConfirmService.getMemberDetail(dto); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java index b75a795424..beb7ae9d77 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java @@ -3,6 +3,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.entity.IcResiUserConfirmEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 居民信息审核表 @@ -12,5 +13,13 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface IcResiUserConfirmDao extends BaseDao { - -} \ No newline at end of file + + /** + * @describe: 根据icResiUserId查询 + * @author wangtong + * @date 2022/6/1 16:01 + * @params [icResiUserId] + * @return com.epmet.entity.IcResiUserConfirmEntity + */ + IcResiUserConfirmEntity selectByIcResiUserId(@Param("icResiUserId") String icResiUserId); +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java index 1a0d5c82d1..73a3f48cdb 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java @@ -19,6 +19,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.tools.dto.result.OptionDataResultDTO; +import com.epmet.dto.IcResiUserConfirmDTO; import com.epmet.dto.IcResiUserDTO; import com.epmet.dto.IcVolunteerPolyDTO; import com.epmet.dto.form.EpidemicPreventionFormDTO; @@ -328,4 +329,13 @@ public interface IcResiUserDao extends BaseDao { * @Date 2022/5/19 10:40 */ List getVolunteerList(@Param("customerId") String customerId, @Param("userId") String userId); + + /** + * @describe: 查询家庭成员信息 + * @author wangtong + * @date 2022/6/1 16:16 + * @params [icResiUserId] + * @return com.epmet.dto.IcResiUserConfirmDTO + */ + IcResiUserConfirmDTO selectMemberDetail(@Param("icResiUserId") String icResiUserId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java index 5fa0f886c9..c11aa5e18b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java @@ -111,7 +111,7 @@ public class IcResiUserConfirmEntity extends BaseEpmetEntity { /** * ic_resi_user表id */ - private String icUserId; + private String icResiUserId; /** * 操作类型:新增add 修改 update 删除 delete diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java index 49ee7ab60e..e49f0e2ac2 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java @@ -2,7 +2,10 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.Result; import com.epmet.dto.IcResiUserConfirmDTO; +import com.epmet.dto.form.IcResiUserConfirmGetDTO; +import com.epmet.dto.form.IcResiUserConfirmSubmitDTO; import com.epmet.entity.IcResiUserConfirmEntity; import java.util.List; @@ -75,4 +78,40 @@ public interface IcResiUserConfirmService extends BaseService getMemberDetail(IcResiUserConfirmGetDTO dto); +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java index 2b8e58ceff..1623f17943 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java @@ -3,12 +3,17 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.utils.Result; import com.epmet.dao.IcResiUserConfirmDao; +import com.epmet.dao.IcResiUserDao; import com.epmet.dto.IcResiUserConfirmDTO; +import com.epmet.dto.form.IcResiUserConfirmGetDTO; +import com.epmet.dto.form.IcResiUserConfirmSubmitDTO; import com.epmet.entity.IcResiUserConfirmEntity; +import com.epmet.entity.IcResiUserEntity; import com.epmet.redis.IcResiUserConfirmRedis; import com.epmet.service.IcResiUserConfirmService; import org.apache.commons.lang3.StringUtils; @@ -32,6 +37,9 @@ public class IcResiUserConfirmServiceImpl extends BaseServiceImpl page(Map params) { IPage page = baseDao.selectPage( @@ -84,4 +92,51 @@ public class IcResiUserConfirmServiceImpl extends BaseServiceImpl getMemberDetail(IcResiUserConfirmGetDTO dto) { + IcResiUserConfirmDTO result = icResiUserDao.selectMemberDetail(dto.getIcResiUserId()); + return new Result().ok(result); + } + +} diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml index 8d84dc6b0b..4c46257dc1 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml @@ -29,11 +29,16 @@ - + + - \ No newline at end of file + diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml index 13de5c56e1..85650573e2 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml @@ -1059,5 +1059,22 @@ AND a.ID = #{userId} + From 20887a3d2abed3bbbf93a47f0eccfa650896d65b Mon Sep 17 00:00:00 2001 From: YUJT Date: Wed, 1 Jun 2022 16:46:39 +0800 Subject: [PATCH 05/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/feign/GovOrgOpenFeignClient.java | 112 ++++++++++-------- .../GovOrgOpenFeignClientFallback.java | 30 +++-- .../epmet/controller/IcHouseController.java | 4 + .../com/epmet/service/IcHouseService.java | 15 ++- .../service/impl/IcHouseServiceImpl.java | 36 ++++-- .../epmet/controller/MyHomeController.java | 20 ++++ .../java/com/epmet/service/MyHomeService.java | 14 +++ .../epmet/service/impl/MyHomeServiceImpl.java | 28 +++++ 8 files changed, 185 insertions(+), 74 deletions(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java index 7e21d51a83..30fd05cc68 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java @@ -94,17 +94,17 @@ public interface GovOrgOpenFeignClient { * @param partyBranchId * @return com.epmet.commons.tools.utils.Result * @author yinzuomei - * @description 根据党支部id,查询党支部信息 + * @description 根据党支部id, 查询党支部信息 * @Date 2020/6/17 18:01 **/ @GetMapping(value = "gov/org/customerpartybranch/get/{id}") Result getPartyBranchById(@PathVariable("id") String partyBranchId); /** - * @return com.epmet.commons.tools.utils.Result * @param partyBranchId + * @return com.epmet.commons.tools.utils.Result * @author yinzuomei - * @description 根据党支部id,删除党支部(存在党员的不允许删除) + * @description 根据党支部id, 删除党支部(存在党员的不允许删除) * @Date 2020/6/17 18:08 **/ @GetMapping(value = "gov/org/customerpartybranch/delete/{id}") @@ -121,8 +121,8 @@ public interface GovOrgOpenFeignClient { Result queryGridInfo(@PathVariable("gridId") String gridId); /** - * @return com.epmet.commons.tools.utils.Result * @param partyBranchId + * @return com.epmet.commons.tools.utils.Result * @author yinzuomei * @description 党支部宗人数-1 * @Date 2020/6/18 18:28 @@ -158,8 +158,8 @@ public interface GovOrgOpenFeignClient { Result> listGridsbystaffid(@PathVariable("staffId") String staffId); /** - * @return com.epmet.commons.tools.utils.Result * @param staffId + * @return com.epmet.commons.tools.utils.Result * @author yinzuomei * @description 发布活动-主办方列表 * @Date 2020/7/23 20:47 @@ -168,7 +168,6 @@ public interface GovOrgOpenFeignClient { Result querySponsorList(@PathVariable("staffId") String staffId); /** - * * @Description 根据网格id查询网格名称 * @Author zxc * @CreatedTime 2020/4/27 9:22 @@ -177,20 +176,19 @@ public interface GovOrgOpenFeignClient { Result getGridNameByGridId(@RequestBody BelongGridNameFormDTO formDTO); /** - * @return com.epmet.commons.tools.utils.Result> * @param staffOrgFormDTO + * @return com.epmet.commons.tools.utils.Result> * @Author yinzuomei * @Description 获取客户对应的根级组织名称 * @Date 2020/4/20 21:37 **/ - @PostMapping(value = "/gov/org/customeragency/getStaffOrgList",consumes = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(value = "/gov/org/customeragency/getStaffOrgList", consumes = MediaType.APPLICATION_JSON_VALUE) Result> getStaffOrgList(StaffOrgFormDTO staffOrgFormDTO); /** - * @description 通过staffId查询跟组织列表 - * * @param input * @return + * @description 通过staffId查询跟组织列表 * @author wxz * @date 2021.10.25 14:53:53 */ @@ -198,8 +196,8 @@ public interface GovOrgOpenFeignClient { Result> getStaffOrgListByStaffId(@RequestBody RootOrgListByStaffIdFormDTO input); /** - * @Description 查询一个网格下的所有工作人员 * @param gridIdFormDTO + * @Description 查询一个网格下的所有工作人员 * @author zxc * @date 2020/8/13 10:46 上午 */ @@ -207,8 +205,8 @@ public interface GovOrgOpenFeignClient { Result> getGridStaffs(@RequestBody CommonGridIdFormDTO gridIdFormDTO); /** - * @Description 查询部门下工作人员 * @param formDTO + * @Description 查询部门下工作人员 * @author zxc * @date 2020/8/13 2:46 下午 */ @@ -216,8 +214,8 @@ public interface GovOrgOpenFeignClient { Result> getDepartmentStaffs(@RequestBody DepartmentIdFormDTO formDTO); /** - * @Description 查询客户下的网格数量 * @param customerIdFormDTO + * @Description 查询客户下的网格数量 * @author zxc * @date 2020/8/14 9:31 上午 */ @@ -225,8 +223,8 @@ public interface GovOrgOpenFeignClient { Result selectGridCount(@RequestBody CustomerIdFormDTO customerIdFormDTO); /** - * @Description 查询机关下工作人员 * @param formDTO + * @Description 查询机关下工作人员 * @author zxc * @date 2020/8/17 */ @@ -234,19 +232,19 @@ public interface GovOrgOpenFeignClient { Result> getAgencyStaffs(@RequestBody AgencyIdFormDTO formDTO); /** - * @Description User模块调用gov-org查询工作人员所在机关的信息以及客户信息 * @param result * @return + * @Description User模块调用gov-org查询工作人员所在机关的信息以及客户信息 * @author wangc * @date 2020.08.17 14:11 - **/ + **/ @PostMapping("/gov/org/customeragency/staffinfoext") Result staffInfoExt(@RequestBody ExtStaffInfoResultDTO result); /** - * @Description 根据staffId,查询当前这个用户的数据权限,对外接口 * @param staffId * @return + * @Description 根据staffId,查询当前这个用户的数据权限,对外接口 * @author wangc * @date 2020.08.17 17:30 **/ @@ -254,9 +252,9 @@ public interface GovOrgOpenFeignClient { Result staffPermissionExt(@PathVariable(value = "staffId") String staffId); /** + * @param result ExtStaffInfoResultDTO.class + * @return Result * @Description User模块调用gov-org查询用户所在机关的信息以及客户信息 - * @param result ExtStaffInfoResultDTO.class - * @return Result * @author wangc * @date 2020.08.17 13:52 **/ @@ -289,7 +287,7 @@ public interface GovOrgOpenFeignClient { Result organizeTree(@PathVariable("agencyId") String agencyId); /** - * @Description 查询org信息 + * @Description 查询org信息 * @Param orgInfoFormDTO * @author zxc * @date 2020/11/10 2:55 下午 @@ -307,8 +305,8 @@ public interface GovOrgOpenFeignClient { Result> getGridListByGridIds(List gridIdList); /** - * @Description 查询网格名 不限制是否同步条件 SYNC_FLAG * @param gridIdList + * @Description 查询网格名 不限制是否同步条件 SYNC_FLAG * @author zxc * @date 2022/1/12 9:37 上午 */ @@ -316,9 +314,9 @@ public interface GovOrgOpenFeignClient { Result> getAllGridListByGridIds(List gridIdList); /** - * @Description 根据网格Id查询用户数据 * @param customerGridFormDTO * @return com.epmet.commons.tools.utils.Result + * @Description 根据网格Id查询用户数据 * @Author liushaowen * @Date 2020/11/18 15:34 */ @@ -337,8 +335,9 @@ public interface GovOrgOpenFeignClient { /** * 根据 网格id,查询同属于一个社区下的所有网格id + * * @param gridId - * @return com.epmet.commons.tools.utils.Result> + * @return com.epmet.commons.tools.utils.Result> * @Author zhangyong * @Date 17:44 2020-12-28 **/ @@ -355,7 +354,7 @@ public interface GovOrgOpenFeignClient { Result getProcessorList(@PathVariable("agencyId") String agencyId); /** - * @Description 查询网格下的网格员 + * @Description 查询网格下的网格员 * @Param gridIds * @author zxc * @date 2021/6/8 3:36 下午 @@ -364,17 +363,17 @@ public interface GovOrgOpenFeignClient { Result> selectGridStaffByGridIds(@RequestBody List gridIds); /** - * @return com.epmet.commons.tools.utils.Result * @param customerId + * @return com.epmet.commons.tools.utils.Result * @author yinzuomei - * @description 根据customerId查询参数(area_code_switch)值open: 选择地区编码必填;closed: 无需选择地区编码;;0409新增返参;没配置,返回closed + * @description 根据customerId查询参数(area_code_switch)值open: 选择地区编码必填;closed: 无需选择地区编码;;0409新增返参;没配置,返回closed * @Date 2021/6/24 16:11 **/ @GetMapping(value = "/gov/org/customeragency/getareacodeswitch/{customerId}") - Result getAreaCodeSwitch(@PathVariable("customerId")String customerId); + Result getAreaCodeSwitch(@PathVariable("customerId") String customerId); /** - * @Description 根据网格ID查询pids + * @Description 根据网格ID查询pids * @Param gridId * @author zxc * @date 2021/7/16 9:52 上午 @@ -384,6 +383,7 @@ public interface GovOrgOpenFeignClient { /** * 工作人员的个人信息 + * * @param fromDTO * @return */ @@ -391,25 +391,25 @@ public interface GovOrgOpenFeignClient { Result queryStaffProfile(@RequestBody StaffInfoFromDTO fromDTO); /** - * @Description 查询工作人员名字 【xx组织-章三】 + * @Description 查询工作人员名字 【xx组织-章三】 * @Param userId * @author zxc * @date 2021/8/4 4:23 下午 */ @PostMapping("/gov/org/staff/staffname") - Result staffName(@RequestParam("userId")String userId); + Result staffName(@RequestParam("userId") String userId); /** - * @Description 查询网格名字 + * @Description 查询网格名字 * @Param gridName * @author zxc * @date 2021/8/4 4:26 下午 */ @PostMapping("/gov/org/customergrid/selectgridname") - Result gridName(@RequestParam("gridId")String gridId); + Result gridName(@RequestParam("gridId") String gridId); /** - * @Description 根据类型查询组织名称 + * @Description 根据类型查询组织名称 * @Param formList * @author zxc * @date 2021/8/4 6:14 下午 @@ -418,19 +418,19 @@ public interface GovOrgOpenFeignClient { Result> selectOrgNameByType(@RequestBody List formList); /** - * @Description 根据人查询所在组织 + * @Description 根据人查询所在组织 * @Param userId * @author zxc * @date 2021/8/5 10:08 上午 */ @PostMapping("/gov/org/customergrid/selectorgsbyuserid") - Result> selectOrgsByUserId(@RequestParam("userId")String userId); + Result> selectOrgsByUserId(@RequestParam("userId") String userId); /** * 架构里面的人 * * @param formDTO - * @return com.epmet.commons.tools.utils.Result> + * @return com.epmet.commons.tools.utils.Result> * @author yinzuomei * @date 2021/8/19 2:27 下午 */ @@ -459,9 +459,8 @@ public interface GovOrgOpenFeignClient { @PostMapping("/gov/org/grid/getbaseinfo") Result getGridBaseInfoByGridId(CustomerGridFormDTO customerGridFormDTO); - @PostMapping(value = "/gov/org/house/queryListHouseInfo",consumes = MediaType.APPLICATION_JSON_VALUE) - Result> queryListHouseInfo(@RequestBody Set houseIds, @RequestParam("customerId") String customerId); - + @PostMapping(value = "/gov/org/house/queryListHouseInfo", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> queryListHouseInfo(@RequestBody Set houseIds, @RequestParam("customerId") String customerId); /** @@ -476,6 +475,7 @@ public interface GovOrgOpenFeignClient { /** * 获取网格下支部小组 + * * @Param formDTO * @Return {@link Result>} * @Author zhaoqifeng @@ -518,13 +518,13 @@ public interface GovOrgOpenFeignClient { Result> getNeighborHoodOptions(IcNeighborHoodDTO dto); /** - * @Description 查询房屋信息 * @param idCard + * @Description 查询房屋信息 * @author zxc * @date 2021/11/3 3:30 下午 */ @PostMapping("/gov/org/ichouse/selecthouseinfobyidcard") - Result> selectHouseInfoByIdCard(@RequestParam("idCard")String idCard,@RequestParam("customerId")String customerId); + Result> selectHouseInfoByIdCard(@RequestParam("idCard") String idCard, @RequestParam("customerId") String customerId); @GetMapping("/gov/org/ichouse/{id}") Result get(@PathVariable("id") String id); @@ -533,7 +533,7 @@ public interface GovOrgOpenFeignClient { Result> buildingListByIds(@RequestBody List buildingIdList); @PostMapping("/gov/org/building/buildinglistbyidsPage/{pageNo}/{pageSize}") - Result buildinglistbyidsPage(@RequestBody List buildingIdList,@PathVariable("pageNo") Integer pageNo,@PathVariable("pageSize")Integer pageSize); + Result buildinglistbyidsPage(@RequestBody List buildingIdList, @PathVariable("pageNo") Integer pageNo, @PathVariable("pageSize") Integer pageSize); @PostMapping("/gov/org/icneighborhood/getlistbyids") Result> getListByIds(@RequestBody List ids); @@ -542,18 +542,19 @@ public interface GovOrgOpenFeignClient { Result> getGridIListByAgency(@PathVariable("agencyId") String agencyId); /** - * @Description 查询下级agencyId * @param orgId + * @Description 查询下级agencyId * @author zxc * @date 2021/12/9 4:42 下午 */ @PostMapping("/gov/org/agency/getsonagencyid") - Result> getSonAgencyId(@RequestParam("orgId")String orgId,@RequestParam("type")String type); + Result> getSonAgencyId(@RequestParam("orgId") String orgId, @RequestParam("type") String type); // /icbuilding/{id}?id=demoData /** * 根据ID查询楼栋信息 + * * @param id * @return */ @@ -562,6 +563,7 @@ public interface GovOrgOpenFeignClient { /** * 通过ID查询小区信息 + * * @param id * @return */ @@ -571,6 +573,7 @@ public interface GovOrgOpenFeignClient { /** * 运营端-客户管理,修改客户信息,调用gov-org服务,修改组织区划开关,修改根组织areaCode入参。 + * * @param formDTO * @return */ @@ -591,6 +594,7 @@ public interface GovOrgOpenFeignClient { /** * 查询单元 + * * @param id * @return */ @@ -599,15 +603,17 @@ public interface GovOrgOpenFeignClient { /** * Desc: 查询网格下所有的工作人员 + * * @param gridId * @author zxc * @date 2022/3/21 16:02 */ @PostMapping("/gov/org/customerstaffgrid/getallstaffbygridid") - Result> getAllStaffByGridId(@RequestParam("gridId")String gridId); + Result> getAllStaffByGridId(@RequestParam("gridId") String gridId); /** * Desc: 根据身份证查询房屋名 + * * @param idCards * @author zxc * @date 2022/4/12 16:42 @@ -617,7 +623,7 @@ public interface GovOrgOpenFeignClient { /** * Desc: 房屋更新 - * @param tokenDTO + * * @param formDTO * @author zxc * @date 2022/5/11 09:46 @@ -627,9 +633,21 @@ public interface GovOrgOpenFeignClient { /** * 直属网格+下一级组织 + * * @param agencyId * @return */ @GetMapping("/gov/org/customeragency/subOrgList/{agencyId}") - Result> subOrgList(@PathVariable("agencyId")String agencyId); + Result> subOrgList(@PathVariable("agencyId") String agencyId); + + /** + * 根据房屋编码查询房屋信息 + * + * @param houseCode + * @return com.epmet.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2022/6/1/0001 16:18 + */ + @GetMapping("/gov/org/ichouse/getbyhousecode/{houseCode}") + Result getByHouseCode(@PathVariable("houseCode") String houseCode); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java index adac11545a..8f0cab1bb1 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java @@ -67,12 +67,12 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { @Override public Result queryGridInfo(String gridId) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridInfo",gridId); + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridInfo", gridId); } @Override public Result decrPartyBranchMember(String partyBranchId) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "decrPartyBranchMember",partyBranchId); + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "decrPartyBranchMember", partyBranchId); } @Override @@ -276,7 +276,7 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { } @Override - public Result> queryListHouseInfo(Set houseIds ,String customerId) { + public Result> queryListHouseInfo(Set houseIds, String customerId) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "queryListHouseInfo", houseIds, customerId); } @@ -311,7 +311,7 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { } @Override - public Result> selectHouseInfoByIdCard(String idCard,String customerId) { + public Result> selectHouseInfoByIdCard(String idCard, String customerId) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "selectHouseInfoByIdCard", idCard, customerId); } @@ -324,9 +324,10 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { public Result> buildingListByIds(List buildingIdList) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "buildingListByIds", buildingIdList); } + @Override - public Result buildinglistbyidsPage(List buildingIdList,Integer pageNo,Integer pageSize) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "buildinglistbyidsPage", buildingIdList,pageNo,pageSize); + public Result buildinglistbyidsPage(List buildingIdList, Integer pageNo, Integer pageSize) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "buildinglistbyidsPage", buildingIdList, pageNo, pageSize); } @Override @@ -340,8 +341,8 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { } @Override - public Result> getSonAgencyId(String orgId,String type) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getSonAgencyId", orgId,type); + public Result> getSonAgencyId(String orgId, String type) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getSonAgencyId", orgId, type); } @Override @@ -372,7 +373,7 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { @Override public Result> getStaffGridList(String customerId, String orgId, String orgType) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getStaffGridList",customerId, orgId, orgType); + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getStaffGridList", customerId, orgId, orgType); } /** @@ -400,8 +401,8 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { } @Override - public Result houseUpdate( IcHouseAddFormDTO formDTO) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "houseUpdate",formDTO); + public Result houseUpdate(IcHouseAddFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "houseUpdate", formDTO); } /** @@ -412,6 +413,11 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { */ @Override public Result> subOrgList(String agencyId) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "subOrgList",agencyId); + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "subOrgList", agencyId); + } + + @Override + public Result getByHouseCode(String houseCode) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getByHouseCode", houseCode); } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java index edbdde8625..e6f1522353 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java @@ -90,4 +90,8 @@ public class IcHouseController { return new Result>().ok(icHouseService.getHousesNameByIdCards(idCards)); } + @GetMapping("getbyhousecode/{houseCode}") + public Result getByHouseCode(@PathVariable("houseCode") String houseCode){ + return new Result().ok(icHouseService.getByHouseCode(houseCode)); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java index bd82a396c1..161aad6c4e 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java @@ -92,12 +92,12 @@ public interface IcHouseService extends BaseService { List getHouseOption(HouseFormDTO formDTO); /** - * @Description 查询房屋信息 * @param idCard + * @Description 查询房屋信息 * @author zxc * @date 2021/11/3 3:30 下午 */ - List selectHouseInfoByIdCard(String idCard,String customerId); + List selectHouseInfoByIdCard(String idCard, String customerId); /** * @Description 楼栋下房屋列表 @@ -111,6 +111,7 @@ public interface IcHouseService extends BaseService { /** * Desc: 批量更新房屋信息 + * * @param houses * @author zxc * @date 2022/3/25 10:22 @@ -119,10 +120,20 @@ public interface IcHouseService extends BaseService { /** * Desc: 根据身份证查询房屋名 + * * @param idCards * @author zxc * @date 2022/4/12 16:42 */ List getHousesNameByIdCards(List idCards); + /** + * 根据房屋编码查询房屋信息 + * + * @param houseCode + * @return com.epmet.dto.IcHouseDTO + * @author work@yujt.net.cn + * @date 2022/6/1/0001 16:21 + */ + IcHouseDTO getByHouseCode(String houseCode); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java index e884a6904c..1e8ef58148 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java @@ -1,8 +1,10 @@ package com.epmet.service.impl; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; @@ -78,8 +80,8 @@ public class IcHouseServiceImpl extends BaseServiceImpl getWrapper(Map params){ - String id = (String)params.get(FieldConstant.ID_HUMP); + private QueryWrapper getWrapper(Map params) { + String id = (String) params.get(FieldConstant.ID_HUMP); QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); @@ -152,7 +154,7 @@ public class IcHouseServiceImpl extends BaseServiceImpl list = baseDao.selectList(wrapper); - if(CollectionUtils.isEmpty(list)) { + if (CollectionUtils.isEmpty(list)) { return Collections.emptyList(); } return list.stream().map(item -> { @@ -165,15 +167,15 @@ public class IcHouseServiceImpl extends BaseServiceImpl selectHouseInfoByIdCard(String idCard,String customerId) { - List result = baseDao.selectHouseInfoByIdCard(idCard,customerId); - if (CollectionUtils.isEmpty(result)){ + public List selectHouseInfoByIdCard(String idCard, String customerId) { + List result = baseDao.selectHouseInfoByIdCard(idCard, customerId); + if (CollectionUtils.isEmpty(result)) { return new ArrayList<>(); } return result; @@ -189,19 +191,19 @@ public class IcHouseServiceImpl extends BaseServiceImpl getHouseList(TokenDto tokenDto, HouseFormDTO formDTO) { + public List getHouseList(TokenDto tokenDto, HouseFormDTO formDTO) { //查询楼栋下房屋列表 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(IcHouseEntity::getBuildingId, formDTO.getBuildingId()); wrapper.last("ORDER BY CONVERT ( HOUSE_NAME USING gbk ) ASC"); List list = baseDao.selectList(wrapper); - if(CollectionUtils.isEmpty(list)) { + if (CollectionUtils.isEmpty(list)) { return Collections.emptyList(); } //获取居民分类列表 IcResiCategoryStatsConfigDTO categoryDto = new IcResiCategoryStatsConfigDTO(); categoryDto.setCustomerId(tokenDto.getCustomerId()); - Result> categoryResult = operCustomizeOpenFeignClient.getCategoryList(categoryDto); + Result> categoryResult = operCustomizeOpenFeignClient.getCategoryList(categoryDto); if (!categoryResult.success()) { throw new RenException(categoryResult.getCode(), categoryResult.getMsg()); } @@ -220,7 +222,7 @@ public class IcHouseServiceImpl extends BaseServiceImpl getHousesNameByIdCards(List idCards) { - if (CollectionUtils.isEmpty(idCards)){ + if (CollectionUtils.isEmpty(idCards)) { return new ArrayList<>(); } return baseDao.getHousesNameByIdCards(idCards); } + @Override + public IcHouseDTO getByHouseCode(String houseCode) { + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(IcHouseEntity::getHouseCode, houseCode); + return ConvertUtils.sourceToTarget(baseDao.selectOne(lqw), IcHouseDTO.class); + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index 97e28bd89f..21166bb191 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -1,9 +1,20 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.HomeUserBriefResultDTO; +import com.epmet.service.MyHomeService; import lombok.extern.slf4j.Slf4j; +import oracle.jdbc.proxy.annotation.Post; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * @Description * @Author zhaoqifeng @@ -13,4 +24,13 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("myHome") public class MyHomeController { + + @Autowired + private MyHomeService myHomeService; + + + @PostMapping("memberList/{houseCode}") + public Result> selectListHomeMember(@PathVariable("houseCode") String houseCode, @LoginUser TokenDto tokenDto) { + return new Result().ok(myHomeService.selectListHomeMember(houseCode, tokenDto.getCustomerId())); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java index 6b5cc6c5e9..1eae402d2f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java @@ -1,12 +1,26 @@ package com.epmet.service; +import com.epmet.dto.result.HomeUserBriefResultDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.util.List; + /** * @Description * @Author zhaoqifeng * @Date 2022/5/31 16:21 */ public interface MyHomeService { + + /** + * 查询家庭成员 + * + * @param houseCode 房屋编码 + * @param customerId + * @return java.util.List + * @author work@yujt.net.cn + * @date 2022/6/1/0001 16:12 + */ + List selectListHomeMember(String houseCode, String customerId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java index d6e4ef65ab..6bf9364dd9 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -1,9 +1,19 @@ package com.epmet.service.impl; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.IcHouseDTO; +import com.epmet.dto.result.HomeUserBriefResultDTO; +import com.epmet.feign.GovOrgFeignClient; +import com.epmet.feign.GovOrgOpenFeignClient; +import com.epmet.service.IcResiUserService; import com.epmet.service.MyHomeService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.compress.utils.Lists; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * @Description * @Author zhaoqifeng @@ -12,4 +22,22 @@ import org.springframework.stereotype.Service; @Service @Slf4j public class MyHomeServiceImpl implements MyHomeService { + + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; + + @Autowired + private IcResiUserService icResiUserService; + + @Override + public List selectListHomeMember(String houseCode, String customerId) { + + Result byHouseCode = govOrgOpenFeignClient.getByHouseCode(houseCode); + + if (byHouseCode.success() && null != byHouseCode.getData()) { + return icResiUserService.listHomeUserBrief(byHouseCode.getData().getId(), customerId); + } + + return Lists.newArrayList(); + } } From dce674b84443c9d3d47f3cf9eb64ee772cdbe208 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Wed, 1 Jun 2022 16:54:28 +0800 Subject: [PATCH 06/39] =?UTF-8?q?=E6=88=BF=E5=B1=8B=E7=BC=96=E7=A0=81?= =?UTF-8?q?=E8=BE=85=E5=8A=A9=E8=A1=A8=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/IcHouseCodeInfoDTO.java | 39 +++++++++ .../controller/IcHouseCodeInfoController.java | 82 +++++++++++++++++ .../com/epmet/dao/IcHouseCodeInfoDao.java | 16 ++++ .../epmet/entity/IcHouseCodeInfoEntity.java | 44 ++++++++++ .../com/epmet/excel/IcHouseCodeInfoExcel.java | 30 +++++++ .../com/epmet/redis/IcHouseCodeInfoRedis.java | 30 +++++++ .../epmet/service/IcHouseCodeInfoService.java | 78 +++++++++++++++++ .../impl/IcHouseCodeInfoServiceImpl.java | 87 +++++++++++++++++++ .../resources/mapper/IcHouseCodeInfoDao.xml | 14 +++ 9 files changed, 420 insertions(+) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseCodeInfoController.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseCodeInfoExcel.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/IcHouseCodeInfoRedis.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseCodeInfoService.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseCodeInfoServiceImpl.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java new file mode 100644 index 0000000000..b2f77dc49b --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java @@ -0,0 +1,39 @@ +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +public class IcHouseCodeInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 客户id + */ + private String customerId; + + /** + * 所属楼栋id + */ + private String buildingId; + + /** + * 最大的楼栋编码序列号 + */ + private Integer buildingMaxNum; + + /** + * 该楼栋下最大的房屋编码序列号 + */ + private Integer houseMaxNum; + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseCodeInfoController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseCodeInfoController.java new file mode 100644 index 0000000000..c063dd3256 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseCodeInfoController.java @@ -0,0 +1,82 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.aop.NoRepeatSubmit; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.IcHouseCodeInfoDTO; +import com.epmet.excel.IcHouseCodeInfoExcel; +import com.epmet.service.IcHouseCodeInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@RestController +@RequestMapping("icHouseCodeInfo") +public class IcHouseCodeInfoController { + + @Autowired + private IcHouseCodeInfoService icHouseCodeInfoService; + + @RequestMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = icHouseCodeInfoService.page(params); + return new Result>().ok(page); + } + + @RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) + public Result get(@PathVariable("id") String id){ + IcHouseCodeInfoDTO data = icHouseCodeInfoService.get(id); + return new Result().ok(data); + } + + @NoRepeatSubmit + @PostMapping("save") + public Result save(@RequestBody IcHouseCodeInfoDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + icHouseCodeInfoService.save(dto); + return new Result(); + } + + @NoRepeatSubmit + @PostMapping("update") + public Result update(@RequestBody IcHouseCodeInfoDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + icHouseCodeInfoService.update(dto); + return new Result(); + } + + @PostMapping("delete") + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + icHouseCodeInfoService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = icHouseCodeInfoService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IcHouseCodeInfoExcel.class); + } + + + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java new file mode 100644 index 0000000000..5a31066fee --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java @@ -0,0 +1,16 @@ +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IcHouseCodeInfoEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Mapper +public interface IcHouseCodeInfoDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java new file mode 100644 index 0000000000..6b656623ef --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java @@ -0,0 +1,44 @@ +package com.epmet.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("ic_house_code_info") +public class IcHouseCodeInfoEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户id + */ + private String customerId; + + /** + * 所属楼栋id + */ + private String buildingId; + + /** + * 最大的楼栋编码序列号 + */ + private Integer buildingMaxNum; + + /** + * 该楼栋下最大的房屋编码序列号 + */ + private Integer houseMaxNum; + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseCodeInfoExcel.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseCodeInfoExcel.java new file mode 100644 index 0000000000..8e7d11bbed --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/IcHouseCodeInfoExcel.java @@ -0,0 +1,30 @@ +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Data +public class IcHouseCodeInfoExcel { + + @Excel(name = "客户id") + private String customerId; + + @Excel(name = "所属楼栋id") + private String buildingId; + + @Excel(name = "最大的楼栋编码序列号") + private Integer buildingMaxNum; + + @Excel(name = "该楼栋下最大的房屋编码序列号") + private Integer houseMaxNum; + + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/IcHouseCodeInfoRedis.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/IcHouseCodeInfoRedis.java new file mode 100644 index 0000000000..112f7b69ca --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/IcHouseCodeInfoRedis.java @@ -0,0 +1,30 @@ +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Component +public class IcHouseCodeInfoRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseCodeInfoService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseCodeInfoService.java new file mode 100644 index 0000000000..2b424e9fbe --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseCodeInfoService.java @@ -0,0 +1,78 @@ +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.IcHouseCodeInfoDTO; +import com.epmet.entity.IcHouseCodeInfoEntity; + +import java.util.List; +import java.util.Map; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +public interface IcHouseCodeInfoService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2022-06-01 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2022-06-01 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return IcHouseCodeInfoDTO + * @author generator + * @date 2022-06-01 + */ + IcHouseCodeInfoDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2022-06-01 + */ + void save(IcHouseCodeInfoDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2022-06-01 + */ + void update(IcHouseCodeInfoDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2022-06-01 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseCodeInfoServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseCodeInfoServiceImpl.java new file mode 100644 index 0000000000..aa9f67bc10 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseCodeInfoServiceImpl.java @@ -0,0 +1,87 @@ +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.IcHouseCodeInfoDao; +import com.epmet.dto.IcHouseCodeInfoDTO; +import com.epmet.entity.IcHouseCodeInfoEntity; +import com.epmet.redis.IcHouseCodeInfoRedis; +import com.epmet.service.IcHouseCodeInfoService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-06-01 + */ +@Service +public class IcHouseCodeInfoServiceImpl extends BaseServiceImpl implements IcHouseCodeInfoService { + + @Autowired + private IcHouseCodeInfoRedis icHouseCodeInfoRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, IcHouseCodeInfoDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, IcHouseCodeInfoDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public IcHouseCodeInfoDTO get(String id) { + IcHouseCodeInfoEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, IcHouseCodeInfoDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(IcHouseCodeInfoDTO dto) { + IcHouseCodeInfoEntity entity = ConvertUtils.sourceToTarget(dto, IcHouseCodeInfoEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(IcHouseCodeInfoDTO dto) { + IcHouseCodeInfoEntity entity = ConvertUtils.sourceToTarget(dto, IcHouseCodeInfoEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml new file mode 100644 index 0000000000..6fcac58bed --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file From 1291fef486478af00dcf81bf98bc4955374e131f Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Wed, 1 Jun 2022 17:16:41 +0800 Subject: [PATCH 07/39] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=BB=91=E5=AE=9A?= =?UTF-8?q?=E6=88=BF=E5=B1=8B=EF=BC=8C=E6=88=BF=E5=B1=8B=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/RegisterAndBindFormDTO.java | 70 +++++++++ .../epmet/dto/result/HomeInfoResultDTO.java | 22 +++ .../epmet/controller/MyHomeController.java | 41 +++-- .../java/com/epmet/service/MyHomeService.java | 24 ++- .../epmet/service/impl/MyHomeServiceImpl.java | 147 +++++++++++++++++- 5 files changed, 287 insertions(+), 17 deletions(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RegisterAndBindFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/HomeInfoResultDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RegisterAndBindFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RegisterAndBindFormDTO.java new file mode 100644 index 0000000000..5869490ead --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RegisterAndBindFormDTO.java @@ -0,0 +1,70 @@ +package com.epmet.dto.form; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/6/1 9:39 + */ +@NoArgsConstructor +@Data +public class RegisterAndBindFormDTO implements Serializable { + + private static final long serialVersionUID = 7068763631425911170L; + private String customerId; + private String userId; + /** + * 姓 + */ + private String surname; + /** + * 名 + */ + private String name; + /** + * 昵称 + */ + private String nickname; + /** + * 头像 + */ + private String headImgUrl; + /** + * 身份证 + */ + private String idCard; + /** + * 手机号 + */ + private String mobile; + /** + * 网格 + */ + private String gridId; + /** + * 小区 + */ + private String villageId; + /** + * 楼栋 + */ + private String buildId; + /** + * 单元 + */ + private String unitId; + /** + * 房屋 + */ + private String homeId; + /** + * 路牌号 + */ + private String address; + + private String visitId; +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/HomeInfoResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/HomeInfoResultDTO.java new file mode 100644 index 0000000000..5ff591455f --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/HomeInfoResultDTO.java @@ -0,0 +1,22 @@ +package com.epmet.dto.result; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/6/1 16:49 + */ +@NoArgsConstructor +@Data +public class HomeInfoResultDTO implements Serializable { + + private static final long serialVersionUID = -6109420020924607393L; + private String icResiUserId; + private String houseName; + private String houseCode; + private String qrCodeUrl; +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index 64da6e6e16..87ef1f64d8 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -1,16 +1,8 @@ package com.epmet.controller; import com.epmet.commons.tools.annotation.LoginUser; -import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.result.HomeUserBriefResultDTO; -import com.epmet.service.MyHomeService; -import lombok.extern.slf4j.Slf4j; -import oracle.jdbc.proxy.annotation.Post; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; import com.epmet.commons.tools.enums.HomeMemberOperationEnum; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.AddGroup; @@ -18,13 +10,14 @@ import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.dto.IcResiUserConfirmDTO; import com.epmet.dto.form.IcResiUserConfirmGetDTO; import com.epmet.dto.form.IcResiUserConfirmSubmitDTO; +import com.epmet.dto.form.RegisterAndBindFormDTO; +import com.epmet.dto.result.HomeInfoResultDTO; +import com.epmet.dto.result.HomeUserBriefResultDTO; import com.epmet.service.IcResiUserConfirmService; +import com.epmet.service.MyHomeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -110,4 +103,26 @@ public class MyHomeController { return icResiUserConfirmService.getMemberDetail(dto); } + /** + * 注册绑定家庭信息 + * + * @Param tokenDto + * @Param formDTO + * @Return {@link Result} + * @Author zhaoqifeng + * @Date 2022/6/1 10:26 + */ + @PostMapping("registerAndBind") + public Result registerAndBind(@LoginUser TokenDto tokenDto, RegisterAndBindFormDTO formDTO) { + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setUserId(tokenDto.getUserId()); + myHomeService.registerAndBind(formDTO); + return new Result(); + } + + @PostMapping("homeInfo") + public Result getHomeInfo(@LoginUser TokenDto tokenDto) { + HomeInfoResultDTO result = myHomeService.getHomeInfo(tokenDto); + return new Result().ok(result); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java index 1eae402d2f..0d1667b03d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/MyHomeService.java @@ -1,8 +1,9 @@ package com.epmet.service; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.dto.form.RegisterAndBindFormDTO; +import com.epmet.dto.result.HomeInfoResultDTO; import com.epmet.dto.result.HomeUserBriefResultDTO; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; import java.util.List; @@ -12,6 +13,25 @@ import java.util.List; * @Date 2022/5/31 16:21 */ public interface MyHomeService { + /** + * 注册绑定房屋信息 + * + * @Param formDTO + * @Return + * @Author zhaoqifeng + * @Date 2022/6/1 16:33 + */ + void registerAndBind(RegisterAndBindFormDTO formDTO); + + /** + * 获取用户绑定的房屋信息 + * + * @Param tokenDto + * @Return {@link HomeInfoResultDTO} + * @Author zhaoqifeng + * @Date 2022/6/1 16:52 + */ + HomeInfoResultDTO getHomeInfo(TokenDto tokenDto); /** * 查询家庭成员 diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java index 6bf9364dd9..741e3fd82b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -1,17 +1,41 @@ package com.epmet.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.EpmetException; +import com.epmet.commons.tools.redis.common.CustomerIcHouseRedis; +import com.epmet.commons.tools.redis.common.CustomerOrgRedis; +import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; +import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.dao.IcResiUserDao; +import com.epmet.dao.UserBaseInfoDao; +import com.epmet.dao.UserResiInfoDao; +import com.epmet.dao.UserRoleDao; import com.epmet.dto.IcHouseDTO; +import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.form.GetRoleKeyListFormDTO; +import com.epmet.dto.form.RegisterAndBindFormDTO; +import com.epmet.dto.result.HomeInfoResultDTO; import com.epmet.dto.result.HomeUserBriefResultDTO; -import com.epmet.feign.GovOrgFeignClient; +import com.epmet.dto.result.ResiUserBaseInfoResultDTO; +import com.epmet.entity.IcResiUserEntity; +import com.epmet.entity.UserBaseInfoEntity; +import com.epmet.entity.UserResiInfoEntity; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.IcResiUserService; import com.epmet.service.MyHomeService; +import com.epmet.service.UserBaseInfoService; +import com.epmet.service.UserResiInfoService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.compress.utils.Lists; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.List; /** @@ -25,9 +49,20 @@ public class MyHomeServiceImpl implements MyHomeService { @Autowired private GovOrgOpenFeignClient govOrgOpenFeignClient; - @Autowired private IcResiUserService icResiUserService; + @Resource + private UserRoleDao userRoleDao; + @Resource + private UserResiInfoService userResiInfoService; + @Resource + private UserResiInfoDao userResiInfoDao; + @Resource + private UserBaseInfoService userBaseInfoService; + @Resource + private UserBaseInfoDao userBaseInfoDao; + @Resource + private IcResiUserDao icResiUserDao; @Override public List selectListHomeMember(String houseCode, String customerId) { @@ -40,4 +75,112 @@ public class MyHomeServiceImpl implements MyHomeService { return Lists.newArrayList(); } + + /** + * 注册绑定房屋信息 + * + * @Param formDTO + * @Return + * @Author zhaoqifeng + * @Date 2022/6/1 16:33 + */ + @Override + public void registerAndBind(RegisterAndBindFormDTO formDTO) { + //TODO 是否走进入网格(entergrid)流程 + //1.判断是否是居民,如果不是则注册居民,如果是则更新居民信息 + GetRoleKeyListFormDTO getRoleKeyListFormDTO = new GetRoleKeyListFormDTO(); + getRoleKeyListFormDTO.setUserId(formDTO.getUserId()); + getRoleKeyListFormDTO.setGridId(formDTO.getGridId()); + List roleList = userRoleDao.selectUserRoleKeyList(getRoleKeyListFormDTO); + + if (CollectionUtils.isNotEmpty(roleList) && roleList.contains("registered_resi")) { + //更新user_resi_info和user_base_info的信息 + UserResiInfoEntity userResiInfo = new UserResiInfoEntity(); + userResiInfo.setSurname(formDTO.getSurname()); + userResiInfo.setName(formDTO.getName()); + userResiInfo.setIdNum(formDTO.getIdCard()); + userResiInfo.setRegMobile(formDTO.getMobile()); + userResiInfo.setResiVisitId(formDTO.getVisitId()); + userResiInfo.setDistrict(formDTO.getAddress()); + + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(UserResiInfoEntity::getCustomerId, formDTO.getCustomerId()); + wrapper.eq(UserResiInfoEntity::getUserId, formDTO.getUserId()); + userResiInfoDao.update(userResiInfo, wrapper); + + UserBaseInfoEntity userBaseInfoEntity = ConvertUtils.sourceToTarget(userResiInfo, UserBaseInfoEntity.class); + userBaseInfoService.insertOrUpdate(userBaseInfoEntity); + } else { + //注册居民 + UserResiInfoDTO userResiInfoDTO = ConvertUtils.sourceToTarget(formDTO, UserResiInfoDTO.class); + userResiInfoDTO.setIdNum(formDTO.getIdCard()); + userResiInfoDTO.setRegMobile(formDTO.getMobile()); + userResiInfoDTO.setResiVisitId(formDTO.getVisitId()); + userResiInfoDTO.setDistrict(formDTO.getAddress()); + userResiInfoDTO.setCustomerId(formDTO.getCustomerId()); + userResiInfoDTO.setApp("resi"); + userResiInfoService.saveResiInfo(userResiInfoDTO); + } + //2.添加ic_resi_user信息 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getCustomerId, formDTO.getCustomerId()); + wrapper.eq(IcResiUserEntity::getIdCard, formDTO.getIdCard()); + IcResiUserEntity icUser = icResiUserDao.selectOne(wrapper); + + HouseInfoCache houseInfo = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(), formDTO.getHomeId()); + if (null == houseInfo) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取房屋信息失败", "获取房屋信息失败"); + } + AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(houseInfo.getAgencyId()); + if (null == agencyInfo) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取组织信息失败", "获取组织信息失败"); + } + IcResiUserEntity icUserEntity = ConvertUtils.sourceToTarget(formDTO, IcResiUserEntity.class); + icUserEntity.setName(formDTO.getSurname() + formDTO.getName()); + icUserEntity.setAgencyId(houseInfo.getAgencyId()); + icUserEntity.setPids(agencyInfo.getPids()); + if (null != icUser) { + icUserEntity.setId(icUser.getId()); + icResiUserDao.updateById(icUserEntity); + } else { + icResiUserDao.insert(icUserEntity); + } + } + + /** + * 获取用户绑定的房屋信息 + * + * @param tokenDto + * @Param tokenDto + * @Return {@link HomeInfoResultDTO} + * @Author zhaoqifeng + * @Date 2022/6/1 16:52 + */ + @Override + public HomeInfoResultDTO getHomeInfo(TokenDto tokenDto) { + HomeInfoResultDTO resultDto = new HomeInfoResultDTO(); + ResiUserBaseInfoResultDTO baseInfo = userBaseInfoDao.selecUserBaseInfoByUserId(tokenDto.getUserId()); + if (null == baseInfo) { + return resultDto; + } + + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getCustomerId, tokenDto.getCustomerId()); + wrapper.eq(IcResiUserEntity::getIdCard, baseInfo.getIdNum()); + IcResiUserEntity icUser = icResiUserDao.selectOne(wrapper); + + if (null == icUser) { + return resultDto; + } + resultDto.setIcResiUserId(icUser.getId()); + //TODO 获取房屋信息 + HouseInfoCache houseInfo = CustomerIcHouseRedis.getHouseInfo(tokenDto.getCustomerId(), icUser.getHomeId()); + if (null == houseInfo) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取房屋信息失败", "获取房屋信息失败"); + } + resultDto.setHouseName(houseInfo.getAllName()); + resultDto.setHouseCode(null); + resultDto.setQrCodeUrl(null); + return resultDto; + } } From 9a3a02a80c16ef9d2540b1bc3216aaf8629a0729 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Wed, 1 Jun 2022 17:23:28 +0800 Subject: [PATCH 08/39] =?UTF-8?q?=E7=94=9F=E6=88=90=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/IcHouseCodeInfoDTO.java | 12 ++--- .../com/epmet/dao/IcHouseCodeInfoDao.java | 24 +++++++-- .../epmet/entity/IcHouseCodeInfoEntity.java | 9 ++-- .../java/com/epmet/service/HouseService.java | 10 ++++ .../epmet/service/impl/HouseServiceImpl.java | 50 +++++++++++++++++++ .../resources/mapper/IcHouseCodeInfoDao.xml | 12 ++++- 6 files changed, 101 insertions(+), 16 deletions(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java index b2f77dc49b..7189bcfee0 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseCodeInfoDTO.java @@ -1,12 +1,12 @@ package com.epmet.dto; -import java.io.Serializable; -import java.util.Date; import lombok.Data; +import java.io.Serializable; + /** - * + * * * @author generator generator@elink-cn.com * @since v1.0.0 2022-06-01 @@ -29,11 +29,11 @@ public class IcHouseCodeInfoDTO implements Serializable { /** * 最大的楼栋编码序列号 */ - private Integer buildingMaxNum; + private String buildingMaxNum; /** * 该楼栋下最大的房屋编码序列号 */ - private Integer houseMaxNum; + private String houseMaxNum; -} \ No newline at end of file +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java index 5a31066fee..60767589c2 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java @@ -3,14 +3,32 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.entity.IcHouseCodeInfoEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** - * + * * * @author generator generator@elink-cn.com * @since v1.0.0 2022-06-01 */ @Mapper public interface IcHouseCodeInfoDao extends BaseDao { - -} \ No newline at end of file + + /** + * @describe: 通过客户id和楼栋id查询 + * @author wangtong + * @date 2022/6/1 17:01 + * @params [customerId, buildingId] + * @return com.epmet.entity.IcHouseCodeInfoEntity + */ + IcHouseCodeInfoEntity selectByCuIdAndBuilId(@Param("customerId") String customerId,@Param("buildingId") String buildingId); + + /** + * @describe: 查询数据库里最大的楼栋编号 + * @author wangtong + * @date 2022/6/1 17:15 + * @params [] + * @return com.epmet.entity.IcHouseCodeInfoEntity + */ + IcHouseCodeInfoEntity selectMaxHouseMaxNum(); +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java index 6b656623ef..5be7707802 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java @@ -1,15 +1,12 @@ package com.epmet.entity; import com.baomidou.mybatisplus.annotation.TableName; - import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; -import java.util.Date; - /** - * + * * * @author generator generator@elink-cn.com * @since v1.0.0 2022-06-01 @@ -34,11 +31,11 @@ public class IcHouseCodeInfoEntity extends BaseEpmetEntity { /** * 最大的楼栋编码序列号 */ - private Integer buildingMaxNum; + private String buildingMaxNum; /** * 该楼栋下最大的房屋编码序列号 */ - private Integer houseMaxNum; + private String houseMaxNum; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index f663027f15..ac466900c2 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -126,4 +126,14 @@ public interface HouseService { * @return void */ void downloadZip(HttpServletResponse response,IcHouseListFormDTO formDTO) throws Exception; + + /** + * @describe: 生成自增的房屋编码,编码规则: + * 国家统计局社区区划代码(370211010042)12位数字+楼栋序列码(5位数字自增)+房屋码(5位数字自增) + * @author wangtong + * @date 2022/6/1 16:58 + * @params [customerId-客户id, buildingId-楼栋id, areaCode-区划代码] + * @return java.lang.String + */ + String createHouseCode(String customerId,String buildingId,String areaCode); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 8a66ed40ea..f9d10fa601 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -30,6 +30,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.entity.IcHouseChangeDetailEntity; import com.epmet.entity.IcHouseChangeRecordEntity; +import com.epmet.entity.IcHouseCodeInfoEntity; import com.epmet.entity.IcHouseEntity; import com.epmet.enums.HouseChangeEnums; import com.epmet.enums.HousePurposeEnums; @@ -111,6 +112,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { private IcHouseChangeDetailService changeDetailService; @Autowired private HouseService houseService; + @Autowired + private IcHouseCodeInfoDao icHouseCodeInfoDao; @Override @@ -839,5 +842,52 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { return house.getNeighborHoodName() + File.separator +house.getBuildingName() + File.separator +house.getUnitNum() + File.separator + house.getDoorName() + HouseQrcodeEnum.SUFFIX.getCode(); } + @Override + public String createHouseCode(String customerId, String buildingId, String areaCode) { + String result = ""; + IcHouseCodeInfoEntity codeEntity = icHouseCodeInfoDao.selectByCuIdAndBuilId(customerId, buildingId); + if (null == codeEntity) { + //查询数据库里最大的楼栋编号 + IcHouseCodeInfoEntity maxCodeEntity = icHouseCodeInfoDao.selectMaxHouseMaxNum(); + //新增楼栋信息 + IcHouseCodeInfoEntity newEntity = new IcHouseCodeInfoEntity(); + if (null != maxCodeEntity) { + Integer buildingMaxNum = Integer.valueOf(maxCodeEntity.getBuildingMaxNum()) + 1; + result = areaCode + getNewMaxIndex(buildingMaxNum) + "00001"; + } else { + //数据库里面的第一条数据 + result = areaCode + "00001" + "00001"; + newEntity.setBuildingMaxNum("00001"); + newEntity.setHouseMaxNum("00001"); + } + newEntity.setCustomerId(customerId); + newEntity.setBuildingId(buildingId); + icHouseCodeInfoDao.insert(newEntity); + } else { + Integer houseMaxNum = Integer.valueOf(codeEntity.getHouseMaxNum()) + 1; + result = areaCode + codeEntity.getBuildingMaxNum() + getNewMaxIndex(houseMaxNum); + //更新该楼栋下最大的房间编号 + codeEntity.setHouseMaxNum(getNewMaxIndex(houseMaxNum)); + icHouseCodeInfoDao.updateById(codeEntity); + } + return result; + } + + + /** + * @return java.lang.String + * @describe: 把数字转换成5位的字符串,不够的前面补0 + * @author wangtong + * @date 2022/6/1 14:27 + * @params [maxIndex] + */ + private String getNewMaxIndex(Integer maxIndex) { + String result = maxIndex.toString(); + while (result.length() < 5) { + result = "0" + result; + } + return result; + } + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml index 6fcac58bed..b57ef127a2 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml @@ -9,6 +9,16 @@ + + - \ No newline at end of file + From 1899f79c5b2ac27dc2e5c71b1ba723637ae3db79 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Wed, 1 Jun 2022 17:44:43 +0800 Subject: [PATCH 09/39] =?UTF-8?q?=E5=B1=85=E6=B0=91=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=8F=98=E6=9B=B4=E5=AE=A1=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IcResiUserConfirmController.java | 15 ++++++++- .../epmet/controller/MyHomeController.java | 2 +- .../service/IcResiUserConfirmService.java | 10 ++++++ .../impl/IcResiUserConfirmServiceImpl.java | 33 +++++++++++++++++++ 4 files changed, 58 insertions(+), 2 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java index 0c2ca8bb4c..fc1e27a907 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserConfirmController.java @@ -7,8 +7,8 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.AddGroup; -import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.IcResiUserConfirmDTO; import com.epmet.excel.IcResiUserConfirmExcel; import com.epmet.service.IcResiUserConfirmService; @@ -78,5 +78,18 @@ public class IcResiUserConfirmController { } + /** + * 审核 + * + * @Param tokenDto + * @Return {@link Result} + * @Author zhaoqifeng + * @Date 2022/6/1 17:26 + */ + @PostMapping("confirm") + public Result confirm(@RequestBody IcResiUserConfirmDTO dto) { + icResiUserConfirmService.confirm(dto); + return new Result(); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index 87ef1f64d8..9aff52b474 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -113,7 +113,7 @@ public class MyHomeController { * @Date 2022/6/1 10:26 */ @PostMapping("registerAndBind") - public Result registerAndBind(@LoginUser TokenDto tokenDto, RegisterAndBindFormDTO formDTO) { + public Result registerAndBind(@LoginUser TokenDto tokenDto, @RequestBody RegisterAndBindFormDTO formDTO) { formDTO.setCustomerId(tokenDto.getCustomerId()); formDTO.setUserId(tokenDto.getUserId()); myHomeService.registerAndBind(formDTO); diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java index e49f0e2ac2..692b12e514 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java @@ -114,4 +114,14 @@ public interface IcResiUserConfirmService extends BaseService getMemberDetail(IcResiUserConfirmGetDTO dto); + + /** + * 审核 + * + * @Param dto + * @Return + * @Author zhaoqifeng + * @Date 2022/6/1 17:27 + */ + void confirm(IcResiUserConfirmDTO dto); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java index 1623f17943..11da6a1409 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; @@ -139,4 +140,36 @@ public class IcResiUserConfirmServiceImpl extends BaseServiceImpl Date: Wed, 1 Jun 2022 17:55:20 +0800 Subject: [PATCH 10/39] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=B8=80=E6=88=B7?= =?UTF-8?q?=E4=B8=80=E6=A1=A3=E4=BA=8C=E7=BB=B4=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/HouseController.java | 12 ++-- .../java/com/epmet/service/HouseService.java | 9 +++ .../epmet/service/impl/HouseServiceImpl.java | 39 +++++++++++ .../impl/IcNeighborHoodServiceImpl.java | 3 +- .../epmet/util/ConvertToMultipartFile.java | 64 +++++++++++++++++++ 5 files changed, 120 insertions(+), 7 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/util/ConvertToMultipartFile.java diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 38a243e368..163d56fc7c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -52,6 +52,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.feign.OssFeignClient; import com.epmet.service.HouseService; import com.epmet.util.ExcelPoiUtils; import com.google.common.cache.Cache; @@ -426,11 +427,12 @@ public class HouseController implements ResultDataResolver { } /** - * Desc: 生成某类型下的二维码 - * @param formDTO - * @author zxc - * @date 2022/3/2 10:32 上午 - */ + * @describe: 下载房屋编码 + * @author wangtong + * @date 2022/6/1 17:24 + * @params [formDTO, response] + * @return void + */ @PostMapping("createHouseQrcode") public void createQrCode(@RequestBody HouseQrcodeFormDTO formDTO, HttpServletResponse response){ ValidatorUtils.validateEntity(formDTO); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index ac466900c2..157c124b7d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -136,4 +136,13 @@ public interface HouseService { * @return java.lang.String */ String createHouseCode(String customerId,String buildingId,String areaCode); + + /** + * @describe: 生成一户一码的二维码地址 + * @author wangtong + * @date 2022/6/1 17:41 + * @params [houseId] + * @return java.lang.String + */ + String createHouseQrcodeUrl(String houseId); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index f9d10fa601..8e011f6685 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -12,6 +12,7 @@ import com.epmet.commons.tools.enums.HouseQrcodeEnum; import com.epmet.commons.tools.enums.OrgTypeEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; +import com.epmet.commons.tools.exception.ExceptionUtils; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.feign.ResultDataResolver; import com.epmet.commons.tools.page.PageData; @@ -38,10 +39,12 @@ import com.epmet.enums.HouseRentFlagEnums; import com.epmet.enums.HouseTypeEnums; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.feign.OssFeignClient; import com.epmet.model.HouseInfoModel; import com.epmet.model.ImportHouseInfoListener; import com.epmet.redis.IcHouseRedis; import com.epmet.service.*; +import com.epmet.util.ConvertToMultipartFile; import com.epmet.util.ExcelPoiUtils; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -53,6 +56,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.imageio.ImageIO; @@ -114,6 +118,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { private HouseService houseService; @Autowired private IcHouseCodeInfoDao icHouseCodeInfoDao; + @Autowired + private OssFeignClient ossFeignClient; @Override @@ -873,6 +879,39 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { return result; } + @Override + public String createHouseQrcodeUrl(String houseId) { + if (StringUtils.isBlank(houseId)) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "房屋id不可为空", "房屋id不可为空"); + } + try { + IcHouseListResultDTO house = icHouseDao.selectHouseQrcodeById(houseId); + if (null == house) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); + } + //url组成:小程序地址?房屋编码 + String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); + BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); + + //BufferedImage 转化为 ByteArrayOutputStream + ByteArrayOutputStream out = new ByteArrayOutputStream(); + ImageIO.write(image, "jpg", out); + //ByteArrayOutputStream 转化为 byte[] + byte[] imageByte = out.toByteArray(); + //将 byte[] 转为 MultipartFile + MultipartFile multipartFile = new ConvertToMultipartFile(imageByte, "newNamepic", "pic1", "jpg", imageByte.length); + Result uploadResult = ossFeignClient.uploadImportTaskDescFile(multipartFile); + if (uploadResult == null || !uploadResult.success()) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败", "上传一户一档二维码失败"); + } else { + return uploadResult.getData().getUrl(); + } + } catch (Exception e) { + String errormsg = ExceptionUtils.getErrorStackTrace(e); + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败" + errormsg, "上传一户一档二维码失败" + errormsg); + } + } + /** * @return java.lang.String diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java index ee0d37afef..d8cfccb001 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java @@ -58,7 +58,6 @@ import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.entity.*; import com.epmet.excel.IcNeighborHoodExcel; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; -import com.epmet.feign.OssFeignClient; import com.epmet.model.ImportNeighborHoodInfoListener; import com.epmet.model.NeighborHoodInfoModel; import com.epmet.redis.IcHouseRedis; @@ -118,7 +117,7 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl Date: Wed, 1 Jun 2022 17:58:30 +0800 Subject: [PATCH 11/39] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=B8=80=E6=88=B7?= =?UTF-8?q?=E4=B8=80=E6=A1=A3=E4=BA=8C=E7=BB=B4=E7=A0=81-=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/HouseServiceImpl.java | 4 ++-- .../com/epmet/service/impl/IcNeighborHoodServiceImpl.java | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 8e011f6685..e12de14a5c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -895,11 +895,11 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { //BufferedImage 转化为 ByteArrayOutputStream ByteArrayOutputStream out = new ByteArrayOutputStream(); - ImageIO.write(image, "jpg", out); + ImageIO.write(image, "png", out); //ByteArrayOutputStream 转化为 byte[] byte[] imageByte = out.toByteArray(); //将 byte[] 转为 MultipartFile - MultipartFile multipartFile = new ConvertToMultipartFile(imageByte, "newNamepic", "pic1", "jpg", imageByte.length); + MultipartFile multipartFile = new ConvertToMultipartFile(imageByte, "newNamepic", "pic1", "png", imageByte.length); Result uploadResult = ossFeignClient.uploadImportTaskDescFile(multipartFile); if (uploadResult == null || !uploadResult.success()) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败", "上传一户一档二维码失败"); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java index d8cfccb001..ee0d37afef 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java @@ -58,6 +58,7 @@ import com.epmet.dto.result.UploadImgResultDTO; import com.epmet.entity.*; import com.epmet.excel.IcNeighborHoodExcel; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; +import com.epmet.feign.OssFeignClient; import com.epmet.model.ImportNeighborHoodInfoListener; import com.epmet.model.NeighborHoodInfoModel; import com.epmet.redis.IcHouseRedis; @@ -117,7 +118,7 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl Date: Wed, 1 Jun 2022 18:12:44 +0800 Subject: [PATCH 12/39] =?UTF-8?q?=E6=88=BF=E5=B1=8B=E7=BC=93=E5=AD=98?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/redis/common/bean/HouseInfoCache.java | 17 +++++++++++++++++ .../java/com/epmet/dto/result/HouseInfoDTO.java | 16 ++++++++++++++++ .../com/epmet/controller/HouseController.java | 1 - .../src/main/resources/mapper/IcHouseDao.xml | 7 ++++++- 4 files changed, 39 insertions(+), 2 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/HouseInfoCache.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/HouseInfoCache.java index 4c6551b881..075a954290 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/HouseInfoCache.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/HouseInfoCache.java @@ -89,4 +89,21 @@ public class HouseInfoCache implements Serializable { * 组织的area_code */ private String areaCode; + + /** + * 网格id + */ + private String gridId; + /** + * 网格名称 + */ + private String gridName; + /** + * 房屋编码 + */ + private String houseCode; + /** + * 二维码地址 + */ + private String houseQrcodeUrl; } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java index ae5a6d07ba..aa2b2fffca 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java @@ -91,4 +91,20 @@ public class HouseInfoDTO implements Serializable { * 组织的area_code */ private String areaCode; + /** + * 网格id + */ + private String gridId; + /** + * 网格名称 + */ + private String gridName; + /** + * 房屋编码 + */ + private String houseCode; + /** + * 二维码地址 + */ + private String houseQrcodeUrl; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 163d56fc7c..935da2cf85 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -52,7 +52,6 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; -import com.epmet.feign.OssFeignClient; import com.epmet.service.HouseService; import com.epmet.util.ExcelPoiUtils; import com.google.common.cache.Cache; diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index 1eaa2327bd..b65aefc261 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -256,11 +256,16 @@ IFNULL(ib.LATITUDE,'') as buildingLatitude, ih.CUSTOMER_ID AS customerId, concat(IFNULL(n.NEIGHBOR_HOOD_NAME,''),IFNULL(ib.BUILDING_NAME,''),IFNULL(u.UNIT_NAME,''),IFNULL(ih.DOOR_NAME,'')) AS allName, - n.AGENCY_ID as agencyId + n.AGENCY_ID as agencyId, + n.GRID_ID, + gr.GRID_NAME, + ih.HOUSE_CODE, + ih.HOUSE_QRCODE_URL FROM ic_house ih left JOIN ic_neighbor_hood n ON ( ih.NEIGHBOR_HOOD_ID = n.id AND n.DEL_FLAG = '0') left JOIN ic_building ib ON ( ih.BUILDING_ID = ib.id AND ib.DEL_FLAG = '0') left JOIN ic_building_unit u ON ( ih.BUILDING_UNIT_ID = u.ID AND u.DEL_FLAG = '0') + left join customer_grid gr ON (gr.id=n.GRID_ID and gr.ABANDON_FLAG=0 and gr.DEL_FLAG=0) WHERE ih.DEL_FLAG = '0' AND ih.ID = #{houseId} From 0133151a74c9083f657c521be5d5491a9407d306 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Wed, 1 Jun 2022 18:24:07 +0800 Subject: [PATCH 13/39] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=BB=91=E5=AE=9A?= =?UTF-8?q?=E6=88=BF=E5=B1=8B=EF=BC=8C=E6=88=BF=E5=B1=8B=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/impl/MyHomeServiceImpl.java | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java index 741e3fd82b..4b79844581 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -16,6 +16,7 @@ import com.epmet.dao.UserResiInfoDao; import com.epmet.dao.UserRoleDao; import com.epmet.dto.IcHouseDTO; import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.form.EnterGridFormDTO; import com.epmet.dto.form.GetRoleKeyListFormDTO; import com.epmet.dto.form.RegisterAndBindFormDTO; import com.epmet.dto.result.HomeInfoResultDTO; @@ -25,15 +26,13 @@ import com.epmet.entity.IcResiUserEntity; import com.epmet.entity.UserBaseInfoEntity; import com.epmet.entity.UserResiInfoEntity; import com.epmet.feign.GovOrgOpenFeignClient; -import com.epmet.service.IcResiUserService; -import com.epmet.service.MyHomeService; -import com.epmet.service.UserBaseInfoService; -import com.epmet.service.UserResiInfoService; +import com.epmet.service.*; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.compress.utils.Lists; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.List; @@ -63,6 +62,8 @@ public class MyHomeServiceImpl implements MyHomeService { private UserBaseInfoDao userBaseInfoDao; @Resource private IcResiUserDao icResiUserDao; + @Resource + private RegisterRelationService registerRelationService; @Override public List selectListHomeMember(String houseCode, String customerId) { @@ -85,8 +86,15 @@ public class MyHomeServiceImpl implements MyHomeService { * @Date 2022/6/1 16:33 */ @Override + @Transactional(rollbackFor = Exception.class) public void registerAndBind(RegisterAndBindFormDTO formDTO) { //TODO 是否走进入网格(entergrid)流程 + EnterGridFormDTO userInfoParams = new EnterGridFormDTO(); + userInfoParams.setUserId(formDTO.getUserId()); + userInfoParams.setCustomerId(formDTO.getCustomerId()); + userInfoParams.setGridId(formDTO.getGridId()); + registerRelationService.getUserInfoAndRoles(userInfoParams); + //1.判断是否是居民,如果不是则注册居民,如果是则更新居民信息 GetRoleKeyListFormDTO getRoleKeyListFormDTO = new GetRoleKeyListFormDTO(); getRoleKeyListFormDTO.setUserId(formDTO.getUserId()); @@ -173,14 +181,13 @@ public class MyHomeServiceImpl implements MyHomeService { return resultDto; } resultDto.setIcResiUserId(icUser.getId()); - //TODO 获取房屋信息 HouseInfoCache houseInfo = CustomerIcHouseRedis.getHouseInfo(tokenDto.getCustomerId(), icUser.getHomeId()); if (null == houseInfo) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取房屋信息失败", "获取房屋信息失败"); } resultDto.setHouseName(houseInfo.getAllName()); - resultDto.setHouseCode(null); - resultDto.setQrCodeUrl(null); + resultDto.setHouseCode(houseInfo.getHouseCode()); + resultDto.setQrCodeUrl(houseInfo.getHouseQrcodeUrl()); return resultDto; } } From 040ffefbc086fd6623b5d1827e52c4dea43c040a Mon Sep 17 00:00:00 2001 From: Jackwang Date: Wed, 1 Jun 2022 18:36:25 +0800 Subject: [PATCH 14/39] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E8=8E=B7=E5=8F=96=E6=88=BF=E5=B1=8B=E4=BF=A1?= =?UTF-8?q?=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/IcHouseInfoFormDTO.java | 26 +++++++++ .../dto/result/IcHouseInfoResultDTO.java | 55 +++++++++++++++++++ .../com/epmet/controller/HouseController.java | 16 ++++++ .../main/java/com/epmet/dao/IcHouseDao.java | 9 +++ .../java/com/epmet/service/HouseService.java | 9 +++ .../epmet/service/impl/HouseServiceImpl.java | 10 ++++ .../src/main/resources/mapper/IcHouseDao.xml | 5 ++ 7 files changed, 130 insertions(+) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcHouseInfoFormDTO.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcHouseInfoFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcHouseInfoFormDTO.java new file mode 100644 index 0000000000..adde362546 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcHouseInfoFormDTO.java @@ -0,0 +1,26 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.dto.form.PageFormDTO; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** +* @describe: 根据房屋编码获取房屋信息 +* @author wangtong +* @date 2022/6/1 18:17 +* @params +* @return +*/ +@Data +public class IcHouseInfoFormDTO extends PageFormDTO { + + private static final long serialVersionUID = -1L; + + + @NotNull(message = "房屋编码不可为空") + private String houseCode; + + private String customerId; + +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java new file mode 100644 index 0000000000..dd619a55bb --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java @@ -0,0 +1,55 @@ + +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * desc:房屋列表结果类 + * + * @author liujianjun + */ +@Data +public class IcHouseInfoResultDTO implements Serializable { + + + private static final long serialVersionUID = 4963952996288796744L; + + /** + * 所属网格 + */ + private String gridName; + private String gridId; + + /** + * 所属小区 + */ + private String neighborHoodId; + private String neighborHoodName; + + /** + * 所属楼栋 + */ + private String buildingId; + private String buildingName; + + /** + * 所属单元id + */ + private String buildingUnitId; + private String unitName; + + /** + * 房间名称 + */ + private String houseName; + + /** + * 门牌号 + */ + private String doorName; + + + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 935da2cf85..55b756a111 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -484,4 +484,20 @@ public class HouseController implements ResultDataResolver { ValidatorUtils.validateEntity(formDTO); houseService.downloadZip(response,formDTO); } + + /** + * @describe: 根据房屋编码获取信息 + * @author wangtong + * @date 2022/6/1 18:24 + * @params [formDTO] + * @return com.epmet.dto.result.IcHouseInfoResultDTO + */ + @PostMapping("getHouseInfoByCode") + public Result getHouseInfoByCode(@LoginUser TokenDto loginUser,@RequestBody IcHouseInfoFormDTO formDTO) { + //效验数据 + ValidatorUtils.validateEntity(formDTO); + formDTO.setCustomerId(loginUser.getCustomerId()); + return houseService.getHouseInfoByCode(formDTO); + + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java index 4983e09e52..a08467a716 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java @@ -110,4 +110,13 @@ public interface IcHouseDao extends BaseDao { * @return com.epmet.dto.result.IcHouseListResultDTO */ IcHouseListResultDTO selectHouseQrcodeById(@Param("id") String id); + + /** + * @describe: 通过房屋编码获取信息 + * @author wangtong + * @date 2022/6/1 18:29 + * @params [houseCode] + * @return com.epmet.entity.IcHouseEntity + */ + IcHouseEntity selectByHouseCode(@Param("houseCode") String houseCode); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index 157c124b7d..ce3de8fbb5 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -145,4 +145,13 @@ public interface HouseService { * @return java.lang.String */ String createHouseQrcodeUrl(String houseId); + + /** + * @describe: 根据房屋编码获取信息 + * @author wangtong + * @date 2022/6/1 18:24 + * @params [formDTO] + * @return com.epmet.commons.tools.utils.Result + */ + Result getHouseInfoByCode(IcHouseInfoFormDTO formDTO); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index e12de14a5c..dbf68d3ba7 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -16,9 +16,11 @@ import com.epmet.commons.tools.exception.ExceptionUtils; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.feign.ResultDataResolver; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.redis.common.CustomerIcHouseRedis; import com.epmet.commons.tools.redis.common.CustomerOrgRedis; import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; +import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.BarcodeUtils; import com.epmet.commons.tools.utils.ConvertUtils; @@ -912,6 +914,14 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { } } + @Override + public Result getHouseInfoByCode(IcHouseInfoFormDTO formDTO) { + IcHouseEntity house = icHouseDao.selectByHouseCode(formDTO.getHouseCode()); + HouseInfoCache cache = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(),house.getId()); + IcHouseInfoResultDTO resut = ConvertUtils.sourceToTarget(cache, IcHouseInfoResultDTO.class); + return new Result().ok(resut); + } + /** * @return java.lang.String diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index b65aefc261..79ac70a335 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -394,5 +394,10 @@ where a.id=#{id} and a.del_flag = '0' + From b5551f57c500a130a4e3e167e1abe80e048c2a99 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 10:01:47 +0800 Subject: [PATCH 15/39] =?UTF-8?q?=E7=94=9F=E6=88=90=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/enums/HouseQrcodeEnum.java | 2 +- .../java/com/epmet/dto/form/TestFormDTO.java | 28 +++++++++++++++++++ .../dto/result/IcHouseListResultDTO.java | 2 ++ .../com/epmet/controller/HouseController.java | 13 +++++++++ .../com/epmet/dao/IcHouseCodeInfoDao.java | 9 ++++++ .../epmet/entity/IcHouseCodeInfoEntity.java | 3 +- .../epmet/service/impl/HouseServiceImpl.java | 9 ++++-- .../resources/mapper/IcHouseCodeInfoDao.xml | 6 ++++ .../src/main/resources/mapper/IcHouseDao.xml | 3 +- 9 files changed, 69 insertions(+), 6 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/TestFormDTO.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java index 2cc8b464cb..1682e79beb 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java @@ -10,7 +10,7 @@ package com.epmet.commons.tools.enums; public enum HouseQrcodeEnum { SUFFIX(".png", "二维码格式的后缀"), - PREFIX("http://localhost:8080/epmet-oper-gov", "二维码地址的前缀"); + PREFIX("/subpages/mine/pages/family/register", "二维码地址的前缀"); private String code; diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/TestFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/TestFormDTO.java new file mode 100644 index 0000000000..2443e66a94 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/TestFormDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.dto.form.PageFormDTO; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** +* @describe: 根据房屋编码获取房屋信息 +* @author wangtong +* @date 2022/6/1 18:17 +* @params +* @return +*/ +@Data +public class TestFormDTO extends PageFormDTO { + + private static final long serialVersionUID = -1L; + + private String buildingId; + + private String customerId; + + private String areaCode; + + private String houseId; + +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java index d3fa0c0576..d380e32e14 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseListResultDTO.java @@ -16,6 +16,8 @@ public class IcHouseListResultDTO implements Serializable { private static final long serialVersionUID = 4963952996288796744L; + private String customerId; + private String houseId; private String doorName; diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 55b756a111..eb892c5d8c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -500,4 +500,17 @@ public class HouseController implements ResultDataResolver { return houseService.getHouseInfoByCode(formDTO); } + + @PostMapping("createHouseCode") + public String createHouseCode(@RequestBody TestFormDTO formDTO) { + //效验数据 + return houseService.createHouseCode(formDTO.getCustomerId(),formDTO.getBuildingId(),formDTO.getAreaCode()); + + } + + @PostMapping("createHouseQrcodeUrl") + public String createHouseQrcodeUrl(@RequestBody TestFormDTO formDTO) { + return houseService.createHouseQrcodeUrl(formDTO.getHouseId()); + + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java index 60767589c2..fd67785cb4 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseCodeInfoDao.java @@ -31,4 +31,13 @@ public interface IcHouseCodeInfoDao extends BaseDao { * @return com.epmet.entity.IcHouseCodeInfoEntity */ IcHouseCodeInfoEntity selectMaxHouseMaxNum(); + + /** + * @describe: 根据客户id和楼栋id更新房屋最大编码 + * @author wangtong + * @date 2022/6/2 9:37 + * @params [codeEntity] + * @return void + */ + void updateByCuIdAndBuId(IcHouseCodeInfoEntity codeEntity); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java index 5be7707802..73fd19862c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseCodeInfoEntity.java @@ -1,7 +1,6 @@ package com.epmet.entity; import com.baomidou.mybatisplus.annotation.TableName; -import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -14,7 +13,7 @@ import lombok.EqualsAndHashCode; @Data @EqualsAndHashCode(callSuper=false) @TableName("ic_house_code_info") -public class IcHouseCodeInfoEntity extends BaseEpmetEntity { +public class IcHouseCodeInfoEntity { private static final long serialVersionUID = 1L; diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index dbf68d3ba7..27489590cc 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -852,6 +852,9 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Override public String createHouseCode(String customerId, String buildingId, String areaCode) { + if(StringUtils.isBlank(customerId) || StringUtils.isBlank(buildingId) ||StringUtils.isBlank(areaCode)){ + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "所有字段不可为空", "所有字段不可为空"); + } String result = ""; IcHouseCodeInfoEntity codeEntity = icHouseCodeInfoDao.selectByCuIdAndBuilId(customerId, buildingId); if (null == codeEntity) { @@ -862,6 +865,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { if (null != maxCodeEntity) { Integer buildingMaxNum = Integer.valueOf(maxCodeEntity.getBuildingMaxNum()) + 1; result = areaCode + getNewMaxIndex(buildingMaxNum) + "00001"; + newEntity.setBuildingMaxNum(getNewMaxIndex(buildingMaxNum)); + newEntity.setHouseMaxNum("00001"); } else { //数据库里面的第一条数据 result = areaCode + "00001" + "00001"; @@ -876,7 +881,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { result = areaCode + codeEntity.getBuildingMaxNum() + getNewMaxIndex(houseMaxNum); //更新该楼栋下最大的房间编号 codeEntity.setHouseMaxNum(getNewMaxIndex(houseMaxNum)); - icHouseCodeInfoDao.updateById(codeEntity); + icHouseCodeInfoDao.updateByCuIdAndBuId(codeEntity); } return result; } @@ -902,7 +907,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { byte[] imageByte = out.toByteArray(); //将 byte[] 转为 MultipartFile MultipartFile multipartFile = new ConvertToMultipartFile(imageByte, "newNamepic", "pic1", "png", imageByte.length); - Result uploadResult = ossFeignClient.uploadImportTaskDescFile(multipartFile); + Result uploadResult = ossFeignClient.uploadQrCodeV2(multipartFile,house.getCustomerId()); if (uploadResult == null || !uploadResult.success()) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败", "上传一户一档二维码失败"); } else { diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml index b57ef127a2..385a13b216 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseCodeInfoDao.xml @@ -19,6 +19,12 @@ order by BUILDING_MAX_NUM desc limit 1 + + update ic_house_code_info + set HOUSE_MAX_NUM=#{houseMaxNum} + where CUSTOMER_ID = #{customerId} + and BUILDING_ID = #{buildingId} + diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index 79ac70a335..12cc0ccd16 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -386,7 +386,8 @@ b.BUILDING_NAME as buildingName, CONCAT(d.UNIT_NUM,'单元') as unitNum, a.DOOR_NAME as doorName, - a.HOUSE_CODE + a.HOUSE_CODE, + a.CUSTOMER_ID from ic_house a LEFT JOIN ic_building b on a.BUILDING_ID = b.ID and b.DEL_FLAG = '0' LEFT JOIN ic_neighbor_hood c on a.NEIGHBOR_HOOD_ID = c.ID and c.DEL_FLAG = '0' From 46c85252317d6a9018ded3a8d361a1536d2f698d Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 10:28:59 +0800 Subject: [PATCH 16/39] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E8=8E=B7=E5=8F=96=E6=88=BF=E5=B1=8B=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java | 2 +- .../main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java | 5 +++++ .../main/java/com/epmet/service/impl/HouseServiceImpl.java | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java index 1682e79beb..f448cce254 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java @@ -10,7 +10,7 @@ package com.epmet.commons.tools.enums; public enum HouseQrcodeEnum { SUFFIX(".png", "二维码格式的后缀"), - PREFIX("/subpages/mine/pages/family/register", "二维码地址的前缀"); + PREFIX("https://epmet-dev.elinkservice.cn/cqrcode-ty/", "二维码地址的前缀"); private String code; diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java index dd619a55bb..8f60e24d37 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java @@ -50,6 +50,11 @@ public class IcHouseInfoResultDTO implements Serializable { */ private String doorName; + /** + * 房屋id + */ + private String houseId; + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 27489590cc..181b289e33 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -924,6 +924,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { IcHouseEntity house = icHouseDao.selectByHouseCode(formDTO.getHouseCode()); HouseInfoCache cache = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(),house.getId()); IcHouseInfoResultDTO resut = ConvertUtils.sourceToTarget(cache, IcHouseInfoResultDTO.class); + resut.setHouseId(cache.getHomeId()); return new Result().ok(resut); } From 4440deb44e7d8b8e8d9d61f90c0423bc8e4a7ea5 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Thu, 2 Jun 2022 10:36:27 +0800 Subject: [PATCH 17/39] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/impl/MyHomeServiceImpl.java | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java index 4b79844581..dc0c4e3ee4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -10,10 +10,7 @@ import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.dao.IcResiUserDao; -import com.epmet.dao.UserBaseInfoDao; -import com.epmet.dao.UserResiInfoDao; -import com.epmet.dao.UserRoleDao; +import com.epmet.dao.*; import com.epmet.dto.IcHouseDTO; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.EnterGridFormDTO; @@ -25,6 +22,7 @@ import com.epmet.dto.result.ResiUserBaseInfoResultDTO; import com.epmet.entity.IcResiUserEntity; import com.epmet.entity.UserBaseInfoEntity; import com.epmet.entity.UserResiInfoEntity; +import com.epmet.entity.UserResiRegisterVisitEntity; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.*; import lombok.extern.slf4j.Slf4j; @@ -35,6 +33,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.util.Date; import java.util.List; /** @@ -64,6 +63,8 @@ public class MyHomeServiceImpl implements MyHomeService { private IcResiUserDao icResiUserDao; @Resource private RegisterRelationService registerRelationService; + @Resource + private UserResiRegisterVisitDao userResiRegisterVisitDao; @Override public List selectListHomeMember(String houseCode, String customerId) { @@ -88,7 +89,7 @@ public class MyHomeServiceImpl implements MyHomeService { @Override @Transactional(rollbackFor = Exception.class) public void registerAndBind(RegisterAndBindFormDTO formDTO) { - //TODO 是否走进入网格(entergrid)流程 + //进入网格(entergrid)流程 EnterGridFormDTO userInfoParams = new EnterGridFormDTO(); userInfoParams.setUserId(formDTO.getUserId()); userInfoParams.setCustomerId(formDTO.getCustomerId()); @@ -119,11 +120,20 @@ public class MyHomeServiceImpl implements MyHomeService { UserBaseInfoEntity userBaseInfoEntity = ConvertUtils.sourceToTarget(userResiInfo, UserBaseInfoEntity.class); userBaseInfoService.insertOrUpdate(userBaseInfoEntity); } else { + //visit表添加数据 + UserResiRegisterVisitEntity visit = new UserResiRegisterVisitEntity(); + visit.setCustomerId(formDTO.getCustomerId()); + visit.setGridId(formDTO.getGridId()); + visit.setUserId(formDTO.getUserId()); + visit.setVisitFrom("register_and_bind"); + visit.setLastOperateVisit("success"); + visit.setVisitTime(new Date()); + userResiRegisterVisitDao.insert(visit); //注册居民 UserResiInfoDTO userResiInfoDTO = ConvertUtils.sourceToTarget(formDTO, UserResiInfoDTO.class); userResiInfoDTO.setIdNum(formDTO.getIdCard()); userResiInfoDTO.setRegMobile(formDTO.getMobile()); - userResiInfoDTO.setResiVisitId(formDTO.getVisitId()); + userResiInfoDTO.setResiVisitId(visit.getId()); userResiInfoDTO.setDistrict(formDTO.getAddress()); userResiInfoDTO.setCustomerId(formDTO.getCustomerId()); userResiInfoDTO.setApp("resi"); From b7f3202024953548e8dedc07fecf0eb4e7a5278b Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 14:17:21 +0800 Subject: [PATCH 18/39] =?UTF-8?q?=E4=B8=80=E6=88=B7=E4=B8=80=E6=A1=A3?= =?UTF-8?q?=E5=8D=95=E4=B8=AA=E4=BA=8C=E7=BB=B4=E7=A0=81=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/HouseController.java | 2 +- .../java/com/epmet/service/HouseService.java | 2 +- .../epmet/service/impl/HouseServiceImpl.java | 66 ++++++++++++------- 3 files changed, 43 insertions(+), 27 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index eb892c5d8c..d5f3d48530 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -509,7 +509,7 @@ public class HouseController implements ResultDataResolver { } @PostMapping("createHouseQrcodeUrl") - public String createHouseQrcodeUrl(@RequestBody TestFormDTO formDTO) { + public String createHouseQrcodeUrl(@RequestBody TestFormDTO formDTO) throws Exception { return houseService.createHouseQrcodeUrl(formDTO.getHouseId()); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index ce3de8fbb5..2e6aa8cf7f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -144,7 +144,7 @@ public interface HouseService { * @params [houseId] * @return java.lang.String */ - String createHouseQrcodeUrl(String houseId); + String createHouseQrcodeUrl(String houseId) throws Exception; /** * @describe: 根据房屋编码获取信息 diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 181b289e33..addc1324db 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -24,6 +24,7 @@ import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.BarcodeUtils; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.FileUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.CustomerGridConstant; import com.epmet.constants.ImportTaskConstants; @@ -46,19 +47,21 @@ import com.epmet.model.HouseInfoModel; import com.epmet.model.ImportHouseInfoListener; import com.epmet.redis.IcHouseRedis; import com.epmet.service.*; -import com.epmet.util.ConvertToMultipartFile; import com.epmet.util.ExcelPoiUtils; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.fileupload.FileItem; +import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.lang3.StringUtils; +import org.apache.http.entity.ContentType; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; -import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.commons.CommonsMultipartFile; import javax.annotation.Resource; import javax.imageio.ImageIO; @@ -887,35 +890,48 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { } @Override - public String createHouseQrcodeUrl(String houseId) { + public String createHouseQrcodeUrl(String houseId) throws Exception { if (StringUtils.isBlank(houseId)) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "房屋id不可为空", "房屋id不可为空"); } + IcHouseListResultDTO house = icHouseDao.selectHouseQrcodeById(houseId); + if (null == house) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); + } + //url组成:小程序地址?房屋编码 + String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); + String fileName = house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName()+".png"; + BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); + + + FileItem fileItem = new DiskFileItemFactory(DiskFileItemFactory.DEFAULT_SIZE_THRESHOLD, FileUtils.getAndCreateDirUnderEpmetFilesDir("temp").toFile()) + .createItem("file", ContentType.APPLICATION_OCTET_STREAM.toString(), false, fileName); + OutputStream os = fileItem.getOutputStream(); + Result uploadResult = null; try { - IcHouseListResultDTO house = icHouseDao.selectHouseQrcodeById(houseId); - if (null == house) { - throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); - } - //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); - BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); - - //BufferedImage 转化为 ByteArrayOutputStream - ByteArrayOutputStream out = new ByteArrayOutputStream(); - ImageIO.write(image, "png", out); - //ByteArrayOutputStream 转化为 byte[] - byte[] imageByte = out.toByteArray(); - //将 byte[] 转为 MultipartFile - MultipartFile multipartFile = new ConvertToMultipartFile(imageByte, "newNamepic", "pic1", "png", imageByte.length); - Result uploadResult = ossFeignClient.uploadQrCodeV2(multipartFile,house.getCustomerId()); - if (uploadResult == null || !uploadResult.success()) { - throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败", "上传一户一档二维码失败"); - } else { - return uploadResult.getData().getUrl(); - } + ImageIO.write(image, "png", os); + uploadResult = ossFeignClient.uploadImportTaskDescFile(new CommonsMultipartFile(fileItem)); } catch (Exception e) { String errormsg = ExceptionUtils.getErrorStackTrace(e); - throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败" + errormsg, "上传一户一档二维码失败" + errormsg); + log.error("上传一户一档二维码:{}", errormsg); + } finally { + try { + os.close(); + } catch (IOException e) { + String errormsg = ExceptionUtils.getErrorStackTrace(e); + log.error("上传一户一档二维码关闭输出流:{}", errormsg); + } + try { + fileItem.delete(); + } catch (Exception e) { + String errormsg = ExceptionUtils.getErrorStackTrace(e); + log.error("上传一户一档二维码删除临时文件:{}", errormsg); + } + } + if (uploadResult == null || !uploadResult.success()) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "上传一户一档二维码失败", "上传一户一档二维码失败"); + } else { + return uploadResult.getData().getUrl(); } } From 649a7d183811100710e33f83fd66cdc9445573b3 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 15:05:50 +0800 Subject: [PATCH 19/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E8=A1=A8=E6=B7=BB=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/IcResiUserConfirmDTO.java | 82 +++++---- .../dto/form/IcResiUserConfirmSubmitDTO.java | 82 +++++---- .../epmet/entity/IcResiUserConfirmEntity.java | 157 ++++++++++-------- 3 files changed, 191 insertions(+), 130 deletions(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java index 4c6749ced7..eb5adec674 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java @@ -20,146 +20,166 @@ public class IcResiUserConfirmDTO implements Serializable { /** * 主键 */ - private String id; + private String id; /** * 客户Id customer.id */ - private String customerId; + private String customerId; /** * 组织Id */ - private String agencyId; + private String agencyId; /** * 组织的pids */ - private String pids; + private String pids; /** * 网格ID */ - private String gridId; + private String gridId; /** * 姓 */ - private String surname; + private String surname; /** * 名 */ - private String name; + private String name; /** * 手机号 */ - private String mobile; + private String mobile; /** * 性别 */ - private String gender; + private String gender; /** * 身份证号 */ - private String idCard; + private String idCard; /** * 出生日期 */ - private String birthday; + private String birthday; + + /** + * 户籍所在地 + */ + private String hjszd; /** * 户籍所在地地区码 */ - private String hjszdCode; + private String hjszdCode; /** - * 户籍所在地 + * 户籍所在地层级编码 + */ + private String hjszdPathCode; + + /** + * 现居住地 */ - private String hjszd; + private String xjzd; /** * 现居住地地区码 */ - private String xjzdCode; + private String xjzdCode; /** - * 现居住地 + * 现居住地层级编码 */ - private String xjzd; + private String xjzdPathCode; /** * 民族【字典表】 */ - private String mz; + private String mz; + + /** + * 名族名称 + */ + private String mzName; /** * 与户主关系 */ - private String yhzgx; + private String yhzgx; + + /** + * 与户主关系名称 + */ + private String yhzgxName; /** * 审核状态0未审核,1审核通过,2审核不通过 */ - private String confirmResult; + private String confirmResult; /** * 审核不通过的原因 */ - private String reason; + private String reason; /** * 删除标识 0.未删除 1.已删除 */ - private Integer delFlag; + private Integer delFlag; /** * 乐观锁 */ - private Integer revision; + private Integer revision; /** * 创建人 */ - private String createdBy; + private String createdBy; /** * 创建时间 */ - private Date createdTime; + private Date createdTime; /** * 更新人 */ - private String updatedBy; + private String updatedBy; /** * 更新时间 */ - private Date updatedTime; + private Date updatedTime; /** * ic_resi_user表id */ - private String icResiUserId; + private String icResiUserId; /** * 操作类型:新增add 修改 update 删除 delete */ - private String submitType; + private String submitType; /** * 删除原因 */ - private String deleteReason; + private String deleteReason; /** * 操作说明 */ - private String operationDescribe; + private String operationDescribe; } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java index 11cb831f9b..09431509ac 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java @@ -20,146 +20,166 @@ public class IcResiUserConfirmSubmitDTO implements Serializable { /** * 主键 */ - private String id; + private String id; /** * 客户Id customer.id */ - private String customerId; + private String customerId; /** * 组织Id */ - private String agencyId; + private String agencyId; /** * 组织的pids */ - private String pids; + private String pids; /** * 网格ID */ - private String gridId; + private String gridId; /** * 姓 */ - private String surname; + private String surname; /** * 名 */ - private String name; + private String name; /** * 手机号 */ - private String mobile; + private String mobile; /** * 性别 */ - private String gender; + private String gender; /** * 身份证号 */ - private String idCard; + private String idCard; /** * 出生日期 */ - private String birthday; + private String birthday; + + /** + * 户籍所在地 + */ + private String hjszd; /** * 户籍所在地地区码 */ - private String hjszdCode; + private String hjszdCode; /** - * 户籍所在地 + * 户籍所在地层级编码 + */ + private String hjszdPathCode; + + /** + * 现居住地 */ - private String hjszd; + private String xjzd; /** * 现居住地地区码 */ - private String xjzdCode; + private String xjzdCode; /** - * 现居住地 + * 现居住地层级编码 */ - private String xjzd; + private String xjzdPathCode; /** * 民族【字典表】 */ - private String mz; + private String mz; + + /** + * 名族名称 + */ + private String mzName; /** * 与户主关系 */ - private String yhzgx; + private String yhzgx; + + /** + * 与户主关系名称 + */ + private String yhzgxName; /** * 审核状态0未审核,1审核通过,2审核不通过 */ - private String confirmResult; + private String confirmResult; /** * 审核不通过的原因 */ - private String reason; + private String reason; /** * 删除标识 0.未删除 1.已删除 */ - private Integer delFlag; + private Integer delFlag; /** * 乐观锁 */ - private Integer revision; + private Integer revision; /** * 创建人 */ - private String createdBy; + private String createdBy; /** * 创建时间 */ - private Date createdTime; + private Date createdTime; /** * 更新人 */ - private String updatedBy; + private String updatedBy; /** * 更新时间 */ - private Date updatedTime; + private Date updatedTime; /** * ic_resi_user表id */ - private String icResiUserId; + private String icResiUserId; /** * 操作类型:新增add 修改 update 删除 delete */ - private String submitType; + private String submitType; /** * 删除原因 */ - private String deleteReason; + private String deleteReason; /** * 操作说明 */ - private String operationDescribe; + private String operationDescribe; } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java index c11aa5e18b..15f5751bf1 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java @@ -18,114 +18,135 @@ public class IcResiUserConfirmEntity extends BaseEpmetEntity { private static final long serialVersionUID = 1L; - /** - * 客户Id customer.id - */ + /** + * 客户Id customer.id + */ private String customerId; - /** - * 组织Id - */ + /** + * 组织Id + */ private String agencyId; - /** - * 组织的pids - */ + /** + * 组织的pids + */ private String pids; - /** - * 网格ID - */ + /** + * 网格ID + */ private String gridId; - /** - * 姓 - */ + /** + * 姓 + */ private String surname; - /** - * 名 - */ + /** + * 名 + */ private String name; - /** - * 手机号 - */ + /** + * 手机号 + */ private String mobile; - /** - * 性别 - */ + /** + * 性别 + */ private String gender; - /** - * 身份证号 - */ + /** + * 身份证号 + */ private String idCard; - /** - * 出生日期 - */ + /** + * 出生日期 + */ private String birthday; - /** - * 户籍所在地地区码 - */ + /** + * 户籍所在地 + */ + private String hjszd; + + /** + * 户籍所在地地区码 + */ private String hjszdCode; - /** - * 户籍所在地 - */ - private String hjszd; + /** + * 户籍所在地层级编码 + */ + private String hjszdPathCode; + + /** + * 现居住地 + */ + private String xjzd; - /** - * 现居住地地区码 - */ + /** + * 现居住地地区码 + */ private String xjzdCode; - /** - * 现居住地 - */ - private String xjzd; + /** + * 现居住地层级编码 + */ + private String xjzdPathCode; - /** - * 民族【字典表】 - */ + /** + * 民族【字典表】 + */ private String mz; - /** - * 与户主关系 - */ + /** + * 名族名称 + */ + private String mzName; + + /** + * 与户主关系 + */ private String yhzgx; - /** - * 审核状态0未审核,1审核通过,2审核不通过 - */ + /** + * 与户主关系名称 + */ + private String yhzgxName; + + /** + * 审核状态0未审核,1审核通过,2审核不通过 + */ private String confirmResult; - /** - * 审核不通过的原因 - */ + /** + * 审核不通过的原因 + */ private String reason; - /** - * ic_resi_user表id - */ + /** + * ic_resi_user表id + */ private String icResiUserId; - /** - * 操作类型:新增add 修改 update 删除 delete - */ + /** + * 操作类型:新增add 修改 update 删除 delete + */ private String submitType; - /** - * 删除原因 - */ + /** + * 删除原因 + */ private String deleteReason; - /** - * 操作说明 - */ + /** + * 操作说明 + */ private String operationDescribe; } + From 73c32cebde20725e6d6bbc0dce72c0c00ca441da Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 15:45:50 +0800 Subject: [PATCH 20/39] =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/HouseController.java | 91 ++++----- .../epmet/service/impl/HouseServiceImpl.java | 191 +++++++++--------- .../src/main/resources/mapper/IcHouseDao.xml | 6 +- 3 files changed, 149 insertions(+), 139 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index d5f3d48530..3a7d221a29 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -102,7 +102,7 @@ public class HouseController implements ResultDataResolver { @PostMapping("houselist") @MaskResponse(fieldNames = {"ownerIdCard", "ownerPhone"}, - fieldsMaskType = { MaskResponse.MASK_TYPE_ID_CARD, MaskResponse.MASK_TYPE_MOBILE }) + fieldsMaskType = {MaskResponse.MASK_TYPE_ID_CARD, MaskResponse.MASK_TYPE_MOBILE}) public Result> houseList(@LoginUser TokenDto loginUser, @RequestBody IcHouseListFormDTO formDTO) { //效验数据 LoginUserDetailsResultDTO loginUserDetail = getLoginUserDetailsResultDTO(loginUser, "【查询房屋】查询当前staff所在组织信息失败"); @@ -331,12 +331,13 @@ public class HouseController implements ResultDataResolver { /** * Desc: 根据类型更新排序 + * * @param formDTO * @author zxc * @date 2022/5/6 08:50 */ @PostMapping("update-sort") - public Result updateSort(@RequestBody UpdateSortFormDTO formDTO){ + public Result updateSort(@RequestBody UpdateSortFormDTO formDTO) { houseService.updateSort(formDTO); return new Result(); } @@ -358,7 +359,7 @@ public class HouseController implements ResultDataResolver { formDTO.setIsPage(false); formDTO.setPageSize(NumConstant.TEN_THOUSAND); //效验数据 - if (StringUtils.isBlank(formDTO.getAgencyId())){ + if (StringUtils.isBlank(formDTO.getAgencyId())) { LoginUserDetailsResultDTO loginUserDetail = getLoginUserDetailsResultDTO(tokenDto, "【查询房屋】查询当前staff所在组织信息失败"); formDTO.setAgencyId(loginUserDetail.getAgencyId()); } @@ -378,34 +379,34 @@ public class HouseController implements ResultDataResolver { .registerWriteHandler(horizontalCellStyleStrategy) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) .build(); - int[] mergeRowArr = new int[]{0,1,2,3,4,5,6,7,8,9,10,11,12}; + int[] mergeRowArr = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; //冻结表头 2行 FreezeAndFilter writeHandler = new FreezeAndFilter(); writeHandler.rowSplit = 2; //ExcelFillCellMergeStrategy mergeStrategy = new ExcelFillCellMergeStrategy(2,mergeRowArr,false); - ExcelFillRowMergeStrategy mergeStrategy2 = new ExcelFillRowMergeStrategy(mergeRowArr,false); + ExcelFillRowMergeStrategy mergeStrategy2 = new ExcelFillRowMergeStrategy(mergeRowArr, false); WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1") .head(HouseMemberResultDTO.class) .registerWriteHandler(mergeStrategy2) .registerWriteHandler(writeHandler) .build(); PageData dataList = null; - Cache haveSearchCache = CacheBuilder.newBuilder().maximumSize(NumConstant.ONE_HUNDRED).expireAfterWrite(NumConstant.THIRTY, TimeUnit.MINUTES).build(); + Cache haveSearchCache = CacheBuilder.newBuilder().maximumSize(NumConstant.ONE_HUNDRED).expireAfterWrite(NumConstant.THIRTY, TimeUnit.MINUTES).build(); do { - dataList = houseService.getHouseUser(tokenDto,formDTO,haveSearchCache); + dataList = houseService.getHouseUser(tokenDto, formDTO, haveSearchCache); formDTO.setPageNo(formDTO.getPageNo() + NumConstant.ONE); long start = System.currentTimeMillis(); //设置合并策略中的 本次数据的总条数 - mergeStrategy2.setSecTotalCount(dataList.getList().size()+1); + mergeStrategy2.setSecTotalCount(dataList.getList().size() + 1); excelWriter.write(dataList.getList(), writeSheet); - log.info("getHouseUser doWrite cost:{}ms",System.currentTimeMillis() - start); - if (CollectionUtils.isEmpty(dataList.getList())){ + log.info("getHouseUser doWrite cost:{}ms", System.currentTimeMillis() - start); + if (CollectionUtils.isEmpty(dataList.getList())) { break; } - }while (dataList.getTotal() == formDTO.getPageSize()); + } while (dataList.getTotal() == formDTO.getPageSize()); //获取导出配置 haveSearchCache.invalidateAll(); @@ -414,53 +415,53 @@ public class HouseController implements ResultDataResolver { response.setCharacterEncoding("UTF-8"); response.setHeader("content-type", "application/json; charset=UTF-8"); PrintWriter printWriter = response.getWriter(); - Result result = new Result<>().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),e.getMsg()); + Result result = new Result<>().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), e.getMsg()); printWriter.write(JSON.toJSONString(result)); printWriter.close(); } finally { - if (excelWriter != null){ + if (excelWriter != null) { excelWriter.finish(); } - log.info("getHouseUser final cost:{}ms",System.currentTimeMillis() - startTime); + log.info("getHouseUser final cost:{}ms", System.currentTimeMillis() - startTime); } } /** - * @describe: 下载房屋编码 - * @author wangtong - * @date 2022/6/1 17:24 - * @params [formDTO, response] - * @return void - */ + * @return void + * @describe: 下载房屋编码 + * @author wangtong + * @date 2022/6/1 17:24 + * @params [formDTO, response] + */ @PostMapping("createHouseQrcode") - public void createQrCode(@RequestBody HouseQrcodeFormDTO formDTO, HttpServletResponse response){ + public void createQrCode(@RequestBody HouseQrcodeFormDTO formDTO, HttpServletResponse response) { ValidatorUtils.validateEntity(formDTO); try { IcHouseListResultDTO house = icHouseDao.selectHouseQrcodeById(formDTO.getId()); - if(null == house){ - throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息","未查到房屋信息"); + if (null == house) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode()+"?houseCode="+house.getHouseCode(); - BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName(), url); + String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode() + "&customerId=" + house.getCustomerId() + "&gridId=" + house.getGridId(); + BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); //BufferedImage 转 InputStream ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream); ImageIO.write(image, "png", imageOutput); InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray()); long length = imageOutput.length(); - String fileName = house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName()+".png"; + String fileName = house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; response.setContentType("application/octet-stream"); - response.setContentLength((int)length); - response.setHeader("Content-Disposition","attachment;filename="+ URLEncoder.encode(fileName, StrConstant.UTF_8)); + response.setContentLength((int) length); + response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, StrConstant.UTF_8)); //输出流 byte[] bytes = new byte[1024]; OutputStream outputStream = response.getOutputStream(); long count = 0; - while(count < length){ + while (count < length) { int len = inputStream.read(bytes, 0, 1024); - count +=len; + count += len; outputStream.write(bytes, 0, len); } outputStream.flush(); @@ -470,30 +471,30 @@ public class HouseController implements ResultDataResolver { } /** - * @describe: 批量下载一户一档的二维码 - * @author wangtong - * @date 2022/5/31 17:58 - * @params [loginUser, formDTO, response] - * @return void - */ + * @return void + * @describe: 批量下载一户一档的二维码 + * @author wangtong + * @date 2022/5/31 17:58 + * @params [loginUser, formDTO, response] + */ @PostMapping(value = "/downloadZip") public void downloadZip(@LoginUser TokenDto loginUser, @RequestBody IcHouseListFormDTO formDTO, HttpServletResponse response) throws Exception { //效验数据 LoginUserDetailsResultDTO loginUserDetail = getLoginUserDetailsResultDTO(loginUser, "【查询房屋】查询当前staff所在组织信息失败"); formDTO.setAgencyId(loginUserDetail.getAgencyId()); ValidatorUtils.validateEntity(formDTO); - houseService.downloadZip(response,formDTO); + houseService.downloadZip(response, formDTO); } /** - * @describe: 根据房屋编码获取信息 - * @author wangtong - * @date 2022/6/1 18:24 - * @params [formDTO] - * @return com.epmet.dto.result.IcHouseInfoResultDTO - */ + * @return com.epmet.dto.result.IcHouseInfoResultDTO + * @describe: 根据房屋编码获取信息 + * @author wangtong + * @date 2022/6/1 18:24 + * @params [formDTO] + */ @PostMapping("getHouseInfoByCode") - public Result getHouseInfoByCode(@LoginUser TokenDto loginUser,@RequestBody IcHouseInfoFormDTO formDTO) { + public Result getHouseInfoByCode(@LoginUser TokenDto loginUser, @RequestBody IcHouseInfoFormDTO formDTO) { //效验数据 ValidatorUtils.validateEntity(formDTO); formDTO.setCustomerId(loginUser.getCustomerId()); @@ -504,7 +505,7 @@ public class HouseController implements ResultDataResolver { @PostMapping("createHouseCode") public String createHouseCode(@RequestBody TestFormDTO formDTO) { //效验数据 - return houseService.createHouseCode(formDTO.getCustomerId(),formDTO.getBuildingId(),formDTO.getAreaCode()); + return houseService.createHouseCode(formDTO.getCustomerId(), formDTO.getBuildingId(), formDTO.getAreaCode()); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index addc1324db..7c4200feae 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -85,7 +85,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { /** * 导出房屋内家庭成员时本地缓存 */ - private static final Cache> memberCacheMap = CacheBuilder.newBuilder().expireAfterAccess(1, TimeUnit.MINUTES).expireAfterWrite(30,TimeUnit.MINUTES).build(); + private static final Cache> memberCacheMap = CacheBuilder.newBuilder().expireAfterAccess(1, TimeUnit.MINUTES).expireAfterWrite(30, TimeUnit.MINUTES).build(); @Autowired private IcHouseService icHouseService; @@ -131,28 +131,29 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Transactional(rollbackFor = Exception.class) public void addHouse(String customerId, IcHouseAddFormDTO formDTO) { //同一楼栋,单元内,房屋名称唯一 - Integer count = icHouseDao.checkDoorNameUq(formDTO.getNeighborHoodId(), formDTO.getBuildingId(), formDTO.getBuildingUnitId(), formDTO.getDoorName(),null); + Integer count = icHouseDao.checkDoorNameUq(formDTO.getNeighborHoodId(), formDTO.getBuildingId(), formDTO.getBuildingUnitId(), formDTO.getDoorName(), null); if (null != count && count > 0) { throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); } - IcHouseDTO icHouseDTO= ConvertUtils.sourceToTarget(formDTO, IcHouseDTO.class); + IcHouseDTO icHouseDTO = ConvertUtils.sourceToTarget(formDTO, IcHouseDTO.class); icHouseDTO.setCustomerId(customerId); icHouseDTO.setHouseName(getHouseName(formDTO)); icHouseService.save(icHouseDTO); } - private String getHouseName(IcHouseAddFormDTO formDTO){ + private String getHouseName(IcHouseAddFormDTO formDTO) { //设置房间名 楼栋-单元号-门牌号 IcBuildingDTO icBuilding = icBuildingService.get(formDTO.getBuildingId()); IcBuildingUnitDTO icBuildingUnit = icBuildingUnitService.get(formDTO.getBuildingUnitId()); String doorName = formDTO.getDoorName(); - String buildingName = Optional.ofNullable(icBuilding).map(u->u.getBuildingName()).orElse(""); - String unitName = Optional.ofNullable(icBuildingUnit).map(u->u.getUnitNum()).orElse(""); - return new StringBuilder().append(buildingName).append("-").append(unitName).append("-").append(doorName).toString(); + String buildingName = Optional.ofNullable(icBuilding).map(u -> u.getBuildingName()).orElse(""); + String unitName = Optional.ofNullable(icBuildingUnit).map(u -> u.getUnitNum()).orElse(""); + return new StringBuilder().append(buildingName).append("-").append(unitName).append("-").append(doorName).toString(); } /** * 更新 + * * @param customerId * @param formDTO */ @@ -160,7 +161,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Transactional(rollbackFor = Exception.class) public void updateHouse(String customerId, IcHouseAddFormDTO formDTO) { //同一楼栋,单元内,房屋名称唯一 - Integer count = icHouseDao.checkDoorNameUq(formDTO.getNeighborHoodId(), formDTO.getBuildingId(), formDTO.getBuildingUnitId(),formDTO.getDoorName(), formDTO.getHouseId()); + Integer count = icHouseDao.checkDoorNameUq(formDTO.getNeighborHoodId(), formDTO.getBuildingId(), formDTO.getBuildingUnitId(), formDTO.getDoorName(), formDTO.getHouseId()); if (null != count && count > 0) { throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); } @@ -176,11 +177,12 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { houseChangeRecord(formDTO.getHouseId(), customerId, icHouseDTO); icHouseService.update(icHouseDTO); //删除房屋缓存 - icHouseRedis.delHouseInfo(formDTO.getHouseId(),customerId); + icHouseRedis.delHouseInfo(formDTO.getHouseId(), customerId); } /** * Desc: 房屋变更记录 + * * @param houseId * @param customerId * @param houseDTO @@ -189,18 +191,18 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { */ @Transactional(rollbackFor = Exception.class) @Override - public void houseChangeRecord(String houseId, String customerId, IcHouseDTO houseDTO){ + public void houseChangeRecord(String houseId, String customerId, IcHouseDTO houseDTO) { IcHouseEntity entity = icHouseService.selectById(houseId); entity.setOwnerName(null == entity.getOwnerName() ? "" : entity.getOwnerName()); entity.setOwnerPhone(null == entity.getOwnerPhone() ? "" : entity.getOwnerPhone()); entity.setOwnerIdCard(null == entity.getOwnerIdCard() ? "" : entity.getOwnerIdCard()); - if (null == entity){ + if (null == entity) { throw new EpmetException("不存在此房屋..."); } StringBuilder sbBefore = new StringBuilder(); StringBuilder sbAfter = new StringBuilder(); List entityList = new ArrayList<>(); - if (!houseDTO.getHouseType().equals(entity.getHouseType())){ + if (!houseDTO.getHouseType().equals(entity.getHouseType())) { sbAfter.append(HouseChangeEnums.HOUSE_TYPE.getColumnName()).append(":").append(null == houseDTO.getHouseTypeName() ? HouseTypeEnums.getTypeValue(houseDTO.getHouseType()) : houseDTO.getHouseTypeName()).append(";"); sbBefore.append(HouseChangeEnums.HOUSE_TYPE.getColumnName()).append(":").append(HouseTypeEnums.getTypeValue(entity.getHouseType())).append(";"); IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); @@ -209,7 +211,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { e.setChangeAfter(null == houseDTO.getHouseTypeName() ? HouseTypeEnums.getTypeValue(houseDTO.getHouseType()) : houseDTO.getHouseTypeName()); entityList.add(e); } - if (!houseDTO.getPurpose().equals(entity.getPurpose())){ + if (!houseDTO.getPurpose().equals(entity.getPurpose())) { sbAfter.append(HouseChangeEnums.PURPOSE.getColumnName()).append(":").append(null == houseDTO.getPurposeName() ? HousePurposeEnums.getTypeValue(houseDTO.getPurpose()) : houseDTO.getPurposeName()).append(";"); sbBefore.append(HouseChangeEnums.PURPOSE.getColumnName()).append(":").append(HousePurposeEnums.getTypeValue(entity.getPurpose())).append(";"); IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); @@ -218,7 +220,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { e.setChangeBefore(HousePurposeEnums.getTypeValue(entity.getPurpose())); entityList.add(e); } - if (!houseDTO.getRentFlag().equals(entity.getRentFlag())){ + if (!houseDTO.getRentFlag().equals(entity.getRentFlag())) { sbAfter.append(HouseChangeEnums.RENT_FLAG.getColumnName()).append(":").append(null == houseDTO.getRentName() ? HouseRentFlagEnums.getTypeValue(houseDTO.getRentFlag()) : houseDTO.getRentName()).append(";"); sbBefore.append(HouseChangeEnums.RENT_FLAG.getColumnName()).append(":").append(HouseRentFlagEnums.getTypeValue(entity.getRentFlag())).append(";"); IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); @@ -227,7 +229,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { e.setChangeBefore(HouseRentFlagEnums.getTypeValue(entity.getRentFlag())); entityList.add(e); } - if (null != houseDTO.getOwnerName() && !houseDTO.getOwnerName().equals(entity.getOwnerName())){ + if (null != houseDTO.getOwnerName() && !houseDTO.getOwnerName().equals(entity.getOwnerName())) { sbAfter.append(HouseChangeEnums.OWNER_NAME.getColumnName()).append(":").append(StringUtils.isNotBlank(houseDTO.getOwnerName()) ? houseDTO.getOwnerName() : "无").append(";"); sbBefore.append(HouseChangeEnums.OWNER_NAME.getColumnName()).append(":").append(StringUtils.isNotBlank(entity.getOwnerName()) ? entity.getOwnerName() : "无").append(";"); IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); @@ -236,7 +238,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { e.setChangeBefore(StringUtils.isNotBlank(entity.getOwnerName()) ? entity.getOwnerName() : "无"); entityList.add(e); } - if (null != houseDTO.getOwnerPhone() && !houseDTO.getOwnerPhone().equals(entity.getOwnerPhone())){ + if (null != houseDTO.getOwnerPhone() && !houseDTO.getOwnerPhone().equals(entity.getOwnerPhone())) { sbAfter.append(HouseChangeEnums.OWNER_PHONE.getColumnName()).append(":").append(StringUtils.isNotBlank(houseDTO.getOwnerPhone()) ? houseDTO.getOwnerPhone() : "无").append(";"); sbBefore.append(HouseChangeEnums.OWNER_PHONE.getColumnName()).append(":").append(StringUtils.isNotBlank(entity.getOwnerPhone()) ? entity.getOwnerPhone() : "无").append(";"); IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); @@ -245,7 +247,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { e.setChangeBefore(StringUtils.isNotBlank(entity.getOwnerPhone()) ? entity.getOwnerPhone() : "无"); entityList.add(e); } - if (null != houseDTO.getOwnerIdCard() && !houseDTO.getOwnerIdCard().equals(entity.getOwnerIdCard())){ + if (null != houseDTO.getOwnerIdCard() && !houseDTO.getOwnerIdCard().equals(entity.getOwnerIdCard())) { sbAfter.append(HouseChangeEnums.OWNER_ID_CARD.getColumnName()).append(":").append(StringUtils.isNotBlank(houseDTO.getOwnerIdCard()) ? houseDTO.getOwnerIdCard() : "无").append(";"); sbBefore.append(HouseChangeEnums.OWNER_ID_CARD.getColumnName()).append(":").append(StringUtils.isNotBlank(entity.getOwnerIdCard()) ? entity.getOwnerIdCard() : "无").append(";"); IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); @@ -254,7 +256,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { e.setChangeBefore(StringUtils.isNotBlank(entity.getOwnerIdCard()) ? entity.getOwnerIdCard() : "无"); entityList.add(e); } - if (StringUtils.isNotBlank(sbAfter)){ + if (StringUtils.isNotBlank(sbAfter)) { String before = sbBefore.substring(NumConstant.ZERO, sbBefore.length() - NumConstant.ONE); String after = sbAfter.substring(NumConstant.ZERO, sbAfter.length() - NumConstant.ONE); HouseAgencyInfoResultDTO houseAgencyInfo = icHouseDao.getHouseAgencyInfo(houseId); @@ -280,15 +282,16 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { /** * 删除 + * * @param houseId */ @Override @Transactional(rollbackFor = Exception.class) public void delHouse(String houseId) { //单个删除房屋,房屋内有居民不允许删除 - NeighborHoodManageDelFormDTO formDTO=new NeighborHoodManageDelFormDTO(); + NeighborHoodManageDelFormDTO formDTO = new NeighborHoodManageDelFormDTO(); formDTO.setType(CustomerGridConstant.HOUSE); - List ids=new ArrayList<>(); + List ids = new ArrayList<>(); ids.add(houseId); formDTO.setIds(ids); allDelete(formDTO); @@ -302,24 +305,25 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { if (StringUtils.isNotBlank(formDTO.getAgencyId())) { pids = getPids(formDTO.getAgencyId()); } - if (StringUtils.isNotBlank(formDTO.getLevel()) && OrgTypeEnum.AGENCY.getCode().equals(formDTO.getLevel())){ + if (StringUtils.isNotBlank(formDTO.getLevel()) && OrgTypeEnum.AGENCY.getCode().equals(formDTO.getLevel())) { pids = getPids(formDTO.getAgencyId()); } formDTO.setPids(pids); - PageInfo pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(),formDTO.getIsPage()) - .doSelectPageInfo(() -> icHouseDao.searchHouseByPage(formDTO)); + PageInfo pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.getIsPage()) + .doSelectPageInfo(() -> icHouseDao.searchHouseByPage(formDTO)); List records = pageInfo.getList(); - records.forEach(item->{ + records.forEach(item -> { item.setHouseType(HouseTypeEnums.getTypeValue(item.getHouseTypeKey())); item.setPurpose(HousePurposeEnums.getTypeValue(item.getPurposeKey())); }); - return new PageData<>(records == null? new ArrayList<>():records,pageInfo.getTotal()); + return new PageData<>(records == null ? new ArrayList<>() : records, pageInfo.getTotal()); } - public String getPids(String agencyId){ + + public String getPids(String agencyId) { String pids = null; CustomerAgencyDTO agency = agencyservice.getAgencyById(agencyId); @@ -340,33 +344,33 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { public void exportBuildinginfo(IcHouseListFormDTO formDTO, HttpServletResponse response) throws Exception { //如果类型是house 查房屋 //导出房屋 - PageData icHouseExcels = new PageData<>(new ArrayList<>(),NumConstant.ZERO); + PageData icHouseExcels = new PageData<>(new ArrayList<>(), NumConstant.ZERO); List list = new ArrayList<>(); Integer pageNo = NumConstant.ONE; do { formDTO.setPageNo(pageNo); icHouseExcels = getHouseList(formDTO); - if (CollectionUtils.isEmpty(icHouseExcels.getList())){ + if (CollectionUtils.isEmpty(icHouseExcels.getList())) { break; } list.addAll(icHouseExcels.getList()); pageNo++; - }while (icHouseExcels.getList().size() == formDTO.getPageSize()); + } while (icHouseExcels.getList().size() == formDTO.getPageSize()); TemplateExportParams templatePath = new TemplateExportParams("excel/house_export.xlsx"); - Map map = new HashMap<>(); + Map map = new HashMap<>(); map.put("maplist", list); - ExcelPoiUtils.exportExcel(templatePath ,map,"房屋信息录入表",response); + ExcelPoiUtils.exportExcel(templatePath, map, "房屋信息录入表", response); } @Override public List queryListHouseInfo(Set houseIdList, String customerId) { - if(org.apache.commons.collections4.CollectionUtils.isEmpty(houseIdList)){ + if (org.apache.commons.collections4.CollectionUtils.isEmpty(houseIdList)) { return new ArrayList<>(); } List result = new ArrayList<>(); houseIdList.forEach(h -> { HouseInfoDTO houseInfo = icHouseRedis.getHouseInfo(h, customerId); - if (null != houseInfo){ + if (null != houseInfo) { result.add(houseInfo); } }); @@ -381,11 +385,11 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { excelReader = EasyExcel.read(inputStream).build(); // 这里为了简单 所以注册了 同样的head 和Listener 自己使用功能必须不同的Listener ReadSheet readSheet = EasyExcel.readSheet(0).head(HouseInfoModel.class) - .registerReadListener(new ImportHouseInfoListener(formDTO,icBuildingDao,icHouseRedis,neighborHoodService,icHouseService,epmetCommonServiceOpenFeignClient,importTask.getData().getTaskId(),houseService)) + .registerReadListener(new ImportHouseInfoListener(formDTO, icBuildingDao, icHouseRedis, neighborHoodService, icHouseService, epmetCommonServiceOpenFeignClient, importTask.getData().getTaskId(), houseService)) .build(); excelReader.read(readSheet); - } catch (Exception e){ - log.error("dispose exception",e); + } catch (Exception e) { + log.error("dispose exception", e); ImportTaskCommonFormDTO input = new ImportTaskCommonFormDTO(); input.setOperatorId(formDTO.getUserId()); input.setTaskId(importTask.getData().getTaskId()); @@ -402,79 +406,80 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { /** * Desc 小区管理中批量删除 + * * @param formDTO * @author zxc * @date 2022/3/1 4:57 下午 */ @Override public void allDelete(NeighborHoodManageDelFormDTO formDTO) { - if (CollectionUtils.isEmpty(formDTO.getIds())){ + if (CollectionUtils.isEmpty(formDTO.getIds())) { return; } List ids = formDTO.getIds(); - if (formDTO.getType().equals(CustomerGridConstant.NEIGHBORHOOD)){ + if (formDTO.getType().equals(CustomerGridConstant.NEIGHBORHOOD)) { List exists = icHouseDao.selectExistBuildingByNeighborHoodIds(ids); - if (!CollectionUtils.isEmpty(exists)){ + if (!CollectionUtils.isEmpty(exists)) { exists.forEach(e -> { for (int i = NumConstant.ZERO; i < ids.size(); i++) { - if (ids.get(i).equals(e.getNeighborHoodId())){ + if (ids.get(i).equals(e.getNeighborHoodId())) { ids.remove(i); continue; } } }); } - if (!CollectionUtils.isEmpty(ids)){ + if (!CollectionUtils.isEmpty(ids)) { icNeighborHoodDao.deleteBatchIds(ids); } - if (!CollectionUtils.isEmpty(exists)){ + if (!CollectionUtils.isEmpty(exists)) { String collect = exists.stream().map(m -> m.getName()).collect(Collectors.joining(",")); - EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.setMsg(String.format("%s内包含楼栋信息,暂无法删除",collect)); + EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.setMsg(String.format("%s内包含楼栋信息,暂无法删除", collect)); throw new EpmetException(EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.getCode()); } - }else if (formDTO.getType().equals(CustomerGridConstant.BUILDING)){ + } else if (formDTO.getType().equals(CustomerGridConstant.BUILDING)) { List exists = icHouseDao.selectExistHouseByBuildingIds(ids); - if (!CollectionUtils.isEmpty(exists)){ + if (!CollectionUtils.isEmpty(exists)) { exists.forEach(e -> { for (int i = NumConstant.ZERO; i < ids.size(); i++) { - if (ids.get(i).equals(e.getBuildingId())){ + if (ids.get(i).equals(e.getBuildingId())) { ids.remove(i); continue; } } }); } - if (!CollectionUtils.isEmpty(ids)){ + if (!CollectionUtils.isEmpty(ids)) { icBuildingDao.deleteBatchIds(ids); } - if (!CollectionUtils.isEmpty(exists)){ + if (!CollectionUtils.isEmpty(exists)) { String collect = exists.stream().map(m -> m.getName()).collect(Collectors.joining(",")); - EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.setMsg(String.format("%s内包含房屋信息,暂无法删除",collect)); + EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.setMsg(String.format("%s内包含房屋信息,暂无法删除", collect)); throw new EpmetException(EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.getCode()); } - }else if (formDTO.getType().equals(CustomerGridConstant.HOUSE)){ + } else if (formDTO.getType().equals(CustomerGridConstant.HOUSE)) { Result> existUsers = epmetUserOpenFeignClient.getExistUserByHouseIds(ids); - if (!existUsers.success()){ + if (!existUsers.success()) { throw new EpmetException("根据房屋IDs查询房屋下是否有存在居民失败..."); } List exists = existUsers.getData(); - if (!CollectionUtils.isEmpty(exists)){ + if (!CollectionUtils.isEmpty(exists)) { exists.forEach(e -> { for (int i = NumConstant.ZERO; i < ids.size(); i++) { - if (ids.get(i).equals(e)){ + if (ids.get(i).equals(e)) { ids.remove(i); continue; } } }); } - if (!CollectionUtils.isEmpty(ids)){ + if (!CollectionUtils.isEmpty(ids)) { icHouseDao.deleteBatchIds(ids); } - if (!CollectionUtils.isEmpty(exists)){ + if (!CollectionUtils.isEmpty(exists)) { List list = icHouseDao.selectHouseNames(exists); String collect = list.stream().collect(Collectors.joining(",")); - EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.setMsg(String.format("%s内包含居民信息,暂无法删除",collect)); + EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.setMsg(String.format("%s内包含居民信息,暂无法删除", collect)); throw new EpmetException(EpmetErrorCode.NEIGHBORHOOD_DEL_FAILED.getCode()); } } @@ -485,8 +490,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { HouseInfoDTO houseInfo = icHouseRedis.getHouseInfo(houseId, customerId); if (null != houseInfo && StringUtils.isNotBlank(houseInfo.getAgencyId())) { AgencyInfoCache agencyInfoCache = CustomerOrgRedis.getAgencyInfo(houseInfo.getAgencyId()); - houseInfo.setAgencyPathName(StringUtils.isNotBlank(agencyInfoCache.getAllParentName())?agencyInfoCache.getAllParentName().concat(StrConstant.HYPHEN).concat(agencyInfoCache.getOrganizationName()):agencyInfoCache.getOrganizationName()); - houseInfo.setAreaCode(StringUtils.isNotBlank(agencyInfoCache.getAreaCode())?agencyInfoCache.getAreaCode():StrConstant.EPMETY_STR); + houseInfo.setAgencyPathName(StringUtils.isNotBlank(agencyInfoCache.getAllParentName()) ? agencyInfoCache.getAllParentName().concat(StrConstant.HYPHEN).concat(agencyInfoCache.getOrganizationName()) : agencyInfoCache.getOrganizationName()); + houseInfo.setAreaCode(StringUtils.isNotBlank(agencyInfoCache.getAreaCode()) ? agencyInfoCache.getAreaCode() : StrConstant.EPMETY_STR); } else { houseInfo.setAgencyPathName(StrConstant.EPMETY_STR); houseInfo.setAreaCode(StrConstant.EPMETY_STR); @@ -596,6 +601,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { /** * Desc: 根据类型更新排序 + * * @param formDTO * @author zxc * @date 2022/5/6 08:50 @@ -603,10 +609,10 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Override @Transactional(rollbackFor = Exception.class) public void updateSort(UpdateSortFormDTO formDTO) { - if (formDTO.getType().equals(CustomerGridConstant.HOUSE)){ + if (formDTO.getType().equals(CustomerGridConstant.HOUSE)) { IcHouseDTO icHouseDTO = ConvertUtils.sourceToTarget(formDTO, IcHouseDTO.class); icHouseService.update(icHouseDTO); - }else if(formDTO.getType().equals(CustomerGridConstant.BUILDING)){ + } else if (formDTO.getType().equals(CustomerGridConstant.BUILDING)) { IcBuildingDTO icBuildingDTO = ConvertUtils.sourceToTarget(formDTO, IcBuildingDTO.class); icBuildingService.update(icBuildingDTO); } @@ -625,53 +631,53 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { int searchLevel = 0; //如果小区id不为空 则直接查询小区内的居民 - if (StringUtils.isNotEmpty(formDTO.getNeighborHoodId())){ + if (StringUtils.isNotEmpty(formDTO.getNeighborHoodId())) { searchLevel = 1; } //如果楼宇id不为空 则直接查询楼宇内的居民 - if (StringUtils.isNotEmpty(formDTO.getBuildingId())){ + if (StringUtils.isNotEmpty(formDTO.getBuildingId())) { searchLevel = 2; } //如果有具体的查询套件 则直接按照房屋Id 来查 - if (StringUtils.isNotEmpty(formDTO.getOwnerName()) || StringUtils.isNotEmpty(formDTO.getOwnerPhone()) || StringUtils.isNotEmpty(formDTO.getRentFlag())){ + if (StringUtils.isNotEmpty(formDTO.getOwnerName()) || StringUtils.isNotEmpty(formDTO.getOwnerPhone()) || StringUtils.isNotEmpty(formDTO.getRentFlag())) { searchLevel = 3; } - long start = System.currentTimeMillis(); + long start = System.currentTimeMillis(); PageData houseData = this.getHouseList(formDTO); - log.info("getHouseUser getHoseList cost:{}ms",System.currentTimeMillis() - start); + log.info("getHouseUser getHoseList cost:{}ms", System.currentTimeMillis() - start); List resultList = new ArrayList<>(); - PageData result = new PageData<>(resultList,houseData.getList().size()); + PageData result = new PageData<>(resultList, houseData.getList().size()); int finalSearchLevel = searchLevel; - AtomicInteger num = new AtomicInteger((formDTO.getPageNo()-1) * formDTO.getPageSize()); + AtomicInteger num = new AtomicInteger((formDTO.getPageNo() - 1) * formDTO.getPageSize()); - houseData.getList().forEach(o ->{ + houseData.getList().forEach(o -> { resiParam.setAgencyId(o.getAgencyId()); - if (finalSearchLevel == 1){ + if (finalSearchLevel == 1) { resiParam.setNeighborHoodId(o.getNeighborHoodId()); } - if (finalSearchLevel == 2){ + if (finalSearchLevel == 2) { resiParam.setBuildingId(o.getBuildingId()); } - if (finalSearchLevel == 3){ + if (finalSearchLevel == 3) { resiParam.setHouseId(o.getHouseId()); } - this.getHouseMembers(resiParam, memberCacheMap,haveSearchCache); + this.getHouseMembers(resiParam, memberCacheMap, haveSearchCache); List members = memberCacheMap.getIfPresent(o.getHouseId()); //序号 一个houseId为一个序号 int n = num.incrementAndGet(); //没有住户 则直接写房屋 - if (CollectionUtils.isEmpty(members)){ + if (CollectionUtils.isEmpty(members)) { HouseMemberResultDTO resultDTO = ConvertUtils.sourceToTarget(o, HouseMemberResultDTO.class); resultDTO.setNum(n); resultList.add(resultDTO); return; } //有住户 房屋信息是重复的 - members.forEach(m->{ + members.forEach(m -> { HouseMemberResultDTO resultDTO = ConvertUtils.sourceToTarget(m, HouseMemberResultDTO.class); resultDTO.setNum(n); resultDTO.setAgencyName(o.getAgencyName()); @@ -694,37 +700,38 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { /** * desc:分情况获取 房屋内居民 + * * @param resiParam * @param memberMap * @param haveSearchCache */ public void getHouseMembers(RentTenantDataFormDTO resiParam, Cache> memberMap, Cache haveSearchCache) { - String searchKey = resiParam.getHouseId()+resiParam.getBuildingId()+resiParam.getNeighborHoodId()+resiParam.getGridId()+resiParam.getAgencyId(); + String searchKey = resiParam.getHouseId() + resiParam.getBuildingId() + resiParam.getNeighborHoodId() + resiParam.getGridId() + resiParam.getAgencyId(); Boolean haveSearch = haveSearchCache.getIfPresent(searchKey); //log.info("getHouseUser getHouseMembers searchKey:"+searchKey); - if (haveSearch!= null && haveSearch){ + if (haveSearch != null && haveSearch) { return; } long startT = System.currentTimeMillis(); - haveSearchCache.put(searchKey,true); + haveSearchCache.put(searchKey, true); List memberListTemp = null; resiParam.setPageNo(NumConstant.ONE); do { Result> memberResult = epmetUserOpenFeignClient.getHouseMemberList(resiParam); - log.debug("=======查询居民:"+ resiParam.getPageNo()+",size:"+resiParam.getPageSize()+",result:"+memberResult.getData().size()); + log.debug("=======查询居民:" + resiParam.getPageNo() + ",size:" + resiParam.getPageSize() + ",result:" + memberResult.getData().size()); if (!memberResult.success()) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "调用user服务失败"); } memberListTemp = memberResult.getData(); - log.debug("=======查询居民结果:"+ JSON.toJSONString(memberListTemp)); + log.debug("=======查询居民结果:" + JSON.toJSONString(memberListTemp)); if (CollectionUtils.isEmpty(memberListTemp)) { break; } - resiParam.setPageNo(resiParam.getPageNo()+1); + resiParam.setPageNo(resiParam.getPageNo() + 1); memberListTemp.forEach(h -> memberMap.put(h.getHomeId(), h.getHouseMemberList())); } while (memberListTemp.size() == resiParam.getPageSize()); - log.info("getHouseUser getHouseMembers cost:{}ms,param:{}",System.currentTimeMillis() - startT,JSON.toJSONString(resiParam)); + log.info("getHouseUser getHouseMembers cost:{}ms,param:{}", System.currentTimeMillis() - startT, JSON.toJSONString(resiParam)); } /** @@ -783,13 +790,13 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Override - public void downloadZip(HttpServletResponse response,IcHouseListFormDTO formDTO) throws Exception { + public void downloadZip(HttpServletResponse response, IcHouseListFormDTO formDTO) throws Exception { // 查询pids String pids = null; if (StringUtils.isNotBlank(formDTO.getAgencyId())) { pids = getPids(formDTO.getAgencyId()); } - if (StringUtils.isNotBlank(formDTO.getLevel()) && OrgTypeEnum.AGENCY.getCode().equals(formDTO.getLevel())){ + if (StringUtils.isNotBlank(formDTO.getLevel()) && OrgTypeEnum.AGENCY.getCode().equals(formDTO.getLevel())) { pids = getPids(formDTO.getAgencyId()); } formDTO.setPids(pids); @@ -808,10 +815,10 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { List houseList = icHouseDao.searchHouseByPage(formDTO); - for(IcHouseListResultDTO house : houseList){ + for (IcHouseListResultDTO house : houseList) { - BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName(), - HouseQrcodeEnum.PREFIX.getCode()+"?houseCode="+house.getHouseCode()); + BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), + HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode() + "&customerId=" + house.getCustomerId() + "&gridId=" + house.getGridId()); try { byte[] buf = new byte[8192]; @@ -825,7 +832,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { } inputStream.close(); } catch (IOException e) { - throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "组装zip信息有误","组装zip信息有误"); + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "组装zip信息有误", "组装zip信息有误"); } } zip.close(); @@ -850,12 +857,12 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { * 获取文件名 */ public static String getFileName(IcHouseListResultDTO house) { - return house.getNeighborHoodName() + File.separator +house.getBuildingName() + File.separator +house.getUnitNum() + File.separator + house.getDoorName() + HouseQrcodeEnum.SUFFIX.getCode(); + return house.getNeighborHoodName() + File.separator + house.getBuildingName() + File.separator + house.getUnitNum() + File.separator + house.getDoorName() + HouseQrcodeEnum.SUFFIX.getCode(); } @Override public String createHouseCode(String customerId, String buildingId, String areaCode) { - if(StringUtils.isBlank(customerId) || StringUtils.isBlank(buildingId) ||StringUtils.isBlank(areaCode)){ + if (StringUtils.isBlank(customerId) || StringUtils.isBlank(buildingId) || StringUtils.isBlank(areaCode)) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "所有字段不可为空", "所有字段不可为空"); } String result = ""; @@ -899,8 +906,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); - String fileName = house.getNeighborHoodName() + house.getBuildingName() +house.getUnitNum()+ house.getDoorName()+".png"; + String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode() + "&customerId=" + house.getCustomerId() + "&gridId=" + house.getGridId(); + String fileName = house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); @@ -938,7 +945,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Override public Result getHouseInfoByCode(IcHouseInfoFormDTO formDTO) { IcHouseEntity house = icHouseDao.selectByHouseCode(formDTO.getHouseCode()); - HouseInfoCache cache = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(),house.getId()); + HouseInfoCache cache = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(), house.getId()); IcHouseInfoResultDTO resut = ConvertUtils.sourceToTarget(cache, IcHouseInfoResultDTO.class); resut.setHouseId(cache.getHomeId()); return new Result().ok(resut); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index 12cc0ccd16..2ec0234444 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -113,7 +113,8 @@ ag.ORGANIZATION_NAME agencyName, c.GRID_ID as gridId, gr.GRID_NAME, - IFNULL(a.sort,0) as sort + IFNULL(a.sort,0) as sort, + a.CUSTOMER_ID from ic_house a LEFT JOIN ic_building b on a.BUILDING_ID = b.ID and b.DEL_FLAG = '0' LEFT JOIN ic_neighbor_hood c on a.NEIGHBOR_HOOD_ID = c.ID and c.DEL_FLAG = '0' @@ -387,7 +388,8 @@ CONCAT(d.UNIT_NUM,'单元') as unitNum, a.DOOR_NAME as doorName, a.HOUSE_CODE, - a.CUSTOMER_ID + a.CUSTOMER_ID, + c.GRID_ID from ic_house a LEFT JOIN ic_building b on a.BUILDING_ID = b.ID and b.DEL_FLAG = '0' LEFT JOIN ic_neighbor_hood c on a.NEIGHBOR_HOOD_ID = c.ID and c.DEL_FLAG = '0' From d674dd23607f96c5c79a9f1c628279ded64af4a9 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 15:50:40 +0800 Subject: [PATCH 21/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=AF=A6=E7=BB=86=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java | 5 +++++ .../java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java | 5 +++++ .../main/java/com/epmet/controller/MyHomeController.java | 6 +++--- .../main/java/com/epmet/entity/IcResiUserConfirmEntity.java | 5 +++++ 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java index eb5adec674..39ee709284 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserConfirmDTO.java @@ -102,6 +102,11 @@ public class IcResiUserConfirmDTO implements Serializable { */ private String xjzdPathCode; + /** + * 详细地址 + */ + private String xxdz; + /** * 民族【字典表】 */ diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java index 09431509ac..b66f734cdf 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java @@ -102,6 +102,11 @@ public class IcResiUserConfirmSubmitDTO implements Serializable { */ private String xjzdPathCode; + /** + * 详细地址 + */ + private String xxdz; + /** * 民族【字典表】 */ diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index 9aff52b474..a1d0ffc813 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -55,7 +55,7 @@ public class MyHomeController { public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setOperationDescribe(HomeMemberOperationEnum.ADD.getCode()); + dto.setSubmitType(HomeMemberOperationEnum.ADD.getCode()); return icResiUserConfirmService.addMember(dto); } @@ -70,7 +70,7 @@ public class MyHomeController { public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setOperationDescribe(HomeMemberOperationEnum.UPDATE.getCode()); + dto.setSubmitType(HomeMemberOperationEnum.UPDATE.getCode()); return icResiUserConfirmService.editMember(dto); } @@ -85,7 +85,7 @@ public class MyHomeController { public Result delMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setOperationDescribe(HomeMemberOperationEnum.DELETE.getCode()); + dto.setSubmitType(HomeMemberOperationEnum.DELETE.getCode()); return icResiUserConfirmService.delMember(dto); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java index 15f5751bf1..5c06a854e7 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserConfirmEntity.java @@ -98,6 +98,11 @@ public class IcResiUserConfirmEntity extends BaseEpmetEntity { */ private String xjzdPathCode; + /** + * 详细地址 + */ + private String xxdz; + /** * 民族【字典表】 */ From ded7a4429ca697bf858db591f60d7c5a145ebbb7 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Thu, 2 Jun 2022 16:49:18 +0800 Subject: [PATCH 22/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E5=AD=97=E6=AE=B5=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/IcResiUserDao.xml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml index 85650573e2..39a54f02b2 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml @@ -1068,10 +1068,9 @@ birthday, MOBILE, mz, - HJSZD as hjszdCode, + HJSZD, yhzgx, - XJZD as xjzdCode, - xjzd + XJZD from ic_resi_user where DEL_FLAG='0' and id=#{icResiUserId} From 43634f14a6637ddb24eed2399a7e05894906d7aa Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Mon, 6 Jun 2022 11:19:23 +0800 Subject: [PATCH 23/39] =?UTF-8?q?sql=E8=84=9A=E6=9C=AC=EF=BC=8C=E6=96=B0?= =?UTF-8?q?=E5=BB=BA=E6=88=BF=E5=B1=8B=E7=94=9F=E6=88=90code=E5=92=8C?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/dto/IcHouseDTO.java | 6 +++ .../com/epmet/controller/HouseController.java | 2 +- .../java/com/epmet/dao/IcNeighborHoodDao.java | 2 + .../java/com/epmet/entity/IcHouseEntity.java | 2 +- .../epmet/service/impl/HouseServiceImpl.java | 18 ++++++++- .../db/migration/V0.0.21__alter_ic_house.sql | 10 +++++ .../resources/mapper/IcNeighborHoodDao.xml | 7 ++++ .../V0.0.52__ic_resi_user_confirm.sql | 39 +++++++++++++++++++ 8 files changed, 82 insertions(+), 4 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.21__alter_ic_house.sql create mode 100644 epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseDTO.java index 2e0484f6b7..42163539ce 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcHouseDTO.java @@ -111,6 +111,12 @@ public class IcHouseDTO implements Serializable { */ private BigDecimal sort; + /** + * 房屋编码 + */ + private String houseCode; + private String houseQrcodeUrl; + /** * 删除标识 0未删除、1已删除 */ diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 3a7d221a29..472f3cb615 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -159,7 +159,7 @@ public class HouseController implements ResultDataResolver { @NoRepeatSubmit @PostMapping("houseadd") - public Result houseAdd(@LoginUser TokenDto tokenDTO, @RequestBody IcHouseAddFormDTO formDTO) { + public Result houseAdd(@LoginUser TokenDto tokenDTO, @RequestBody IcHouseAddFormDTO formDTO) throws Exception { //效验数据 ValidatorUtils.validateEntity(formDTO, IcHouseAddFormDTO.AddShowGroup.class); String customerId = tokenDTO.getCustomerId(); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java index d835e2e65d..ca929081cc 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java @@ -89,4 +89,6 @@ public interface IcNeighborHoodDao extends BaseDao { void delProperty(@Param("neighborHoodIds")List neighborHoodIds); void updateOneNeighborHood(ImportGeneralDTO info); + + String getAreaCode(@Param("neighborHoodId")String neighborHoodId); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java index 73d6dfb77d..5940608292 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcHouseEntity.java @@ -116,5 +116,5 @@ public class IcHouseEntity extends BaseEpmetEntity { * 房屋编码 */ private String houseCode; - + private String houseQrcodeUrl; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 7c4200feae..fa74cdb6bb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -135,10 +135,24 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { if (null != count && count > 0) { throw new RenException(EpmetErrorCode.DOOR_NAME_EXITED.getCode(), EpmetErrorCode.DOOR_NAME_EXITED.getMsg()); } - IcHouseDTO icHouseDTO = ConvertUtils.sourceToTarget(formDTO, IcHouseDTO.class); + + IcHouseEntity icHouseDTO = ConvertUtils.sourceToTarget(formDTO, IcHouseEntity.class); icHouseDTO.setCustomerId(customerId); icHouseDTO.setHouseName(getHouseName(formDTO)); - icHouseService.save(icHouseDTO); + //获取所属组织地区码 + String areaCode = icNeighborHoodDao.getAreaCode(formDTO.getNeighborHoodId()); + if (StringUtils.isNotBlank(areaCode)) { + icHouseDTO.setHouseCode(createHouseCode(customerId, formDTO.getBuildingId(), areaCode)); + } + icHouseDao.insert(icHouseDTO); + IcHouseEntity entity = new IcHouseEntity(); + entity.setId(icHouseDTO.getId()); + try { + entity.setHouseQrcodeUrl(createHouseQrcodeUrl(icHouseDTO.getId())); + } catch (Exception e) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"二维码生成失败","二维码生成失败"); + } + icHouseDao.updateById(entity); } private String getHouseName(IcHouseAddFormDTO formDTO) { diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.21__alter_ic_house.sql b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.21__alter_ic_house.sql new file mode 100644 index 0000000000..88dbfe6db5 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.21__alter_ic_house.sql @@ -0,0 +1,10 @@ +alter table ic_house add COLUMN `HOUSE_CODE` varchar(32) DEFAULT NULL COMMENT '房屋编码'; +alter table ic_house add COLUMN `HOUSE_QRCODE_URL` varchar(255) DEFAULT NULL COMMENT '一户一码的二维码地址'; + + +CREATE TABLE `ic_house_code_info` ( + `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户id', + `BUILDING_ID` varchar(64) NOT NULL COMMENT '所属楼栋id', + `BUILDING_MAX_NUM` varchar(10) NOT NULL COMMENT '最大的楼栋编码序列号', + `HOUSE_MAX_NUM` varchar(10) NOT NULL COMMENT '该楼栋下最大的房屋编码序列号' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='房屋编码辅助表'; \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml index 0f1cf1b84b..7fc0827667 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml @@ -301,4 +301,11 @@ del_flag = '0' AND grid_id = #{gridId} + diff --git a/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql b/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql new file mode 100644 index 0000000000..02d603bb55 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql @@ -0,0 +1,39 @@ +CREATE TABLE `ic_resi_user_confirm` +( + `ID` varchar(64) NOT NULL COMMENT '主键', + `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id customer.id', + `AGENCY_ID` varchar(64) NOT NULL COMMENT '组织Id', + `PIDS` varchar(255) NOT NULL COMMENT '组织的pids', + `GRID_ID` varchar(64) NOT NULL COMMENT '网格ID', + `SURNAME` varchar(64) NOT NULL COMMENT '姓', + `NAME` varchar(64) NOT NULL COMMENT '名', + `MOBILE` varchar(15) DEFAULT NULL COMMENT '手机号', + `GENDER` char(2) DEFAULT NULL COMMENT '性别', + `ID_CARD` varchar(18) NOT NULL COMMENT '身份证号', + `BIRTHDAY` varchar(64) DEFAULT NULL COMMENT '出生日期', + `HJSZD` varchar(256) DEFAULT NULL COMMENT '户籍所在地', + `HJSZD_CODE` varchar(256) DEFAULT NULL COMMENT '户籍所在地地区码', + `HJSZD_PATH_CODE` varchar(255) DEFAULT NULL COMMENT '户籍所在地层级编码', + `XJZD` varchar(256) DEFAULT NULL COMMENT '现居住地', + `XJZD_CODE` varchar(256) DEFAULT NULL COMMENT '现居住地地区码', + `XJZD_PATH_CODE` varchar(255) DEFAULT NULL COMMENT '现居住地层级编码', + `XXDZ` varchar(255) DEFAULT NULL COMMENT '详细地址', + `MZ` varchar(64) DEFAULT NULL COMMENT '民族【字典表】', + `MZ_NAME` varchar(255) DEFAULT NULL COMMENT '名族名称', + `YHZGX` varchar(64) DEFAULT NULL COMMENT '与户主关系', + `YHZGX_NAME` varchar(255) DEFAULT NULL COMMENT '与户主关系名称', + `CONFIRM_RESULT` varchar(64) DEFAULT '0' COMMENT '审核状态0未审核,1审核通过,2审核不通过', + `REASON` varchar(64) DEFAULT NULL COMMENT '审核不通过的原因', + `DEL_FLAG` int(11) NOT NULL DEFAULT '0' COMMENT '删除标识 0.未删除 1.已删除', + `REVISION` int(11) NOT NULL COMMENT '乐观锁', + `CREATED_BY` varchar(64) NOT NULL COMMENT '创建人', + `CREATED_TIME` datetime NOT NULL COMMENT '创建时间', + `UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人', + `UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', + `IC_RESI_USER_ID` varchar(64) DEFAULT NULL COMMENT 'ic_resi_user表id', + `SUBMIT_TYPE` varchar(255) DEFAULT NULL COMMENT '操作类型:新增add 修改 update 删除 delete', + `DELETE_REASON` varchar(255) DEFAULT NULL COMMENT '删除原因', + `OPERATION_DESCRIBE` varchar(255) DEFAULT NULL COMMENT '操作说明', + PRIMARY KEY (`ID`) +) ENGINE = InnoDB + DEFAULT CHARSET = utf8mb4 COMMENT ='居民信息审核表'; \ No newline at end of file From 9794fbcaffdced69342fa91b413509553466cc36 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Mon, 6 Jun 2022 13:39:32 +0800 Subject: [PATCH 24/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BF=AE=E6=94=B9=E5=89=94=E9=99=A4=E4=B8=AD?= =?UTF-8?q?=E9=97=B4=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/IcResiUserConfirmSubmitDTO.java | 22 ++++- .../epmet/controller/MyHomeController.java | 86 +++++++++++++------ .../com/epmet/service/IcResiUserService.java | 19 ++++ .../service/impl/IcResiUserServiceImpl.java | 64 ++++++++++++++ .../V0.0.52__ic_resi_user_confirm.sql | 6 +- 5 files changed, 167 insertions(+), 30 deletions(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java index b66f734cdf..429852ff04 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java @@ -42,13 +42,33 @@ public class IcResiUserConfirmSubmitDTO implements Serializable { */ private String gridId; + /** + * 所属小区ID + */ + private String villageId; + + /** + * 所属楼宇Id + */ + private String buildId; + + /** + * 单元id + */ + private String unitId; + + /** + * 所属家庭Id + */ + private String homeId; + /** * 姓 */ private String surname; /** - * 名 + * 姓名 */ private String name; diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index a1d0ffc813..f54d4d6a03 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -14,6 +14,7 @@ import com.epmet.dto.form.RegisterAndBindFormDTO; import com.epmet.dto.result.HomeInfoResultDTO; import com.epmet.dto.result.HomeUserBriefResultDTO; import com.epmet.service.IcResiUserConfirmService; +import com.epmet.service.IcResiUserService; import com.epmet.service.MyHomeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -37,6 +38,9 @@ public class MyHomeController { @Autowired private IcResiUserConfirmService icResiUserConfirmService; + @Autowired + private IcResiUserService icResiUserService; + @PostMapping("memberList/{houseCode}") public Result> selectListHomeMember(@PathVariable("houseCode") String houseCode, @LoginUser TokenDto tokenDto) { @@ -44,51 +48,81 @@ public class MyHomeController { } +// /** +// * @describe: 新增家庭成员 +// * @author wangtong +// * @date 2022/6/1 15:50 +// * @params [dto] +// * @return com.epmet.commons.tools.utils.Result +// */ +// @PostMapping("addMember") +// public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ +// //效验数据 +// ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); +// dto.setSubmitType(HomeMemberOperationEnum.ADD.getCode()); +// return icResiUserConfirmService.addMember(dto); +// } +// +// /** +// * @describe: 修改家庭成员 +// * @author wangtong +// * @date 2022/6/1 15:27 +// * @params [dto] +// * @return com.epmet.commons.tools.utils.Result +// */ +// @PostMapping("editMember") +// public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){ +// //效验数据 +// ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); +// dto.setSubmitType(HomeMemberOperationEnum.UPDATE.getCode()); +// return icResiUserConfirmService.editMember(dto); +// } +// /** - * @describe: 新增家庭成员 + * @describe: 删除家庭成员 * @author wangtong - * @date 2022/6/1 15:50 + * @date 2022/6/1 16:10 * @params [dto] * @return com.epmet.commons.tools.utils.Result */ - @PostMapping("addMember") - public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ + @PostMapping("delMember") + public Result delMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setSubmitType(HomeMemberOperationEnum.ADD.getCode()); - return icResiUserConfirmService.addMember(dto); + dto.setSubmitType(HomeMemberOperationEnum.DELETE.getCode()); + return icResiUserConfirmService.delMember(dto); } /** - * @describe: 修改家庭成员 - * @author wangtong - * @date 2022/6/1 15:27 - * @params [dto] - * @return com.epmet.commons.tools.utils.Result - */ - @PostMapping("editMember") - public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){ + * @describe: 新增家庭成员 + * @author wangtong + * @date 2022/6/1 15:50 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("addMember") + public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setSubmitType(HomeMemberOperationEnum.UPDATE.getCode()); - return icResiUserConfirmService.editMember(dto); + return icResiUserService.addMember(dto); } /** - * @describe: 删除家庭成员 - * @author wangtong - * @date 2022/6/1 16:10 - * @params [dto] - * @return com.epmet.commons.tools.utils.Result - */ - @PostMapping("delMember") - public Result delMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ + * @describe: 修改家庭成员 + * @author wangtong + * @date 2022/6/1 15:27 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("editMember") + public Result editMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setSubmitType(HomeMemberOperationEnum.DELETE.getCode()); - return icResiUserConfirmService.delMember(dto); + return icResiUserService.editMember(dto); } + + /** * @describe: 查询家庭成员信息 * @author wangtong diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java index 561ddf9e2b..4452769f21 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.dto.result.OptionDataResultDTO; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; import com.epmet.dto.IcResiUserDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.*; @@ -374,4 +375,22 @@ public interface IcResiUserService extends BaseService { * @Date 2022/5/20 9:59 */ IcResiUserInfoDTO getUserByIdCard(IcResiUserDTO formDTO); + + /** + * @describe: 新增家庭成员 + * @author wangtong + * @date 2022/6/6 10:36 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + Result addMember(IcResiUserConfirmSubmitDTO dto); + + /** + * @describe: 修改家庭成员 + * @author wangtong + * @date 2022/6/6 10:36 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + Result editMember(IcResiUserConfirmSubmitDTO dto); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index 665653b1d8..873c90c39a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -2261,6 +2261,70 @@ public class IcResiUserServiceImpl extends BaseServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getHomeId, user.getHomeId()); + wrapper.eq(IcResiUserEntity::getYhzgx, RelationshipEnum.SELF.getCode()); + List entityList = baseDao.selectList(wrapper); + if (CollectionUtils.isNotEmpty(entityList)) { + String errorMsg = "房屋下已存在户主"; + throw new EpmetException(EpmetErrorCode.ORG_ADD_FAILED.getCode(), errorMsg, errorMsg); + } + } + + + dto.setCustomerId(user.getCustomerId()); + dto.setAgencyId(user.getAgencyId()); + dto.setPids(user.getPids()); + dto.setGridId(user.getGridId()); + dto.setVillageId(user.getVillageId()); + dto.setBuildId(user.getBuildId()); + dto.setUnitId(user.getUnitId()); + dto.setHomeId(user.getHomeId()); + + IcResiUserEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserEntity.class); + insert(entity); + + return new Result().ok("新增成功"); + } + + @Override + public Result editMember(IcResiUserConfirmSubmitDTO dto) { + IcResiUserEntity user = icResiUserDao.selectById(dto.getIcResiUserId()); + + IcResiUserDTO userDTO = baseDao.getResiUserByIdCard(dto.getIdCard(), user.getCustomerId()); + if (null != userDTO && null != userDTO.getIdCard()) { + String errorMsg = "修改居民信息失败,身份证号已存在!"; + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); + } + //这个房屋下已经设置了户主后,再次选择户主时提示提示“房屋下已存在户主” PS.户主指与户主关系是本人的用户 + if (RelationshipEnum.SELF.getCode().equals(dto.getYhzgx())) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getHomeId, user.getHomeId()); + wrapper.eq(IcResiUserEntity::getYhzgx, RelationshipEnum.SELF.getCode()); + List entityList = baseDao.selectList(wrapper); + if (CollectionUtils.isNotEmpty(entityList)) { + String errorMsg = "房屋下已存在户主"; + throw new EpmetException(EpmetErrorCode.ORG_ADD_FAILED.getCode(), errorMsg, errorMsg); + } + } + + IcResiUserEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserEntity.class); + entity.setId(dto.getIcResiUserId()); + updateById(entity); + return new Result().ok("修改成功"); + } + /** * desc:根据字段值获取 options * @param customerId diff --git a/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql b/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql index 02d603bb55..5be9280308 100644 --- a/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql +++ b/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql @@ -5,8 +5,8 @@ CREATE TABLE `ic_resi_user_confirm` `AGENCY_ID` varchar(64) NOT NULL COMMENT '组织Id', `PIDS` varchar(255) NOT NULL COMMENT '组织的pids', `GRID_ID` varchar(64) NOT NULL COMMENT '网格ID', - `SURNAME` varchar(64) NOT NULL COMMENT '姓', - `NAME` varchar(64) NOT NULL COMMENT '名', + `SURNAME` varchar(64) COMMENT '姓', + `NAME` varchar(64) COMMENT '名', `MOBILE` varchar(15) DEFAULT NULL COMMENT '手机号', `GENDER` char(2) DEFAULT NULL COMMENT '性别', `ID_CARD` varchar(18) NOT NULL COMMENT '身份证号', @@ -36,4 +36,4 @@ CREATE TABLE `ic_resi_user_confirm` `OPERATION_DESCRIBE` varchar(255) DEFAULT NULL COMMENT '操作说明', PRIMARY KEY (`ID`) ) ENGINE = InnoDB - DEFAULT CHARSET = utf8mb4 COMMENT ='居民信息审核表'; \ No newline at end of file + DEFAULT CHARSET = utf8mb4 COMMENT ='居民信息审核表'; From 7d24260527b829c92ac7b562d9d8920da3567910 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Mon, 6 Jun 2022 14:10:40 +0800 Subject: [PATCH 25/39] =?UTF-8?q?sql=E8=84=9A=E6=9C=AC=EF=BC=8C=E6=96=B0?= =?UTF-8?q?=E5=BB=BA=E6=88=BF=E5=B1=8B=E7=94=9F=E6=88=90code=E5=92=8C?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/IcNeighborHoodDao.xml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml index 7fc0827667..8d6e24b5f7 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml @@ -302,10 +302,14 @@ AND grid_id = #{gridId} From a7fb2d886220727f0d1a10e15dc02163bbc4b9ec Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Mon, 6 Jun 2022 14:23:31 +0800 Subject: [PATCH 26/39] =?UTF-8?q?area=20code=E8=A1=A50?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/impl/HouseServiceImpl.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index fa74cdb6bb..b36df05988 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -142,6 +142,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { //获取所属组织地区码 String areaCode = icNeighborHoodDao.getAreaCode(formDTO.getNeighborHoodId()); if (StringUtils.isNotBlank(areaCode)) { + areaCode = numberAfterFillZero(areaCode, NumConstant.TWELVE); icHouseDTO.setHouseCode(createHouseCode(customerId, formDTO.getBuildingId(), areaCode)); } icHouseDao.insert(icHouseDTO); @@ -981,5 +982,16 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { return result; } + private String numberAfterFillZero(String str, int length) { + StringBuilder buffer = new StringBuilder(str); + if (buffer.length() >= length) { + return buffer.toString(); + } else { + while (buffer.length() < length) { + buffer.append("0"); + } + } + return buffer.toString(); + } } From c14734e1f3ef270a59d621e66952f9fb0f9c65d4 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Mon, 6 Jun 2022 14:36:33 +0800 Subject: [PATCH 27/39] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E8=8E=B7=E5=8F=96=E6=88=BF=E5=B1=8B=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E8=A1=A5=E5=85=85customerId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java index 8f60e24d37..d958f1494b 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/IcHouseInfoResultDTO.java @@ -55,6 +55,11 @@ public class IcHouseInfoResultDTO implements Serializable { */ private String houseId; + /** + * 客户id + */ + private String customerId; + } From 953a3d94af34dd5cb2dc764eb256367fd2c3e116 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Mon, 6 Jun 2022 16:22:49 +0800 Subject: [PATCH 28/39] =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E5=89=94?= =?UTF-8?q?=E9=99=A4=E5=AD=97=E6=AE=B5=EF=BC=9B=E6=89=B9=E9=87=8F=E7=94=9F?= =?UTF-8?q?=E6=88=90=E4=BA=8C=E7=BB=B4=E7=A0=81=E5=8F=8A=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/result/CreateHouseCodeAndUrlDTO.java | 37 +++++++++++++++++++ .../com/epmet/controller/HouseController.java | 29 ++++++++++++++- .../main/java/com/epmet/dao/IcHouseDao.java | 9 +++++ .../java/com/epmet/service/HouseService.java | 9 +++++ .../epmet/service/impl/HouseServiceImpl.java | 25 ++++++++++++- .../src/main/resources/mapper/IcHouseDao.xml | 12 ++++++ 6 files changed, 118 insertions(+), 3 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CreateHouseCodeAndUrlDTO.java diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CreateHouseCodeAndUrlDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CreateHouseCodeAndUrlDTO.java new file mode 100644 index 0000000000..01dcdf11b6 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CreateHouseCodeAndUrlDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @program: epmet-cloud + * @description: + * @author: wangtong + * @create: 2022-06-06 15:08 + **/ +@Data +public class CreateHouseCodeAndUrlDTO implements Serializable { + + /** + * 房屋id + */ + private String houseId; + + /** + * 客户id + */ + private String customerId; + + /** + * 楼栋id + */ + private String buildingId; + + /** + * 区划代码 + */ + private String areaCode; + + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 472f3cb615..9f86eed2c9 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -442,7 +442,7 @@ public class HouseController implements ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode() + "&customerId=" + house.getCustomerId() + "&gridId=" + house.getGridId(); + String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); //BufferedImage 转 InputStream ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); @@ -502,6 +502,26 @@ public class HouseController implements ResultDataResolver { } + /** + * @describe: 批量生成房屋的房屋编码和一户一档二维码 + * @author wangtong + * @date 2022/6/6 14:39 + * @params [] + * @return java.lang.String + */ + @PostMapping("createBatchHouseCodeAndUrl") + public Result createBatchHouseCodeAndUrl() { + return houseService.createBatchHouseCodeAndUrl( ); + + } + + /** + * @describe: 测试生成Service接口-生成房屋编码 + * @author wangtong + * @date 2022/6/6 14:39 + * @params [formDTO] + * @return java.lang.String + */ @PostMapping("createHouseCode") public String createHouseCode(@RequestBody TestFormDTO formDTO) { //效验数据 @@ -509,6 +529,13 @@ public class HouseController implements ResultDataResolver { } + /** + * @describe: 测试生成Service接口-生成房屋一户一档二维码 + * @author wangtong + * @date 2022/6/6 14:40 + * @params [formDTO] + * @return java.lang.String + */ @PostMapping("createHouseQrcodeUrl") public String createHouseQrcodeUrl(@RequestBody TestFormDTO formDTO) throws Exception { return houseService.createHouseQrcodeUrl(formDTO.getHouseId()); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java index a08467a716..ac8a59be8c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java @@ -119,4 +119,13 @@ public interface IcHouseDao extends BaseDao { * @return com.epmet.entity.IcHouseEntity */ IcHouseEntity selectByHouseCode(@Param("houseCode") String houseCode); + + /** + * @describe: 查询需要补充房屋编码和URL的房屋信息 + * @author wangtong + * @date 2022/6/6 15:09 + * @params [] + * @return java.util.List + */ + List selectBatchHouseCodeAndUrl(); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index 2e6aa8cf7f..850817812c 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -154,4 +154,13 @@ public interface HouseService { * @return com.epmet.commons.tools.utils.Result */ Result getHouseInfoByCode(IcHouseInfoFormDTO formDTO); + + /** + * @describe: 批量生成房屋的房屋编码和一户一档二维码 + * @author wangtong + * @date 2022/6/6 14:44 + * @params [] + * @return com.epmet.commons.tools.utils.Result + */ + Result createBatchHouseCodeAndUrl(); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index b36df05988..5a994f7dc6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -833,7 +833,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { for (IcHouseListResultDTO house : houseList) { BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), - HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode() + "&customerId=" + house.getCustomerId() + "&gridId=" + house.getGridId()); + HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode()); try { byte[] buf = new byte[8192]; @@ -921,7 +921,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode() + "&customerId=" + house.getCustomerId() + "&gridId=" + house.getGridId(); + String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); String fileName = house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); @@ -967,6 +967,27 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { } + @Override + public Result createBatchHouseCodeAndUrl() { + List houseList = icHouseDao.selectBatchHouseCodeAndUrl(); + houseList.forEach(house->{ + IcHouseEntity entity = icHouseDao.selectById(house.getHouseId()); + if(StringUtils.isNotBlank(house.getAreaCode())){ + String areaCode = numberAfterFillZero(house.getAreaCode(), NumConstant.TWELVE); + entity.setHouseCode(createHouseCode(house.getCustomerId(),house.getBuildingId(),areaCode)); + } + try { + entity.setHouseQrcodeUrl(createHouseQrcodeUrl(house.getHouseId())); + } catch (Exception e) { + e.printStackTrace(); + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"二维码生成失败:"+house.getHouseId(),"二维码生成失败:"+house.getHouseId()); + } + icHouseDao.updateById(entity); + }); + return new Result().ok("批量生成成功"); + } + + /** * @return java.lang.String * @describe: 把数字转换成5位的字符串,不够的前面补0 diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index 2ec0234444..bb36540854 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -402,5 +402,17 @@ where HOUSE_CODE=#{houseCode} and del_flag = '0' + From 287f513c45d4a13ca1f55cf74377475a00dc55ee Mon Sep 17 00:00:00 2001 From: Jackwang Date: Mon, 6 Jun 2022 16:44:39 +0800 Subject: [PATCH 29/39] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E8=8E=B7=E5=8F=96=E6=88=BF=E5=B1=8B=E4=BF=A1?= =?UTF-8?q?=E6=81=AF-=E4=BC=98=E5=8C=96=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/service/impl/HouseServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 5a994f7dc6..85d18c4591 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -960,6 +960,9 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Override public Result getHouseInfoByCode(IcHouseInfoFormDTO formDTO) { IcHouseEntity house = icHouseDao.selectByHouseCode(formDTO.getHouseCode()); + if(null == house){ + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查询到相关房屋","未查询到相关房屋"); + } HouseInfoCache cache = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(), house.getId()); IcHouseInfoResultDTO resut = ConvertUtils.sourceToTarget(cache, IcHouseInfoResultDTO.class); resut.setHouseId(cache.getHomeId()); From 54746551bca7c0b175f2c2df6befb2356794d092 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Mon, 6 Jun 2022 17:34:47 +0800 Subject: [PATCH 30/39] =?UTF-8?q?=E4=B8=80=E6=88=B7=E4=B8=80=E6=A1=A3?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E5=9C=B0=E5=9D=80=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/controller/HouseController.java | 6 +++--- .../java/com/epmet/service/impl/HouseServiceImpl.java | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 9f86eed2c9..6099d6e147 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -442,15 +442,15 @@ public class HouseController implements ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); - BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); + String url = HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode(); + BufferedImage image = BarcodeUtils.drawQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); //BufferedImage 转 InputStream ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream); ImageIO.write(image, "png", imageOutput); InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray()); long length = imageOutput.length(); - String fileName = house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; + String fileName = house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; response.setContentType("application/octet-stream"); response.setContentLength((int) length); response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, StrConstant.UTF_8)); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 85d18c4591..62d25cad3e 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -832,8 +832,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { for (IcHouseListResultDTO house : houseList) { - BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), - HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode()); + BufferedImage image = BarcodeUtils.drawQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), + HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode()); try { byte[] buf = new byte[8192]; @@ -921,9 +921,9 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + "?houseCode=" + house.getHouseCode(); - String fileName = house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; - BufferedImage image = BarcodeUtils.drawQRImage(house.getNeighborHoodName() + house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); + String url = HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode(); + String fileName = house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; + BufferedImage image = BarcodeUtils.drawQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); FileItem fileItem = new DiskFileItemFactory(DiskFileItemFactory.DEFAULT_SIZE_THRESHOLD, FileUtils.getAndCreateDirUnderEpmetFilesDir("temp").toFile()) From e708c508e976ae47253ce3e31e1327fd1b408daf Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Tue, 7 Jun 2022 10:43:09 +0800 Subject: [PATCH 31/39] =?UTF-8?q?=E7=BB=91=E5=AE=9A=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E5=90=8E=E4=B8=8D=E8=83=BD=E5=86=8D=E7=BB=91=E5=AE=9A=E5=85=B6?= =?UTF-8?q?=E4=BB=96=E6=88=BF=E5=B1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/impl/MyHomeServiceImpl.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java index dc0c4e3ee4..8184dbcfae 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -89,6 +89,16 @@ public class MyHomeServiceImpl implements MyHomeService { @Override @Transactional(rollbackFor = Exception.class) public void registerAndBind(RegisterAndBindFormDTO formDTO) { + + LambdaQueryWrapper userWrapper = new LambdaQueryWrapper<>(); + userWrapper.eq(IcResiUserEntity::getCustomerId, formDTO.getCustomerId()); + userWrapper.eq(IcResiUserEntity::getIdCard, formDTO.getIdCard()); + IcResiUserEntity icUser = icResiUserDao.selectOne(userWrapper); + + if (null != icUser && !icUser.getHomeId().equals(formDTO.getHomeId())) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "已绑定其他房屋", "已绑定其他房屋"); + } + //进入网格(entergrid)流程 EnterGridFormDTO userInfoParams = new EnterGridFormDTO(); userInfoParams.setUserId(formDTO.getUserId()); @@ -140,11 +150,6 @@ public class MyHomeServiceImpl implements MyHomeService { userResiInfoService.saveResiInfo(userResiInfoDTO); } //2.添加ic_resi_user信息 - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(IcResiUserEntity::getCustomerId, formDTO.getCustomerId()); - wrapper.eq(IcResiUserEntity::getIdCard, formDTO.getIdCard()); - IcResiUserEntity icUser = icResiUserDao.selectOne(wrapper); - HouseInfoCache houseInfo = CustomerIcHouseRedis.getHouseInfo(formDTO.getCustomerId(), formDTO.getHomeId()); if (null == houseInfo) { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取房屋信息失败", "获取房屋信息失败"); From 88e98b41cf76dba45a434a5d745dead053660103 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 11:15:10 +0800 Subject: [PATCH 32/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=B7=BB=E5=8A=A0=E7=AD=9B=E9=80=89=E7=8A=B6?= =?UTF-8?q?=E6=80=81=EF=BC=9B=E4=B8=80=E6=88=B7=E4=B8=80=E7=A0=81=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E5=A4=A7=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/utils/HouseQRcodeUtils.java | 170 ++++++++++++++++++ .../com/epmet/controller/HouseController.java | 4 +- .../epmet/service/impl/HouseServiceImpl.java | 9 +- .../service/impl/IcResiUserServiceImpl.java | 1 + 4 files changed, 176 insertions(+), 8 deletions(-) create mode 100644 epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java new file mode 100644 index 0000000000..88faf497e3 --- /dev/null +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java @@ -0,0 +1,170 @@ +package com.epmet.commons.tools.utils; + + +import com.google.zxing.BarcodeFormat; +import com.google.zxing.EncodeHintType; +import com.google.zxing.MultiFormatWriter; +import com.google.zxing.WriterException; +import com.google.zxing.client.j2se.MatrixToImageConfig; +import com.google.zxing.client.j2se.MatrixToImageWriter; +import com.google.zxing.common.BitMatrix; +import com.google.zxing.common.CharacterSetECI; +import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; +import lombok.extern.slf4j.Slf4j; + +import javax.imageio.ImageIO; +import java.awt.*; +import java.awt.image.BufferedImage; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.IOException; +import java.util.HashMap; + +/** + * Date: 2022/06/7 10:01 + * Description:房屋一户一码生成工具类 + */ +@Slf4j +public class HouseQRcodeUtils { + /** + * 二维码颜色 默认是黑色 + */ + private static final Color QRCOLOR = Color.black; + /** + * 背景颜色 + */ + private static final Color BGWHITE = Color.white; + public static final int WIDTH = 800; + public static final int HEIGHT = 800; + public static final int MARGIN = 2; + public static final int FONTSIZE = 20; + + + + /** + * 房屋一户一码生成-指定像素 + * + * @param contents 说明 + * @return BufferedImage + * @throws Exception + */ + public static BufferedImage drawHouseQRImage(String pressText, String contents) throws Exception { + BufferedImage qRImage = null; + if (contents == null || "".equals(contents)) { + throw new Exception("content说明不能为空"); + } + // 二维码参数设置 + HashMap hints = new HashMap<>(); + hints.put(EncodeHintType.CHARACTER_SET, CharacterSetECI.UTF8); // 编码设置 + hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); // 安全等级,最高h + hints.put(EncodeHintType.MARGIN, MARGIN); // 设置margin=0-10 + + // 二维码图片的生成 + BarcodeFormat format = BarcodeFormat.QR_CODE; + // 创建矩阵容器 + BitMatrix matrix = null; + try { + matrix = new MultiFormatWriter().encode(contents, format, WIDTH, HEIGHT, hints); + } catch (WriterException e) { + log.error("method exception", e); + } + + // 设置矩阵转为图片的参数 + MatrixToImageConfig toImageConfig = new MatrixToImageConfig(QRCOLOR.getRGB(), BGWHITE.getRGB()); + + // 矩阵转换图像 + qRImage = MatrixToImageWriter.toBufferedImage(matrix, toImageConfig); + return pressHouseText(pressText, qRImage); + } + + /** + * @param pressText 二维码下方插入文字 + * @param image 需要添加文字的图片 + * @为图片添加文字 + */ + private static BufferedImage pressHouseText(String pressText, BufferedImage image) throws Exception { + + BufferedImage outImage = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); + //计算文字开始的位置 + //x开始的位置:(图片宽度-字体大小*字的个数)/2 + int startX = (WIDTH - (FONTSIZE * pressText.length())) / 2; + //y开始的位置:图片高度-(图片高度-图片宽度)/2 + int startY = HEIGHT - (HEIGHT - WIDTH) / 2 + FONTSIZE; + + int imageW = outImage.getWidth(); + int imageH = outImage.getHeight(); + Graphics2D g = outImage.createGraphics(); + g.drawImage(image, 0, 0, imageW, imageH, null); + g.setColor(QRCOLOR); + g.setFont(new Font("Noto Sans SC Light", Font.BOLD, FONTSIZE)); + g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); + g.setBackground(Color.white); +// 获取文字数量 按照字节展示 + int size = pressText.getBytes("GBK").length; +// 获取一行最多能容纳多少文字 按照文字字节展示 + int maxSize = (WIDTH / FONTSIZE - 2) * 2; + if (size > maxSize) { + int v = size % maxSize; + for (int a = 0; a < (size / maxSize); a++) { + String s = outStringByByte(pressText, maxSize); + g.drawString(s, (WIDTH - (FONTSIZE * (WIDTH / FONTSIZE - 2))) / 2, startY); + pressText = pressText.substring(s.length(), pressText.length()); + startY = startY + 35; + } + if (v != 0) { + g.drawString(pressText, (WIDTH - (FONTSIZE * v)) / 2, startY); + } + } else { + g.drawString(pressText, (WIDTH - ((pressText.getBytes("GBK").length) / 2) * FONTSIZE) / 2, startY); + } + + g.dispose(); + return outImage; + } + + + + /** + * 保存二维码图片到本地 + * + * @param contents + * @throws Exception + */ + public static void createImg(String pressText, String contents, String filename, String filePath) throws Exception { + BufferedImage qRImageWithLogo = drawHouseQRImage(pressText, contents); + // 写入返回 + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ImageIO.write(qRImageWithLogo, "jpg", baos); + //图片类型 + String imageType = "jpg"; + //生成二维码存放文件 + File file = new File(filePath + filename + ".jpg"); + if (!file.exists()) { + file.mkdirs(); + } + ImageIO.write(qRImageWithLogo, imageType, file); + baos.close(); + } + + + private static String outStringByByte(String str, int len) throws IOException { + byte[] btf = str.getBytes("GBK"); + int count = 0; + + for (int j = len - 1; j >= 0; j--) { + if (btf[j] < 0) { + count++; + } else { + break; + } + } + + if (count % 2 == 0) { + return new String(btf, 0, len, "GBK"); + } else { + return new String(btf, 0, len - 1, "GBK"); + } + } + +} + diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index 6099d6e147..da6101ff99 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -39,9 +39,9 @@ import com.epmet.commons.tools.feign.ResultDataResolver; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.commons.tools.utils.BarcodeUtils; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.HouseQRcodeUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.poi.excel.handler.ExcelFillRowMergeStrategy; import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter; @@ -443,7 +443,7 @@ public class HouseController implements ResultDataResolver { } //url组成:小程序地址?房屋编码 String url = HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode(); - BufferedImage image = BarcodeUtils.drawQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); + BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); //BufferedImage 转 InputStream ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index 62d25cad3e..f621c136dd 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -22,10 +22,7 @@ import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.commons.tools.utils.BarcodeUtils; -import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.utils.FileUtils; -import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.utils.*; import com.epmet.constant.CustomerGridConstant; import com.epmet.constants.ImportTaskConstants; import com.epmet.dao.*; @@ -832,7 +829,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { for (IcHouseListResultDTO house : houseList) { - BufferedImage image = BarcodeUtils.drawQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), + BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode()); try { @@ -923,7 +920,7 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { //url组成:小程序地址?房屋编码 String url = HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode(); String fileName = house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; - BufferedImage image = BarcodeUtils.drawQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); + BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); FileItem fileItem = new DiskFileItemFactory(DiskFileItemFactory.DEFAULT_SIZE_THRESHOLD, FileUtils.getAndCreateDirUnderEpmetFilesDir("temp").toFile()) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index 873c90c39a..f00be57253 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -1872,6 +1872,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl lqw = new LambdaQueryWrapper<>(); lqw.eq(IcResiUserEntity::getCustomerId, customerId) .eq(IcResiUserEntity::getHomeId, houseId) + .eq(IcResiUserEntity::getSubStatus,"0") .select( IcResiUserEntity::getId, IcResiUserEntity::getHomeId, From 853ca0f0f1fb981584df558f7fd9929c87da9c78 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 14:03:27 +0800 Subject: [PATCH 33/39] =?UTF-8?q?=E4=B8=80=E6=88=B7=E4=B8=80=E7=A0=81?= =?UTF-8?q?=E5=89=8D=E7=BC=80=E8=B0=83=E6=95=B4=E4=B8=BA=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/enums/HouseQrcodeEnum.java | 4 ++-- .../com/epmet/controller/HouseController.java | 12 +++++++++-- .../epmet/service/impl/HouseServiceImpl.java | 21 ++++++++++++++++--- 3 files changed, 30 insertions(+), 7 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java index f448cce254..a188a82a3e 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/HouseQrcodeEnum.java @@ -9,8 +9,8 @@ package com.epmet.commons.tools.enums; */ public enum HouseQrcodeEnum { - SUFFIX(".png", "二维码格式的后缀"), - PREFIX("https://epmet-dev.elinkservice.cn/cqrcode-ty/", "二维码地址的前缀"); + SUFFIX(".png", "二维码格式的后缀"); +// PREFIX("https://epmet-dev.elinkservice.cn/cqrcode-ty/", "二维码地址的前缀"); private String code; diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index da6101ff99..d9884e4f92 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -32,7 +32,6 @@ import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.dto.form.IcHouseFormDTO; -import com.epmet.commons.tools.enums.HouseQrcodeEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.feign.ResultDataResolver; @@ -48,8 +47,10 @@ import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.constants.ImportTaskConstants; import com.epmet.dao.IcHouseDao; +import com.epmet.dto.SysDictDataDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.*; +import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.service.HouseService; @@ -97,6 +98,9 @@ public class HouseController implements ResultDataResolver { @Autowired private EpmetCommonServiceOpenFeignClient epmetCommonServiceOpenFeignClient; + @Autowired + private EpmetAdminOpenFeignClient epmetAdminOpenFeignClient; + @Autowired private IcHouseDao icHouseDao; @@ -442,7 +446,11 @@ public class HouseController implements ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode(); + Result> dict = epmetAdminOpenFeignClient.dictDataList("house_qrcode_pre"); + if (!dict.success() || CollectionUtils.isEmpty(dict.getData())) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "一户一码前缀查询异常", "一户一码前缀查询异常"); + } + String url = dict.getData().get(0).getDictValue() + house.getHouseCode(); BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); //BufferedImage 转 InputStream ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index f621c136dd..eb3d957f5b 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -22,7 +22,10 @@ import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.commons.tools.utils.*; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.FileUtils; +import com.epmet.commons.tools.utils.HouseQRcodeUtils; +import com.epmet.commons.tools.utils.Result; import com.epmet.constant.CustomerGridConstant; import com.epmet.constants.ImportTaskConstants; import com.epmet.dao.*; @@ -37,6 +40,7 @@ import com.epmet.enums.HouseChangeEnums; import com.epmet.enums.HousePurposeEnums; import com.epmet.enums.HouseRentFlagEnums; import com.epmet.enums.HouseTypeEnums; +import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.OssFeignClient; @@ -122,6 +126,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { private IcHouseCodeInfoDao icHouseCodeInfoDao; @Autowired private OssFeignClient ossFeignClient; + @Autowired + private EpmetAdminOpenFeignClient epmetAdminOpenFeignClient; @Override @@ -827,10 +833,15 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { List houseList = icHouseDao.searchHouseByPage(formDTO); + //获取一户一码前缀地址 + Result> dict = epmetAdminOpenFeignClient.dictDataList("house_qrcode_pre"); + if (!dict.success() || CollectionUtils.isEmpty(dict.getData())) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "一户一码前缀查询异常", "一户一码前缀查询异常"); + } for (IcHouseListResultDTO house : houseList) { BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), - HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode()); + dict.getData().get(0).getDictValue() + house.getHouseCode()); try { byte[] buf = new byte[8192]; @@ -918,7 +929,11 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "未查到房屋信息", "未查到房屋信息"); } //url组成:小程序地址?房屋编码 - String url = HouseQrcodeEnum.PREFIX.getCode() + house.getHouseCode(); + Result> dict = epmetAdminOpenFeignClient.dictDataList("house_qrcode_pre"); + if (!dict.success() || CollectionUtils.isEmpty(dict.getData())) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "一户一码前缀查询异常", "一户一码前缀查询异常"); + } + String url = dict.getData().get(0).getDictValue() + house.getHouseCode(); String fileName = house.getBuildingName() + house.getUnitNum() + house.getDoorName() + ".png"; BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnitNum() + house.getDoorName(), url); From 9ff372bb7d3a39ea6208c7eb5d5d67de7e0606bb Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 14:49:20 +0800 Subject: [PATCH 34/39] =?UTF-8?q?=E5=AE=B6=E5=BA=AD=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/IcResiUserServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index f00be57253..1fc7662a7f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -1872,7 +1872,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl lqw = new LambdaQueryWrapper<>(); lqw.eq(IcResiUserEntity::getCustomerId, customerId) .eq(IcResiUserEntity::getHomeId, houseId) - .eq(IcResiUserEntity::getSubStatus,"0") + .eq(IcResiUserEntity::getStatus,"0") .select( IcResiUserEntity::getId, IcResiUserEntity::getHomeId, From 1ab1d8a0184963e4db956664f0ed2f004a52f324 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 15:28:49 +0800 Subject: [PATCH 35/39] =?UTF-8?q?=E7=BC=96=E8=BE=91=E5=AE=B6=E5=BA=AD?= =?UTF-8?q?=E6=88=90=E5=91=98=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/impl/IcResiUserServiceImpl.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index 1fc7662a7f..5319171d16 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -2303,8 +2303,12 @@ public class IcResiUserServiceImpl extends BaseServiceImpl userWrapper = new LambdaQueryWrapper<>(); + userWrapper.ne(IcResiUserEntity::getId, dto.getIcResiUserId()); + userWrapper.eq(IcResiUserEntity::getIdCard, dto.getIdCard()); + userWrapper.eq(IcResiUserEntity::getCustomerId, user.getCustomerId()); + List userList = baseDao.selectList(userWrapper); + if (CollectionUtils.isNotEmpty(userList)) { String errorMsg = "修改居民信息失败,身份证号已存在!"; throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); } From e865e821ac42a90ad6ec8e8939d09997d0485c8e Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 15:51:31 +0800 Subject: [PATCH 36/39] =?UTF-8?q?=E4=B8=80=E6=88=B7=E4=B8=80=E7=A0=81?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E5=83=8F=E7=B4=A0=E5=8F=8A=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/commons/tools/utils/HouseQRcodeUtils.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java index 88faf497e3..45f93cb84f 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java @@ -36,8 +36,8 @@ public class HouseQRcodeUtils { private static final Color BGWHITE = Color.white; public static final int WIDTH = 800; public static final int HEIGHT = 800; - public static final int MARGIN = 2; - public static final int FONTSIZE = 20; + public static final int MARGIN = 10; + public static final int FONTSIZE = 40; @@ -89,7 +89,8 @@ public class HouseQRcodeUtils { //x开始的位置:(图片宽度-字体大小*字的个数)/2 int startX = (WIDTH - (FONTSIZE * pressText.length())) / 2; //y开始的位置:图片高度-(图片高度-图片宽度)/2 - int startY = HEIGHT - (HEIGHT - WIDTH) / 2 + FONTSIZE; +// int startY = HEIGHT - (HEIGHT - WIDTH) / 2 + FONTSIZE; + int startY = 720; int imageW = outImage.getWidth(); int imageH = outImage.getHeight(); From 5774bdf11a91673625cfe0b78c0ff2557c43a312 Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 16:51:24 +0800 Subject: [PATCH 37/39] =?UTF-8?q?=E6=89=B9=E9=87=8F=E7=94=9F=E6=88=90?= =?UTF-8?q?=E6=88=BF=E5=B1=8B=E7=BC=96=E7=A0=81=E5=8F=8Aurl?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/controller/HouseController.java | 6 ++++-- .../src/main/java/com/epmet/dao/IcHouseDao.java | 2 +- .../src/main/java/com/epmet/service/HouseService.java | 2 +- .../main/java/com/epmet/service/impl/HouseServiceImpl.java | 4 ++-- .../gov-org-server/src/main/resources/mapper/IcHouseDao.xml | 3 ++- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java index d9884e4f92..edc1629219 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java @@ -485,6 +485,7 @@ public class HouseController implements ResultDataResolver { * @date 2022/5/31 17:58 * @params [loginUser, formDTO, response] */ + @NoRepeatSubmit @PostMapping(value = "/downloadZip") public void downloadZip(@LoginUser TokenDto loginUser, @RequestBody IcHouseListFormDTO formDTO, HttpServletResponse response) throws Exception { //效验数据 @@ -517,9 +518,10 @@ public class HouseController implements ResultDataResolver { * @params [] * @return java.lang.String */ + @NoRepeatSubmit @PostMapping("createBatchHouseCodeAndUrl") - public Result createBatchHouseCodeAndUrl() { - return houseService.createBatchHouseCodeAndUrl( ); + public Result createBatchHouseCodeAndUrl(@LoginUser TokenDto loginUser) { + return houseService.createBatchHouseCodeAndUrl(loginUser); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java index ac8a59be8c..138c892445 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java @@ -127,5 +127,5 @@ public interface IcHouseDao extends BaseDao { * @params [] * @return java.util.List */ - List selectBatchHouseCodeAndUrl(); + List selectBatchHouseCodeAndUrl(@Param("customerId") String customerId); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java index 850817812c..5aa9ee6986 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java @@ -162,5 +162,5 @@ public interface HouseService { * @params [] * @return com.epmet.commons.tools.utils.Result */ - Result createBatchHouseCodeAndUrl(); + Result createBatchHouseCodeAndUrl(TokenDto loginUser); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index eb3d957f5b..20ad6c218a 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -983,8 +983,8 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { @Override - public Result createBatchHouseCodeAndUrl() { - List houseList = icHouseDao.selectBatchHouseCodeAndUrl(); + public Result createBatchHouseCodeAndUrl(TokenDto loginUser) { + List houseList = icHouseDao.selectBatchHouseCodeAndUrl(loginUser.getCustomerId()); houseList.forEach(house->{ IcHouseEntity entity = icHouseDao.selectById(house.getHouseId()); if(StringUtils.isNotBlank(house.getAreaCode())){ diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index bb36540854..dba8738dab 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -411,7 +411,8 @@ left join ic_neighbor_hood n on h.NEIGHBOR_HOOD_ID=n.id left join customer_agency b ON n.agency_Id = b.ID where h.DEL_FLAG='0' - and(h.HOUSE_CODE is null or h.HOUSE_CODE = '') + and h.CUSTOMER_ID = #{customerId} + and(h.HOUSE_CODE is null or h.HOUSE_CODE = '') order by h.CREATED_TIME desc From ed2bc686ddf16b66d13294a7068980e7c2c1c5d6 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Tue, 7 Jun 2022 17:22:20 +0800 Subject: [PATCH 38/39] =?UTF-8?q?=E7=BB=91=E5=AE=9A=E6=88=BF=E5=B1=8Bbug?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/MyHomeServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java index 8184dbcfae..eba820dc92 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/MyHomeServiceImpl.java @@ -115,12 +115,13 @@ public class MyHomeServiceImpl implements MyHomeService { if (CollectionUtils.isNotEmpty(roleList) && roleList.contains("registered_resi")) { //更新user_resi_info和user_base_info的信息 UserResiInfoEntity userResiInfo = new UserResiInfoEntity(); + userResiInfo.setUserId(formDTO.getUserId()); userResiInfo.setSurname(formDTO.getSurname()); userResiInfo.setName(formDTO.getName()); userResiInfo.setIdNum(formDTO.getIdCard()); userResiInfo.setRegMobile(formDTO.getMobile()); userResiInfo.setResiVisitId(formDTO.getVisitId()); - userResiInfo.setDistrict(formDTO.getAddress()); + userResiInfo.setStreet(formDTO.getAddress()); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(UserResiInfoEntity::getCustomerId, formDTO.getCustomerId()); @@ -141,10 +142,11 @@ public class MyHomeServiceImpl implements MyHomeService { userResiRegisterVisitDao.insert(visit); //注册居民 UserResiInfoDTO userResiInfoDTO = ConvertUtils.sourceToTarget(formDTO, UserResiInfoDTO.class); + userResiInfoDTO.setUserId(formDTO.getUserId()); userResiInfoDTO.setIdNum(formDTO.getIdCard()); userResiInfoDTO.setRegMobile(formDTO.getMobile()); userResiInfoDTO.setResiVisitId(visit.getId()); - userResiInfoDTO.setDistrict(formDTO.getAddress()); + userResiInfoDTO.setStreet(formDTO.getAddress()); userResiInfoDTO.setCustomerId(formDTO.getCustomerId()); userResiInfoDTO.setApp("resi"); userResiInfoService.saveResiInfo(userResiInfoDTO); From 607152ba0d6b2aaf081e4de6ce0468dfc48cbdec Mon Sep 17 00:00:00 2001 From: Jackwang Date: Tue, 7 Jun 2022 17:29:30 +0800 Subject: [PATCH 39/39] =?UTF-8?q?=E4=B8=80=E6=88=B7=E4=B8=80=E7=A0=81?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E6=A0=BC=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java index 45f93cb84f..bb667af0c9 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HouseQRcodeUtils.java @@ -90,7 +90,7 @@ public class HouseQRcodeUtils { int startX = (WIDTH - (FONTSIZE * pressText.length())) / 2; //y开始的位置:图片高度-(图片高度-图片宽度)/2 // int startY = HEIGHT - (HEIGHT - WIDTH) / 2 + FONTSIZE; - int startY = 720; + int startY = 740; int imageW = outImage.getWidth(); int imageH = outImage.getHeight();