calc_program_model.js 901 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /**
  2. * Created by CSL on 2017-10-22.
  3. */
  4. let mongoose = require('mongoose');
  5. let Schema = mongoose.Schema;
  6. let calcItemSchema = new Schema({
  7. ID: Number,
  8. code: String,
  9. name: String,
  10. fieldName: String,
  11. dispExpr: String,
  12. dispExprUser: String,
  13. expression: String,
  14. compiledExpr: String,
  15. statement: String,
  16. feeRateID: Number,
  17. feeRate: String,
  18. labourCoeID: Number,
  19. memo: String,
  20. custom: Boolean
  21. },{versionKey:false, _id: false});
  22. let templateSchema = new Schema({
  23. ID: Number,
  24. name: String,
  25. calcItems: [calcItemSchema],
  26. custom: Boolean
  27. },{versionKey:false, _id: false});
  28. let projectCalcPrograms = new Schema({
  29. ID: String,
  30. projectID: Number,
  31. name: String,
  32. libID: Number,
  33. libName: String,
  34. templates: [templateSchema]
  35. },{versionKey:false});
  36. mongoose.model('calc_programs', projectCalcPrograms, 'calc_programs');