/** * Created by Mai on 2017/4/1. */ var PROJECT = { createNew: function () { // 定义private方法 var tools = {}; // 所有通过this访问的属性,都不应在此单元外部进行写入操作 var project = function () { this.mainTree = cacheTree.createNew(this); this.Bills = Bills.createNew(this); this.Rations = Rations.createNew(this); this.GLJs = GLJs.createNew(this); this.masterField = {ration: 'BillsID'}; }; // prototype用于定义public方法 project.prototype.modify = function (modifyDatas, callback) { // To Do }; project.prototype.loadMainTree = function () { var that = this; var loadRationNode = function (rations, cacheNode) { var newNode; rations.forEach(function (ration) { if (ration[that.masterField.ration] && ration[that.masterField.ration] === cacheNode.source.getID()) { newNode = that.mainTree.addNode(cacheNode); newNode.source = ration; newNode.sourceType = that.Rations.getSourceType(); newNode.data = ration; } }); }; var loadIdTreeNode = function (nodes, parent) { var newNode, i; for (i = 0; i < nodes.length; i++) { newNode = that.mainTree.addNode(parent); newNode.source = nodes[i]; newNode.sourceType = that.Bills.getSourceType(); newNode.data = nodes[i].data; if (nodes[i].children.length === 0) { loadRationNode(that.Rations.datas, newNode); } else { loadIdTreeNode(nodes[i].children, newNode); } } }; loadIdTreeNode(this.Bills.tree.roots, null); this.mainTree.sortTreeItems(); } return new project(); } };