Pārlūkot izejas kodu

Merge branch 'master' of http://smartcost.f3322.net:3000/SmartCost/ConstructionCost

TonyKang 8 gadi atpakaļ
vecāks
revīzija
71d4c0e263

+ 24 - 0
modules/feeLibs/controllers/feeLibs_controler.js

@@ -0,0 +1,24 @@
+var stdFeeLib = require('./feeLibs_db');
+
+function feeLibsFiles(region){
+    stdFeeLib.files(region, function (doc) {
+        console.log(doc);
+        return doc;
+    });
+};
+
+function feeLibsFees(fileID){
+    stdFeeLib.fees(fileID, function (doc) {
+        console.log(doc);
+        return doc;
+    });
+};
+
+// 调用示例:
+// feeLibsFiles('重庆');
+// feeLibsFees(1);
+
+
+
+
+

+ 22 - 46
modules/feeLibs/models/feeLibs_db.js

@@ -1,53 +1,29 @@
 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
+mg.connect('mongodb://localhost/feeLibs');
+
+var feesSchema = new mg.Schema({
+    ID: Number,
+    ParentID: Number,
+    name: String,
+    fee: Number,
+    memo: String
 });
 
-var feeLibSchema = new mg.Schema({
+var stdFeeSchema = new mg.Schema({
     region: String,                     // 工程所在地
-    fileName: String,                   // 费率标准文件
-    filters: [filterSchema],
-    fees: [feeSchema]
+    fileID: Number,                     // 费率标准文件ID
+    fileName: String,                   // 费率标准文件名称
+    fees: [feesSchema]                  // 树表结构费率值
 });
 
-var feeLibModel = mg.model('fees', feeLibSchema);
+var feeLibModel = mg.model('files', stdFeeSchema);
 
 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]));
+StdFeeLib.prototype.files = function(region, controllerFun){
+    feeLibModel.find({"region": region}, ["fileID", "fileName"], function(err, data){
+        if(data.length){
+            controllerFun(data);
         }
         else{
             controllerFun(false);
@@ -55,17 +31,17 @@ StdFeeLib.prototype.fee2 = function(region, fileName, filters, controllerFun){
     })
 };
 
-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]));
+StdFeeLib.prototype.fees = function(fileID, controllerFun){
+    feeLibModel.find({"fileID": fileID}, ["fees"], function(err, data){
+        if(data.length){
+            controllerFun(data);
         }
         else{
             controllerFun(false);
         }
     })
 };
+
 module.exports = new StdFeeLib();