user.js 1.07 KB
'use strict';

const Service = require('egg').Service;
const objExclude = require('../util/common').objExclude;

class UserService extends Service {
  async count() {
    const result = await this.app.mysql.query('select count(*) as total from user');
    return result;
  }
  async add(data) {
    const result = await this.app.mysql.insert('user', data);
    return result;
  }
  async update(data) {
    const result = await this.app.mysql.update('user', data);
    return result;
  }
  async find(id) {
    const user = await this.app.mysql.get('user', { id });
    return user;
  }
  async list(data) {
    const { current, pageSize } = data;
    const other = objExclude(data, [ 'current', 'pageSize' ]);
    const limit = Number(pageSize);
    const offset = Number((current - 1) * pageSize);
    const list = await this.app.mysql.select('user', { columns: [ 'id', 'name', 'username', 'role' ], where: other, limit, offset });
    return list;
  }
  async remove(data) {
    const result = await this.app.mysql.delete('user', data);
    return result;
  }
}

module.exports = UserService;