jiazx0107@163.com
2023-08-22 6d847ba021fb494051ec710810a45fa8084f90ed
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
package com.ld.igds.protocol.modbus.data;
 
import com.ld.igds.constant.Constant;
import lombok.Data;
 
/**
 * @Desc: 用于封装ModBUsTCP的信息
 * @author: andy.jia
 * @update-time: 2023/8/12 15:29
 */
@Data
public class ModbusTcp {
 
 
    private String companyId;
    
    private String deviceCode;
 
    private String serId;
 
    private String ip;
 
    private int port;
 
    /**
     * 开地址
     **/
    private String addrOpen = Constant.YN_N;
 
    /**
     * 关地址
     **/
    private String addrClose = Constant.YN_N;
 
    /**
     * 停地址
     **/
    private String addrStop = Constant.YN_N;
 
    /**
     * 开到位地址
     **/
    private String addrOpenEnd = Constant.YN_N;
 
    /**
     * 关到位地址
     **/
    private String addrCloseEnd = Constant.YN_N;
 
    /**
     * 开故障地址
     **/
    private String addrOpenError = Constant.YN_N;
 
    /**
     * 关故障地址
     **/
    private String addrCloseError = Constant.YN_N;
 
    private int addrExe = 65535;
 
 
    public ModbusTcp() {
        super();
    }
 
    public ModbusTcp(String modbusStr) {
        //modbus规则:开地址-关地址-停地址-开到位-关到位-开故障-关故障,无地址用N代替
        String[] addr = modbusStr.split("-");
        this.addrOpen = addr[0];
        this.addrClose = addr[1];
        this.addrStop = addr[2];
        this.addrOpenEnd = addr[3];
        this.addrCloseEnd = addr[4];
        this.addrOpenError = addr[5];
        this.addrCloseError = addr[6];
    }
//
//    public ModbusTcp(String modbusStr) {
//        //modbus规则:开地址-关地址-停地址-开到位-关到位-开故障-关故障,无地址用N代替
//        String[] addr = modbusStr.split("-");
//        String temp = addr[0];
//        if (!Constant.YN_N.equals(temp)) this.addrOpen = temp;
//        temp = addr[1];
//        if (!Constant.YN_N.equals(temp)) this.addrClose = temp;
//        temp = addr[2];
//        if (!Constant.YN_N.equals(temp)) this.addrStop = temp;
//        temp = addr[3];
//        if (!Constant.YN_N.equals(temp)) this.addrOpenEnd = temp;
//        temp = addr[4];
//        if (!Constant.YN_N.equals(temp)) this.addrCloseEnd = temp;
//        temp = addr[5];
//        if (!Constant.YN_N.equals(temp)) this.addrOpenError = temp;
//        temp = addr[6];
//        if (!Constant.YN_N.equals(temp)) this.addrCloseError = temp;
//    }
}