'use strict'; /** * 标准库基类 * * @author Mai * @date 2018/3/13 * @version */ const BaseService = require('../base/base_service'); class StandardLib extends BaseService { /** * 构造函数 * * @param {Object} ctx - egg全局变量 * @param {String} tableName - 表名 * @return {void} */ constructor(ctx, tableName) { super(ctx); this.tableName = tableName; } /** * 获取数据 * * @param {Number} listId - 项目节列表id * @param {Number} level - 小于此层级的全部不显示 * @return {Array} - 返回对应数据 */ async getData(listId, level = 2) { this.initSqlBuilder(); this.sqlBuilder.setAndWhere('list_id', { operate: '=', value: listId, }); this.sqlBuilder.setAndWhere('level', { operate: '<=', value: level, }); const [sql, sqlParam] = this.sqlBuilder.build(this.tableName); const list = await this.db.query(sql, sqlParam); return list; } } module.exports = StandardLib;