com.dahuatech.icc.electricity.model.v202208.SDK.ControlMultiSDK Maven / Gradle / Ivy
The newest version!
package com.dahuatech.icc.electricity.model.v202208.SDK;
import com.dahuatech.hutool.log.Log;
import com.dahuatech.hutool.log.LogFactory;
import com.dahuatech.icc.electricity.constant.ElectricityConstant;
import com.dahuatech.icc.electricity.model.v202208.airConditioner.ControlMultiRequest;
import com.dahuatech.icc.electricity.model.v202208.airConditioner.ControlMultiResponse;
import com.dahuatech.icc.exception.ClientException;
import com.dahuatech.icc.oauth.exception.BusinessException;
import com.dahuatech.icc.oauth.http.IccClient;
import com.dahuatech.icc.oauth.model.v202010.oSDK.OauthParamConstant;
/**
* program:java-sdk
*
* @Author: 355079
* @Date:2022-08-22 15:58
* @Description: 批量设置空调属性
*/
public class ControlMultiSDK {
private static final Log logger = LogFactory.get();
/**
* 批量设置空调属性
**/
public static ControlMultiResponse ControlMulti(ControlMultiRequest request) throws ClientException {
ControlMultiResponse response = null;
try {
//基本校验
request.valid();
//业务校验
request.businessValid();
request.setUrl(new ControlMultiRequest(request.getOauthConfigBaseInfo().getHttpConfigInfo(), ElectricityConstant.CONTROL_MULTI, request.getMethod()).getUrl());
//业务逻辑处理
response = new IccClient(request.getOauthConfigBaseInfo()).doAction(request, request.getResponseClass());
} catch (BusinessException businessException) {
logger.error("ControlMultiSDK,ControlMulti,errorMessage:{},errorArgs:{},errorCode:{}", businessException.getErrorMsg(), businessException.getArgs(), businessException.getCode());
response = new ControlMultiResponse();
response.setCode(businessException.getCode());
response.setErrMsg(businessException.getErrorMsg());
response.setArgs(businessException.getArgs());
response.setSuccess(false);
} catch (Exception e) {
logger.error("批量设置空调属性:{}", e, e.getMessage());
response.setErrMsg(OauthParamConstant.SYSTEME_RROR.getErrMsg());
response.setCode(OauthParamConstant.SYSTEME_RROR.getCode());
}
return response;
}
}