From 5f6864fa4dc9ef21c5d896dc7608ab1b357866e2 Mon Sep 17 00:00:00 2001 From: jiazx0107@163.com <jiazx0107@163.com> Date: 星期四, 29 六月 2023 19:29:07 +0800 Subject: [PATCH] 增加出入库OPEN-API车牌识别 --- igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/OpenApiInoutService.java | 51 +++++++++++++++++++------ igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/data/SinglePlateRepVo.java | 27 +++++++++++++ 2 files changed, 66 insertions(+), 12 deletions(-) diff --git a/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/OpenApiInoutService.java b/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/OpenApiInoutService.java index 44a5e1f..4b1b897 100644 --- a/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/OpenApiInoutService.java +++ b/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/OpenApiInoutService.java @@ -1,8 +1,14 @@ package com.ld.igds.protocol.openapi; +import com.alibaba.fastjson.JSONObject; +import com.ld.igds.camera.CameraUtil; import com.ld.igds.inout.ApiInoutService; import com.ld.igds.inout.dto.ApiInoutData; import com.ld.igds.io.constant.ProtocolEnum; +import com.ld.igds.protocol.openapi.data.PlateReqVo; +import com.ld.igds.protocol.openapi.data.SinglePlateRepVo; +import com.ld.igds.util.HttpUtils; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Component; @@ -11,6 +17,7 @@ * @author: andy.jia * @update-time: 2023/6/29 15:21 */ +@Slf4j @Component public class OpenApiInoutService implements ApiInoutService { @@ -32,22 +39,42 @@ @Override public ApiInoutData getPlateNum(ApiInoutData param) { + try { - String rtsp = param.getMediaAddr(); - if (StringUtils.isEmpty(rtsp)) { - param.setErrorMsg("褰撳墠杞︾墝璇嗗埆璁惧鏈厤缃挱鏀惧湴鍧�"); + log.info("-----------璋冪敤椋庢鑷磋繙---OPEN-API-HTTP杞︾墝璇嗗埆-----"); - return param; + String rtsp = param.getMediaAddr(); + + if (StringUtils.isEmpty(rtsp)) { + param.setErrorMsg("褰撳墠杞︾墝璇嗗埆璁惧鏈厤缃挱鏀惧湴鍧�"); + + return param; + } + + //璇存槑鍦板潃鏈仛淇℃伅鏇挎崲 + if (rtsp.indexOf("{0}") > 0) { + rtsp = CameraUtil.updateMediaAddr(rtsp, param.getLoginId(), param.getPwd(), param.getIp(), param.getPortCtrl(), param.getChanNum()); + } + + PlateReqVo reqVo = new PlateReqVo(); + reqVo.setImage(null); + reqVo.setLimit(1); + reqVo.setRtsp(rtsp); + + String jsonReturn = HttpUtils.doPostJson(http_url, JSONObject.toJSONString(reqVo)); + + SinglePlateRepVo repVo = JSONObject.parseObject(jsonReturn, SinglePlateRepVo.class); + + if (0 == repVo.getCode() && "SUCCESS".equalsIgnoreCase(repVo.getMessage())) { + param.setPlateNum(repVo.getPlateNo()); + } else { + param.setErrorMsg("璇嗗埆澶辫触锛�" +repVo.getMessage()); + } + + } catch (Exception e) { + param.setErrorMsg("璇嗗埆澶辫触锛�" + e.getMessage()); } - - //璇存槑鍦板潃鏈仛淇℃伅鏇挎崲 - if (rtsp.indexOf("{0}") > 0) { - - } - - // HttpUtils.doPostJson() - return param; } diff --git a/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/data/SinglePlateRepVo.java b/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/data/SinglePlateRepVo.java new file mode 100644 index 0000000..f825eb6 --- /dev/null +++ b/igds-protocol-block/src/main/java/com/ld/igds/protocol/openapi/data/SinglePlateRepVo.java @@ -0,0 +1,27 @@ +package com.ld.igds.protocol.openapi.data; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Desc: + * @author: andy.jia + * @update-time: 2023/6/29 18:38 + */ +@Data +public class SinglePlateRepVo implements Serializable { + + private Integer code = 0; + private String message = "SUCCESS"; + + /** + * 杞︾墝甯冨眬锛屽崟鎺掕繕鏄弻鎺� + **/ + private String layout; + + /** + * 杞︾墝鏂囨湰淇℃伅 + **/ + private String plateNo; +} -- Gitblit v1.9.3