1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- 'use strict';
- const Schema = require('mongoose').Schema;
- const moment = require('moment');
- const metaPlugin = require('naf-framework-mongoose/lib/model/meta-plugin');
- // 合同
- const treaty = {
- client: {
- type: String,
- required: true,
- maxLength: 200,
- field: { label: '客户', filter: 'select', required: true },
- },
- number: {
- type: String,
- required: true,
- maxLength: 200,
- field: { label: '合同编号', filter: true, required: true },
- },
- jf: {
- type: String,
- maxLength: 200,
- field: { label: '甲方', filter: true },
- },
- yf: {
- type: String,
- maxLength: 200,
- field: { label: '乙方' },
- }, // 存储内容
- period: {
- type: String,
- maxLength: 200,
- field: { label: '周期' },
- },
- settle_up: { type: String, maxLength: 200, field: { label: '结算方式' } },
- settle_up_period: {
- type: String,
- maxLength: 200,
- field: { label: '结算周期' },
- },
- expiry_date: { type: String, required: true, maxLength: 200, field: { label: '截止日期', type: 'date' } },
- status: {
- type: String,
- maxLength: 200,
- default: '0',
- field: {
- label: '状态',
- filter: 'select',
- type: 'select',
- format: (i => (i === '0' ? '使用' : '禁用')).toString(),
- list: [
- { label: '使用', value: '0' },
- { label: '禁用', value: '1' },
- ],
- },
- }, // 状态:0=>使用;1禁用
- owner: { type: String, required: true }, // 创建人
- create_date: { type: String, default: moment().format('YYYY-MM-DD') },
- };
- const schema = new Schema(treaty, { toJSON: { virtuals: true } });
- schema.index({ id: 1 });
- schema.index({ client: 1 });
- schema.index({ number: 1 });
- schema.index({ jf: 1 });
- schema.index({ status: 1 });
- schema.index({ owner: 1 });
- schema.plugin(metaPlugin);
- module.exports = app => {
- const { mongoose } = app;
- return mongoose.model('Treaty', schema, 'treaty');
- };
|