XMTT 6 gadi atpakaļ
vecāks
revīzija
2cf21e043c

+ 87 - 0
src/main/java/com/ekexiu/project/bridge/envdata/EnvDataDao.java

@ -1,12 +1,31 @@
1 1
package com.ekexiu.project.bridge.envdata;
2 2
3
import org.jfw.apt.annotation.Nullable;
3 4
import org.jfw.apt.orm.annotation.dao.DAO;
5
import org.jfw.apt.orm.annotation.dao.method.Exclude;
6
import org.jfw.apt.orm.annotation.dao.method.From;
7
import org.jfw.apt.orm.annotation.dao.method.IncludeFixSet;
4 8
import org.jfw.apt.orm.annotation.dao.method.OrderBy;
9
import org.jfw.apt.orm.annotation.dao.method.Select;
10
import org.jfw.apt.orm.annotation.dao.method.SetSentence;
5 11
import org.jfw.apt.orm.annotation.dao.method.Where;
12
import org.jfw.apt.orm.annotation.dao.method.operator.Insert;
13
import org.jfw.apt.orm.annotation.dao.method.operator.PageSelect;
14
import org.jfw.apt.orm.annotation.dao.method.operator.QueryList;
6 15
import org.jfw.apt.orm.annotation.dao.method.operator.SelectList;
16
import org.jfw.apt.orm.annotation.dao.method.operator.SelectOne;
17
import org.jfw.apt.orm.annotation.dao.method.operator.Update;
18
import org.jfw.apt.orm.annotation.dao.method.operator.UpdateWith;
7 19
import org.jfw.apt.orm.annotation.dao.param.Alias;
20
import org.jfw.apt.orm.annotation.dao.param.GroupSqlColumn;
8 21
import org.jfw.apt.orm.annotation.dao.param.GtEq;
22
import org.jfw.apt.orm.annotation.dao.param.In;
23
import org.jfw.apt.orm.annotation.dao.param.Like;
9 24
import org.jfw.apt.orm.annotation.dao.param.LtEq;
25
import org.jfw.apt.orm.annotation.dao.param.Set;
26
import org.jfw.apt.orm.annotation.dao.param.SqlColumn;
27
import org.jfw.apt.orm.core.defaultImpl.StringHandler;
28
import org.jfw.util.PageQueryResult;
10 29
11 30
import java.sql.Connection;
12 31
import java.sql.SQLException;
@ -26,4 +45,72 @@ public interface EnvDataDao {
26 45
    @OrderBy("ORDER BY CREATE_TIME DESC")
27 46
    List<EnvData> query(Connection con, @GtEq @Alias("createTime")String bt,@LtEq @Alias("createTime") String et) throws SQLException;
28 47
48
    @Insert
49
    int insert(Connection con, EnvServer envServer) throws SQLException;
50
51
    @Insert
52
    int insert(Connection con, EnvTransducer envTransducer) throws SQLException;
53
54
    @UpdateWith
55
    @From(EnvServer.class)
56
    @SetSentence("active = '0'")
57
    @Where("active = '1")
58
    @IncludeFixSet("modifyTime")
59
    int logicDeleteServer(Connection con, @Set String modifier, String id) throws SQLException;
60
61
    @UpdateWith
62
    @From(EnvServer.class)
63
    @SetSentence("active = '0'")
64
    @Where("active = '1")
65
    @IncludeFixSet("modifyTime")
66
    int logicDeleteServerByBridge(Connection con, @Set String modifier,String bridgeId) throws SQLException;
67
68
    @UpdateWith
69
    @From(EnvTransducer.class)
70
    @SetSentence("active = '0'")
71
    @Where("active = '1")
72
    @IncludeFixSet("modifyTime")
73
    int logicDeleteTransducer(Connection con, @Set String modifier, String id) throws SQLException;
74
75
    @UpdateWith
76
    @From(EnvTransducer.class)
77
    @SetSentence("active = '0'")
78
    @Where("active = '1")
79
    @IncludeFixSet("modifyTime")
80
    int logicDeleteTranByServers(Connection con, @Set String modifier, @In String[] serverId) throws SQLException;
81
82
    @Update
83
    @Exclude("active")
84
    int update(Connection con, EnvServer envServer) throws SQLException;
85
86
    @Update
87
    @Exclude("active")
88
    int update(Connection con, EnvTransducer envTransducer) throws SQLException;
89
90
    @SelectList
91
    List<EnvServer> queryByBridge(Connection con,@Nullable Boolean active, String bridgeId) throws SQLException;
92
93
    @QueryList
94
    @From(EnvTransducer.class)
95
    @Select(EnvTransducer.class)
96
    List<EnvTranNew> queryByServer(Connection con,@Nullable Boolean active, @In String[] serverId) throws SQLException;
97
98
99
    @PageSelect
100
    @OrderBy("ORDER BY CODE")
101
    PageQueryResult<EnvServer> pageQuery(Connection con, @Nullable Boolean active, @Nullable @SqlColumn(handlerClass = StringHandler.class, value = {"BRIDGE_ID IN (SELECT ID FROM BRIDGE WHERE SHORT_NAME LIKE ?)"}) String key, @Nullable @Like String code, int pageSize, int pageNo) throws SQLException;
102
103
    @PageSelect
104
    @OrderBy("ORDER BY CODE")
105
    PageQueryResult<EnvTransducer> pageQuery(Connection con, @Nullable Boolean active, @Nullable @SqlColumn(handlerClass = StringHandler.class, value = {"ENV_SERVER_ID IN (SELECT ID FROM ENV_SERVER WHERE CODE LIKE ?)"}) String serverCode, @Nullable @GroupSqlColumn(handlerClass = StringHandler.class,value = {"ENV_SERVER_ID IN (SELECT ID FROM ENV_SERVER WHERE BRIDGE_ID IN {SELECT ID FROM BRIDGE WHERE SHORT_NAME LIKE ?})"}) String bridgeName,@Nullable String system, @Nullable Integer deviceId, int pageSize, int pageNo) throws SQLException;
106
107
    @SelectOne
108
    @Nullable
109
    EnvServer queryEnvServer(Connection con, String id) throws SQLException;
110
111
    @SelectOne
112
    @Nullable
113
    EnvTransducer queryEnvTransducer(Connection con, String id) throws SQLException;
114
115
29 116
}

