std_fee_rate_libs.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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. // 费率数据
  50. rates: [ratesSchema]
  51. };
  52. let model = mongoose.model(collectionName, new Schema(modelSchema, {versionKey: false, collection: collectionName}));
  53. export {model as default, collectionName as collectionName};