// 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 }