var mg = require('mongoose'); mg.connect('mongodb://localhost/stdFeeLibs'); var stdFeeSchema1 = new mg.Schema({ region: String, // 工程所在地 fileName: String, // 费率标准文件 projectCategory: String, // 工程分类 taxArea: String, // 纳税地点 manageFee: Array, // 企业管理费 forceFee: Array, // 规费 profit: Array, // 利润 tax: Array, // 税金 nightFee: Array, // 夜间施工费 winterFee: Array, // 冬雨季施工增加费 rehandFee: Array, // 二次搬运费 contractFee: Array, // 包干费 completedProtectFee: Array, // 已完工程及设备保护费 aftermathFee: Array, // 工程定位复测、点交及场地清理费 materialTestFee: Array, // 材料检验试验费 archiveFee: Array // 建设工程竣工档案编制费 }); // 过滤选项 var filterSchema = new mg.Schema({ filterName: String, filterValue: String }); // 12大费。如:企业管理费、规费等。各省不同,也不一定是12。 var feeSchema = new mg.Schema({ feeName: String, feeValues: Array }); var feeLibSchema = new mg.Schema({ region: String, // 工程所在地 fileName: String, // 费率标准文件 filters: [filterSchema], fees: [feeSchema] }); var feeLibModel = mg.model('fees', feeLibSchema); var StdFeeLib = function(){}; StdFeeLib.prototype.fee2 = function(region, fileName, filters, controllerFun){ feeLibModel.find({"region": region, "fileName": fileName}, function(err, data){ if(data){ controllerFun(JSON.stringify(data[0])); } else{ controllerFun(false); } }) }; StdFeeLib.prototype.fee1 = function(region, fileName, projectCategory, taxArea, controllerFun){ feeLibModel.find({"region": region, "fileName": fileName, "projectCategory": projectCategory, "taxArea": taxArea}, function(err, data){ if(data){ controllerFun(JSON.stringify(data[0])); } else{ controllerFun(false); } }) }; module.exports = new StdFeeLib();