jiangping
2024-10-09 bfd87d12adb1d511334cd91cf6c7ff3608fae8b9
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -9,8 +9,9 @@
import com.doumee.core.haikang.model.param.BaseResponse;
import com.doumee.core.haikang.model.param.request.*;
import com.doumee.core.haikang.model.param.respose.*;
import com.doumee.core.utils.Constants;
import com.hikvision.artemis.sdk.config.ArtemisConfig;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -230,6 +231,8 @@
     */
    public static InputStream getFaceInputStream(FacePictureRequest param) {
        log.info("【海康人脸访问图片流】================开始===="+JSONObject.toJSONString(param));
        log.error("********************ArtemisConfig.host***********************************"+ ArtemisConfig.host);
        log.error("********************ArtemisConfig.key********************************"+ArtemisConfig.appKey);
        try {
            InputStream res = HKTools.getFaceInputStream(JSONObject.toJSONString(param));
            log.error("【海康人脸访问图片流】================成功====\n");
@@ -382,7 +385,7 @@
    public  static  BaseResponse   parkReservationDeletion(ParkReservationDelRequest param){
        log.info("【海康车位取消预约】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.carChargeDeletion(JSONObject.toJSONString(param));
            String res = HKTools.parkDeletion(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse>(){};
            BaseResponse  result = JSONObject.parseObject(res, typeReference.getType());
@@ -878,6 +881,152 @@
        return  null;
    }
    /**
     *1.9.1根据微信公众号信息获取AccessToken(分页)
     * @return
     */
    public  static  BaseResponse<String>   wxAccessToken(String configId,String tagId){
        log.info("【海康根据微信公众号信息获取AccessToken】================开始====configId:"+configId+" && tagId:"+tagId);
        try {
            String res = HKTools.wxAccessToken(configId,tagId);
            TypeReference typeReference =
                    new TypeReference<BaseResponse<String>>(){};
            BaseResponse<String>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康根据微信公众号信息获取AccessToken");
            return  result;
        }catch (Exception e){
            log.error("【海康根据微信公众号信息获取AccessToken】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *根据配置微信公众号编号查询微信公众号信息
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<WxConfigInfoResponse>>   getWxConfig(WxConfigInfoRequest param){
        log.info("【海康根据配置微信公众号编号查询微信公众号信息】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.getWxConfig(toMap(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<WxConfigInfoResponse>>>(){};
            BaseResponse<BaseListPageResponse<WxConfigInfoResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康根据配置微信公众号编号查询微信公众号信息");
            return  result;
        }catch (Exception e){
            log.error("【海康根据配置微信公众号编号查询微信公众号信息】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页查询消防设备部件状态
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<FireDeviceStatusListResponse>>   fireDeviceStatusSearch(FireDeviceStatuslListRequest param){
        log.info("【海康查询消防设备部件状态】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.fireDeviceStatusSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<FireDeviceStatusListResponse>>>(){};
            BaseResponse<BaseListPageResponse<FireDeviceStatusListResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页查询消防传感器部件状态");
            return  result;
        }catch (Exception e){
            log.error("【海康查询消防设备部件状态】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页查询消防传感器部件状态
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<SensorStatusListResponse>>   sensorStatusSearch(SensorStatusListRequest param){
        log.info("【海康分页查询消防传感器部件状态】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.sensorStatusSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<SensorStatusListResponse>>>(){};
            BaseResponse<BaseListPageResponse<SensorStatusListResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页查询消防传感器部件状态");
            return  result;
        }catch (Exception e){
            log.error("【海康分页查询消防传感器部件状态】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *查询消防传感器列表
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<FireChannelListResponse>>   fireChannelSearch(FireChannelListRequest param){
        log.info("【海康查询消防传感器列表】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.fireChannelSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<FireChannelListResponse>>>(){};
            BaseResponse<BaseListPageResponse<FireChannelListResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康查询消防传感器列表");
            return  result;
        }catch (Exception e){
            log.error("【海康查询消防传感器列表】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页查询设备下的所有报警记录
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<FindDeviceAlarmListResponse>>   findDeviceAlarmPage(FindDeviceAlarmListRequest param){
        log.info("【海康分页查询设备下的所有报警记录】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.findDeviceAlarmPage(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<FindDeviceAlarmListResponse>>>(){};
            BaseResponse<BaseListPageResponse<FindDeviceAlarmListResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页查询设备下的所有报警记录");
            return  result;
        }catch (Exception e){
            log.error("【海康分页查询设备下的所有报警记录】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *询消防设备列表
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<FireDeviceListResponse>>   fireDeviceSearch(FireDeviceListRequest param){
        log.info("【海康询消防设备列表】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.fireDeviceSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<FireDeviceListResponse>>>(){};
            BaseResponse<BaseListPageResponse<FireDeviceListResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康询消防设备列表");
            return  result;
        }catch (Exception e){
            log.error("【海康询消防设备列表】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页获取告警事件
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<NhEventPageListResponse>>   nhEventPageList(NhEventPageListRequest param){
        log.info("【海康分页获取告警事件】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.nhEventPageList(toMap(param));
            TypeReference typeReference =
                    new TypeReference<BaseResponse<BaseListPageResponse<NhEventPageListResponse>>>(){};
            BaseResponse<BaseListPageResponse<NhEventPageListResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页获取告警事件");
            return  result;
        }catch (Exception e){
            log.error("【海康分页获取告警事件】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *查询访客来访记录(已登记)(分页)
     * @return
     */
@@ -910,6 +1059,30 @@
            return  result;
        }catch (Exception e){
            log.error("【海康全量组织查询】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *获取工作台菜单免密登陆调整地址
     * @return
     */
    public  static  String   getMenuUrl(Integer type,String token){
        String menuId = HKConstants.MenuPageId.afzx;
        if(Constants.equalsInteger(type,Constants.ONE)){
            menuId = HKConstants.MenuPageId.xkzx;
        }else  if(Constants.equalsInteger(type,Constants.TWO)){
            menuId = HKConstants.MenuPageId.ngzx;
        }else  if(Constants.equalsInteger(type,Constants.THREE)){
            menuId = HKConstants.MenuPageId.jsc;
        }else  if(Constants.equalsInteger(type,Constants.FOUR)){
            menuId = HKConstants.MenuPageId.kqgl;
        }
        log.info("【海康获取工作台菜单免密登陆调整地址】================开始====menuId:"+menuId+"==token:"+token);
        try {
            String res = HKTools.getMenuUrl(menuId,token);
            return  res;
        }catch (Exception e){
            log.error("【海康获取工作台菜单免密登陆调整地址】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
@@ -1183,7 +1356,6 @@
            log.error("【海康获取全部月台信息】================失败====:\n" + e.getMessage());
        }
        return null;
    }
    /**
     *发送消息给LED