1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- 'use strict';
- const Schema = require('mongoose').Schema;
- const metaPlugin = require('naf-framework-mongoose/lib/model/meta-plugin');
- // 方式
- const mode = {
- name: {
- type: String,
- required: true,
- maxLength: 200,
- field: { label: '方式名称', filter: true, required: true },
- },
- route: {
- type: String,
- required: true,
- maxLength: 200,
- field: { label: '线路', required: true },
- },
- price: {
- type: String,
- required: true,
- maxLength: 200,
- field: { label: '价格', filter: true, required: true },
- },
- is_lf: {
- type: Boolean,
- required: true,
- field: {
- label: '是否量份收费',
- required: true,
- format: (i => (i ? '是' : '否')).toString(),
- type: 'radio',
- list: [
- { label: '是', value: true },
- { label: '否', value: false },
- ],
- },
- },
- send_type: {
- type: String,
- maxLength: 200,
- field: {
- label: '发货方式',
- type: 'radio',
- list: [
- { label: '整车', value: '整车' },
- { label: '零担', value: '零担' },
- ],
- },
- },
- computed_type: {
- type: String,
- maxLength: 200,
- field: {
- label: '计费方式',
- type: 'radio',
- list: [
- { label: '按体积', value: '按体积' },
- { label: '按重量', value: '按重量' },
- ],
- },
- },
- 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 }, // 创建人
- };
- const schema = new Schema(mode, { toJSON: { virtuals: true } });
- schema.index({ id: 1 });
- schema.index({ name: 1 });
- schema.index({ route: 1 });
- schema.index({ price: 1 });
- schema.index({ owner: 1 });
- schema.plugin(metaPlugin);
- module.exports = app => {
- const { mongoose } = app;
- return mongoose.model('Mode', schema, 'mode');
- };
|