+ 106 - 0
src/main/java/com/ekexiu/project/bridge/envdata/EnvDataService.java

@ -1,14 +1,25 @@
1 1
package com.ekexiu.project.bridge.envdata;
2 2
3
import com.ekexiu.project.bridge.system.vo.SessionUser;
3 4
import org.jfw.apt.annotation.Autowrie;
4 5
import org.jfw.apt.annotation.DefaultValue;
6
import org.jfw.apt.annotation.Nullable;
7
import org.jfw.apt.web.annotation.LoginUser;
5 8
import org.jfw.apt.web.annotation.Path;
6 9
import org.jfw.apt.web.annotation.operate.Get;
10
import org.jfw.apt.web.annotation.operate.Post;
7 11
import org.jfw.apt.web.annotation.param.JdbcConn;
12
import org.jfw.util.PageQueryResult;
13
import org.jfw.util.StringUtil;
14
import org.jfw.util.jdbc.JdbcUtil;
15
import org.jfw.util.jdbc.PreparedStatementConfig;
8 16
9 17
import java.sql.Connection;
18
import java.sql.PreparedStatement;
10 19
import java.sql.SQLException;
20
import java.util.HashMap;
11 21
import java.util.List;
22
import java.util.Map;
12 23
import java.util.concurrent.atomic.AtomicBoolean;
13 24
import java.util.concurrent.atomic.AtomicReference;
14 25
@ -68,4 +79,99 @@ public class EnvDataService {
68 79
    }
69 80
70 81
82
    @Path("/server")
83
    @Post
84
    public String insert(@JdbcConn(true)Connection con, @LoginUser SessionUser sessionUser, EnvServer envServer)throws SQLException {
85
        String id = StringUtil.buildUUID();
86
        envServer.setId(id);
87
        envServer.setActive(true);
88
        envServer.setCreator(sessionUser.getId());
89
        envServer.setModifier(sessionUser.getId());
90
        envDataDao.insert(con, envServer);
91
        return id;
92
    }
