'use strict'; const Schema = require('mongoose').Schema; const moment = require('moment'); const metaPlugin = require('naf-framework-mongoose/lib/model/meta-plugin'); const { ObjectId } = require('mongoose').Types; // 创新劵表 const ticket = { user_id: { type: ObjectId }, // 用户id mechanism_id: { type: ObjectId }, // 中介机构id material: { type: Array }, // 审核资料 medium_material: { type: Array }, // 中介机构审核资料 contract: { type: Array }, // 合同 status: { type: String, default: '0' }, // 0-资质审核; // 1-准备订单(企业填资料);-1-资质审核失败; // 2:-企业填写资料完成(中介审核) // 3-订单入库(中介机构,企业上传合同); -3 - 中介审核失败(重填信息) // 4-创新劵领取成功(服务机构审核成功) remark: { type: String }, create_time: { type: String, default: moment(new Date()).format('YYYY-MM-DD HH:mm:ss') }, }; const schema = new Schema(ticket, { toJSON: { virtuals: true } }); schema.index({ id: 1 }); schema.index({ status: 1 }); schema.index({ user_id: 1 }); schema.index({ 'meta.createdAt': 1 }); schema.plugin(metaPlugin); module.exports = app => { const { mongoose } = app; return mongoose.model('Ticket', schema, 'ticket'); };