1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package com.netsdk.lib.structure;
 
import com.netsdk.lib.NetSDKLib;
 
import java.util.Arrays;
 
import static com.netsdk.lib.constant.SDKStructureFieldLenth.MAX_ADDRESS_LEN;
import static com.netsdk.lib.constant.SDKStructureFieldLenth.MAX_PASSWORD_LEN;
 
/**
 * @author 47081
 * @version 1.0
 * @description 门禁基本配置
 * @date 2021/2/7
 */
public class CFG_ACCESS_GENERAL_INFO extends NetSDKLib.SdkStructure {
  /** 开门音频文件路径 */
  public byte[] szOpenDoorAudioPath = new byte[MAX_ADDRESS_LEN];
  /** 关门音频文件路径 */
  public byte[] szCloseDoorAudioPath = new byte[MAX_ADDRESS_LEN];
  /** 有人音频文件路径 */
  public byte[] szInUsedAuidoPath = new byte[MAX_ADDRESS_LEN];
  /** 暂停使用音频文件路径 */
  public byte[] szPauseUsedAudioPath = new byte[MAX_ADDRESS_LEN];
  /** 门未关音频文件路径 */
  public byte[] szNotClosedAudioPath = new byte[MAX_ADDRESS_LEN];
  /** 等待提示音频文件路径 */
  public byte[] szWaitingAudioPath = new byte[MAX_ADDRESS_LEN];
  /** 开锁命令响应间隔时间,单位秒,取值10、15(默认值)、20 */
  public int nUnlockReloadTime;
  /** 开锁输出保持时间,单位秒,取值1、2(默认)、3、4、5、6、9、15。 */
  public int nUnlockHoldTime;
 
  // 能力,bool对应java中byte
  public byte abProjectPassword;
  public byte abAccessProperty;
  public byte abABLockInfo;
  public byte byReserved;
 
  /** 工程密码 */
  public byte[] szProjectPassword = new byte[MAX_PASSWORD_LEN];
  /** 门禁通道单双向配置,对应枚举{@link com.netsdk.lib.enumeration.CFG_ACCESS_PROPERTY_TYPE} */
  public int emAccessProperty;
  /** AB互锁信息 */
  public CFG_ABLOCK_INFO stuABLockInfo;
  /** 胁迫密码 */
  public byte[] szDuressPassword = new byte[MAX_PASSWORD_LEN];
  /** 胁迫使能 */
  public boolean bDuressEnable;
  /** 是否启用个性化密码 */
  public boolean bCustomPasswordEnable;
  /** 公共密码 */
  public byte[] szCommonPassword = new byte[MAX_PASSWORD_LEN];
  /** 梯控高峰时间段, 值为CFG_ACCESS_TIMESCHEDULE_INFO配置的数组下标 */
  public int nPeakTimeSection;
  /** 是否为梯控高峰期, TRUE:高峰期, FALSE:平峰期 */
  public boolean bPeakState;
  /** 远程校验超时时间,单位:秒, 默认值:5秒,范围[1-15] */
  public int nRemoteAuthTimeOut;
  /** 楼层权限信息,每一个bit对应一个楼层,bit值1表示公共层,0表示权限楼层 */
  public byte[] arrFloorPermission = new byte[64];
  /** arrFloorPermission 数组个数 */
  public int nFloorPermission;
  /** 门通道控制闸机参数 */
  public CFG_ACCESS_CONTROL_ASG stuAccessControlASG;
  /** 门禁开门提示音 */
  public CFG_ACCESS_VOICE stuAccessVoice;
  /** 
   * 门磁类型,参考{ @link EM_ACCESS_SENSOR_TYPE }
   */
  public int        emSensorType;                
  /** 保留字节 */
  public byte[]            szReserved= new byte[1120];        
 
  @Override
  public String toString() {
    return "CFG_ACCESS_GENERAL_INFO{" +
            "szOpenDoorAudioPath=" + Arrays.toString(szOpenDoorAudioPath) +
            ", szCloseDoorAudioPath=" + Arrays.toString(szCloseDoorAudioPath) +
            ", szInUsedAuidoPath=" + Arrays.toString(szInUsedAuidoPath) +
            ", szPauseUsedAudioPath=" + Arrays.toString(szPauseUsedAudioPath) +
            ", szNotClosedAudioPath=" + Arrays.toString(szNotClosedAudioPath) +
            ", szWaitingAudioPath=" + Arrays.toString(szWaitingAudioPath) +
            ", nUnlockReloadTime=" + nUnlockReloadTime +
            ", nUnlockHoldTime=" + nUnlockHoldTime +
            ", abProjectPassword=" + abProjectPassword +
            ", abAccessProperty=" + abAccessProperty +
            ", abABLockInfo=" + abABLockInfo +
            ", byReserved=" + byReserved +
            ", szProjectPassword=" + Arrays.toString(szProjectPassword) +
            ", emAccessProperty=" + emAccessProperty +
            ", stuABLockInfo=" + stuABLockInfo +
            ", szDuressPassword=" + Arrays.toString(szDuressPassword) +
            ", bDuressEnable=" + bDuressEnable +
            ", bCustomPasswordEnable=" + bCustomPasswordEnable +
            ", szCommonPassword=" + Arrays.toString(szCommonPassword) +
            ", nPeakTimeSection=" + nPeakTimeSection +
            ", bPeakState=" + bPeakState +
            ", nRemoteAuthTimeOut=" + nRemoteAuthTimeOut +
            ", arrFloorPermission=" + Arrays.toString(arrFloorPermission) +
            ", nFloorPermission=" + nFloorPermission +
            ", stuAccessControlASG=" + stuAccessControlASG +
            ", stuAccessVoice=" + stuAccessVoice +
            '}';
  }
}