whyclj
2020-10-17 e163b7b3e4d5acc63cfda2fec2dd9034864ccf7a
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
package com.watersystem.monitor;
 
import java.io.Serializable;
import java.util.Date;
 
import com.modbus.data.MyModbusMaster;
import com.modbus.data.MyModbusUtils;
import com.serotonin.modbus4j.BatchRead;
import com.serotonin.modbus4j.BatchResults;
import com.serotonin.modbus4j.code.DataType;
 
public class Water_alarm implements Serializable{
    public int num;
    public int water_id;
    public int alarm_id;
    public Date alarm_starttime;
    public Date alarm_endtime;
    public int alarm_confirm;
    public Date alarm_confirmtime;
    public String note;
    
    public int Watersystem_Operation_Fault;
    public int Watersystem_BranchFlowTmp_Fault;
    public int Watersystem_Pre_Fault;
    public int Watersystem_Operation_highorlow;
    public int Watersystem_Tmp_highorlow;
    public int Watersystem_TmpFlow_highorlow;
    public int Watersystem_Flow_ighorlow;
    
    
    
    public Water_alarm(int water_id) {
        super();
        this.water_id = water_id;
    }
    public int getNum() {
        return num;
    }
    public void setNum(int num) {
        this.num = num;
    }
    public int getWater_id() {
        return water_id;
    }
    public void setWater_id(int water_id) {
        this.water_id = water_id;
    }
    public int getAlarm_id() {
        return alarm_id;
    }
    public void setAlarm_id(int alarm_id) {
        this.alarm_id = alarm_id;
    }
    public Date getAlarm_starttime() {
        return alarm_starttime;
    }
    public void setAlarm_starttime(Date alarm_starttime) {
        this.alarm_starttime = alarm_starttime;
    }
    public Date getAlarm_endtime() {
        return alarm_endtime;
    }
    public void setAlarm_endtime(Date alarm_endtime) {
        this.alarm_endtime = alarm_endtime;
    }
    public int getAlarm_confirm() {
        return alarm_confirm;
    }
    public void setAlarm_confirm(int alarm_confirm) {
        this.alarm_confirm = alarm_confirm;
    }
    public Date getAlarm_confirmtime() {
        return alarm_confirmtime;
    }
    public void setAlarm_confirmtime(Date alarm_confirmtime) {
        this.alarm_confirmtime = alarm_confirmtime;
    }
    public String getNote() {
        return note;
    }
    public void setNote(String note) {
        this.note = note;
    }
    @Override
    public String toString() {
        return "Water_alarm [num=" + num + ", water_id=" + water_id + ", alarm_id=" + alarm_id + ", alarm_starttime="
                + alarm_starttime + ", alarm_endtime=" + alarm_endtime + ", alarm_confirm=" + alarm_confirm
                + ", alarm_confirmtime=" + alarm_confirmtime + ", note=" + note + "]";
    }
    //¸ù¾Ý´¥·¢µÄ¹ÊÕÏÀàÐͲ»Í¬¹¹Ôì¹ÊÕ϶ÔÏó
    public static Water_alarm createWalarm(int water_id,int alarm_id) {
        Water_alarm water_alarm=new Water_alarm(water_id);
        water_alarm.setAlarm_id(alarm_id);
        water_alarm.setAlarm_starttime(new Date());
        water_alarm.setAlarm_endtime(new Date());
        water_alarm.setAlarm_confirmtime(new Date());
        water_alarm.setAlarm_confirm(0);
        return water_alarm;
    }
    
    /**
     * ´´½¨¶ÁÈ¡Êý¾Ý¼¯ºÏ
     * @param master
     * @return
     */
    public BatchRead<Integer> createBatchRead(MyModbusMaster master){
        BatchRead<Integer> batch = new BatchRead<Integer>();        
        batch.addLocator(0,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_Operation_Fault,DataType.TWO_BYTE_INT_UNSIGNED,master));//Àäȴϵͳ¸÷²¿¼þ¹ÊÕÏÐÅÏ¢
        batch.addLocator(1,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_BranchFlowTmp_Fault,DataType.TWO_BYTE_INT_UNSIGNED,master));//Àäȴϵͳ֧·Á÷Á¿/ζȹÊÕÏÐÅÏ¢        
        batch.addLocator(2,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_Pre_Fault ,DataType.TWO_BYTE_INT_UNSIGNED, master));//ÀäȴˮѹÁ¦¹ÊÕÏ
        batch.addLocator(3,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_Operation_highorlow,DataType.TWO_BYTE_INT_UNSIGNED, master));//Àäȴϵͳ¸÷²¿¼þµÍ/¸ß                            
        batch.addLocator(4,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_Tmp_highorlow,DataType.TWO_BYTE_INT_UNSIGNED, master));//Àäȴϵͳζȸß/³¬¸ß                                    
        batch.addLocator(5,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_TmpFlow_highorlow,DataType.TWO_BYTE_INT_UNSIGNED, master));//Àäȴϵͳ֧·Î¶È/Á÷Á¿µÍ/³¬µÍ                                
        batch.addLocator(6,MyModbusUtils.createBaseLocator(Watersystem_ModbusAddress.Watersystem_Flow_ighorlow,DataType.TWO_BYTE_INT_UNSIGNED, master));//ÀäÈ´Ë®²¿·Ö֧·Á÷Á¿µÍ/³¬µÍ                                
        return batch;
    }
    /**
     * ½âÎö·µ»ØÇëÇó
     * @param res
     */
    public void putBatchResult(BatchResults<Integer> res) {
        if(res != null) {
            this.Watersystem_Operation_Fault = MyModbusUtils.readIntergerToInt(res.getValue(0));    
            this.Watersystem_BranchFlowTmp_Fault = MyModbusUtils.readIntergerToInt(res.getValue(1));    
            this.Watersystem_Pre_Fault = MyModbusUtils.readIntergerToInt(res.getValue(2));    
            this.Watersystem_Operation_highorlow = MyModbusUtils.readIntergerToInt(res.getValue(3));
            //System.out.println("1296:"+this.Watersystem_Operation_highorlow);
            this.Watersystem_Tmp_highorlow = MyModbusUtils.readIntergerToInt(res.getValue(4));                
            this.Watersystem_TmpFlow_highorlow = MyModbusUtils.readIntergerToInt(res.getValue(5));            
            this.Watersystem_Flow_ighorlow = MyModbusUtils.readIntergerToInt(res.getValue(6));                
        }
    } 
 
}