Przeglądaj źródła

col setting, load from tender data

MaiXinRong 8 lat temu
rodzic
commit
686c47871a

+ 0 - 38
modules/main/models/proj_counter.js

@@ -1,38 +0,0 @@
-/**
- * Created by Mai on 2017/6/13.
- */
-
-let mongoose = require('mongoose');
-let baseModel = require('./base_model');
-
-class projCounter extends baseModel {
-    constructor (name) {
-        let db = require("../db/project_db");
-        let Schema = require("mongoose").Schema;
-        let projCounterSchema = new Schema({
-            projectID: Number,
-            bills: Number,
-            ration: Number,
-            volume_price: Number
-        });
-        let projCounterModel = db.model(name, projCounterSchema);
-        super(projCounterModel);
-        this.collectionName = name;
-    };
-
-    getData (projectID, callback) {
-        this.model.findOne({"projectID": projectID}, '-_id', function (err, result) {
-            if (!err) {
-                callback(0, '', result);
-            } else {
-                callback(1, '查询数据失败。', null);
-            }
-        });
-    };
-
-    save (user_id, data, callback) {
-        this.model.update({"projectID": data.projectID}, data, callback);
-    }
-};
-
-module.exports = new projCounter('projCounter');

+ 29 - 0
modules/main/models/proj_counter_model.js

@@ -0,0 +1,29 @@
+/**
+ * Created by Mai on 2017/6/13.
+ */
+
+let baseModel = require('./base_model');
+import {default as projCounterSchema, collectionName as collectionName} from "./schemas/proj_counter";
+
+class projCounter extends baseModel {
+    constructor() {
+        super(projCounterSchema);
+        this.collectionName = collectionName;
+    }
+
+    getData (projectID, callback) {
+        this.model.findOne({"projectID": projectID}, '-_id', function (err, result) {
+            if (!err) {
+                callback(0, collectionName, result);
+            } else {
+                callback(1, '查询数据失败。', null);
+            }
+        });
+    };
+
+    save (user_id, data, callback) {
+        this.model.update({"projectID": data.projectID}, data, callback);
+    }
+};
+
+module.exports = new projCounter();

+ 1 - 1
modules/main/models/proj_setting_model.js

