Archived
2

implemented changelog

This commit is contained in:
VLE2FE
2020-06-05 08:50:06 +02:00
parent 74080d0902
commit ca29cef48c
33 changed files with 905 additions and 112 deletions

11
src/models/changelog.ts Normal file
View File

@ -0,0 +1,11 @@
import mongoose from 'mongoose';
const ChangelogSchema = new mongoose.Schema({
action: String,
collectionName: String,
conditions: Object,
data: Object,
user_id: mongoose.Schema.Types.ObjectId
}, {minimize: false});
export default mongoose.model<any, mongoose.Model<any, any>>('changelog', ChangelogSchema);

View File

@ -1,13 +1,20 @@
import mongoose from 'mongoose';
import db from '../db';
const ConditionTemplateSchema = new mongoose.Schema({
first_id: mongoose.Schema.Types.ObjectId,
name: String,
version: Number,
parameters: [{
parameters: [new mongoose.Schema({
name: String,
range: mongoose.Schema.Types.Mixed
}]
} ,{ _id : false })]
}, {minimize: false}); // to allow empty objects
export default mongoose.model('condition_template', ConditionTemplateSchema);
// changelog query helper
ConditionTemplateSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('condition_template', ConditionTemplateSchema);

View File

@ -1,14 +1,15 @@
import mongoose from 'mongoose';
import MaterialSupplierModel from '../models/material_suppliers';
import MaterialGroupsModel from '../models/material_groups';
import db from '../db';
const MaterialSchema = new mongoose.Schema({
name: {type: String, index: {unique: true}},
supplier_id: {type: mongoose.Schema.Types.ObjectId, ref: MaterialSupplierModel},
group_id: {type: mongoose.Schema.Types.ObjectId, ref: MaterialGroupsModel},
mineral: String,
glass_fiber: String,
carbon_fiber: String,
mineral: Number,
glass_fiber: Number,
carbon_fiber: Number,
numbers: [{
color: String,
number: String
@ -16,4 +17,10 @@ const MaterialSchema = new mongoose.Schema({
status: Number
}, {minimize: false});
export default mongoose.model('material', MaterialSchema);
// changelog query helper
MaterialSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('material', MaterialSchema);

View File

@ -1,7 +1,14 @@
import mongoose from 'mongoose';
import db from '../db';
const MaterialGroupsSchema = new mongoose.Schema({
name: {type: String, index: {unique: true}}
});
export default mongoose.model('material_groups', MaterialGroupsSchema);
// changelog query helper
MaterialGroupsSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('material_groups', MaterialGroupsSchema);

View File

@ -1,7 +1,14 @@
import mongoose from 'mongoose';
import db from '../db';
const MaterialSuppliersSchema = new mongoose.Schema({
name: {type: String, index: {unique: true}}
});
export default mongoose.model('material_suppliers', MaterialSuppliersSchema);
// changelog query helper
MaterialSuppliersSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('material_suppliers', MaterialSuppliersSchema);

View File

@ -1,6 +1,7 @@
import mongoose from 'mongoose';
import SampleModel from './sample';
import MeasurementTemplateModel from './measurement_template';
import db from '../db';
@ -11,4 +12,10 @@ const MeasurementSchema = new mongoose.Schema({
status: Number
}, {minimize: false});
export default mongoose.model('measurement', MeasurementSchema);
// changelog query helper
MeasurementSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('measurement', MeasurementSchema);

View File

@ -1,13 +1,20 @@
import mongoose from 'mongoose';
import db from '../db';
const MeasurementTemplateSchema = new mongoose.Schema({
first_id: mongoose.Schema.Types.ObjectId,
name: String,
version: Number,
parameters: [{
parameters: [new mongoose.Schema({
name: String,
range: mongoose.Schema.Types.Mixed
}]
} ,{ _id : false })]
}, {minimize: false}); // to allow empty objects
export default mongoose.model('measurement_template', MeasurementTemplateSchema);
// changelog query helper
MeasurementTemplateSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('measurement_template', MeasurementTemplateSchema);

View File

@ -1,4 +1,5 @@
import mongoose from 'mongoose';
import db from '../db';
const NoteSchema = new mongoose.Schema({
comment: String,
@ -9,4 +10,10 @@ const NoteSchema = new mongoose.Schema({
custom_fields: mongoose.Schema.Types.Mixed
});
export default mongoose.model('note', NoteSchema);
// changelog query helper
NoteSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('note', NoteSchema);

View File

@ -1,8 +1,15 @@
import mongoose from 'mongoose';
import db from '../db';
const NoteFieldSchema = new mongoose.Schema({
name: {type: String, index: {unique: true}},
qty: Number
});
export default mongoose.model('note_field', NoteFieldSchema);
// changelog query helper
NoteFieldSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('note_field', NoteFieldSchema);

View File

@ -3,6 +3,7 @@ import mongoose from 'mongoose';
import MaterialModel from './material';
import NoteModel from './note';
import UserModel from './user';
import db from '../db';
const SampleSchema = new mongoose.Schema({
number: {type: String, index: {unique: true}},
@ -16,4 +17,10 @@ const SampleSchema = new mongoose.Schema({
status: Number
}, {minimize: false});
export default mongoose.model('sample', SampleSchema);
// changelog query helper
SampleSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('sample', SampleSchema);

View File

@ -1,4 +1,5 @@
import mongoose from 'mongoose';
import db from '../db';
const UserSchema = new mongoose.Schema({
name: {type: String, index: {unique: true}},
@ -10,4 +11,10 @@ const UserSchema = new mongoose.Schema({
device_name: String
});
export default mongoose.model('user', UserSchema);
// changelog query helper
UserSchema.query.log = function <Q extends mongoose.DocumentQuery<any, any>> (req) {
db.log(req, this);
return this;
}
export default mongoose.model<any, mongoose.Model<any, any>>('user', UserSchema);