93
94
    @Path("/transducer")
95
    @Post
96
    public String insert(@JdbcConn(true)Connection con,@LoginUser SessionUser sessionUser,EnvTransducer envTransducer)throws SQLException {
97
        String id = StringUtil.buildUUID();
98
        envTransducer.setId(id);
99
        envTransducer.setActive(true);
100
        envTransducer.setCreator(sessionUser.getId());
101
        envTransducer.setModifier(sessionUser.getId());
102
        envDataDao.insert(con, envTransducer);
103
        return id;
104
    }
105
106
    @Path("/server/delete")
107
    @Get
108
    public void deleteServer(@JdbcConn(true)Connection con,@LoginUser SessionUser sessionUser,String id)throws SQLException {
109
        envDataDao.logicDeleteServer(con, sessionUser.getId(), id);
110
        String[] serverId = new String[1];
111
        serverId[0] = id;
112
        envDataDao.logicDeleteTranByServers(con, sessionUser.getId(), serverId);
113
    }
114
115
    @Path("/transducer/delete")
116
    @Get
117
    public void deleteTran(@JdbcConn(true)Connection con, @LoginUser SessionUser sessionUser,String id)throws SQLException {
118
        envDataDao.logicDeleteTransducer(con, sessionUser.getId(), id);
119
    }
120
121
    @Path("/server/pq")
122
    @Get
123
    public PageQueryResult<EnvServer> pageQuery(@JdbcConn Connection con, @Nullable Boolean active,@Nullable String key,@Nullable String code,int pageSize,int pageNo)throws SQLException {
124
        return envDataDao.pageQuery(con, active, key == null ? null : "%" + key + "%", code == null ? null : "%" + code + "%", pageSize, pageNo);
125
    }
126
127
    @Path("/transducer/pq")
128
    @Get
129
    public PageQueryResult<EnvTransducer> pageQuery(@JdbcConn Connection con,@Nullable Boolean active,@Nullable String serverCode,@Nullable String bridgeName,@Nullable String system,@Nullable Integer deviceId,int pageSize,int pageNo)throws SQLException {
130
        return envDataDao.pageQuery(con, active, serverCode == null ? null : "%" + serverCode + "%", bridgeName == null ? null : "%" + bridgeName + "%", system, deviceId, pageSize, pageNo);
131
    }
132
133
    @Path("/server/qo")
134
    @Get
135
    public EnvServer queryServer(@JdbcConn Connection con,String id)throws SQLException {
136
        return envDataDao.queryEnvServer(con, id);
137
    }
138
139
    @Path("/transducer/qo")
140
    @Get
141
    public EnvTransducer queryTransducer(@JdbcConn Connection con,String id)throws SQLException {
142
        return envDataDao.queryEnvTransducer(con, id);
143
    }
144
145
    @Path("/all/byBridge")
146
    @Get
147
    @LoginUser
148
    public Map<String,Object> queryAll(@JdbcConn Connection con,@Nullable Boolean active,String bridgeId)throws SQLException {
149
        Map<String, Object> result = new HashMap<>();
150
        List<EnvServer> servers = envDataDao.queryByBridge(con, active, bridgeId);
151
        result.put("server", servers);
152
        if (servers.size() > 0) {
153
            String[] serverIds = new String[servers.size()];
154
            for (int i = 0; i < servers.size(); ++i) {
155
                serverIds[i] = servers.get(i).getId();
156
            }
157
            List<EnvTranNew> transducers = envDataDao.queryByServer(con, active, serverIds);
158
            for (EnvTranNew transducer : transducers) {
159
                final int id = transducer.getSeq();
160
                transducer.setValue(JdbcUtil.queryDouble(con, "select * from env_data WHERE item_id = ? ORDER BY create_time desc limit 1", new PreparedStatementConfig() {
161
                    @Override
162
                    public void config(PreparedStatement preparedStatement) throws SQLException {
163
                        preparedStatement.setInt(1,id);
164
                    }
165
                },0));
166
            }
167
            result.put("transducer", transducers);
168
        } else {
169
            result.put("transducer", servers);
170
        }
171
        return result;
172
    }
