123456789101112131415161718192021222324252627282930313233343536 |
- 'use strict';
- const Schema = require('mongoose').Schema;
- const metaPlugin = require('naf-framework-mongoose/lib/model/meta-plugin');
- // 专家基本信息表
- const ExpertSchema = {
- name: { type: String, required: true, maxLength: 200 }, // 专家姓名
- gender: { type: String, required: false, maxLength: 200 }, // 性别
- id_number: { type: String, required: false, maxLength: 500 }, // 身份证号
- phone: { type: String, required: true, maxLength: 200 }, // 电话号码
- email: { type: String, required: false, maxLength: 200 }, // 邮箱
- address: { type: String, required: false, maxLength: 500 }, // 地址
- img_url: { type: String, required: false }, // 头像图片
- birthday: { type: String, required: false, maxLength: 20 }, // 出生日期
- level: { type: String, required: false, maxLength: 200 }, // 职称级别
- levelname: { type: String, required: false, maxLength: 200 }, // 职称名称
- position: { type: String, required: false, maxLength: 200 }, // 职务
- school: { type: String, required: false, maxLength: 200 }, // 院校
- education: { type: String, required: false, maxLength: 200 }, // 学历
- degree: { type: String, required: false, maxLength: 200 }, // 学位
- major: { type: String, required: false, maxLength: 200 }, // 专业
- profession: { type: String, required: false, maxLength: 200 }, // 从事专业
- resume: { type: String, required: false, maxLength: 5000 }, // 工作简历
- project: { type: String, required: false, maxLength: 5000 }, // 项目
- academic: { type: String, required: false, maxLength: 5000 }, // 学术成就
- status: { type: String, required: false, default: "0", maxLength: 200 }, // 审核状态,0-注册,1-通过,2-拒绝
- };
- const schema = new Schema(ExpertSchema, { toJSON: { virtuals: true } });
- schema.index({ id: 1 });
- schema.plugin(metaPlugin);
- module.exports = app => {
- const { mongoose } = app;
- return mongoose.model('Expert', schema, 'expert');
- };
|