k94314517
2024-12-13 ad86a0aa39f20e1b8bb511acd6961c7ec59f9251
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -888,7 +888,10 @@
    public  static  BaseResponse<String>   wxAccessToken(String configId,String tagId){
        log.info("【海康根据微信公众号信息获取AccessToken】================开始====configId:"+configId+" && tagId:"+tagId);
        try {
            String res = HKTools.wxAccessToken(configId,tagId);
            HashMap<String,String> params = new HashMap<>();
            params.put("tagId",tagId);
            params.put("configId",configId);
            String res = HKTools.wxAccessToken(params);
            TypeReference typeReference =
                    new TypeReference<BaseResponse<String>>(){};
            BaseResponse<String>   result = JSONObject.parseObject(res, typeReference.getType());
@@ -935,6 +938,26 @@
        }
        return  null;
    }
    /**
     *消防看板-4温湿度统计
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<TemperatureHumidityDataResponse>>  temperatureHumidityDataStatistic(TemperatureHumidityDataRequest param){
        log.info("【海康消防看板-4温湿度统计】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.temperatureHumidityDataStatistic(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<BaseListPageResponse<TemperatureHumidityDataResponse> >>(){};
            BaseResponse<BaseListPageResponse<TemperatureHumidityDataResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-4温湿度统计");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-4温湿度统计】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页查询消防设备部件状态
@@ -1086,6 +1109,7 @@
     * @return
     */
    public  static  String   getMenuUrl(Integer type,String token){
        String componentId = HKConstants.MenuPageId.componentIds[0];
        String menuId = HKConstants.MenuPageId.afzx;
        if(Constants.equalsInteger(type,Constants.ONE)){
            menuId = HKConstants.MenuPageId.xkzx;
@@ -1095,10 +1119,13 @@
            menuId = HKConstants.MenuPageId.jsc;
        }else  if(Constants.equalsInteger(type,Constants.FOUR)){
            menuId = HKConstants.MenuPageId.kqgzt;
        }else  if(Constants.equalsInteger(type,Constants.FIVE)){
            componentId = HKConstants.MenuPageId.componentIds[1];
            menuId = HKConstants.MenuPageId.kqdbcl;
        }
        log.info("【海康获取工作台菜单免密登陆调整地址】================开始====menuId:"+menuId+"==token:"+token);
        try {
            String res = HKTools.getMenuUrl(menuId,token);
            String res = HKTools.getMenuUrl(componentId,menuId,token);
            return  res;
        }catch (Exception e){
            log.error("【海康获取工作台菜单免密登陆调整地址】================失败====:\n"+ e.getMessage());
@@ -1404,7 +1431,9 @@
        Class<?> clazz = obj.getClass();
        for (Field field : clazz.getDeclaredFields()) {
            field.setAccessible(true); // 使得私有字段也可以访问
            map.put(field.getName(), (String) field.get(obj));
            if(field.get(obj)!=null){
                map.put(field.getName(), String.valueOf( field.get(obj)));
            }
        }
        return map;
    }
@@ -1480,7 +1509,7 @@
            TypeReference typeReference =
                    new TypeReference< BaseResponse<BaseListPageResponse<PageCameraInfoResponse>> >(){};
            BaseResponse<BaseListPageResponse<PageCameraInfoResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页获取监控点资源");
//            logResult(result,"海康分页获取监控点资源");
            return  result;
        }catch (Exception e){
            log.error("【海康分页获取监控点资源】================失败====:\n"+ e.getMessage());
@@ -1527,17 +1556,188 @@
     *安防看板-今日告警事件-根据eventType字段3
     * @return
     */
    public  static  BaseResponse< RuleEventSearchResponse>   ruleEventSearch(RuleEventSearchRequest param){
    public  static  BaseResponse<BaseListPageResponse<RuleEventSearchDataResponse>>   ruleEventSearch(RuleEventSearchRequest param){
        log.info("【海康安防看板-今日告警事件-根据eventType字段3】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.ruleEventSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<RuleEventSearchResponse> >(){};
            BaseResponse<RuleEventSearchResponse>   result = JSONObject.parseObject(res, typeReference.getType());
                    new TypeReference< BaseResponse<BaseListPageResponse<RuleEventSearchDataResponse>> >(){};
            BaseResponse<BaseListPageResponse<RuleEventSearchDataResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康安防看板-今日告警事件-根据eventType字段3");
            return  result;
        }catch (Exception e){
            log.error("【海康安防看板-今日告警事件-根据eventType字段3】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *安防看板-- 分页查询未处理报警信息6
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>>   findHomeAlarmInfoPage(FindHomeAlarmInfoPageRequest param){
        log.info("【海康安防看板-- 分页查询未处理报警信息6】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.findHomeAlarmInfoPage(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>> >(){};
            BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康安防看板-- 分页查询未处理报警信息6");
            return  result;
        }catch (Exception e){
            log.error("【海康安防看板-- 分页查询未处理报警信息6】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *保存用户及openId绑定信息微信公众号
     * @return
     */
    public  static  BaseResponse<Integer>   userOpenidSave(UserOpenidSaveRequest param){
        log.info("【海康保存用户及openId绑定信息微信公众号】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.userOpenidSave(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<Integer>>(){};
            BaseResponse<Integer>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康保存用户及openId绑定信息微信公众号");
            return  result;
        }catch (Exception e){
            log.error("【海康保存用户及openId绑定信息微信公众号】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页查询设备监测历史数据
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>>   minitorDataSearch(MinitorDataSearchRequest param){
        log.info("【海康分页查询设备监测历史数据】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.minitorDataSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>> >(){};
            BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页查询设备监测历史数据");
            return  result;
        }catch (Exception e){
            log.error("【海康分页查询设备监测历史数据】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *统计统安防看板--园区实时车数量4
     * @return
     */
    public  static  BaseResponse<ParkingStatisticResponse>   getParkingStatistics(){
        log.info("【海康安防看板--园区实时车数量4】================开始====");
        try {
            String res = HKTools.getParkingStatistics();
            TypeReference typeReference =
                    new TypeReference< BaseResponse<ParkingStatisticResponse>>(){};
            BaseResponse<ParkingStatisticResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康安防看板--园区实时车数量4");
            return  result;
        }catch (Exception e){
            log.error("【海康安防看板--园区实时车数量4】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     * 能耗看板-3.获取各区域用能及总能耗
     * @param powerType 能源类型 电-1 水-2 气-3 热-4
     * @return
     */
    public  static  BaseResponse<RegionEnergyListResponse>   regionEnergyList(String  powerType){
        log.info("【海康能耗看板-3.获取各区域用能及总能耗】================开始====");
        try {
            Map<String,String>   map = new HashMap<>();
            map.put("powerType",powerType);
            String res = HKTools.regionEnergyList(map);
            TypeReference typeReference =
                    new TypeReference< BaseResponse<RegionEnergyListResponse>>(){};
            BaseResponse<RegionEnergyListResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"【海康能耗看板-3.获取各区域用能及总能耗】");
            return  result;
        }catch (Exception e){
            log.error("【海康能耗看板-3.获取各区域用能及总能耗】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     * 能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷
     * @param powerType 能源类型 电-1 水-2 气-3 热-4
     * @return
     */
    public  static  BaseResponse<LastMonthFeeByMeterTypeResponse>   lastMonthFeeByMeterType(String  powerType){
        log.info("【海康能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷】================开始====");
        try {
            Map<String,String>   map = new HashMap<>();
            map.put("powerType",powerType);
            String res = HKTools.lastMonthFeeByMeterType(map);
            TypeReference typeReference =  new TypeReference< BaseResponse<LastMonthFeeByMeterTypeResponse>>(){};
            BaseResponse<LastMonthFeeByMeterTypeResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"【海康能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷】");
            return  result;
        }catch (Exception e){
            log.error("【海康能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     * 海康能耗看板-5.园区实时负荷曲线
     * @return
     */
    public  static  BaseResponse<List<EnergyTodayLoadDataResponse>>   energyTodayLoadData(){
        log.info("【海康能耗看板-5.园区实时负荷曲线】================开始====");
        try {
            String res = HKTools.energyTodayLoadData();
            TypeReference typeReference =  new TypeReference< BaseResponse<List<EnergyTodayLoadDataResponse>>>(){};
            BaseResponse<List<EnergyTodayLoadDataResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"【海康能耗看板-5.园区实时负荷曲线】");
            return  result;
        }catch (Exception e){
            log.error("【海康能耗看板-5.园区实时负荷曲线】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     * 能耗看板-2.获取区域用能前N位
     * @param param
     * @return
     */
    public  static  BaseResponse<List<RegionTopPowerResponse>>   regionTopPower(RegionTopPowerRequest   param){
        log.info("【海康能耗看板-2.获取区域用能前N位】================开始====");
        try {
            String res = HKTools.regionTopPower(toMap(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<List<RegionTopPowerResponse>>>(){};
            BaseResponse<List<RegionTopPowerResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康能耗看板-2.获取区域用能前N位");
            return  result;
        }catch (Exception e){
            log.error("【海康能耗看板-2.获取区域用能前N位】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     * 能耗看板-1.获取本月用能总量-自然月
     * @param powerType 能源类型 电-1 水-2 气-3 热-4
     * @return
     */
    public  static  BaseResponse<MonthDataByMeterTypeResponse>   getCurrentMonthDataByMeterType(String  powerType){
        log.info("【能耗看板-1.获取本月用能总量-自然月】================开始====");
        try {
            Map<String,String>   map = new HashMap<>();
            map.put("powerType",powerType);
            String res = HKTools.getCurrentMonthDataByMeterType(map);
            TypeReference typeReference =
                    new TypeReference< BaseResponse<MonthDataByMeterTypeResponse>>(){};
            BaseResponse<MonthDataByMeterTypeResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"能耗看板-1.获取本月用能总量-自然月");
            return  result;
        }catch (Exception e){
            log.error("【能耗看板-1.获取本月用能总量-自然月】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
@@ -1578,6 +1778,116 @@
        return  null;
    }
    /**
     *能耗看板-6按月查询近12个月的用电总量数据
     * @return
     */
    public  static  BaseResponse<EnergyTrendResponse>   energyTrend(EnergyTrendRequest param){
        log.info("【海康能耗看板-6按月查询近12个月的用电总量数据】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.energyTrend(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<EnergyTrendResponse>>(){};
            BaseResponse<EnergyTrendResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康能耗看板-6按月查询近12个月的用电总量数据");
            return  result;
        }catch (Exception e){
            log.error("【海康能耗看板-6按月查询近12个月的用电总量数据】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防维保统计
     * @return
     */
    public  static  BaseResponse<FireStatisticResponse>   fireStatistic(FireStatisticRequest param){
        log.info("【海康消防维保统计】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.fireStatistic(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<FireStatisticResponse>>(){};
            BaseResponse<FireStatisticResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防维保统计");
            return  result;
        }catch (Exception e){
            log.error("【海康消防维保统计】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *本月新增维保设备数
     * api_fire_statistic_month
     * @return
     */
    public  static  BaseResponse<FireStatisticResponse>   fireStatisticMonth(FireStatisticRequest param){
        log.info("【海康消防维保统计每月新增】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.fireStatisticMonth(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<FireStatisticResponse>>(){};
            BaseResponse<FireStatisticResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防维保统计每月新增");
            return  result;
        }catch (Exception e){
            log.error("【海康消防维保统计每月新增】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防看板-消防设备在离线1
     * @return
     */
    public  static  BaseResponse<List<SecureDevStatusTotalResponse> >  getFireDevStatusTotal(FireDevStatusTotalRequest param){
        log.info("【海康消防看板-消防设备在离线1】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.getFireDevStatusTotal(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<List<SecureDevStatusTotalResponse> >>(){};
            BaseResponse<List<SecureDevStatusTotalResponse> >   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-消防设备在离线1");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-消防设备在离线1】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防看板-各类型设备在线率2
     * @return
     */
    public  static  BaseResponse<List<FireDevStatusListResponse> >  getFireDevStatusList(FireDevStatusTotalRequest param){
        log.info("【海康消防看板-各类型设备在线率2】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.getFireDevStatusList(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<List<FireDevStatusListResponse> >>(){};
            BaseResponse<List<FireDevStatusListResponse> >   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-各类型设备在线率2");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-各类型设备在线率2】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防看板-4报警信息统计
     * @return
     */
    public  static  BaseResponse<FindAlarmBaseDataStatisticResponse>  findAlarmBaseDataStatistic(FindAlarmBaseDataStatisticRequest param){
        log.info("【海康消防看板-4报警信息统计】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.findAlarmBaseDataStatistic(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<FindAlarmBaseDataStatisticResponse >>(){};
            BaseResponse<FindAlarmBaseDataStatisticResponse >   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-4报警信息统计");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-4报警信息统计】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *根据用户标识获取客户端TGC接口
     * @return
     */