173
174
175
176
71 177
}

+ 122 - 0
src/main/java/com/ekexiu/project/bridge/envdata/EnvServer.java

@ -0,0 +1,122 @@
1
package com.ekexiu.project.bridge.envdata;
2
3
import com.ekexiu.project.bridge.base.po.BaseTable;
4
import org.jfw.apt.orm.annotation.entry.Column;
5
import org.jfw.apt.orm.annotation.entry.PrimaryKey;
6
import org.jfw.apt.orm.annotation.entry.Table;
7
import org.jfw.apt.orm.core.enums.DE;
8
9
/**
10
 * Created by TT on 2019/3/18.
11
 */
12
@PrimaryKey("id")
13
@Table(descp = "除湿系统采集服务器")
14
public class EnvServer implements BaseTable {
15
    private String id;
16
    private String code;
17
    private String seq;
18
    private String bridgeId;
19
    private String ipAddress;
20
    private String remark;
21
    private boolean active;
22
23
    private String createTime;
24
    private String modifyTime;
25
    private String creator;
26
    private String modifier;
27
28
    @Column(descp = "id", value = DE.id_32)
29
    public String getId() {
30
        return id;
31
    }
32
33
    public void setId(String id) {
34
        this.id = id;
35
    }
36
37
    @Column(descp = "采集服务器编号", value = DE.text_de)
38
    public String getCode() {
39
        return code;
40
    }
41
42
    public void setCode(String code) {
43
        this.code = code;
44
    }
45
46
    @Column(descp = "内部编号", value = DE.text_de)
47
    public String getSeq() {
48
        return seq;
49
    }
50
51
    public void setSeq(String seq) {
52
        this.seq = seq;
53
    }
54
55
    @Column(descp = "采集服务器所属桥梁Id", value = DE.text_de)
56
    public String getBridgeId() {
57
        return bridgeId;
58
    }
59
60
    public void setBridgeId(String bridgeId) {
61
        this.bridgeId = bridgeId;
62
    }
63
64
    @Column(descp = "采集服务器ip", value = DE.text_de)
65
    public String getIpAddress() {
66
        return ipAddress;
67
    }
68
69
    public void setIpAddress(String ipAddress) {
70
        this.ipAddress = ipAddress;
71
    }
72
73
    @Column(descp = "备注", value = DE.Text_de)
74
    public String getRemark() {
75
        return remark;
76
    }
77
78
    public void setRemark(String remark) {
79
        this.remark = remark;
80
    }
81
82
    @Column(descp = "是否可用", value = DE.boolean_de)
83
    public boolean isActive() {
84
        return active;
85
    }
86
87
    public void setActive(boolean active) {
88
        this.active = active;
89
    }
90
91
    public String getCreateTime() {
92
        return createTime;
93
    }
94
95
    public void setCreateTime(String createTime) {
96
        this.createTime = createTime;
97
    }
98
99
    public String getModifyTime() {
100
        return modifyTime;
101
    }
102
103
    public void setModifyTime(String modifyTime) {
104
        this.modifyTime = modifyTime;
105
    }
106
107
    public String getCreator() {
108
        return creator;
109
    }
110
111
    public void setCreator(String creator) {
112
        this.creator = creator;
113
    }
114
115
    public String getModifier() {
116
        return modifier;
117
    }
118
119
    public void setModifier(String modifier) {
120
        this.modifier = modifier;
121
    }
122
}

+ 16 - 0
src/main/java/com/ekexiu/project/bridge/envdata/EnvTranNew.java

@ -0,0 +1,16 @@
1
package com.ekexiu.project.bridge.envdata;
2
3
/**
4
 * Created by TT on 2019/3/19.
5
 */
6
public class EnvTranNew extends EnvTransducer {
7
    private Double value;
8
9
    public Double getValue() {
10
        return value;
11
    }
12
13
    public void setValue(Double value) {
14
        this.value = value;
15
    }
16
}

