Commit fce4095a4edb13a25cd55a6b7183d1c76abe6488

Authored by xp.Huang
1 parent dce15884

fix: 海康威视调用api失败,返回错误码方便定位

@@ -104,6 +104,8 @@ public enum ErrorMessage { @@ -104,6 +104,8 @@ public enum ErrorMessage {
104 CURRENT_DATA_IN_USE(400080,"当前数据正在被【%s】使用,不能被禁用"), 104 CURRENT_DATA_IN_USE(400080,"当前数据正在被【%s】使用,不能被禁用"),
105 REPORT_NAME_ERROR(400081,"报表配置的名称包含斜杠或反斜杠!!!"), 105 REPORT_NAME_ERROR(400081,"报表配置的名称包含斜杠或反斜杠!!!"),
106 DEVICE_CREDENTIALS_ASSIGNED(400082,"设备凭证【%s】已分配给其它设备!"), 106 DEVICE_CREDENTIALS_ASSIGNED(400082,"设备凭证【%s】已分配给其它设备!"),
  107 + HIKVISION_GET_URL_ERROR(400083,"海康威视视API调用获取URL失败!!"),
  108 + HIKVISION_API_ERROR(400084,"海康威视视频预览API调用失败,错误码【%s】"),
107 HAVE_NO_PERMISSION(500002,"没有修改权限"); 109 HAVE_NO_PERMISSION(500002,"没有修改权限");
108 private final int code; 110 private final int code;
109 private String message; 111 private String message;
@@ -68,18 +68,24 @@ public class HikVisionArtemisPostUtils { @@ -68,18 +68,24 @@ public class HikVisionArtemisPostUtils {
68 //返回url地址 68 //返回url地址
69 if (StringUtils.isNotEmpty(result)) { 69 if (StringUtils.isNotEmpty(result)) {
70 JsonNode json = JacksonUtil.toJsonNode(result); 70 JsonNode json = JacksonUtil.toJsonNode(result);
71 - json = json.get("data");  
72 - String message = null;  
73 - if(null == json || json.get("url") == null){  
74 - if(null == json){  
75 - message = ErrorMessage.VIDEO_PLATFORM_CONFIG_ERROR.getMessage();  
76 - }else if(json.get("url") == null && Objects.equals(protocolType.getValue(),  
77 - ProtocolType.HLSS.getValue())){  
78 - message = ErrorMessage.VIDEO_PLATFORM_NEED_ENABLE_HLS_HTTPS.getMessage(); 71 + if(json.get("code").equals("0")){
  72 + json = json.get("data");
  73 + String message = null;
  74 + if(null == json || json.get("url") == null){
  75 + if(null == json){
  76 + message = ErrorMessage.HIKVISION_GET_URL_ERROR.getMessage();
  77 + }else if(json.get("url") == null && Objects.equals(protocolType.getValue(),
  78 + ProtocolType.HLSS.getValue())){
  79 + message = ErrorMessage.VIDEO_PLATFORM_NEED_ENABLE_HLS_HTTPS.getMessage();
  80 + }
  81 + throw new TkDataValidationException(message);
79 } 82 }
80 - throw new TkDataValidationException(message); 83 + return json.get("url").textValue();
  84 + }else{
  85 + String errorCode = json.get("code").toString();
  86 + throw new TkDataValidationException(String.format(ErrorMessage.HIKVISION_API_ERROR.getMessage(),errorCode));
81 } 87 }
82 - return json.get("url").textValue(); 88 +
83 } else { 89 } else {
84 throw new TkDataValidationException(ErrorMessage.VIDEO_PLATFORM_CONFIG_ERROR.getMessage()); 90 throw new TkDataValidationException(ErrorMessage.VIDEO_PLATFORM_CONFIG_ERROR.getMessage());
85 } 91 }