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

com.dahuatech.icc.assesscontrol.model.v202103.SDK.DoorGroupDetailSDK 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.doorGroup.DoorGroupDetailRequest;
import com.dahuatech.icc.assesscontrol.model.v202103.doorGroup.DoorGroupDetailResponse;
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-18 10:04
 * Description: 门组详情
 */
public class DoorGroupDetailSDK {
    private static final Log logger = LogFactory.get();

    /**
     * 门组详情
     **/
    public DoorGroupDetailResponse doorGroupDetail(DoorGroupDetailRequest request) {

        DoorGroupDetailResponse response = null;

        try{
            //基本校验
            request.valid();
            //业务校验
            request.businessValid();
            setUrl(request);
            //业务逻辑处理
            response =  new IccClient(request.getOauthConfigBaseInfo()).doAction(request, request.getResponseClass());
        }catch (BusinessException businessException){
            logger.error("门组详情:{}",businessException,businessException.getMessage());
            response = new DoorGroupDetailResponse();
            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 DoorGroupDetailResponse();
            response.setErrMsg(AccessControlConstant.SYSTEMERROR_MSG);
            response.setCode(AccessControlConstant.SYSTEMERROR_CODE);
            response.setSuccess(false);
        }
        return response;
    }

    public void setUrl(DoorGroupDetailRequest request){
        request.setUrl(request.getOauthConfigBaseInfo().getHttpConfigInfo().getPrefixUrl() + request.getUrl().substring(8));
        if(request.getId() != null){
            request.setUrl(request.getUrl().replace("${id}", String.valueOf(request.getId())));
        }else{
            request.setUrl(request.getUrl().replace("${id}", ""));
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy