DELL
2025-02-07 351bbd8738c89c0302465360c1ca0c92abd18eba
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
package com.dev.lock.data;
 
import java.util.Date;
 
/**
 * 
 */
public class ElectLock_RecordState {
    
    public static final int Lock_State_Close = 0;  //锁具状态-关
    public static final int Lock_State_Open     = 1;  //锁具状态-开
    
    public boolean isNeedRecord = false;              //是否需要记录历史数据
 
    public Date record_time;        //'记录时间',
    
    public int lock_state;        //'锁具状态[0-闭锁  1-开锁]',
    public int unlock_type;        //'上一次开锁方式[0-485开锁 1-刷卡开锁 2-蓝牙开锁 3-DI开锁]',
    public int unlock_id;        //'上一次刷开开锁卡号[仅刷ID卡开锁时有效]',
    
    public int last_lock_state;        //上一次锁具状态
    
    public ElectLock_RecordState(){
        
    }
    
    public ElectLock_RecordState clone() {
        ElectLock_RecordState state = new ElectLock_RecordState();
        state.isNeedRecord = false;              //是否需要记录历史数据
 
        state.record_time = new Date(this.record_time.getTime());        //'记录时间',
        
        state.lock_state = this.lock_state;                //'锁具状态[0-闭锁  1-开锁]',
        state.unlock_type = this.unlock_type;            //'上一次开锁方式[0-485开锁 1-刷卡开锁 2-蓝牙开锁 3-DI开锁]',
        state.unlock_id = this.unlock_id;                //'上一次刷开开锁卡号[仅刷ID卡开锁时有效]',
        state.last_lock_state = this.last_lock_state;    //上一次锁具状态
        return state;
    }
    
    public void calNewOpenEvent() {
        
        
    }
    
    
    
    
    /**
     * 更新当前锁具状态
     * @param state
     */
    public void setLockState(ElectLock_State state) {
        
        this.lock_state = state.getLock_state();
        this.unlock_type = state.getUnlock_type();
        this.unlock_id = state.getUnlock_id();
        
        
    }
 
    public boolean checkIfDataNeedStore() {
        if(last_lock_state != lock_state) {
            //状态变化时间
            record_time = new Date();
            isNeedRecord = true;
        }else {
            isNeedRecord = false;
        }
        return isNeedRecord;
    }
 
    
    /**
     *     记录数据完成
     */
    public void RecordHisOK() {
        this.last_lock_state = this.lock_state;
    }
    
    
}