zhangweicheng 7 år sedan
förälder
incheckning
ef6514d0c9

+ 4 - 0
web/building_saas/main/js/models/ration.js

@@ -403,12 +403,16 @@ var Ration = {
                            node.data[temkey] = recode.ration[temkey];
                        }
                        node.data.feesIndex = {};
+                       //删除定额节点下的主材和设备节点
+                       project.Ration.removeNodeByRation(recode.ration,projectObj.mainController);
                        project.Ration.deleteSubListOfRation(recode.ration);//删除旧定额下的相关记录
                        //添加新的记录
                        project.ration_glj.addDatasToList(recode.ration_gljs);
                        project.ration_coe.addDatasToList(recode.ration_coes);
                        project.ration_installation.addDatasToList(recode.ration_installs);
                        //to do 添加增加安装费
+
+                       project.ration_glj.addToMainTree(recode.ration_gljs);
                    }
                 }
                 project.projectGLJ.loadData(function () {

+ 17 - 0
web/building_saas/main/js/models/ration_glj.js

@@ -196,6 +196,23 @@ var ration_glj = {
                 }
             }
         };
+        ration_glj.prototype.removeNodeByRation = function(ration,controller){//删除主材或设备节点
+            let glj_list = _.filter(projectObj.project.ration_glj.datas,{'rationID':ration.ID});
+            let deleteNodes = [];
+            for(let rg of glj_list){
+                if(this.needShowToTree(rg)){
+                    let r_node = projectObj.project.mainTree.getNodeByID(rg.ID);
+                    deleteNodes.push(r_node);
+                }
+            }
+            if(deleteNodes.length > 0){
+                if(controller.tree.m_delete(deleteNodes)){
+                    let rowCount = deleteNodes.length;
+                    controller.sheet.deleteRows(deleteNodes[0].serialNo(), rowCount);
+                }
+            }
+        };
+
         ration_glj.prototype.refreshAfterUpdate = function (data) {
             var me = this;
             var rationID=null;