engineering_lib.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /**
  2. * 计价规则数据结构
  3. *
  4. * @author CaiAoLin
  5. * @date 2017/8/31
  6. * @version
  7. */
  8. import mongoose from "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. /* // 费率标准库 2018-08-28 改成放在tax_group 里了
  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. progressive_lib: {
  60. type: Schema.Types.Mixed,
  61. default: []
  62. },
  63. //设置人材机显示列
  64. glj_col:{
  65. showAdjustPrice:Boolean//是否显示调整价列
  66. },
  67. //清单或定额计价规则ID
  68. valuationID:{type:String,index: true},
  69. //工程专业名称
  70. name:String,
  71. //费用标准
  72. feeName:String,
  73. //前端是否显示
  74. visible:{type: Boolean, default: false},
  75. //取费专业
  76. engineering:Number,
  77. //单位工程取费专业
  78. projectEngineering:Number,
  79. //是否计算安装增加费
  80. isInstall:{type: Boolean, default: false}
  81. };
  82. mongoose.model(collectionName, new Schema(modelSchema, {versionKey: false, collection: collectionName}));