+ 174 - 0
src/main/java/com/ekexiu/project/bridge/envdata/EnvTransducer.java

@ -0,0 +1,174 @@
1
package com.ekexiu.project.bridge.envdata;
2
3
import com.ekexiu.project.bridge.base.po.BaseTable;
4
import org.jfw.apt.orm.annotation.entry.Column;
5
import org.jfw.apt.orm.annotation.entry.PrimaryKey;
6
import org.jfw.apt.orm.annotation.entry.Table;
7
import org.jfw.apt.orm.core.enums.DE;
8
9
/**
10
 * Created by TT on 2019/3/18.
11
 */
12
@PrimaryKey("id")
13
@Table(descp = "传感器")
14
public class EnvTransducer implements BaseTable {
15
16
    private String id;
17
    private String serverId;
18
    private String system;
19
    private int organize;
20
    private int deviceId;
21
    private int seq;
22
    private String name;
23
    private String position;
24
    private String cableType;
25
    private String unit;
26
    private String remark;
27
    private boolean active;
28
29
    private String createTime;
30
    private String modifyTime;
31
    private String creator;
32
    private String modifier;
33
34
    @Column(descp = "id", value = DE.id_32)
35
    public String getId() {
36
        return id;
37
    }
38
39
    public void setId(String id) {
40
        this.id = id;
41
    }
42
43
    @Column(descp = "所属服务器ID", value = DE.text_de)
44
    public String getServerId() {
45
        return serverId;
46
    }
47
48
    public void setServerId(String serverId) {
49
        this.serverId = serverId;
50
    }
51
52
    @Column(descp = "所属系统", value = DE.text_de)
53
    public String getSystem() {
54
        return system;
55
    }
56
57
    public void setSystem(String system) {
58
        this.system = system;
59
    }
60
61
    @Column(descp = "所属组", value = DE.int_de)
62
    public int getOrganize() {
63
        return organize;
64
    }
65
66
    public void setOrganize(int organize) {
67
        this.organize = organize;
68
    }
69
70
71
    @Column(descp = "传感器编号", value = DE.int_de)
72
    public int getDeviceId() {
73
        return deviceId;
74
    }
75
76
    public void setDeviceId(int deviceId) {
77
        this.deviceId = deviceId;
78
    }
79
80
    @Column(descp = "内部编号", value = DE.int_de)
81
    public int getSeq() {
82
        return seq;
83
    }
84
85
    public void setSeq(int seq) {
86
        this.seq = seq;
87
    }
88
89
    @Column(descp = "名称", value = DE.text_de)
90
    public String getName() {
91
        return name;
92
    }
93
94
    public void setName(String name) {
95
        this.name = name;
96
    }
97
98
    @Column(descp = "所属方位", value = DE.text_de)
99
    public String getPosition() {
100
        return position;
101
    }
102
103
    public void setPosition(String position) {
104
        this.position = position;
105
    }
106
107
    @Column(descp = "所属主缆", value = DE.text_de)
108
    public String getCableType() {
109
        return cableType;
110
    }
111
112
    public void setCableType(String cableType) {
113
        this.cableType = cableType;
114
    }
115
116
    @Column(descp = "数据单位", value = DE.text_de)
117
    public String getUnit() {
118
        return unit;
119
    }
120
121
    public void setUnit(String unit) {
122
        this.unit = unit;
123
    }
124
125
    @Column(descp = "备注", value = DE.Text_de)
126
    public String getRemark() {
127
        return remark;
128
    }
129
130
    public void setRemark(String remark) {
131
        this.remark = remark;
132
    }
133
134
    @Column(descp = "是否可用", value = DE.boolean_de)
135
    public boolean isActive() {
136
        return active;
137
    }
138
139
    public void setActive(boolean active) {
140
        this.active = active;
141
    }
142
143
    public String getCreateTime() {
144
        return createTime;
145
    }
146
147
    public void setCreateTime(String createTime) {
148
        this.createTime = createTime;
149
    }
150
151
    public String getModifyTime() {
152
        return modifyTime;
153
    }
154
155
    public void setModifyTime(String modifyTime) {
156
        this.modifyTime = modifyTime;
157
    }
158
159
    public String getCreator() {
160
        return creator;
161
    }
162
163
    public void setCreator(String creator) {
164
        this.creator = creator;
165
    }
166
167
    public String getModifier() {
168
        return modifier;
169
    }
170
171
    public void setModifier(String modifier) {
172
        this.modifier = modifier;
173
    }
174
}

