From 7a4681617ba9af7a0ca70339d5c5a330c8ec4639 Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Mon, 23 May 2022 10:12:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B8=A6header=E7=9A=84=E4=B8=8B=E5=8F=91?= =?UTF-8?q?=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../power/dto/hik/form/HikPersonFormDTO.java | 33 ++++++++++ .../controller/RentTenantInfoController.java | 5 +- .../power/modules/utils/HkDeviceUtil.java | 63 ++++++++++++------- 3 files changed, 78 insertions(+), 23 deletions(-) create mode 100644 epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/form/HikPersonFormDTO.java diff --git a/epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/form/HikPersonFormDTO.java b/epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/form/HikPersonFormDTO.java new file mode 100644 index 0000000..0962390 --- /dev/null +++ b/epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/form/HikPersonFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.plugin.power.dto.hik.form; + +import lombok.Data; + +import java.io.Serializable; + + +/** + * 海康社区人员信息 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-05-20 + */ +@Data +public class HikPersonFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + private String unionId; + + private String personName; + + private Integer gender; + + private Integer credentialType; + + private String credentialNumber; + + private String mobile; + + private String faceUrl; + +} \ No newline at end of file diff --git a/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentTenantInfoController.java b/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentTenantInfoController.java index 6a90baa..9cdddaf 100644 --- a/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentTenantInfoController.java +++ b/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentTenantInfoController.java @@ -97,7 +97,10 @@ public class RentTenantInfoController { @GetMapping("test") public Result test(@RequestParam Map params, HttpServletResponse response) throws Exception { - return new Result().ok(hkDeviceUtil.getAccessToken()); + String token =hkDeviceUtil.getAccessToken(); +token = "Bearer ".concat(token); + + return new Result().ok(hkDeviceUtil.sendPerson(token)); } diff --git a/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/HkDeviceUtil.java b/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/HkDeviceUtil.java index 6e47b45..b6d8fed 100644 --- a/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/HkDeviceUtil.java +++ b/epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/HkDeviceUtil.java @@ -4,11 +4,11 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; -import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.HttpClientManager; import com.epmet.commons.tools.utils.Result; import com.epmet.plugin.power.config.HikCloudProperties; +import com.epmet.plugin.power.dto.hik.form.HikPersonFormDTO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -32,6 +32,7 @@ public class HkDeviceUtil { private final String GET_ACCESS_TOKEN = "/oauth/token"; private final String GET_DEVICES = "/api/v1/estate/devices"; + private final String SEND_PERSON = "/api/v1/estate/system/person"; private final String GRANT_TYPE = "client_credentials"; @@ -62,25 +63,43 @@ public class HkDeviceUtil { } return toResult.get("access_token").toString(); } -// -// public String getDevices() { -// String url = hikCloudProperties.getUrl().concat(GET_DEVICES); -// Map paramsMap = new HashMap<>(8); -// paramsMap.put("deviceId", hikCloudProperties.getClient()); -// -// -// String data = HttpClientManager.getInstance().sendGet(ThirdApiConstant.THIRD_PAUSER_SAVEUSER, JSON.toJSONString(dto)).getData(); -// JSONObject toResult = JSON.parseObject(data); -// Result result = ConvertUtils.mapToEntity(toResult, Result.class); -// if (null != toResult.get("code")) { -// result.setCode(((Integer) toResult.get("code")).intValue()); -// } -// if (!result.success()) { -// throw new RenException(PublicUserLoginConstant.SAVE_USER_EXCEPTION); -// } -// Object RegisterResult = result.getData(); -// JSONObject jsonObject = JSON.parseObject(RegisterResult.toString()); -// SaveUserResultDTO resultDTO = ConvertUtils.mapToEntity(jsonObject, SaveUserResultDTO.class); -// -// } + + /** + * 下发人员 + * + * @param token + * @return java.lang.String 人员ID + * @author zhy + * @date 2022/5/23 10:08 + */ + public String sendPerson(String token) { + String url = hikCloudProperties.getUrl().concat(SEND_PERSON); + Map paramsMap = new HashMap<>(4); + paramsMap.put("Authorization", token); + + HikPersonFormDTO dto = new HikPersonFormDTO(); + dto.setPersonName("张三"); + dto.setGender(1); + dto.setCredentialType(1); + dto.setCredentialNumber("350781196403072329"); + dto.setMobile("17890987654"); + dto.setFaceUrl("https://ai-security-protection.oss-cn-qingdao.aliyuncs.com/test/20220501/b714a5d77e46449980ad7d6dcf3d3aab.jpg"); + String data = HttpClientManager.getInstance().sendPostByJSONAndHeader(url, JSON.toJSONString(dto), paramsMap).getData(); + + if (null == data) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "人员信息下发失败"); + } + JSONObject toResult = JSON.parseObject(data); + Result result = ConvertUtils.mapToEntity(toResult, Result.class); + if (null != toResult.get("code")) { + result.setCode(((Integer) toResult.get("code")).intValue()); + } + if (!result.success()) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "人员信息下发失败"); + } + Object RegisterResult = result.getData(); + JSONObject jsonObject = JSON.parseObject(RegisterResult.toString()); + return "11111111111111111"; + } + }