123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- /**
- * Created by Mai on 2017/4/17.
- */
- $(document).ready(function () {
- var tempType = 3;
- var FormatUpdateData = function (data) {
- var updateData = {};
- updateData['user_id'] = userID;
- updateData['tempType'] = tempType;
- updateData['updateData'] = data;
- return updateData;
- };
- var RefreshBaseActn = function (tree) {
- var showButton = function (show, btn) {
- if (show) {
- btn.show();
- } else {
- btn.hide();
- }
- };
- showButton(tree.selected && tree.selected.canUpLevel(), $('#upLevel'));
- showButton(tree.selected && tree.selected.canDownLevel(), $('#downLevel'));
- showButton(tree.selected && tree.selected.canUpMove(), $('#upMove'));
- showButton(tree.selected && tree.selected.canDownMove(), $('#downMove'));
- showButton(tree.selected ? true : false, $('#delete'));
- }
- var RefreshBillsData = function (datas) {
- datas.forEach(function (data) {
- var node = tree.findNode(data.data.ID);
- if (node) {
- $.extend(true, node.data, data.data);
- }
- });
- };
- var tree = idTree.createNew({id: 'ID', pid: 'ParentID', nid: 'NextSiblingID', rootId: -1, autoUpdate: true});
- var billsSpread = new GC.Spread.Sheets.Workbook($('#billsSpread')[0], { sheetCount: 1 });
- var controller = TREE_SHEET_CONTROLLER.createNew(tree, billsSpread.getActiveSheet(), TEMPLATE_BILLS_SETTING);
- GC.Spread.Common.CultureManager.culture("zh-cn");
- billsSpread.options.tabStripVisible = false;
- billsSpread.options.scrollbarMaxAlign = true;
- billsSpread.options.cutCopyIndicatorVisible = false;
- billsSpread.options.allowCopyPasteExcelStyle = false;
- controller.bind('refreshBaseActn', RefreshBaseActn);
- billsSpread.bind(GC.Spread.Sheets.Events.EditEnded, function (sender, info) {
- var node = controller.tree.items[info.row];
- var fieldName = controller.setting.cols[info.col].data.field;
- var data = {type: 'update', data: {ID: node.getID()}};
- data.data[fieldName] = info.editingText;
- var updateData = FormatUpdateData([data]);
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- node.data[fieldName] = info.editingText;
- controller.refreshTreeNode([node], false);
- }, function () {
- controller.refreshTreeNode([node], false);
- });
- });
- billsSpread.bind(GC.Spread.Sheets.Events.ClipboardPasting, function (sender, args) {
- console.log("ClipboardPasting");
- });
- billsSpread.bind(GC.Spread.Sheets.Events.ClipboardPasted, function (e, info) {
- console.log("ClipboardPasted");
- var node, iRow, iCol, curRow, curCol, datas = [], data, fieldName, updateData;
- for (iRow = 0; iRow < info.cellRange.rowCount; iRow ++) {
- curRow = info.cellRange.row + iRow;
- node = controller.tree.items[curRow];
- if (node) {
- data = {type: 'update', data: {ID: node.getID()}};
- for (iCol = 0; iCol < info.cellRange.colCount; iCol++) {
- curCol = info.cellRange.col + iCol;
- fieldName = controller.setting.cols[curCol].data.field;
- data.data[fieldName] = info.sheet.getText(curRow, curCol);
- }
- datas.push(data);
- }
- };
- CommonAjax.post('/template/bills/api/updateBillsTemplate', FormatUpdateData(datas), function (data) {
- RefreshBillsData(data);
- controller.showTreeData();
- }, function () {
- controller.showTreeData();
- });
- });
- CommonAjax.post('/template/bills/api/getBillsTemplate', {tempType: tempType}, function (data) {
- var bills = data;
- tree.loadDatas(bills);
- controller.showTreeData();
- RefreshBaseActn(tree);
- }, function () {
- controller.showTreeData();
- RefreshBaseActn(tree);
- });
- $('#insert').click(function () {
- CommonAjax.post('/template/bills/api/getNewBillsTemplateID', {count: 1}, function (data) {
- var selected = controller.tree.selected, updateData;
- controller.tree.maxNodeID(data.lowID - 1);
- controller.tree.rangeNodeID(data.highID);
- if (selected) {
- updateData = FormatUpdateData(controller.tree.getInsertData(selected.getParentID(), selected.getNextSiblingID()));
- } else {
- updateData = FormatUpdateData(controller.tree.getInsertData());
- }
- if (updateData.updateData.length > 0) {
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- controller.insert();
- controller.showTreeData();
- });
- } else {
- alert('新增节点失败, 请重试.');
- }
- });
- });
- $('#delete').click(function () {
- var selected = controller.tree.selected, updateData;
- if (selected) {
- updateData = FormatUpdateData(controller.tree.getDeleteData(selected));
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- controller.delete();
- controller.showTreeData();
- });
- }
- });
- $('#upLevel').click(function () {
- var selected = controller.tree.selected, updateData;
- if (selected) {
- updateData = FormatUpdateData(selected.getUpLevelData());
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- controller.upLevel();
- controller.showTreeData();
- });
- }
- });
- $('#downLevel').click(function () {
- var selected = controller.tree.selected, updateData;
- if (selected) {
- updateData = FormatUpdateData(selected.getDownLevelData());
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- controller.downLevel();
- controller.showTreeData();
- });
- }
- });
- $('#upMove').click(function () {
- var selected = controller.tree.selected, updateData;
- if (selected) {
- updateData = FormatUpdateData(selected.getUpMoveData());
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- controller.upMove();
- controller.showTreeData();
- });
- }
- });
- $('#downMove').click(function () {
- var selected = controller.tree.selected, updateData;
- if (selected) {
- updateData = FormatUpdateData(selected.getDownMoveData());
- CommonAjax.post('/template/bills/api/updateBillsTemplate', updateData, function (data) {
- controller.downMove();
- controller.showTreeData();
- });
- }
- });
- });
|