+ 22 - 0
src/main/java/com/ekexiu/project/bridge/resource/service/BridgeService.java

@ -1,5 +1,7 @@
1 1
package com.ekexiu.project.bridge.resource.service;
2 2
3
import com.ekexiu.project.bridge.envdata.EnvDataDao;
4
import com.ekexiu.project.bridge.envdata.EnvServer;
3 5
import com.ekexiu.project.bridge.resource.dao.BridgeDao;
4 6
import com.ekexiu.project.bridge.resource.dao.BridgeServerDao;
5 7
import com.ekexiu.project.bridge.resource.dao.CollectDeviceDao;
@ -52,6 +54,8 @@ public class BridgeService {
52 54
    private CollectDeviceDao collectDeviceDao;
53 55
    @Autowrie
54 56
    private TransducerDao transducerDao;
57
    @Autowrie
58
    private EnvDataDao envDataDao;
55 59
56 60
    public BridgeDao getBridgeDao() {
57 61
        return bridgeDao;
@ -85,6 +89,14 @@ public class BridgeService {
85 89
        this.transducerDao = transducerDao;
86 90
    }
87 91
92
    public EnvDataDao getEnvDataDao() {
93
        return envDataDao;
94
    }
95
96
    public void setEnvDataDao(EnvDataDao envDataDao) {
97
        this.envDataDao = envDataDao;
98
    }
99
88 100
    public File getImgPath() {
89 101
        return imgPath;
90 102
    }
@ -208,6 +220,16 @@ public class BridgeService {
208 220
                this.transducerDao.logicDeleteByDevices(con, sessionUser.getId(), deviceId);
209 221
            }
210 222
        }
223
224
        this.envDataDao.logicDeleteServerByBridge(con, sessionUser.getId(), id);
225
        List<EnvServer> envServers = this.envDataDao.queryByBridge(con,null, id);
226
        if (envServers.size() > 0) {
227
            String[] envServerIds = new String[envServers.size()];
228
            for (int i = 0; i < envServers.size(); i++) {
229
                envServerIds[i] = envServers.get(i).getId();
230
            }
231
            this.envDataDao.logicDeleteTranByServers(con, sessionUser.getId(), envServerIds);
232
        }
211 233
    }
212 234
213 235
    @Post

+ 67 - 1
src/main/resources/database.sql

@ -3742,4 +3742,70 @@ CREATE TABLE "public"."env_id_dict" (
3742 3742
        "caption" text COLLATE "default" NOT NULL,
3743 3743
        "unit" text COLLATE "default" NOT NULL,
3744 3744
        CONSTRAINT "env_id_dict_pk" UNIQUE ("item_id")
3745
)
3745
);
3746

3747

3748

3749
----除湿系统
3750

3751
CREATE TABLE ENV_SERVER (
3752
        ID CHAR(32) NOT NULL,
3753
        CODE TEXT NOT NULL,
3754
        SEQ TEXT NOT NULL,
3755
        BRIDGE_ID TEXT NOT NULL,
3756
        IP_ADDRESS TEXT NOT NULL,
3757
        REMARK TEXT,
3758
        ACTIVE CHAR(1) NOT NULL,
3759
        CREATE_TIME CHAR(14) NOT NULL,
3760
        MODIFY_TIME CHAR(14) NOT NULL,
3761
        CREATOR CHAR(32) NOT NULL,
3762
        MODIFIER CHAR(32) NOT NULL);
