'use strict'; const fs = require('fs'); const path = require('path'); /** * 附件表 数据模型 * @author LanJianRong * @date 2020/6/30 * @version */ module.exports = app => { class MaterialFile extends app.BaseService { /** * 构造函数 * * @param {Object} ctx - egg全局变量 * @return {void} */ constructor(ctx) { super(ctx); this.tableName = 'material_file'; } /** * 获取当前标段所有上传的附件 * @param {Number?} tenderId 标段id * @param {Number?} mid 期id * @return {Promise} 数据库查询实例 */ async getAllMaterialFiles(tenderId, mid) { const where = {}; if (tenderId) where.tenderId = tenderId; if (mid) where.mid = mid; return await this.db.select(this.tableName, { where, }); } /** * 存储上传的文件信息至数据库 * @param {Array} payload 载荷 * @return {Promise} 数据库插入执行实例 */ async saveFileMsgToDb(payload) { return await this.db.insert(this.tableName, payload); } /** * 获取单个文件信息 * @param {Number} id 文件id * @return {Promise} 数据库查询实例 */ async getMaterialFileById(id) { return await this.getDataByCondition({ id }); } /** * 删除附件 * @param {Number} id - 附件id * @return {void} */ async delete(id) { return await this.deleteById(id); } } return MaterialFile; };