All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy