Browse Source

二维码剔除字段;批量生成二维码及房屋编码

master
Jackwang 3 years ago
parent
commit
953a3d94af
  1. 37
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CreateHouseCodeAndUrlDTO.java
  2. 29
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java
  3. 9
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java
  4. 9
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java
  5. 25
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java
  6. 12
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml

37
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;
}

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

9
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcHouseDao.java

@ -119,4 +119,13 @@ public interface IcHouseDao extends BaseDao<IcHouseEntity> {
* @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<com.epmet.dto.result.CreateHouseCodeAndUrlDTO>
*/
List<CreateHouseCodeAndUrlDTO> selectBatchHouseCodeAndUrl();
}

9
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<com.epmet.dto.result.IcHouseInfoResultDTO>
*/
Result<IcHouseInfoResultDTO> getHouseInfoByCode(IcHouseInfoFormDTO formDTO);
/**
* @describe: 批量生成房屋的房屋编码和一户一档二维码
* @author wangtong
* @date 2022/6/6 14:44
* @params []
* @return com.epmet.commons.tools.utils.Result
*/
Result createBatchHouseCodeAndUrl();
}

25
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<CreateHouseCodeAndUrlDTO> 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(),"二维码生成失败<houseId>:"+house.getHouseId(),"二维码生成失败<houseId>:"+house.getHouseId());
}
icHouseDao.updateById(entity);
});
return new Result().ok("批量生成成功");
}
/**
* @return java.lang.String
* @describe: 把数字转换成5位的字符串不够的前面补0

12
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'
</select>
<select id="selectBatchHouseCodeAndUrl" resultType="com.epmet.dto.result.CreateHouseCodeAndUrlDTO">
select h.id as houseId,
h.customer_id,
h.BUILDING_ID,
b.AREA_CODE
from ic_house h
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 = '')
order by h.CREATED_TIME desc
</select>
</mapper>

Loading…
Cancel
Save