|
@@ -2,6 +2,7 @@
|
|
|
* Created by vian on 2017/4/12.
|
|
|
*/
|
|
|
var dbController = {
|
|
|
+ controller: null,
|
|
|
currentEditData: null,
|
|
|
insert: function(controller, btn){
|
|
|
tools.btnClose(btn);
|
|
@@ -349,31 +350,33 @@ var dbController = {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
-
|
|
|
- editData: function(controller){
|
|
|
- controller.sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
|
|
|
- dbController.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
- });
|
|
|
- controller.sheet.bind(GC.Spread.Sheets.Events.EditEnded, function(sender, args){
|
|
|
- var node = controller.tree.selected, updateId, field;
|
|
|
- if(node){
|
|
|
- updateId = node.getID();
|
|
|
- field = billsLibSetting.cols[args.col].data.field;
|
|
|
- if(field === 'engineering'){
|
|
|
- if(isNaN(args.editingText) || args.editingText % 1 !== 0){
|
|
|
- args.sheet.setValue(args.row, args.col, dbController.currentEditData ? dbController.currentEditData : '');
|
|
|
- alert('工程专业只能输入整数!');
|
|
|
- return;
|
|
|
- }
|
|
|
+ onEditStart: function (sender, args) {
|
|
|
+ dbController.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
+ },
|
|
|
+ onEditEnded: function (sender, args) {
|
|
|
+ let controller = dbController.controller;
|
|
|
+ var node = controller.tree.selected, updateId, field;
|
|
|
+ if(node){
|
|
|
+ updateId = node.getID();
|
|
|
+ field = billsLibSetting.cols[args.col].data.field;
|
|
|
+ if(field === 'engineering'){
|
|
|
+ if(isNaN(args.editingText) || args.editingText % 1 !== 0){
|
|
|
+ args.sheet.setValue(args.row, args.col, dbController.currentEditData ? dbController.currentEditData : '');
|
|
|
+ alert('工程专业只能输入整数!');
|
|
|
+ return;
|
|
|
}
|
|
|
- node.data[field] = args.editingText;
|
|
|
- sheetBillsDatas.datasIdx['rowIdx'+ args.row][field] = args.editingText;
|
|
|
- billsAjax.updateBills(userAccount, billsLibId, updateId, field, args.editingText);
|
|
|
}
|
|
|
- else {
|
|
|
- args.sheet.getCell(args.row, args.col, GC.Spread.Sheets.SheetArea.viewport).value('');
|
|
|
- }
|
|
|
- });
|
|
|
+ node.data[field] = args.editingText;
|
|
|
+ sheetBillsDatas.datasIdx['rowIdx'+ args.row][field] = args.editingText;
|
|
|
+ billsAjax.updateBills(userAccount, billsLibId, updateId, field, args.editingText);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ args.sheet.getCell(args.row, args.col, GC.Spread.Sheets.SheetArea.viewport).value('');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editData: function(controller){
|
|
|
+ controller.sheet.bind(GC.Spread.Sheets.Events.EditStarting, this.onEditStart);
|
|
|
+ controller.sheet.bind(GC.Spread.Sheets.Events.EditEnded, this.onEditEnded);
|
|
|
}
|
|
|
};
|
|
|
|
|
@@ -1805,43 +1808,52 @@ let pasteController = {
|
|
|
|
|
|
var jobsController = {
|
|
|
currentEditData: null,
|
|
|
- editData: function(controller, sheet, totalJobs, setting){
|
|
|
+ totalJobs: null,
|
|
|
+ onEditStart: function (sender, args) {
|
|
|
+ let me = jobsController;
|
|
|
+ me.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
+ },
|
|
|
+ onEditEnded: function (sender, args) {
|
|
|
let me = jobsController;
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
|
|
|
- me.currentEditData = sheet.getValue(args.row, args.col);
|
|
|
+ let sheet = args.sheet;
|
|
|
+ let controller = dbController.controller;
|
|
|
+ let totalJobs = me.totalJobs;
|
|
|
+ let setting = jobsSetting;
|
|
|
+ var field, newData = args.editingText, id = sheet.getTag(args.row, args.col);
|
|
|
+ setting.cols.forEach(function (col, idx) {
|
|
|
+ if (args.col === idx) {
|
|
|
+ field = col.data.field;
|
|
|
+ }
|
|
|
});
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditEnded, function(sender, args) {
|
|
|
- var field, newData = args.editingText, id = sheet.getTag(args.row, args.col);
|
|
|
- setting.cols.forEach(function (col, idx) {
|
|
|
- if (args.col === idx) {
|
|
|
- field = col.data.field;
|
|
|
- }
|
|
|
- });
|
|
|
- if (controller.tree.selected && newData != me.currentEditData) {
|
|
|
- var isExist = tools.isExist(totalJobs.jobsArr, field, newData);
|
|
|
- var isRepeat = tools.isRepeat(controller.tree.selected.jobs, field ,newData, 'reference', 'job');
|
|
|
- //create
|
|
|
- if(!id && newData && !isRepeat){
|
|
|
- if(isExist){
|
|
|
- jobsController.createExist(sheet, controller, totalJobs, field, newData, args, setting);
|
|
|
- }
|
|
|
- else {
|
|
|
- jobsController.createNew(sheet, controller, totalJobs, field, newData, args, setting);
|
|
|
- }
|
|
|
+ if (controller.tree.selected && newData != me.currentEditData) {
|
|
|
+ var isExist = tools.isExist(totalJobs.jobsArr, field, newData);
|
|
|
+ var isRepeat = tools.isRepeat(controller.tree.selected.jobs, field ,newData, 'reference', 'job');
|
|
|
+ //create
|
|
|
+ if(!id && newData && !isRepeat){
|
|
|
+ if(isExist){
|
|
|
+ jobsController.createExist(sheet, controller, totalJobs, field, newData, args, setting);
|
|
|
}
|
|
|
- //update
|
|
|
- else if(id && !isRepeat){
|
|
|
- jobsController.update(sheet, controller, totalJobs, field, newData, id, isExist, args, setting);
|
|
|
- }
|
|
|
- //处理重复
|
|
|
- if(isRepeat){
|
|
|
- tools.alertOpr(args, sheet, '该工作内容已存在!', controller.tree.selected.jobs, 'job');
|
|
|
+ else {
|
|
|
+ jobsController.createNew(sheet, controller, totalJobs, field, newData, args, setting);
|
|
|
}
|
|
|
}
|
|
|
- else {
|
|
|
- sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ //update
|
|
|
+ else if(id && !isRepeat){
|
|
|
+ jobsController.update(sheet, controller, totalJobs, field, newData, id, isExist, args, setting);
|
|
|
}
|
|
|
- });
|
|
|
+ //处理重复
|
|
|
+ if(isRepeat){
|
|
|
+ tools.alertOpr(args, sheet, '该工作内容已存在!', controller.tree.selected.jobs, 'job');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editData: function(sheet){
|
|
|
+ let me = jobsController;
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditStarting, me.onEditStart);
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditEnded, me.onEditEnded);
|
|
|
},
|
|
|
|
|
|
|
|
@@ -2020,43 +2032,52 @@ var jobsController = {
|
|
|
|
|
|
var itemsController = {
|
|
|
currentEditData: null,
|
|
|
- editData: function(controller, sheet, totalItems, setting){
|
|
|
+ totalItems: null,
|
|
|
+ onEditStart: function (sender, args) {
|
|
|
let me = itemsController;
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
|
|
|
- me.currentEditData = sheet.getValue(args.row, args.col);
|
|
|
- })
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditEnded, function(sender, args) {
|
|
|
- var field, newData = args.editingText, id = sheet.getTag(args.row, args.col);
|
|
|
- setting.cols.forEach(function (col, idx) {
|
|
|
- if (args.col === idx) {
|
|
|
- field = col.data.field;
|
|
|
- }
|
|
|
- });
|
|
|
- if (controller.tree.selected && newData != me.currentEditData) {
|
|
|
- var isExist = tools.isExist(totalItems.itemsArr, field, newData);
|
|
|
- var isRepeat = tools.isRepeat(controller.tree.selected.items, field ,newData, 'reference', 'item');
|
|
|
- //create
|
|
|
- if(!id && newData && !isRepeat){
|
|
|
- if(isExist){
|
|
|
- itemsController.createExist(sheet, controller, totalItems, field, newData, args, setting);
|
|
|
- }
|
|
|
- else {
|
|
|
- itemsController.createNew(sheet, controller, totalItems, field, newData, args, setting);
|
|
|
- }
|
|
|
- }
|
|
|
- //update
|
|
|
- else if(id && !isRepeat){
|
|
|
- itemsController.update(sheet, controller, totalItems, field, newData, id, isExist, args, setting);
|
|
|
+ me.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
+ },
|
|
|
+ onEditEnded: function (sender, args) {
|
|
|
+ let me = itemsController;
|
|
|
+ let controller = dbController.controller;
|
|
|
+ let totalItems = me.totalItems;
|
|
|
+ let setting = itemsSetting;
|
|
|
+ let sheet = args.sheet;
|
|
|
+ var field, newData = args.editingText, id = sheet.getTag(args.row, args.col);
|
|
|
+ setting.cols.forEach(function (col, idx) {
|
|
|
+ if (args.col === idx) {
|
|
|
+ field = col.data.field;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ if (controller.tree.selected && newData != me.currentEditData) {
|
|
|
+ var isExist = tools.isExist(totalItems.itemsArr, field, newData);
|
|
|
+ var isRepeat = tools.isRepeat(controller.tree.selected.items, field ,newData, 'reference', 'item');
|
|
|
+ //create
|
|
|
+ if(!id && newData && !isRepeat){
|
|
|
+ if(isExist){
|
|
|
+ itemsController.createExist(sheet, controller, totalItems, field, newData, args, setting);
|
|
|
}
|
|
|
- //处理重复
|
|
|
- if(isRepeat){
|
|
|
- tools.alertOpr(args, sheet, '该项目特征已存在!', controller.tree.selected.items, 'item');
|
|
|
+ else {
|
|
|
+ itemsController.createNew(sheet, controller, totalItems, field, newData, args, setting);
|
|
|
}
|
|
|
}
|
|
|
- else {
|
|
|
- sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ //update
|
|
|
+ else if(id && !isRepeat){
|
|
|
+ itemsController.update(sheet, controller, totalItems, field, newData, id, isExist, args, setting);
|
|
|
}
|
|
|
- });
|
|
|
+ //处理重复
|
|
|
+ if(isRepeat){
|
|
|
+ tools.alertOpr(args, sheet, '该项目特征已存在!', controller.tree.selected.items, 'item');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editData: function(sheet){
|
|
|
+ let me = itemsController;
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditStarting, me.onEditStart);
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditEnded, me.onEditEnded);
|
|
|
},
|
|
|
|
|
|
createNew: function(sheet, controller, totalItems, field, newData, args, setting){
|
|
@@ -2211,39 +2232,46 @@ var itemsController = {
|
|
|
|
|
|
var valueController = {
|
|
|
currentEditData: null,
|
|
|
- editData: function(totalItems, sheet, setting){
|
|
|
+ onEditStart: function (sender, args) {
|
|
|
let me = valueController;
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
|
|
|
- me.currentEditData = sheet.getValue(args.row, args.col);
|
|
|
+ me.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
+ },
|
|
|
+ onEditEnded: function (sender, args) {
|
|
|
+ let me = valueController;
|
|
|
+ let totalItems = totalItemsController.totalItems;
|
|
|
+ let sheet = args.sheet;
|
|
|
+ let setting = eigenValueSetting;
|
|
|
+ var newValue = args.editingText, tagId = sheet.getTag(args.row, args.col), field, isRepeat;
|
|
|
+ setting.cols.forEach(function(col, colIdx){
|
|
|
+ if(args.col === colIdx){
|
|
|
+ field = col.data.field;
|
|
|
+ }
|
|
|
});
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditEnded, function(sender, args){
|
|
|
- var newValue = args.editingText, tagId = sheet.getTag(args.row, args.col), field, isRepeat;
|
|
|
- setting.cols.forEach(function(col, colIdx){
|
|
|
- if(args.col === colIdx){
|
|
|
- field = col.data.field;
|
|
|
- }
|
|
|
- });
|
|
|
- if(selectedId && newValue!== me.currentEditData){
|
|
|
- isRepeat = tools.isRepeat(valueController.getValues(totalItems, selectedId), field, newValue, 'document');
|
|
|
- if(!tagId && !isRepeat && newValue){//create
|
|
|
- valueController.createValue(sheet, totalItems, selectedId, field, newValue, args);
|
|
|
- }
|
|
|
- else if(tagId && !isRepeat){//update
|
|
|
- valueController.updateValue(totalItems, tagId, newValue, field, args);
|
|
|
+ if(selectedId && newValue!== me.currentEditData){
|
|
|
+ isRepeat = tools.isRepeat(valueController.getValues(totalItems, selectedId), field, newValue, 'document');
|
|
|
+ if(!tagId && !isRepeat && newValue){//create
|
|
|
+ valueController.createValue(sheet, totalItems, selectedId, field, newValue, args);
|
|
|
+ }
|
|
|
+ else if(tagId && !isRepeat){//update
|
|
|
+ valueController.updateValue(totalItems, tagId, newValue, field, args);
|
|
|
+ }
|
|
|
+ if(isRepeat){
|
|
|
+ if(tagId && newValue){
|
|
|
+ sheet.getCell(args.row, args.col, GC.Spread.Sheets.SheetArea.viewport).value(me.currentEditData);
|
|
|
}
|
|
|
- if(isRepeat){
|
|
|
- if(tagId && newValue){
|
|
|
- sheet.getCell(args.row, args.col, GC.Spread.Sheets.SheetArea.viewport).value(me.currentEditData);
|
|
|
- }
|
|
|
- else {
|
|
|
- sheet.getCell(args.row, args.col, GC.Spread.Sheets.SheetArea.viewport).value('');
|
|
|
- }
|
|
|
+ else {
|
|
|
+ sheet.getCell(args.row, args.col, GC.Spread.Sheets.SheetArea.viewport).value('');
|
|
|
}
|
|
|
}
|
|
|
- else{
|
|
|
- sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
- }
|
|
|
- });
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editData: function(sheet){
|
|
|
+ let me = valueController;
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditStarting, me.onEditStart);
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditEnded, me.onEditEnded);
|
|
|
},
|
|
|
createValue: function(sheet, totalItems, id, field, newValue, args){
|
|
|
var newData;
|
|
@@ -2346,34 +2374,42 @@ var valueController = {
|
|
|
|
|
|
var totalJobsController = {
|
|
|
currentEditData: null,
|
|
|
- eiditData: function(totalJobs, sheet, setting){
|
|
|
+ totalJobs: null,
|
|
|
+ onEditStart: function (sender, args) {
|
|
|
let me = totalJobsController;
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
|
|
|
- me.currentEditData = sheet.getValue(args.row, args.col);
|
|
|
- })
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditEnded, function(sender, args){
|
|
|
- var newData = args.editingText, tagId = sheet.getTag(args.row, args.col), field, isRepeat;
|
|
|
- setting.cols.forEach(function(col, colIdx){
|
|
|
- if(args.col === colIdx){
|
|
|
- field = col.data.field;
|
|
|
- }
|
|
|
- });
|
|
|
- if(newData != me.currentEditData){
|
|
|
- isRepeat = tools.isRepeat(totalJobs.jobsArr, field, newData, 'reference', null);
|
|
|
- if(!tagId && !isRepeat && newData){//create
|
|
|
- totalJobsController.createJob(sheet, totalJobs, field, newData, args);
|
|
|
- }
|
|
|
- else if(tagId && !isRepeat){//update
|
|
|
- totalJobsController.updateJob(totalJobs, tagId, field, newData, args);
|
|
|
- }
|
|
|
- if(isRepeat){
|
|
|
- tools.alertTotalOpr(args, '该工作内容已存在!', totalJobs.jobsArr);
|
|
|
- }
|
|
|
- }
|
|
|
- else{
|
|
|
- sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ me.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
+ },
|
|
|
+ onEditEnded: function (sender, args) {
|
|
|
+ let me = totalJobsController;
|
|
|
+ let totalJobs = me.totalJobs;
|
|
|
+ let sheet = args.sheet;
|
|
|
+ let setting = totalJobsSetting;
|
|
|
+ var newData = args.editingText, tagId = sheet.getTag(args.row, args.col), field, isRepeat;
|
|
|
+ setting.cols.forEach(function(col, colIdx){
|
|
|
+ if(args.col === colIdx){
|
|
|
+ field = col.data.field;
|
|
|
}
|
|
|
});
|
|
|
+ if(newData != me.currentEditData){
|
|
|
+ isRepeat = tools.isRepeat(totalJobs.jobsArr, field, newData, 'reference', null);
|
|
|
+ if(!tagId && !isRepeat && newData){//create
|
|
|
+ totalJobsController.createJob(sheet, totalJobs, field, newData, args);
|
|
|
+ }
|
|
|
+ else if(tagId && !isRepeat){//update
|
|
|
+ totalJobsController.updateJob(totalJobs, tagId, field, newData, args);
|
|
|
+ }
|
|
|
+ if(isRepeat){
|
|
|
+ tools.alertTotalOpr(args, '该工作内容已存在!', totalJobs.jobsArr);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editData: function(sheet){
|
|
|
+ let me = totalJobsController;
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditStarting, me.onEditStart);
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditEnded, me.onEditEnded);
|
|
|
},
|
|
|
|
|
|
createJob: function(sheet, totalJobs, field, newData, args){
|
|
@@ -2434,34 +2470,42 @@ var totalJobsController = {
|
|
|
|
|
|
var totalItemsController = {
|
|
|
currentEditData: null,
|
|
|
- eiditData: function(totalItems, sheet, setting){
|
|
|
+ totalItems: null,
|
|
|
+ onEditStart: function (sender, args) {
|
|
|
let me = totalItemsController;
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
|
|
|
- me.currentEditData = sheet.getValue(args.row, args.col);
|
|
|
+ me.currentEditData = args.sheet.getValue(args.row, args.col);
|
|
|
+ },
|
|
|
+ onEditEnded: function (sender, args) {
|
|
|
+ let me = totalItemsController;
|
|
|
+ let totalItems = me.totalItems;
|
|
|
+ let sheet = args.sheet;
|
|
|
+ let setting = totalItemsSetting;
|
|
|
+ var newData = args.editingText, tagId = sheet.getTag(args.row, args.col), field, isRepeat;
|
|
|
+ setting.cols.forEach(function(col, colIdx){
|
|
|
+ if(args.col === colIdx){
|
|
|
+ field = col.data.field;
|
|
|
+ }
|
|
|
});
|
|
|
- sheet.bind(GC.Spread.Sheets.Events.EditEnded, function(sender, args){
|
|
|
- var newData = args.editingText, tagId = sheet.getTag(args.row, args.col), field, isRepeat;
|
|
|
- setting.cols.forEach(function(col, colIdx){
|
|
|
- if(args.col === colIdx){
|
|
|
- field = col.data.field;
|
|
|
- }
|
|
|
- });
|
|
|
- if(newData != me.currentEditData){
|
|
|
- isRepeat = tools.isRepeat(totalItems.itemsArr, field, newData, 'reference', null);
|
|
|
- if(!tagId && !isRepeat && newData){//create
|
|
|
- totalItemsController.createItem(sheet, totalItems, field, newData, args);
|
|
|
- }
|
|
|
- else if(tagId && !isRepeat ){//update
|
|
|
- totalItemsController.updateItem(totalItems, tagId, field, newData, args);
|
|
|
- }
|
|
|
- else if(isRepeat){
|
|
|
- tools.alertTotalOpr(args, '该项目特征已存在!', totalItems.itemsArr);
|
|
|
- }
|
|
|
+ if(newData != me.currentEditData){
|
|
|
+ isRepeat = tools.isRepeat(totalItems.itemsArr, field, newData, 'reference', null);
|
|
|
+ if(!tagId && !isRepeat && newData){//create
|
|
|
+ totalItemsController.createItem(sheet, totalItems, field, newData, args);
|
|
|
}
|
|
|
- else{
|
|
|
- sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ else if(tagId && !isRepeat ){//update
|
|
|
+ totalItemsController.updateItem(totalItems, tagId, field, newData, args);
|
|
|
}
|
|
|
- });
|
|
|
+ else if(isRepeat){
|
|
|
+ tools.alertTotalOpr(args, '该项目特征已存在!', totalItems.itemsArr);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ sheet.getCell(args.row, args.col).value(me.currentEditData ? me.currentEditData : '');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editData: function(sheet){
|
|
|
+ let me = totalItemsController;
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditStarting, me.onEditStart);
|
|
|
+ sheet.bind(GC.Spread.Sheets.Events.EditEnded, me.onEditEnded);
|
|
|
},
|
|
|
|
|
|
createItem: function(sheet, totalItems, field, newData, args){
|