3763
ALTER TABLE ENV_SERVER ADD PRIMARY KEY (ID);
3764
COMMENT ON TABLE ENV_SERVER IS '除湿系统采集服务器';
3765
COMMENT ON COLUMN ENV_SERVER.ID IS 'id';
3766
COMMENT ON COLUMN ENV_SERVER.CODE IS '采集服务器编号';
3767
COMMENT ON COLUMN ENV_SERVER.SEQ IS '内部编号';
3768
COMMENT ON COLUMN ENV_SERVER.BRIDGE_ID IS '采集服务器所属桥梁Id';
3769
COMMENT ON COLUMN ENV_SERVER.IP_ADDRESS IS '采集服务器ip';
3770
COMMENT ON COLUMN ENV_SERVER.REMARK IS '备注';
3771
COMMENT ON COLUMN ENV_SERVER.ACTIVE IS '是否可用';
3772
COMMENT ON COLUMN ENV_SERVER.CREATE_TIME IS '创建时间(YYYYMMDDHH24MISS)不可修改';
3773
COMMENT ON COLUMN ENV_SERVER.MODIFY_TIME IS '最后修改时间(YYYYMMDDHH24MISS),初始值:20000101010101';
3774
COMMENT ON COLUMN ENV_SERVER.CREATOR IS '创建人ID';
3775
COMMENT ON COLUMN ENV_SERVER.MODIFIER IS '最后修改人ID';
3776

3777
CREATE TABLE ENV_TRANSDUCER (
3778
        ID CHAR(32) NOT NULL,
3779
        SERVER_ID TEXT NOT NULL,
3780
        SYSTEM TEXT NOT NULL,
3781
        ORGANIZE INTEGER NOT NULL,
3782
        DEVICE_ID INTEGER NOT NULL,
3783
        SEQ INTEGER NOT NULL,
3784
        NAME TEXT NOT NULL,
3785
        POSITION TEXT NOT NULL,
3786
        CABLE_TYPE TEXT NOT NULL,
3787
        UNIT TEXT NOT NULL,
3788
        REMARK TEXT,
3789
        ACTIVE CHAR(1) NOT NULL,
3790
        CREATE_TIME CHAR(14) NOT NULL,
3791
        MODIFY_TIME CHAR(14) NOT NULL,
3792
        CREATOR CHAR(32) NOT NULL,
3793
        MODIFIER CHAR(32) NOT NULL);
3794
ALTER TABLE ENV_TRANSDUCER ADD PRIMARY KEY (ID);
3795
COMMENT ON TABLE ENV_TRANSDUCER IS '传感器';
3796
COMMENT ON COLUMN ENV_TRANSDUCER.ID IS 'id';
3797
COMMENT ON COLUMN ENV_TRANSDUCER.SERVER_ID IS '所属服务器ID';
3798
COMMENT ON COLUMN ENV_TRANSDUCER.SYSTEM IS '所属系统';
3799
COMMENT ON COLUMN ENV_TRANSDUCER.ORGANIZE IS '所属组';
3800
COMMENT ON COLUMN ENV_TRANSDUCER.DEVICE_ID IS '传感器编号';
3801
COMMENT ON COLUMN ENV_TRANSDUCER.SEQ IS '内部编号';
3802
COMMENT ON COLUMN ENV_TRANSDUCER.NAME IS '名称';
3803
COMMENT ON COLUMN ENV_TRANSDUCER.POSITION IS '所属方位';
3804
COMMENT ON COLUMN ENV_TRANSDUCER.CABLE_TYPE IS '所属主缆';
3805
COMMENT ON COLUMN ENV_TRANSDUCER.UNIT IS '数据单位';
3806
COMMENT ON COLUMN ENV_TRANSDUCER.REMARK IS '备注';
3807
COMMENT ON COLUMN ENV_TRANSDUCER.ACTIVE IS '是否可用';
3808
COMMENT ON COLUMN ENV_TRANSDUCER.CREATE_TIME IS '创建时间(YYYYMMDDHH24MISS)不可修改';
3809
COMMENT ON COLUMN ENV_TRANSDUCER.MODIFY_TIME IS '最后修改时间(YYYYMMDDHH24MISS),初始值:20000101010101';
3810
COMMENT ON COLUMN ENV_TRANSDUCER.CREATOR IS '创建人ID';
3811
COMMENT ON COLUMN ENV_TRANSDUCER.MODIFIER IS '最后修改人ID';