engineering_lib.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /**
  2. * 计价规则数据结构
  3. *
  4. * @author CaiAoLin
  5. * @date 2017/8/31
  6. * @version
  7. */
  8. const mongoose = require('mongoose');
  9. let Schema = mongoose.Schema;
  10. let collectionName = 'engineering_lib';
  11. let taxGroupSchema = new Schema({
  12. taxType: String,//计税方式
  13. program_lib: { type: Schema.Types.Mixed,default:{}},// 计算程序标准库
  14. template_lib:{ type: Schema.Types.Mixed,default:{}},//清单模板库
  15. col_lib:{ type: Schema.Types.Mixed,default:{}},
  16. fee_lib:{ type: Schema.Types.Mixed,default:{}}//费率标准库
  17. },{_id: false});
  18. let modelSchema = {
  19. // 标准清单
  20. bill_lib: {
  21. type: Schema.Types.Mixed,
  22. default: []
  23. },
  24. // 定额库
  25. ration_lib: {
  26. type: Schema.Types.Mixed,
  27. default: []
  28. },
  29. // 工料机库
  30. glj_lib: {
  31. type: Schema.Types.Mixed,
  32. default: []
  33. },
  34. //清单指引库
  35. billsGuidance_lib: {
  36. type: Schema.Types.Mixed,
  37. default: []
  38. },
  39. tax_group :{
  40. type: [taxGroupSchema],
  41. default: []
  42. },
  43. /* // 费率标准库
  44. fee_lib: {
  45. type: Schema.Types.Mixed,
  46. default: []
  47. },*/
  48. // 人工系数标准库
  49. artificial_lib: {
  50. type: Schema.Types.Mixed,
  51. default: []
  52. },
  53. //工程特征库
  54. feature_lib:{
  55. type: Schema.Types.Mixed,
  56. default: []
  57. },
  58. //基本信息库
  59. info_lib: {
  60. type: Schema.Types.Mixed,
  61. default: []
  62. },
  63. engineer_info_lib: {
  64. type: Schema.Types.Mixed,
  65. default: []
  66. },
  67. //工程特征指标库
  68. engineer_feature_lib: {
  69. type: Schema.Types.Mixed,
  70. default: []
  71. },
  72. //主要工料指标库
  73. material_lib: {
  74. type: Schema.Types.Mixed,
  75. default: []
  76. },
  77. //主要工程量指标库
  78. main_quantity_lib: {
  79. type: Schema.Types.Mixed,
  80. default: []
  81. },
  82. //主要经济指标库
  83. economic_lib: {
  84. type: Schema.Types.Mixed,
  85. default: []
  86. },
  87. //超高降效库
  88. over_height_lib: {
  89. type: Schema.Types.Mixed,
  90. default: []
  91. },
  92. //设置人材机显示列
  93. glj_col:{
  94. showAdjustPrice:Boolean//是否显示调整价列
  95. },
  96. //清单或定额计价规则ID
  97. valuationID:{type:String,index: true},
  98. //工程专业名称
  99. name:String,
  100. //费用标准
  101. feeName:String,
  102. //前端是否显示
  103. visible:{type: Boolean, default: false},
  104. //取费专业
  105. engineering:Number,
  106. //是否计算安装增加费
  107. isInstall:{type: Boolean, default: false},
  108. //是否计算子目增加费
  109. isItemIncrease:{type: Boolean, default: false},
  110. //是否计算面积增加费
  111. isAreaIncrease:{type: Boolean, default: false},
  112. indexName:String,//指标专业名称
  113. seq:Number//序列号
  114. };
  115. mongoose.model(collectionName, new Schema(modelSchema, {versionKey: false, collection: collectionName}));