|  |  | 
 |  |  | import com.hikvision.artemis.sdk.ArtemisHttpUtil; | 
 |  |  | import com.hikvision.artemis.sdk.config.ArtemisConfig; | 
 |  |  | import lombok.extern.slf4j.Slf4j; | 
 |  |  | import org.apache.commons.lang3.StringUtils; | 
 |  |  | import org.apache.http.HttpEntity; | 
 |  |  | import org.apache.http.HttpResponse; | 
 |  |  | import org.apache.tomcat.util.bcel.Const; | 
 |  |  | 
 |  |  |  | 
 |  |  |    } | 
 |  |  |    public static InterfaceLogService interfaceLogService = null; | 
 |  |  |    private static void saveInterfaceLog(String s, String result,Map<String, String> path) { | 
 |  |  |    private static void saveInterfaceLog(String s, String result,Map<String, String> path,String name) { | 
 |  |  | //      InterfaceLogService bean = SpringContextUtil.getBean(InterfaceLogService.class); | 
 |  |  |       if(interfaceLogService !=null){ | 
 |  |  |          InterfaceLog hkMonitoryLogDO=new InterfaceLog(); | 
 |  |  | 
 |  |  |          hkMonitoryLogDO.setIsdeleted(0); | 
 |  |  |          hkMonitoryLogDO.setRequest(s); | 
 |  |  |          hkMonitoryLogDO.setRepose(result); | 
 |  |  |          hkMonitoryLogDO.setName(path.get(HKConstants.https)); | 
 |  |  |          hkMonitoryLogDO.setName("【安防平台】"+name); | 
 |  |  |          hkMonitoryLogDO.setUrl(HKConstants.https + ArtemisConfig.host+path.get(HKConstants.https)); | 
 |  |  |          interfaceLogService.create(hkMonitoryLogDO); | 
 |  |  |       } | 
 |  |  | 
 |  |  |     */ | 
 |  |  |    public static InputStream getFaceInputStream(String body)  throws  Exception{ | 
 |  |  |  | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.facePicture); | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.facePicture[0]); | 
 |  |  |       //参数根据接口实际情况设置 | 
 |  |  |       HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); | 
 |  |  |       if (200==resp.getStatusLine().getStatusCode()) { | 
 |  |  | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static InputStream getVisitPicture(String body)  throws  Exception{ | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.visitPicture); | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.visitPicture[0]); | 
 |  |  |       //参数根据接口实际情况设置 | 
 |  |  |       HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); | 
 |  |  |       if (200==resp.getStatusLine().getStatusCode()) { | 
 |  |  | 
 |  |  |     */ | 
 |  |  |    public static InputStream getDevicePicture(String body)  throws  Exception{ | 
 |  |  |  | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.devicePicture); | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.devicePicture[0]); | 
 |  |  |       //参数根据接口实际情况设置 | 
 |  |  |       HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); | 
 |  |  |       if (200==resp.getStatusLine().getStatusCode()) { | 
 |  |  | 
 |  |  |     */ | 
 |  |  |    public static InputStream getCarPicture(String body)  throws  Exception{ | 
 |  |  |  | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.carPicture); | 
 |  |  |       Map<String, String> path = getPath(HKConstants.InterfacePath.carPicture[0]); | 
 |  |  |       //参数根据接口实际情况设置 | 
 |  |  |       HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); | 
 |  |  |       if (200==resp.getStatusLine().getStatusCode()) { | 
 |  |  | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.visitAppiontment,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   访客预约 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String iccmAppointment(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.iccmAppointment,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   访客免登记预约 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String iccmAppointmentMDJ(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.iccmAppointmentMDJ,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   访客免登记预约 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  | 
 |  |  |       return  startDoPostStringArtemis(HKConstants.InterfacePath.visitCancel,body); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    public static String startDoPostStringArtemis(String pathStr,String body){ | 
 |  |  |       Map<String, String> path = getPath(pathStr); | 
 |  |  |    public static String startDoGetStringArtemis(String[] pathStr,Map<String,String> body ){ | 
 |  |  |       Map<String, String> path = getPath(pathStr[0]); | 
 |  |  |       Map<String, String> header = new HashMap<>(); | 
 |  |  |       header.put("tagId", UUID.randomUUID().toString().replace("-", "")); | 
 |  |  |       String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请求application/json类型参数 | 
 |  |  |       saveInterfaceLog(body,result,path); | 
 |  |  |       String result = ArtemisHttpUtil.doGetArtemis(path, body, null,  "application/json", header);// post请求application/json类型参数 | 
 |  |  |       saveInterfaceLog(JSONObject.toJSONString(body),result,path,pathStr[1]); | 
 |  |  |       return result; | 
 |  |  |  | 
 |  |  |    } | 
 |  |  |    public static String startDoPostStringArtemis(String pathStr,Map<String, String> querys,Map<String, String> header,String body){ | 
 |  |  |       Map<String, String> path = getPath(pathStr); | 
 |  |  |    public static String startDoPostStringArtemis(String[] pathStr,String body ){ | 
 |  |  |       Map<String, String> path = getPath(pathStr[0]); | 
 |  |  |       Map<String, String> header = new HashMap<>(); | 
 |  |  |       header.put("tagId", UUID.randomUUID().toString().replace("-", "")); | 
 |  |  |       String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请求application/json类型参数 | 
 |  |  |       saveInterfaceLog(body,result,path,pathStr[1]); | 
 |  |  |       return result; | 
 |  |  |  | 
 |  |  |    } | 
 |  |  |    public static String startDoPostStringArtemis(String[] pathStr,String param,String body ){ | 
 |  |  |       Map<String, String> path = getPath(pathStr[0]+StringUtils.defaultString(param,"")); | 
 |  |  |       Map<String, String> header = new HashMap<>(); | 
 |  |  |       header.put("tagId", UUID.randomUUID().toString().replace("-", "")); | 
 |  |  |       String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请求application/json类型参数 | 
 |  |  |       saveInterfaceLog(body,result,path,pathStr[1]); | 
 |  |  |       return result; | 
 |  |  |  | 
 |  |  |    } | 
 |  |  |    public static String startDoPostStringArtemis(String[] pathStr,Map<String, String> querys,Map<String, String> header,String body){ | 
 |  |  |       Map<String, String> path = getPath(pathStr[0]); | 
 |  |  |       header.put("tagId", UUID.randomUUID().toString().replace("-", "")); | 
 |  |  |       String result = ArtemisHttpUtil.doPostStringArtemis(path, body, querys, null, "application/json", header);// post请求application/json类型参数 | 
 |  |  |       saveInterfaceLog(body,result,path); | 
 |  |  |       saveInterfaceLog(body,result,path,pathStr[1]); | 
 |  |  |       return result; | 
 |  |  |  | 
 |  |  |    } | 
 |  |  | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    /** | 
 |  |  |     *   获取全量组织信息 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String orgAllList(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.orgAllList,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   获取访客预约记录列表 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  | 
 |  |  |    public static String appointmentRecords(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.appointmentRecords,body); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    /** | 
 |  |  |     *   获取全量组织列表 | 
 |  |  |     *   获取访客预约记录列表 iccm | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String orgAllList(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.orgAllList,body); | 
 |  |  |    public static String iccmAppointmentRecords(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.iccmAppointmentRecords,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   根据微信公众号信息获取AccessToken | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String wxAccessToken(String configId,String tagId) { | 
 |  |  |       String[] wxAccessToken= HKConstants.InterfacePath.wxAccessToken; | 
 |  |  |       wxAccessToken[0] = HKConstants.InterfacePath.wxAccessToken+"?tagId="+tagId+"&configId"+configId; | 
 |  |  |       return startDoPostStringArtemis(wxAccessToken,""); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   根据配置微信公众号编号查询微信公众号信息 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String getWxConfig(Map<String,String>  body) { | 
 |  |  |       return startDoGetStringArtemis(HKConstants.InterfacePath.getWxConfig,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   根据配置微信公众号编号查询微信公众号信息 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String nhEventPageList(Map<String,String> body) { | 
 |  |  |       return startDoGetStringArtemis(HKConstants.InterfacePath.nhEventPageList,body); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    /** | 
 |  |  |     *   查询消防设备部件状态 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String fireDeviceStatusSearch(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.fireDeviceStatusSearch,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   分页查询消防传感器部件状态 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String sensorStatusSearch(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.sensorStatusSearch,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   询消防设备列表 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String fireChannelSearch(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.fireChannelSearch,body); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    /** | 
 |  |  |     *   询消防设备列表 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String fireDeviceSearch(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.fireDeviceSearch,body); | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     *   获取全量用户列表 | 
 |  |  | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     * 获取月台状态 | 
 |  |  |     * @param body | 
 |  |  |     * @return | 
 |  |  |     */ | 
 |  |  |    public static String platformStatus(String body) { | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.platformStatus,body); | 
 |  |  |    public static String platformStatus(String param) { | 
 |  |  |       if(StringUtils.isNotBlank(param)){ | 
 |  |  |          return startDoPostStringArtemis(HKConstants.InterfacePath.platformStatus,"?platformIds="+param,null); | 
 |  |  |       }else{ | 
 |  |  |          return startDoPostStringArtemis(HKConstants.InterfacePath.platformStatus,null); | 
 |  |  |       } | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     * 获取月台组件配置的LED设备清单 | 
 |  |  | 
 |  |  |       return startDoPostStringArtemis(HKConstants.InterfacePath.applyST,body); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    public static String getMenuUrl(String menuId, String token) { | 
 |  |  |       String url = HKConstants.InterfacePath.goMenuUrl[0]; | 
 |  |  |       url = url.replace("${menuId}", menuId).replace("${token}",token); | 
 |  |  |       return  url; | 
 |  |  |    } | 
 |  |  | } |