Browse Source

禁止房屋重复新增

feature/user_house_import
zhangyuan 3 years ago
parent
commit
1a23d88862
  1. 34
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java
  2. 28
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java

34
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<List<DictOptionDTO>>().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);

28
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<EpidemicBui
@Override
@Transactional(rollbackFor = Exception.class)
public Result saveNew(EpidemicBuildingUnitDTO dto) {
Map<String, Object> 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<EpidemicBui
List<EpidemicBuildingUnitDTO> 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<EpidemicBuildingUnitEntity> updateList = ConvertUtils.sourceToTarget(list, EpidemicBuildingUnitEntity.class);
updateBatchById(updateList);
@ -397,12 +404,12 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui
ZipOutputStream zip = new ZipOutputStream(response.getOutputStream());
List<EpidemicBuildingUnitDTO> 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<EpidemicBui
}
//url组成:小程序地址?房屋编码
String url = qrCodeProperties.getPre() + house.getRoomCode();
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo(), url);
String name = house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo();
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(name, url);
//BufferedImage 转 InputStream
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream);
@ -733,11 +741,11 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui
return new Result<HouseInfoResultDTO>().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);

Loading…
Cancel
Save