'use strict'; const Schema = require('mongoose').Schema; const metaPlugin = require('naf-framework-mongoose/lib/model/meta-plugin'); const {Secret} = require('naf-framework-mongoose/lib/model/schema'); // 申报事项 const declarationMatters = new Schema({ declaration: {type: String, required: true},//申报事项描述 name: {type: String, required: false},//原文件名 url: {type: String, required: false},//存储文件名 }); // 审批信息 const approvalInfo = new Schema({ state: {type: String, required: false},//状态,-1-停用,0-未审核,1-审核通过,2-审核未通过 state_description: {type: String, required: false},//状态描述,-1-停用,0-未审核,1-审核通过,2-审核未通过 result_description: {type: String, required: false},//结果描述 state_time: {type: Number},//状态时间 approval_id: {type: String, required: false},//审批人id approval: {type: String, required: false},//审批人 }); // 政策申报审批 const TDeclarationApprovalSchema = { contact: {type: String, required: true},//联系人 phone: {type: String, required: true},//联系电话 additional_explanation: {type: String, required: false},//补充说明 policy_declaration_id: {type: String, required: true},//政策申报内容管理id policy_declaration_title: {type: String, required: false},//政策申报内容管理标题 uid: {type: String, required: true},// 关联企业用户id company_name: {type: String, required: false},//企业名称 current_state: {type: String, default: '0'},//状态,-1-停用,0-审核中,1-审核通过,2-审核未通过 current_state_description: {type: String, default: '审核中'},//状态描述,-1-停用,0-审核中,1-审核通过,2-审核未通过 current_result_description: {type: String, default: ''},//结果描述 current_state_time: {type: Number/*, default: Date.now*/},//状态时间 current_approval_id: {type: String, default: ''},//审批人id current_approval: {type: String, default: ''},//审批人 declaration_matters: {type: [declarationMatters], required: true}, // 申报事项 approval_info: {type: [approvalInfo], required: false}, // 审批信息 create_time: {type: Number, default: Date.now},//创建时间 update_time: {type: Number, default: Date.now},//更新时间 }; const schema = new Schema(TDeclarationApprovalSchema, {toJSON: {virtuals: true}}); schema.index({id: 1}); schema.plugin(metaPlugin); module.exports = app => { const {mongoose} = app; return mongoose.model('TDeclarationApproval', schema, 't_declaration_approval'); };