From 1a23d88862f43bdd19a01fce33f451cb2d175363 Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Wed, 15 Jun 2022 14:04:59 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A6=81=E6=AD=A2=E6=88=BF=E5=B1=8B=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E6=96=B0=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BuildingUnitController.java | 34 +++++++++++-------- .../impl/EpidemicBuildingUnitServiceImpl.java | 28 +++++++++------ 2 files changed, 38 insertions(+), 24 deletions(-) diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java index 7836a3c..3b9a5f0 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java @@ -120,6 +120,11 @@ public class BuildingUnitController { return epidemicBuildingUnitService.importEpidemicHouse(file, gridId); } + /** + * 更新房屋自增序号 + * + * @return + */ @PostMapping("updateMaCode") public Result updateMaCode() { epidemicBuildingUnitService.updateMaCode(); @@ -132,19 +137,6 @@ public class BuildingUnitController { return new Result(); } - /** - * @return void - * @describe: 下载房屋编码 - * @author wangtong - * @date 2022/6/1 17:24 - * @params [formDTO, response] - */ - @PostMapping("createHouseQrcode") - public void createQrCode(@RequestBody HouseQrcodeFormDTO formDTO, HttpServletResponse response) { - ValidatorUtils.validateEntity(formDTO); - epidemicBuildingUnitService.createQrCode(formDTO.getId(),response); - } - /** * 单元下拉框 * @@ -173,6 +165,20 @@ public class BuildingUnitController { return new Result>().ok(list); } + /** + * @return void + * @describe: 下载房屋编码 + * @author wangtong + * @date 2022/6/1 17:24 + * @params [formDTO, response] + */ + @PostMapping("createHouseQrcode") + public void createQrCode(@RequestBody HouseQrcodeFormDTO formDTO, HttpServletResponse response) { + ValidatorUtils.validateEntity(formDTO); + epidemicBuildingUnitService.createQrCode(formDTO.getId(), response); + } + + /** * @return java.lang.String * @describe: 批量生成房屋的房屋编码和一户一档二维码 @@ -192,7 +198,7 @@ public class BuildingUnitController { * @date 2022/5/31 17:58 * @params [loginUser, formDTO, response] */ - @PostMapping(value = "/downloadZip") + @PostMapping("downloadZip") public void downloadZip(HttpServletResponse response) throws Exception { epidemicBuildingUnitService.downloadZip(response); diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java index 5aca7de..b3d61a7 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java @@ -169,6 +169,13 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl params = new HashMap<>(8); + params.put("buildingId", dto.getBuildingId()); + params.put("unit", dto.getUnit()); + params.put("roomNo", dto.getRoomNo()); + if (!list(params).isEmpty()) { + throw new RenException("房屋已存在"); + } checkData(dto); EpidemicBuildingUnitEntity entity = ConvertUtils.sourceToTarget(dto, EpidemicBuildingUnitEntity.class); insert(entity); @@ -368,13 +375,13 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl list = baseDao.listUnitHasNotUrl(); if (!list.isEmpty()) { list.forEach(item -> { - String url = ""; try { - url = createHouseQrcodeUrl(item); + String name = item.getBuildingName() + StrConstant.HYPHEN + item.getUnit() + StrConstant.HYPHEN + item.getRoomNo(); + String maUrl = createHouseQrCodeUrl(item.getRoomCode(), name); + item.setMaUrl(maUrl); } catch (Exception e) { throw new RenException("房屋码上传失败"); } - item.setMaUrl(url); }); List updateList = ConvertUtils.sourceToTarget(list, EpidemicBuildingUnitEntity.class); updateBatchById(updateList); @@ -397,12 +404,12 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl houseList = baseDao.listUnitHasCode(); - String urlRre = qrCodeProperties.getPre(); + String urlPre = qrCodeProperties.getPre(); for (EpidemicBuildingUnitDTO house : houseList) { try { BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo(), - urlRre + house.getRoomCode()); + urlPre + house.getRoomCode()); byte[] buf = new byte[8192]; int len; @@ -431,7 +438,8 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl().ok(houseInfoResultDTO); } - public String createHouseQrcodeUrl(EpidemicBuildingUnitDTO house) throws Exception { + public String createHouseQrCodeUrl(String roomCode, String name) throws Exception { //url组成:小程序地址?房屋编码 - String url = qrCodeProperties.getPre() + house.getRoomCode(); - String fileName = house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo() + ".png"; - BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo(), url); + String url = qrCodeProperties.getPre() + roomCode; + String fileName = name + ".png"; + BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(name, url); ByteArrayOutputStream out = new ByteArrayOutputStream(); try { ImageIO.write(image, "png", out);