update modbus db and view
This commit is contained in:
+18
-7
@@ -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');
|
||||
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user