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

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

There is a newer version: 1.0.13.10
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.authDept.AuthDoorRequest;
import com.dahuatech.icc.assesscontrol.model.v202103.authDept.AuthDoorResponse;
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;

/**
 * program:java-sdk
 *
 * Author: 312013
 * Date:2022-07-15 15:07
 * Description: 按门组授权
 */
public class AuthDoorSDK {

    private static final Log logger = LogFactory.get();

    /**
     * 按门组授权
     **/
    public AuthDoorResponse authDoor(AuthDoorRequest request) {

        AuthDoorResponse 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 AuthDoorResponse();
            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 AuthDoorResponse();
            response.setErrMsg(AccessControlConstant.SYSTEMERROR_MSG);
            response.setCode(AccessControlConstant.SYSTEMERROR_CODE);
            response.setSuccess(false);
        }
        return response;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy