Browse Source

计算规则修改存储。

Chenshilong 7 years ago
parent
commit
68a0af043c

+ 14 - 1
modules/main/controllers/calc_program_controller.js

@@ -7,7 +7,8 @@ let calcProgramFacade = require('../facade/calc_program_facade');
 
 module.exports = {
     getProjectCalcProgram: getProjectCalcProgram,
-    getStdCalcProgram: getStdCalcProgram
+    getStdCalcProgram: getStdCalcProgram,
+    saveCalcItem: saveCalcItem
 };
 
 async function getProjectCalcProgram(req, res) {
@@ -37,3 +38,15 @@ async function getStdCalcProgram(req, res) {
 
     res.json(result);
 };
+
+async function saveCalcItem(req, res) {
+    let result = {error: 0, message: ''};
+
+    calcProgramFacade.saveCalcItem(req.body.data, function (err, msg) {
+        if (err) {
+            result.error = 1;
+        };
+        result.message = msg;
+    });
+    res.json(result);
+};

+ 5 - 5
modules/main/facade/calc_program_facade.js

@@ -93,13 +93,13 @@ function saveCalcItem(dataObj, callback) {
             for (let i = 0; i < data.templates.length; i++){
                 if (data.templates[i].ID == dataObj.templatesID){
                     for (let j=0; j < data.templates[i].calcItems.length; j++){
-                        if (data.templates[i].calcItems[j].ID == dataObj.calcItemID){
-                            data.templates[i].calcItems[j] = dataObj.data;
+                        if (data.templates[i].calcItems[j].ID == dataObj.calcItem.ID){
+                            data.templates[i].calcItems[j] = dataObj.calcItem;
                             data.save(function (err) {
                                 if (err) {
-                                    callback({err:1, msg:'计算程序保存失败', data:null});
+                                    callback({err:1, msg:'本条计算规则保存失败'});
                                 } else {
-                                    callback({err:0, msg:'', data: dataObj.data});
+                                    callback({err:0, msg:'本条计算规则保存成功'});
                                 }
                             });
                             break;
@@ -110,7 +110,7 @@ function saveCalcItem(dataObj, callback) {
             };
         }
         else {
-            callback( {err:1, msg:'没有找到计算程序文件', data:null} );
+            callback( {err:1, msg:'没有找到计算程序文件'} );
         }
     });
 

+ 2 - 1
modules/main/routes/calc_program_route.js

@@ -11,8 +11,9 @@ module.exports = function (app) {
 
     cpRouter.post('/getProjectCalcProgram', cpController.getProjectCalcProgram);
     cpRouter.post('/getStdCalcProgram', cpController.getStdCalcProgram);
+    cpRouter.post('/saveCalcItem', cpController.saveCalcItem);
 
-    app.use('/labourCoe',cpRouter);
+    app.use('/calcProgram',cpRouter);
 }
 
 

+ 32 - 1
web/building_saas/main/js/views/calc_program_manage.js

@@ -75,7 +75,38 @@ let rationPM = {
         var dData = me.datas[row].calcItems;
         sheetCommonObj.showData(dSheet, me.detailSetting, dData);
         me.detailSpread.resumePaint();
-    }
+    },
+
+    saveCalcItem: function (projectID, templatesID, calcItem) {
+        let me = this;
+/*        let projectID = projectInfoObj.projectInfo.ID,
+            templatesID = me.datas,
+            calcItem = {
+                "ID" : 99,
+                "code" : "test",
+                "name" : "testName",
+                "fieldName" : "direct",
+                "dispExpr" : "F2+F5+F6+F10",
+                "expression" : "@('2') + @('5') + @('6') + @('10')",
+                "compiledExpr" : "",
+                "statement" : "基价人工费+基价材料费+基价机械费+未计价材料费"
+            };*/
+
+        $.ajax({
+            type: 'post',
+            url: '/calcProgram/saveCalcItem',
+            data: {projectID: projectID, templatesID: templatesID, calcItem: calcItem},
+            dataType: 'json',
+            success: function (result) {
+                if(!result.error){
+                    alert('成功:' + result.message);
+                }
+                else{
+                    alert('失败:' + result.message);
+                }
+            }
+        })
+    },
 };
 
 $(document).ready(function(){