const sqlite = require('../db/sqlite.config'); const User = require("../models/user.model"); /** * 查询用户 - account * @param {*} account * @returns {User} */ exports.selectByAccount = async (account) => { let db; try { db = await sqlite.connectSqlite(); const rows = await new Promise((resolve, reject) => { db.all('SELECT * FROM USERS WHERE `USER_ACCOUNT` = ?', [account], (err, rows) => { if (err) { reject(err); } else { resolve(rows); } }); }); return (await getUser(rows))[0]; } catch (err) { throw err; } finally { try { await db.close(); } catch (error) { throw err; } } }; /** * 查询用户 - id * @param {*} id * @returns {User} */ exports.selectById = async (id) => { let db; try { db = await sqlite.connectSqlite(); const rows = await new Promise((resolve, reject) => { db.all('SELECT * FROM USERS WHERE `id` = ?', [id], (err, rows) => { if (err) { reject(err); } else { resolve(rows); } }); }); return await getUser(rows)[0]; } catch (err) { throw err; } finally { try { await db.close(); } catch (error) { throw err; } } }; /** * 查询用户 - name * @param {*} name * @returns */ exports.selectByName = async (name) => { let db; try { db = await sqlite.connectSqlite(); const rows = await new Promise((resolve, reject) => { db.all('SELECT * FROM USERS WHERE = ?', [name], async function (err, rows) { if (err) { reject(err); } resolve(rows); }); }) return await getUser(rows); } catch (err) { throw err; } finally { try { await db.close(); } catch (error) { console.error(error); } } } exports.selectAllUser = async () => { let db; try { db = await sqlite.connectSqlite(); const rows = await new Promise((reject, resolve) => { db.all('SELECT * FROM USERS', async function (err, rows) { if (err) { reject(err); } resolve(rows) }); }) return await getUser(rows); } catch (err) { throw err; } finally { try { await db.close(); } catch (error) { console.error(error); } } } /** * 新增用户 * @param {User} _user */ exports.insertUser = async (_user) => { let db; try { db = await sqlite.connectSqlite(); const u = await new Promise((resolve, reject) => { db.run('INSERT \ INTO USERS(USER_ACCOUNT, USER_NAME, PASSWORD, EMAIL, MOBILE) \ VALUES(?, ?, ?, ?, ?)', [_user.user_account, _user.user_name, _user.password, _user.email, _user.mobile], async function (err) { if (err) { reject(err); } console.log(this + '-----'); resolve(this); }); }); console.log("新增成功", u.toString()); } catch (error) { throw error } finally { try { await db.close(); } catch (error) { console.error(error); } } } /** 修改密码 * @param password * @param userId */ exports.updatePassword = async (password, userId) => { let db; try { db = await sqlite.connectSqlite(); const thisUpdate = await new Promise((resolve, reject) => { db.run( "UPDATE USERS SET PASSWORD = ? WHERE ID = ?;", [password, userId], async function (err) { if (err) { reject(err); } resolve(this); } ) }) } catch (error) { throw error; } finally { try { await db.close(); } catch (error) { throw error; } } } /** * * @param rows */ getUser = async (rows) => { let users = new Array(); rows.map((value, index) => { users[index] = new User(value); }); return users; }