update modbus db and view

This commit is contained in:
Jay
2017-03-28 13:53:16 +08:00
parent 52e18de9ac
commit eeead43baf
10 changed files with 110 additions and 33 deletions
+18 -7
View File
@@ -96,12 +96,14 @@ router
if (!arr.data.name) return n('ERR0026');
if (!('node' in arr.data)) return n('ERR0038');
let type = arr.data.type && isFinite(arr.data.type) ? arr.data.type : 0;
let u = '';
let obj = so.get(req.headers['x-auth-token']);
if (obj != null && 'user' in obj && 'account' in obj.user) u = obj.user.account;
let query = "insert into ??.?? (`name`, `node`, `adduser`, `moduser`, `ctime`, `mtime`) values (?,?,?,?, unix_timestamp(), unix_timestamp())";
let param = [config.db.db5, 'device', arr.data.name, arr.data.node, u, u];
let query = "insert into ??.?? (`name`, `node`, `type`, `adduser`, `moduser`, `ctime`, `mtime`) values (?,?,?,?,?, unix_timestamp(), unix_timestamp())";
let param = [config.db.db5, 'device', arr.data.name, arr.data.node, type, u, u];
res.db.query(query, param, (err, row) => {
if (err) return n('ERR8001');
@@ -122,6 +124,8 @@ router
if (!arr.data.name) return n('ERR0026');
if (!('node' in arr.data) || !('original_node' in arr.data)) return n('ERR0038');
let type = arr.data.type && isFinite(arr.data.type) ? arr.data.type : 0;
let query = "select count(*) as num from ??.?? where `node` = ? and `uid` != ?";
let param = [config.db.db5, 'device', arr.data.node, arr.data.id];
res.db.query(query, param, (err, row) => {
@@ -135,11 +139,12 @@ router
let query = "update ??.?? set \
`name` = ?, \
`node` = ?, \
`type` = ?, \
`moduser` = ?, \
`mtime` = unix_timestamp() \
where \
`uid` = ?";
let param = [config.db.db5, 'device', arr.data.name, arr.data.node, u, arr.data.id];
let param = [config.db.db5, 'device', arr.data.name, arr.data.node, type, u, arr.data.id];
res.db.query(query, param, (err, row) => {
if (err) return n('ERR8002');
@@ -198,7 +203,8 @@ router
where \
d.`uid` = ? \
and rt.`type` = ? \
and i.`uid` is not null ";
and i.`uid` is not null \
order by rt.`port` asc";
let param = [config.db.db6, 'jcmbrt', config.db.db5, 'device', config.db.db5, 'iolist', arr.data.type, config.db.db5, 'aioset', arr.data.id, arr.data.type];
res.db.query(query, param, (err, row) => {
@@ -238,6 +244,8 @@ router
if (!arr.data.addr) return n('ERR0048');
if (!arr.data.num) return n('ERR0049');
let dlen = arr.data.datalen || 2;
let query = "select count(*) as c from ??.?? \
where \
`devuid` = ? \
@@ -249,8 +257,8 @@ router
if (row[0].c > 0) return n('ERR0054');
let query = "insert into ??.?? (`devuid`,`type`,`addr`,`num`,`ctime`,`mtime`) values (?, ?, ?, ?, unix_timestamp(), unix_timestamp())";
let param = [config.db.db5, 'iolist', arr.data.id, arr.data.type, arr.data.addr, arr.data.num];
let query = "insert into ??.?? (`devuid`,`type`,`addr`,`num`,`datalen`,`ctime`,`mtime`) values (?, ?, ?, ?, unix_timestamp(), unix_timestamp())";
let param = [config.db.db5, 'iolist', arr.data.id, arr.data.type, arr.data.addr, arr.data.num, dlen];
res.db.query(query, param, (err, row) => {
if (err) return n('ERR8001');
@@ -270,6 +278,8 @@ router
if (!arr.data.addr) return n('ERR0048');
if (!arr.data.num) return n('ERR0049');
let dlen = arr.data.datalen || 2;
let query = "select count(*) as c from ??.?? i \
left join ??.?? i2 \
on i2.`type` = i.`type` \
@@ -287,10 +297,11 @@ router
let q = "update ??.?? set \
`addr` = ?, \
`num` = ?, \
`datalen` = ?, \
`mtime` = unix_timestamp() \
where \
`uid` = ?";
let p = [config.db.db5, 'iolist', arr.data.addr, arr.data.num, arr.data.id];
let p = [config.db.db5, 'iolist', arr.data.addr, arr.data.num, dlen, arr.data.id];
res.db.query(q, p, (err, row) => {
if (err) return n('ERR8002');
+10
View File
@@ -361,25 +361,35 @@ router
let q, p;
switch (arr.data.type) {
case 'do':
if(!config.permission.dio) return n('ERR9000');
q = "select `doname` as name, `douid` as id from ??.??";
p = [config.db.db1, 'dolist'];
pro = tool.promiseQuery(res, q, p, '');
break;
case 'di':
if(!config.permission.dio) return n('ERR9000');
q = "select `diname` as name, `diuid` as id from ??.??";
p = [config.db.db1, 'dilist'];
pro = tool.promiseQuery(res, q, p, '');
break;
case 'leone':
if(!config.permission.leone) return n('ERR9000');
q = "select `leonename` as name, `leonelistuid` as id from ??.??";
p = [config.db.db1, 'leonelist'];
pro = tool.promiseQuery(res, q, p, '');
break;
case 'iogroup':
if(!config.permission.iogroup) return n('ERR9000');
q = "select `iogroupname` as name, `iogroupuid` as id from ??.??";
p = [config.db.db1, 'iogroup'];
pro = tool.promiseQuery(res, q, p, '');
break;
case 'modbus':
if(!config.permission.modbus) return n('ERR9000');
q = "select `name`, `uid` as id from ??.??";
p = [config.db.db5, 'device'];
pro = tool.promiseQuery(res,q,p, '');
break;
default:
return n();
}