ticket.js 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. 'use strict';
  2. const Schema = require('mongoose').Schema;
  3. const moment = require('moment');
  4. const metaPlugin = require('naf-framework-mongoose/lib/model/meta-plugin');
  5. const { ObjectId } = require('mongoose').Types;
  6. // 创新劵表
  7. const ticket = {
  8. user_id: { type: ObjectId }, // 用户id
  9. mechanism_id: { type: ObjectId }, // 中介机构id
  10. material: { type: Array }, // 审核资料
  11. medium_material: { type: Array }, // 中介机构审核资料
  12. contract: { type: Array }, // 合同
  13. status: { type: String, default: '0' },
  14. // 0-资质审核;
  15. // 1-准备订单(企业填资料);-1-资质审核失败;
  16. // 2:-企业填写资料完成(中介审核)
  17. // 3-订单入库(中介机构,企业上传合同); -3 - 中介审核失败(重填信息)
  18. // 4-创新劵领取成功(服务机构审核成功)
  19. remark: { type: String },
  20. create_time: { type: String, default: moment(new Date()).format('YYYY-MM-DD HH:mm:ss') },
  21. };
  22. const schema = new Schema(ticket, { toJSON: { virtuals: true } });
  23. schema.index({ id: 1 });
  24. schema.index({ status: 1 });
  25. schema.index({ user_id: 1 });
  26. schema.index({ 'meta.createdAt': 1 });
  27. schema.plugin(metaPlugin);
  28. module.exports = app => {
  29. const { mongoose } = app;
  30. return mongoose.model('Ticket', schema, 'ticket');
  31. };