|
@ -38,6 +38,7 @@ import com.elink.esua.epdc.dto.house.result.EpdcPopulationErrorResultDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.EpidemicBuildingUnitDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.EpidemicBuildingUnitDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.EpidemicUnitOwnerDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.EpidemicUnitOwnerDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO; |
|
|
|
|
|
import com.elink.esua.epdc.dto.personroom.form.HouseQrcodeZipFormDTO; |
|
|
import com.elink.esua.epdc.dto.personroom.result.*; |
|
|
import com.elink.esua.epdc.dto.personroom.result.*; |
|
|
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserErrorEntity; |
|
|
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserErrorEntity; |
|
|
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity; |
|
|
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity; |
|
@ -169,6 +170,13 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
@Override |
|
|
@Override |
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
public Result saveNew(EpidemicBuildingUnitDTO dto) { |
|
|
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); |
|
|
checkData(dto); |
|
|
EpidemicBuildingUnitEntity entity = ConvertUtils.sourceToTarget(dto, EpidemicBuildingUnitEntity.class); |
|
|
EpidemicBuildingUnitEntity entity = ConvertUtils.sourceToTarget(dto, EpidemicBuildingUnitEntity.class); |
|
|
insert(entity); |
|
|
insert(entity); |
|
@ -368,13 +376,13 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
List<EpidemicBuildingUnitDTO> list = baseDao.listUnitHasNotUrl(); |
|
|
List<EpidemicBuildingUnitDTO> list = baseDao.listUnitHasNotUrl(); |
|
|
if (!list.isEmpty()) { |
|
|
if (!list.isEmpty()) { |
|
|
list.forEach(item -> { |
|
|
list.forEach(item -> { |
|
|
String url = ""; |
|
|
|
|
|
try { |
|
|
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) { |
|
|
} catch (Exception e) { |
|
|
throw new RenException("房屋码上传失败"); |
|
|
throw new RenException("房屋码上传失败"); |
|
|
} |
|
|
} |
|
|
item.setMaUrl(url); |
|
|
|
|
|
}); |
|
|
}); |
|
|
List<EpidemicBuildingUnitEntity> updateList = ConvertUtils.sourceToTarget(list, EpidemicBuildingUnitEntity.class); |
|
|
List<EpidemicBuildingUnitEntity> updateList = ConvertUtils.sourceToTarget(list, EpidemicBuildingUnitEntity.class); |
|
|
updateBatchById(updateList); |
|
|
updateBatchById(updateList); |
|
@ -383,7 +391,7 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public void downloadZip(HttpServletResponse response) throws Exception { |
|
|
public void downloadZip(HouseQrcodeZipFormDTO formDTO, HttpServletResponse response) throws Exception { |
|
|
//response
|
|
|
//response
|
|
|
response.reset(); |
|
|
response.reset(); |
|
|
//文件的名称
|
|
|
//文件的名称
|
|
@ -396,13 +404,13 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
response.setHeader("Content-Disposition", "attachment;filename=" + downloadFilename); |
|
|
response.setHeader("Content-Disposition", "attachment;filename=" + downloadFilename); |
|
|
ZipOutputStream zip = new ZipOutputStream(response.getOutputStream()); |
|
|
ZipOutputStream zip = new ZipOutputStream(response.getOutputStream()); |
|
|
|
|
|
|
|
|
List<EpidemicBuildingUnitDTO> houseList = baseDao.listUnitHasCode(); |
|
|
List<EpidemicBuildingUnitDTO> houseList = baseDao.listUnitHasCode(formDTO); |
|
|
String urlRre = qrCodeProperties.getPre(); |
|
|
String urlPre = qrCodeProperties.getPre(); |
|
|
|
|
|
|
|
|
for (EpidemicBuildingUnitDTO house : houseList) { |
|
|
for (EpidemicBuildingUnitDTO house : houseList) { |
|
|
try { |
|
|
try { |
|
|
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnit() + house.getRoomNo(), |
|
|
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]; |
|
|
byte[] buf = new byte[8192]; |
|
|
int len; |
|
|
int len; |
|
@ -431,7 +439,8 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
} |
|
|
} |
|
|
//url组成:小程序地址?房屋编码
|
|
|
//url组成:小程序地址?房屋编码
|
|
|
String url = qrCodeProperties.getPre() + house.getRoomCode(); |
|
|
String url = qrCodeProperties.getPre() + house.getRoomCode(); |
|
|
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnit() + house.getRoomNo(), url); |
|
|
String name = house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo(); |
|
|
|
|
|
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(name, url); |
|
|
//BufferedImage 转 InputStream
|
|
|
//BufferedImage 转 InputStream
|
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); |
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); |
|
|
ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream); |
|
|
ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream); |
|
@ -724,7 +733,7 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
public Result<HouseInfoResultDTO> getHouseInfo(GetHouseInfoFormDTO formDTO) { |
|
|
public Result<HouseInfoResultDTO> getHouseInfo(GetHouseInfoFormDTO formDTO) { |
|
|
HouseInfoResultDTO houseInfoResultDTO = baseDao.getHouseInfo(formDTO); |
|
|
HouseInfoResultDTO houseInfoResultDTO = baseDao.getHouseInfo(formDTO); |
|
|
|
|
|
|
|
|
if(houseInfoResultDTO != null){ |
|
|
if (houseInfoResultDTO != null) { |
|
|
List<FamilyMemberInfoResultDTO> members = epidemicUnitOwnerDao.getFamilyMemberInfoByUnitId(houseInfoResultDTO.getId()); |
|
|
List<FamilyMemberInfoResultDTO> members = epidemicUnitOwnerDao.getFamilyMemberInfoByUnitId(houseInfoResultDTO.getId()); |
|
|
houseInfoResultDTO.setMembers(members); |
|
|
houseInfoResultDTO.setMembers(members); |
|
|
} |
|
|
} |
|
@ -733,11 +742,11 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui |
|
|
return new Result<HouseInfoResultDTO>().ok(houseInfoResultDTO); |
|
|
return new Result<HouseInfoResultDTO>().ok(houseInfoResultDTO); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public String createHouseQrcodeUrl(EpidemicBuildingUnitDTO house) throws Exception { |
|
|
public String createHouseQrCodeUrl(String roomCode, String name) throws Exception { |
|
|
//url组成:小程序地址?房屋编码
|
|
|
//url组成:小程序地址?房屋编码
|
|
|
String url = qrCodeProperties.getPre() + house.getRoomCode(); |
|
|
String url = qrCodeProperties.getPre() + roomCode; |
|
|
String fileName = house.getBuildingName() + StrConstant.HYPHEN + house.getUnit() + StrConstant.HYPHEN + house.getRoomNo() + ".png"; |
|
|
String fileName = name + ".png"; |
|
|
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(house.getBuildingName() + house.getUnit() + house.getRoomNo(), url); |
|
|
BufferedImage image = HouseQRcodeUtils.drawHouseQRImage(name, url); |
|
|
ByteArrayOutputStream out = new ByteArrayOutputStream(); |
|
|
ByteArrayOutputStream out = new ByteArrayOutputStream(); |
|
|
try { |
|
|
try { |
|
|
ImageIO.write(image, "png", out); |
|
|
ImageIO.write(image, "png", out); |
|
|