std_fee_rate_libs.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /**
  2. * 费率标准库数据模型
  3. *
  4. * @author CaiAoLin
  5. * @date 2017/8/30
  6. * @version
  7. */
  8. import mongoose from "mongoose";
  9. let Schema = mongoose.Schema;
  10. let collectionName = 'std_fee_rate_libs';
  11. let optionSchema = new Schema({
  12. name:String,
  13. value:String,
  14. selected:Boolean
  15. }, {_id: false});
  16. let recordSchema = new Schema({
  17. ID:Number,
  18. name:String,
  19. optionList:[optionSchema]
  20. }, {_id: false});
  21. let valueMapSchema = new Schema({
  22. ID:String,
  23. value:Number
  24. }, {_id: false});
  25. let subFeeRatesSchema = new Schema({
  26. recodes :[recordSchema],
  27. valueMaps:[valueMapSchema],
  28. }, {_id: false});
  29. let ratesSchema = new Schema({
  30. ID: Number,
  31. ParentID: Number,
  32. name: String,
  33. rate: Number,
  34. memo: String,
  35. subFeeRate:subFeeRatesSchema
  36. }, {_id: false});
  37. let modelSchema = {
  38. // 自增id
  39. ID: String,
  40. // 工程所在地
  41. region: String,
  42. // 标准名称
  43. libName: String,
  44. //编办ID
  45. compilationId: {
  46. type: String,
  47. index: true
  48. },
  49. compilationName:String,
  50. // 费率数据
  51. rates: [ratesSchema]
  52. };
  53. mongoose.model(collectionName, new Schema(modelSchema, {versionKey: false, collection: collectionName}));