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);