155 lines
4.1 KiB
JavaScript
155 lines
4.1 KiB
JavaScript
// const db = require(`../config/dbMysqlConn`);
|
|
const MysqlHelpers = require(`../library/LibMysqlHelper`);
|
|
|
|
class LogbookKeysModels {
|
|
|
|
static IS_INACTIVE = 0;
|
|
static IS_ACTIVE = 1;
|
|
|
|
// t_datatypes;
|
|
static TEXT = 'string';
|
|
static NUMBER = 'int';
|
|
static IMG_BASE64 = 'img_base64';
|
|
static COMMA = 'double';
|
|
|
|
static list(filter = {}) {
|
|
return new Promise(async (resolve, reject) => {
|
|
let params = [], select = '', where = '', join = '', order_by = '', group_by = '', limit = '';
|
|
|
|
if (filter['lgb_id']) {
|
|
where += ' AND lgb_key.id = ?';
|
|
params.push(filter['lgb_id']);
|
|
}
|
|
if (filter['is_active']) {
|
|
where += ' AND lgb_key.is_active = ?';
|
|
params.push(filter['is_active']);
|
|
}
|
|
|
|
if (filter['join_type']) {
|
|
select += ',lgb_type.name as type_name';
|
|
join += ' LEFT JOIN t_lgb_types as lgb_type ON lgb_key.type = lgb_type.id';
|
|
}
|
|
|
|
if (filter['group_by']) group_by = ' GROUP BY ' + filter['group_by'];
|
|
if (filter['order_by']) order_by = ' ORDER BY ' + filter['order_by'];
|
|
if (filter['limit']) limit = ' LIMIT ' + filter['limit'];
|
|
|
|
let query = `SELECT
|
|
lgb_key.*,lgb_key.id as lgb_id
|
|
${select}
|
|
FROM t_lgb_keys as lgb_key
|
|
${join}
|
|
WHERE lgb_key.dlt is null
|
|
${where}
|
|
${group_by}
|
|
${order_by}
|
|
${limit}
|
|
;`;
|
|
try {
|
|
const conn = await MysqlHelpers.createConnection();
|
|
const result = await MysqlHelpers.query(conn, query, params);
|
|
await MysqlHelpers.releaseConnection(conn);
|
|
resolve(result);
|
|
} catch (e) {
|
|
reject(e);
|
|
}
|
|
// db.query(query, params, function (err, resp) {
|
|
// if (err) {
|
|
// reject(err);
|
|
// return false;
|
|
// }
|
|
// resolve(resp);
|
|
// return true;
|
|
// });
|
|
});
|
|
}
|
|
|
|
static gets() {
|
|
return new Promise(async (resolve, reject) => {
|
|
let params = [];
|
|
let query = 'SELECT * FROM t_lgb_keys WHERE dlt is null;';
|
|
try {
|
|
const conn = await MysqlHelpers.createConnection();
|
|
const result = await MysqlHelpers.query(conn, query, params);
|
|
await MysqlHelpers.releaseConnection(conn);
|
|
resolve(result);
|
|
} catch (e) {
|
|
reject(e);
|
|
}
|
|
// db.query(query, params, function (err, resp) {
|
|
// if (err) {
|
|
// reject(err);
|
|
// return false;
|
|
// }
|
|
// resolve(resp);
|
|
// return true;
|
|
// });
|
|
});
|
|
}
|
|
|
|
static ins(ins = {}) {
|
|
return new Promise(async (resolve, reject) => {
|
|
try {
|
|
const conn = await MysqlHelpers.createConnection();
|
|
await MysqlHelpers.createTrx(conn);
|
|
|
|
let result = undefined;
|
|
if (Object.keys(ins).length > 0) result = await MysqlHelpers.queryTrx(conn, `INSERT t_lgb_keys SET ?;`, [ins]);
|
|
|
|
await MysqlHelpers.commit(conn);
|
|
|
|
resolve({
|
|
type: 'success',
|
|
result,
|
|
})
|
|
} catch (err) {
|
|
reject(err);
|
|
}
|
|
})
|
|
}
|
|
|
|
static updt(updt = {}) {
|
|
return new Promise(async (resolve, reject) => {
|
|
try {
|
|
const conn = await MysqlHelpers.createConnection();
|
|
await MysqlHelpers.createTrx(conn);
|
|
|
|
let result = undefined;
|
|
if (Object.keys(updt).length > 0) result = await MysqlHelpers.queryTrx(conn, `UPDATE t_lgb_keys SET ? WHERE id = ?;`, [updt, updt.id]);
|
|
|
|
await MysqlHelpers.commit(conn);
|
|
|
|
resolve({
|
|
type: 'success',
|
|
result,
|
|
})
|
|
} catch (err) {
|
|
reject(err);
|
|
}
|
|
})
|
|
}
|
|
|
|
static del(del = {}) {
|
|
return new Promise(async (resolve, reject) => {
|
|
try {
|
|
const conn = await MysqlHelpers.createConnection();
|
|
await MysqlHelpers.createTrx(conn);
|
|
|
|
let result = undefined;
|
|
if (Object.keys(del).length > 0) result = await MysqlHelpers.queryTrx(conn, `DELETE t_lgb_keys WHERE id = ?;`, [del.id]);
|
|
|
|
await MysqlHelpers.commit(conn);
|
|
|
|
resolve({
|
|
type: 'success',
|
|
result,
|
|
})
|
|
} catch (err) {
|
|
reject(err);
|
|
}
|
|
})
|
|
}
|
|
|
|
}
|
|
|
|
module.exports = LogbookKeysModels; |