/** * Created by Mai on 2017/6/1. */ ProjectController = { addBills: function (project, mainSpread, std) { if (!project || !mainSpread) { return null; } var target = project.getParentTarget(project.mainTree.selected, 'sourceType', project.Bills.getSourceType()); var newSource = null, newNode = null, sels = billsSpread.getActiveSheet().getSelections(); if (std) { newSource = project.Bills.insertStdBills(target ? target.source.getParentID() : project.Bills.tree.setting.rootId, target ? target.source.getNextSiblingID() : project.Bills.tree.setting.rootId, std.data); } else { newSource = project.Bills.insertBills(target ? target.source.getParentID() : project.mainTree.setting.rootId, target ? target.source.getNextSiblingID() : project.mainTree.setting.rootId); } newNode = project.mainTree.insert(target.getParentID(), target.getNextSiblingID()); if (newNode) { newNode.source = newSource; newNode.sourceType = project.Bills.getSourceType(); newNode.data = newSource.data; TREE_SHEET_HELPER.massOperationSheet(controller.sheet, function () { controller.sheet.addRows(newNode.serialNo(), 1); TREE_SHEET_HELPER.refreshTreeNodeData(controller.setting, controller.sheet, [newNode], false); controller.setTreeSelected(newNode); controller.sheet.setSelection(newNode.serialNo(), sels[0].col, 1, 1); controller.sheet.showRow(newNode.serialNo(), GC.Spread.Sheets.VerticalPosition.center) }); }; } }