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

com.dahuatech.icc.assesscontrol.model.v202103.SDK.ChannelControlStayOpenSDK Maven / Gradle / Ivy

There is a newer version: 1.0.13.7
Show newest version
package com.dahuatech.icc.assesscontrol.model.v202103.SDK;

import com.dahuatech.hutool.log.Log;
import com.dahuatech.hutool.log.LogFactory;
import com.dahuatech.icc.assesscontrol.constant.AccessControlConstant;
import com.dahuatech.icc.assesscontrol.model.v202103.channelControl.ChannelControlStayOpenRequest;
import com.dahuatech.icc.assesscontrol.model.v202103.channelControl.ChannelControlStayOpenResponse;
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.OauthConfigBaseInfo;
import com.dahuatech.icc.oauth.model.v202010.OauthConfigUserPwdInfo;

import java.util.Arrays;

/**
 * program:java-sdk
 *
 * Author: 312013
 * Date:2022-07-18 09:46
 * Description: 门通道控制常开
 */
public class ChannelControlStayOpenSDK {
    private static final Log logger = LogFactory.get();

    /**
     * 门通道控制常开
     **/
    public ChannelControlStayOpenResponse channelControlStayOpen(ChannelControlStayOpenRequest request) {

        ChannelControlStayOpenResponse response = null;

        try{
            //基本校验
            request.valid();
            //业务校验
            request.businessValid();
            //设置URL
            request.setUrl(request.getOauthConfigBaseInfo().getHttpConfigInfo().getPrefixUrl() + request.getUrl().substring(8));
            //业务逻辑处理
            response =  new IccClient(request.getOauthConfigBaseInfo()).doAction(request, request.getResponseClass());
        }catch (BusinessException businessException){
            logger.error("门通道控制常开:{}",businessException,businessException.getMessage());
            response = new ChannelControlStayOpenResponse();
            response.setCode(businessException.getCode());
            response.setErrMsg(businessException.getErrorMsg());
            response.setArgs(businessException.getArgs());
            response.setSuccess(false);
        }catch (Exception e){
            logger.error("门通道控制常开:{}",e,e.getMessage());
            response = new ChannelControlStayOpenResponse();
            response.setErrMsg(AccessControlConstant.SYSTEMERROR_MSG);
            response.setCode(AccessControlConstant.SYSTEMERROR_CODE);
            response.setSuccess(false);
        }
        return response;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy