Refactoring models in order to facilitate lisibility
This commit is contained in:
1 parent
ae28371871
commit
d58ffd0219
3 files changed
+99
-24
No files matched your search
+63
-15
@@ -6,32 +6,80 @@ import {
|
||||
EventStatusEnum,
|
||||
} from '../enums/EventStatus';
|
||||
|
||||
const { ObjectId } = Schema.Types;
|
||||
|
||||
const eventSchema = new Schema({
|
||||
designator: { type: String, required: true },
|
||||
status: { type: String, enum: EventStatusEnum, default: UNPUBLISHED },
|
||||
name: { type: String, required: true },
|
||||
hostId: { type: String, required: true },
|
||||
designator: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
status: {
|
||||
type: String,
|
||||
enum: EventStatusEnum,
|
||||
default: UNPUBLISHED,
|
||||
},
|
||||
name: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
hostId: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
description: String,
|
||||
startDatetime: { type: Number, required: true },
|
||||
finishDatetime: { type: Number, required: true },
|
||||
formula: { type: Schema.Types.ObjectId, ref: Formula.modelName },
|
||||
plotter: { type: Schema.Types.ObjectId, ref: Plotter.modelName },
|
||||
startDatetime: {
|
||||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
finishDatetime: {
|
||||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
formula: {
|
||||
type: ObjectId,
|
||||
ref: Formula.modelName,
|
||||
},
|
||||
plotter: {
|
||||
type: ObjectId,
|
||||
ref: Plotter.modelName,
|
||||
},
|
||||
rules: [{
|
||||
position: { type: Number, required: true },
|
||||
title: { type: String, required: true },
|
||||
position: {
|
||||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
title: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
description: String,
|
||||
}],
|
||||
prizes: [{
|
||||
rank: { type: Number, required: true },
|
||||
amount: { type: Number, required: true },
|
||||
rank: {
|
||||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
amount: {
|
||||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
additional: [{
|
||||
condition: String,
|
||||
amount: { type: Number, required: true },
|
||||
asset: { type: String, required: true },
|
||||
amount: {
|
||||
type: Number,
|
||||
required: true,
|
||||
},
|
||||
asset: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
}],
|
||||
}],
|
||||
participants: [{
|
||||
teamId: { type: String, required: true },
|
||||
teamId: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
botId: String,
|
||||
releaseId: String,
|
||||
}],
|
||||
|
||||
@@ -1,9 +1,18 @@
|
||||
import mongoose, { Schema } from 'mongoose';
|
||||
|
||||
const formulaSchema = new Schema({
|
||||
ownerId: { type: String, required: true },
|
||||
isTemplate: { type: Boolean, default: false },
|
||||
name: { type: String, required: true },
|
||||
ownerId: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
isTemplate: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
name: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
});
|
||||
|
||||
const Formula = mongoose.model('Formula', formulaSchema);
|
||||
|
||||
@@ -1,12 +1,30 @@
|
||||
import mongoose, { Schema } from 'mongoose';
|
||||
|
||||
const plotterSchema = new Schema({
|
||||
ownerId: { type: String, required: true },
|
||||
isTemplate: { type: Boolean, default: false },
|
||||
name: { type: String, required: true },
|
||||
host: { type: String, required: true },
|
||||
repo: { type: String, required: true },
|
||||
moduleName: { type: String, required: true },
|
||||
ownerId: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
isTemplate: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
name: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
host: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
repo: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
moduleName: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
});
|
||||
|
||||
const Plotter = mongoose.model('Plotter', plotterSchema);
|
||||
|
||||
Reference in new issue
Block a user