@@ -15,7 +15,7 @@ class projSettingModel extends baseModel {
     getData (projectID, callback) {
         this.model.findOne({"projectID": projectID}, '-_id', function (err, result) {
             if (!err) {
-                callback(0, '', result);
+                callback(0, collectionName, result);
             } else {
                 callback(1, '查询数据失败。', null);
             }

+ 3 - 1
modules/main/models/project.js

@@ -9,7 +9,8 @@ var ration_coe_data = require('../../ration_glj/facade/ration_coe_facade');
 var ration_ass_data = require('../../ration_glj/facade/ration_ass_facade');
 var quantity_detail_data = require('../../ration_glj/facade/quantity_detail_facade');
 var fee_rate_data = require('../../fee_rates/facade/fee_rates_facade');
-let projCounter = require('./proj_counter');
+let projCounter = require('./proj_counter_model');
+let projSetting = require('./proj_setting_model');
 let volumePriceData = require('../../volume_price/models/volume_price_model');
 var consts = require('./project_consts');
 var projectConsts = consts.projectConst;
@@ -25,6 +26,7 @@ moduleMap[projectConsts.RATION_COE] = ration_coe_data;
 moduleMap[projectConsts.RATION_ASS] = ration_ass_data;
 moduleMap[projectConsts.QUANTITY_DETAIL] = quantity_detail_data;
 moduleMap[projCounter.collectionName] = projCounter;
+moduleMap[projSetting.collectionName] = projSetting;
 moduleMap[volumePriceData.collectionName] = volumePriceData;
 moduleMap[projectConsts.FEERATE] = fee_rate_data;
 

+ 15 - 0
modules/main/models/schemas/proj_counter.js

@@ -0,0 +1,15 @@
+/**
+ * Created by Mai on 2017/9/15.
+ */
+
+let mongoose = require("mongoose");
+let Schema = mongoose.Schema;
+let collectionName = 'projCounter';
+let projSettingSchema = {
+    projectID: Number,
+    bills: Number,
+    ration: Number,
+    volume_price: Number
+};
+let model = mongoose.model(collectionName, new Schema(projSettingSchema, {versionKey: false, collection: collectionName}));
+export {model as default, collectionName as collectionName};

+ 3 - 1
modules/pm/controllers/copy_proj_controller.js

@@ -4,7 +4,8 @@
 
 let billsData = require('../../main/models/bills');
 let rationData = require('../../main/models/ration');
-let projCounter = require('../../main/models/proj_counter');
+let projCounter = require('../../main/models/proj_counter_model');
+let projSetting = require('../../main/models/proj_setting_model');
 let volumePriceData = require('../../volume_price/models/volume_price_model');
 let async = require('async');
 
@@ -30,6 +31,7 @@ module.exports = {
         fun.push(copyData(billsData));
         fun.push(copyData(rationData));
         fun.push(copyData(projCounter));
+        fun.push(copyData(projSetting));
         fun.push(copyData(volumePriceData));
         async.parallel(fun, (err) => callback(err));
     }

+ 1 - 2
modules/pm/controllers/new_proj_controller.js

@@ -3,7 +3,7 @@
  */
 
 let billsData = require('../../main/models/bills');
-let projCounter = require('../../main/models/proj_counter');
+let projCounter = require('../../main/models/proj_counter_model');
 let projSetting = require('../../main/models/proj_setting_model');
 let async = require('async');
 
@@ -24,7 +24,6 @@ module.exports = {
                 billsData.insertData(billsDatas, callback);
             },
             function (cb) {
-                console.log(projCounter);
                 projCounter.insertData({"projectID": newProjID}, cb);
             },
             async function (cb) {

+ 4 - 1
web/building_saas/main/js/models/project.js

@@ -12,7 +12,8 @@ var PROJECT = {
             updateData: [],
             operation: '',
             modules: {},
-            projCounter: 'projCounter'
+            projCounter: 'projCounter',
+            projSetting: 'proj_setting'
         };
 
         var me = tools;
@@ -35,6 +36,8 @@ var PROJECT = {
                     me.modules[item.moduleName].loadData(item.data);
                 } else if (item.moduleName === me.projCounter) {
                     counter = item.data;
+                } else if (item.moduleName === me.projSetting) {
+                    me._project.projSetting = item.data;
                 }
             });
             for (module in counter) {

+ 4 - 3
web/building_saas/main/js/views/project_view.js

@@ -91,8 +91,9 @@ var projectObj = {
         this.project = PROJECT.createNew(scUrlUtil.GetQueryString('project'), userID);
         this.project.loadDatas(function (err) {
             if (!err) {
-                TREE_SHEET_HELPER.initSetting($('#billsSpread')[0], BillsGridSetting);
-                BillsGridSetting.cols.forEach(function (col) {
+                that.project.projSetting.mainGridSetting = that.project.projSetting.main_tree_col;
+                TREE_SHEET_HELPER.initSetting($('#billsSpread')[0], that.project.projSetting.mainGridSetting);
+                that.project.projSetting.mainGridSetting.cols.forEach(function (col) {
                     col.data.splitFields = col.data.field.split('.');
                     if (col.data.getText && Object.prototype.toString.apply(col.data.getText) === "[object String]") {
                         col.data.getText = MainTreeCol.getEvent(col.data.getText);
@@ -109,7 +110,7 @@ var projectObj = {
                         col.data.formatter = MainTreeCol.getNumberFormatter(col.data.decimal);
                     }
                 });
-                that.mainController = TREE_SHEET_CONTROLLER.createNew(that.project.mainTree, that.mainSpread.getActiveSheet(), BillsGridSetting);
+                that.mainController = TREE_SHEET_CONTROLLER.createNew(that.project.mainTree, that.mainSpread.getActiveSheet(), that.project.projSetting.mainGridSetting);
                 that.mainController.showTreeData();
                 that.mainController.bind('refreshBaseActn', function (tree) {
                     var setButtonValid = function (valid, btn) {

+ 3 - 0
web/building_saas/pm/js/pm_main.js

@@ -554,6 +554,9 @@ $(document).ready(function() {
  * @return {void}
  */
 function init() {
+    billValuation = billValuation.replace(/\n/g, '\\n');
+    rationValuation = rationValuation.replace(/\n/g, '\\n');
+
     let table = $('#ProjTree');
     $('thead', table).remove();
     $('tbody', table).remove();