com.dahuatech.icc.electricity.model.v202208.SDK.EnergyCountAppSDK 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.energy.EnergyCountAppRequest;
import com.dahuatech.icc.electricity.model.v202208.energy.EnergyCountAppResponse;
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 11:10
* @Description: APP端用电统计
*/
public class EnergyCountAppSDK {
private static final Log logger = LogFactory.get();
/**
* APP端用电统计
**/
public static EnergyCountAppResponse EnergyCountApp(EnergyCountAppRequest request) throws ClientException {
EnergyCountAppResponse response = null;
try {
//基本校验
request.valid();
//业务校验
request.businessValid();
request.setUrl(new EnergyCountAppRequest(request.getOauthConfigBaseInfo().getHttpConfigInfo(), ElectricityConstant.ENERGY_COUNT_APP, request.getMethod()).getUrl());
//业务逻辑处理
response = new IccClient(request.getOauthConfigBaseInfo()).doAction(request, request.getResponseClass());
} catch (BusinessException businessException) {
logger.error("EnergyCountAppSDK,EnergyCountApp,errorMessage:{},errorArgs:{},errorCode:{}", businessException.getErrorMsg(), businessException.getArgs(), businessException.getCode());
response = new EnergyCountAppResponse();
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;
}
}