|
@@ -366,7 +366,7 @@ var tools = {
|
|
|
},
|
|
|
|
|
|
reSetCell: function(sheet, rowIdx, colIdx, value, id){
|
|
|
- if(value && colIdx){
|
|
|
+ if(value && colIdx!== null){
|
|
|
console.log(`enterResetCell`);
|
|
|
sheet.getCell(rowIdx, colIdx, GC.Spread.Sheets.SheetArea.viewport).value(value);
|
|
|
}
|
|
@@ -384,6 +384,19 @@ var tools = {
|
|
|
return index;
|
|
|
},
|
|
|
|
|
|
+ getNewCode: function(totalObj, classify){
|
|
|
+ let arr;
|
|
|
+ if(classify === 'jobs'){
|
|
|
+ arr = totalObj.jobsArr;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ arr = totalObj.itemsArr;
|
|
|
+ }
|
|
|
+ tools.resort(arr, 'code', false);
|
|
|
+ return arr.length > 0 ? arr[arr.length - 1].data.code : 0;
|
|
|
+
|
|
|
+ },
|
|
|
+
|
|
|
delteSheets: function(controller, totalJobs, totalItems, jobsSheet, itemsSheet){
|
|
|
var delJobs = controller.tree.selected.jobs;
|
|
|
var delItems = controller.tree.selected.items;
|
|
@@ -437,8 +450,6 @@ var tools = {
|
|
|
},
|
|
|
|
|
|
resort: function(arr, attr, isValue){
|
|
|
- console.log(`enterresort`);
|
|
|
- //var arr = node.jobs;
|
|
|
function compare(attr){
|
|
|
return function (a, b){
|
|
|
var valA, valB;
|
|
@@ -455,9 +466,7 @@ var tools = {
|
|
|
}
|
|
|
arr.sort(compare(attr));
|
|
|
},
|
|
|
- resortArr: function(arr, attr){
|
|
|
|
|
|
- },
|
|
|
reshowData: function(sheet, arr, setting, isResort){
|
|
|
let time = new Date().getTime();
|
|
|
console.log(`enterreshowData ${time}`);
|
|
@@ -760,7 +769,7 @@ var tools = {
|
|
|
};
|
|
|
return pasteDatas;
|
|
|
},
|
|
|
- rebuildArr: function(arr){
|
|
|
+ rebuildArr: function(arr, classify){
|
|
|
let conformDatas = [];
|
|
|
let flag = true;
|
|
|
for(let i=0; i< arr.length; i++){
|
|
@@ -769,22 +778,46 @@ var tools = {
|
|
|
flag = false;
|
|
|
let field = arr[i].field;
|
|
|
let conformData;
|
|
|
- if(field === 'code'){
|
|
|
- conformData = {
|
|
|
- billsLibId: billsLibId,
|
|
|
- code: arr[i].data,
|
|
|
- content: arr[j].data,
|
|
|
- rowIdx: arr[i].rowIdx,
|
|
|
- type: 'CreateT'
|
|
|
+ if(classify === 'create'){
|
|
|
+ if(field === 'code'){
|
|
|
+ conformData = {
|
|
|
+ billsLibId: billsLibId,
|
|
|
+ code: arr[i].data,
|
|
|
+ content: arr[j].data,
|
|
|
+ rowIdx: arr[i].rowIdx,
|
|
|
+ type: 'CreateT'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ conformData = {
|
|
|
+ billsLIbId: billsLibId,
|
|
|
+ code: arr[j].data,
|
|
|
+ content: arr[i].data,
|
|
|
+ rowIdx: arr[i].rowIdx,
|
|
|
+ type: 'CreateT'
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
else {
|
|
|
- conformData = {
|
|
|
- billsLIbId: billsLibId,
|
|
|
- code: arr[j].data,
|
|
|
- content: arr[i].data,
|
|
|
- rowIdx: arr[i].rowIdx,
|
|
|
- type: 'CreateT'
|
|
|
+ if(field === 'code'){
|
|
|
+ conformData = {
|
|
|
+ billsLibId: billsLibId,
|
|
|
+ code: arr[i].data,
|
|
|
+ content: arr[j].data,
|
|
|
+ rowIdx: arr[i].rowIdx,
|
|
|
+ orgId: arr[i].orgId,
|
|
|
+ type: 'UpdateT'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ conformData = {
|
|
|
+ billsLIbId: billsLibId,
|
|
|
+ code: arr[j].data,
|
|
|
+ content: arr[i].data,
|
|
|
+ rowIdx: arr[i].rowIdx,
|
|
|
+ orgId: arr[i].orgId,
|
|
|
+ type: 'UpdateT'
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
conformDatas.push(conformData);
|
|
@@ -810,10 +843,6 @@ var tools = {
|
|
|
};
|
|
|
|
|
|
let pasteController = {
|
|
|
- frontController: function(sheet){
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
frontOperator: function(sheet, setting, controller, totalJobs, pasteDatas){
|
|
|
const UpdateExist = 'updateExist', UpdateNew = 'updateNew', CreateExist = 'createExist', CreateNew = 'createNew';
|
|
|
let updateDatas = pasteDatas.updateDatas, createDatas = pasteDatas.createDatas;
|
|
@@ -961,7 +990,7 @@ let pasteController = {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- rebuildArr = tools.rebuildArr(uncrossedDatas);
|
|
|
+ rebuildArr = tools.rebuildArr(uncrossedDatas, 'create');
|
|
|
function myCompare(a, b){
|
|
|
if(a.rowIdx > b.rowIdx)
|
|
|
return 1;
|
|
@@ -976,18 +1005,20 @@ let pasteController = {
|
|
|
maxJobsNumber++;
|
|
|
maxJobsNumber = maxJobsNumber >= rebuildArr[i].code ? maxJobsNumber : rebuildArr[i].code;
|
|
|
let id = maxJobsNumber;
|
|
|
- rebuildArr[i].code = maxJobsNumber;
|
|
|
+ //rebuildArr[i].code = maxJobsNumber;
|
|
|
rebuildArr[i].id = id;
|
|
|
- newJobData = {id: id, content: rebuildArr[i].content, code: maxJobsNumber};
|
|
|
+ newJobData = {id: id, content: rebuildArr[i].content, code: rebuildArr[i].code};
|
|
|
newJob = createObj.newJob(newJobData);
|
|
|
totalJobs.jobsArr.push(newJob);
|
|
|
}
|
|
|
if(rebuildArr[i].type !== 'CreateT' && rebuildArr[i].field === 'content'){
|
|
|
maxJobsNumber++;
|
|
|
let id = maxJobsNumber;
|
|
|
+ let code = tools.getNewCode(totalJobs, 'jobs');
|
|
|
+ code++;
|
|
|
rebuildArr[i].id = id;
|
|
|
- rebuildArr[i].code = maxJobsNumber;
|
|
|
- newJobData = {id: id, content: rebuildArr[i].data, code: maxJobsNumber};
|
|
|
+ rebuildArr[i].code = code;
|
|
|
+ newJobData = {id: id, content: rebuildArr[i].data, code: code};
|
|
|
newJob = createObj.newJob(newJobData);
|
|
|
totalJobs.jobsArr.push(newJob);
|
|
|
}
|
|
@@ -995,9 +1026,9 @@ let pasteController = {
|
|
|
maxJobsNumber++;
|
|
|
maxJobsNumber = maxJobsNumber >= rebuildArr[i].data ? maxJobsNumber : rebuildArr[i].data;
|
|
|
let id = maxJobsNumber;
|
|
|
- rebuildArr[i].data = maxJobsNumber;
|
|
|
+ // rebuildArr[i].data = maxJobsNumber;
|
|
|
rebuildArr[i].id = id;
|
|
|
- newJobData = {id: id, content: '', code: maxJobsNumber};
|
|
|
+ newJobData = {id: id, content: '', code: rebuildArr[i].data};
|
|
|
newJob = createObj.newJob(newJobData);
|
|
|
totalJobs.jobsArr.push(newJob);
|
|
|
}
|
|
@@ -1049,7 +1080,7 @@ let pasteController = {
|
|
|
uncrossedDatas.splice(i--, 1);
|
|
|
}
|
|
|
}
|
|
|
- rebuildArr = tools.rebuildArr(uncrossedDatas);
|
|
|
+ rebuildArr = tools.rebuildArr(uncrossedDatas, 'create');
|
|
|
function myCompare(a, b){
|
|
|
if(a.rowIdx > b.rowIdx)
|
|
|
return 1;
|
|
@@ -1064,30 +1095,33 @@ let pasteController = {
|
|
|
maxItemsNumber++;
|
|
|
maxItemsNumber = maxItemsNumber >= rebuildArr[i].code ? maxItemsNumber : rebuildArr[i].code;
|
|
|
let id = maxItemsNumber;
|
|
|
- rebuildArr[i].code = maxItemsNumber;
|
|
|
rebuildArr[i].id = id;
|
|
|
- newItemData = {id: id, content: rebuildArr[i].content, code: maxItemsNumber};
|
|
|
+ newItemData = {id: id, content: rebuildArr[i].content, code: rebuildArr[i].code, itemValue:[]};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
totalItems.itemsArr.push(newItem);
|
|
|
+ totalItems.items[totalItems.prefix + id] = newItem;
|
|
|
}
|
|
|
if(rebuildArr[i].type !== 'CreateT' && rebuildArr[i].field === 'content'){
|
|
|
maxItemsNumber++;
|
|
|
let id = maxItemsNumber;
|
|
|
+ let code = tools.getNewCode(totalItems, 'items');
|
|
|
+ code++;
|
|
|
rebuildArr[i].id = id;
|
|
|
- rebuildArr[i].code = maxItemsNumber;
|
|
|
- newItemData = {id: id, content: rebuildArr[i].data, code: maxItemsNumber};
|
|
|
+ rebuildArr[i].code = code;
|
|
|
+ newItemData = {id: id, content: rebuildArr[i].data, code: code, itemValue:[]};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
totalItems.itemsArr.push(newItem);
|
|
|
+ totalItems.items[totalItems.prefix + id] = newItem;
|
|
|
}
|
|
|
if(rebuildArr[i].type !== 'CreateT' && rebuildArr[i].field === 'code'){
|
|
|
maxItemsNumber++;
|
|
|
maxItemsNumber = maxItemsNumber >= rebuildArr[i].data ? maxItemsNumber : rebuildArr[i].data;
|
|
|
let id = maxItemsNumber;
|
|
|
- rebuildArr[i].data = maxItemsNumber;
|
|
|
rebuildArr[i].id = id;
|
|
|
- newItemData = {id: id, content: '', code: maxItemsNumber};
|
|
|
+ newItemData = {id: id, content: '', code: rebuildArr[i].data};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
totalItems.itemsArr.push(newItem);
|
|
|
+ totalItems.items[totalItems.prefix + id] = newItem;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1098,6 +1132,121 @@ let pasteController = {
|
|
|
createDatas: rebuildArr
|
|
|
};
|
|
|
itemsAjax.pasteItems(backendDatas);
|
|
|
+ },
|
|
|
+
|
|
|
+ pasteValueFront: function(sheet, totalItems, uncrossedDatas, crossedDatas){
|
|
|
+ let rebuildArr =[];
|
|
|
+ let rebuildUpdateDatas = [];
|
|
|
+ let backendUpdateDatas = [];
|
|
|
+ let valuesArr = valueController.getValues(totalItems, selectedId);
|
|
|
+ function myCompare(a, b){
|
|
|
+ if(a.rowIdx > b.rowIdx)
|
|
|
+ return 1;
|
|
|
+ if(a.rowIdx < b.rowIdx)
|
|
|
+ return -1;
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ if(crossedDatas.length > 0){
|
|
|
+ for(let i=0; i< crossedDatas.length; i++){
|
|
|
+ let field = crossedDatas[i].field, data = crossedDatas[i].data;
|
|
|
+ let isRepeat = tools.isRepeat(valuesArr, field, data, 'document');
|
|
|
+ if(isRepeat){
|
|
|
+ crossedDatas.splice(i--, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for(let i=0; i< crossedDatas.length; i++){
|
|
|
+ let field = crossedDatas[i].field, data = crossedDatas[i].data;
|
|
|
+ if(crossedDatas[i].field === 'code' && typeof data !== 'number' ){
|
|
|
+ crossedDatas.splice(i--, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ rebuildUpdateDatas = tools.rebuildArr(crossedDatas, 'update');
|
|
|
+ rebuildUpdateDatas.sort(myCompare);
|
|
|
+ for(let i =0; i< rebuildUpdateDatas.length; i++){
|
|
|
+ rebuildUpdateDatas[i].itemId = selectedId;
|
|
|
+ let index;
|
|
|
+ if(rebuildUpdateDatas[i].type === 'UpdateT'){
|
|
|
+ if(valuesArr){
|
|
|
+ for(let j=0; j< valuesArr.length; j++){
|
|
|
+ if(rebuildUpdateDatas[i].orgId === valuesArr[j].code){
|
|
|
+ index = j;
|
|
|
+ valuesArr.splice(j--, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let updateEle = {code: rebuildUpdateDatas[i].code, value: rebuildUpdateDatas[i].content};
|
|
|
+ valuesArr.splice(index, 0, updateEle);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(rebuildUpdateDatas[i].type !== 'UpdateT' && rebuildUpdateDatas[i].field === 'code'){
|
|
|
+ if(valuesArr){
|
|
|
+ for(let j=0; j< valuesArr.length; j++){
|
|
|
+ if(rebuildUpdateDatas[i].orgId === valuesArr[j].code){
|
|
|
+ valuesArr[j].code = rebuildUpdateDatas[i].data;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(rebuildUpdateDatas[i].type !== 'UpdateT' && rebuildUpdateDatas[i].field === 'value'){
|
|
|
+ if(valuesArr){
|
|
|
+ for(let j=0; j< valuesArr.length; j++){
|
|
|
+ if(rebuildUpdateDatas[i].orgId === valuesArr[j].code){
|
|
|
+ valuesArr[j].value = rebuildUpdateDatas[i].data
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(uncrossedDatas.length > 0){
|
|
|
+ for(let i=0; i< uncrossedDatas.length; i++){
|
|
|
+ let field = uncrossedDatas[i].field;
|
|
|
+ let isRepeat = tools.isRepeat(valuesArr, field, uncrossedDatas[i].data, 'document');
|
|
|
+ if(isRepeat){
|
|
|
+ uncrossedDatas.splice(i--, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for(let i=0; i< uncrossedDatas.length; i++){
|
|
|
+ let field = uncrossedDatas[i].field;
|
|
|
+ if(uncrossedDatas[i].field === 'code' && typeof uncrossedDatas[i].data !== 'number' ){
|
|
|
+ uncrossedDatas.splice(i--, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ rebuildArr = tools.rebuildArr(uncrossedDatas, 'create');
|
|
|
+ rebuildArr.sort(myCompare);
|
|
|
+ for(let i=0; i< rebuildArr.length; i++){
|
|
|
+ let newValueData, newValue;
|
|
|
+ let newCode = valueController.getCode(totalItems, selectedId);
|
|
|
+ if(rebuildArr[i].type === 'CreateT'){
|
|
|
+ rebuildArr[i].itemId = selectedId;
|
|
|
+ newValueData = {value: rebuildArr[i].content, code: rebuildArr[i].code};
|
|
|
+ valuesArr.push(newValueData);
|
|
|
+
|
|
|
+ }
|
|
|
+ if(rebuildArr[i].type !== 'CreateT' && rebuildArr[i].field === 'value'){
|
|
|
+ rebuildArr[i].itemId = selectedId;
|
|
|
+ rebuildArr[i].code = newCode;
|
|
|
+ newValueData = {value: rebuildArr[i].data, code: newCode};
|
|
|
+ valuesArr.push(newValueData);
|
|
|
+ }
|
|
|
+ if(rebuildArr[i].type !== 'CreateT' && rebuildArr[i].field === 'code'){
|
|
|
+ //newCode = newCode >= rebuildArr[i].data ? newCode : rebuildArr[i].data;
|
|
|
+ //rebuildArr[i].data = newCode;
|
|
|
+ rebuildArr[i].itemId = selectedId;
|
|
|
+ newValueData = {value: '', code: rebuildArr[i].data};
|
|
|
+ valuesArr.push(newValueData);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ tools.reshowValue(sheet, valuesArr, eigenValueSetting, true);
|
|
|
+ //backendOP
|
|
|
+ let backendDatas = {
|
|
|
+ updateDatas: rebuildUpdateDatas,
|
|
|
+ createDatas: rebuildArr
|
|
|
+ };
|
|
|
+ if(rebuildUpdateDatas.length >0 || rebuildArr.length >0){
|
|
|
+ itemsAjax.pasteValues(backendDatas);
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
};
|
|
|
|
|
@@ -1149,9 +1298,12 @@ var jobsController = {
|
|
|
createNew: function(sheet, controller, totalJobs, field, newData, args, setting){
|
|
|
if(field === 'content'){
|
|
|
maxJobsNumber++;
|
|
|
- jobsAjax.createJobContent(billsLibId, newData, maxJobsNumber, maxJobsNumber);
|
|
|
+ let code = tools.getNewCode(totalJobs, 'jobs');
|
|
|
+ code++;
|
|
|
+ console.log(`code:: ${code}`);
|
|
|
+ jobsAjax.createJobContent(billsLibId, newData, code, maxJobsNumber);
|
|
|
var newJobData, newJob;
|
|
|
- newJobData = {id: maxJobsNumber, content: newData, code: maxJobsNumber};
|
|
|
+ newJobData = {id: maxJobsNumber, content: newData, code: code};
|
|
|
newJob = createObj.newJob(newJobData);
|
|
|
newJob.count = 1;
|
|
|
totalJobs.jobs[totalJobs.prefix + maxJobsNumber] = newJob;
|
|
@@ -1206,9 +1358,11 @@ var jobsController = {
|
|
|
else{
|
|
|
if(field === 'content'){
|
|
|
maxJobsNumber++;
|
|
|
- jobsAjax.createJobContent(billsLibId, newData, maxJobsNumber, maxJobsNumber);
|
|
|
+ let code = tools.getNewCode(totalJobs, 'jobs');
|
|
|
+ code++;
|
|
|
+ jobsAjax.createJobContent(billsLibId, newData, code, maxJobsNumber);
|
|
|
var newJobData, newJob;
|
|
|
- newJobData = {id: maxJobsNumber, content: newData, code: maxJobsNumber};
|
|
|
+ newJobData = {id: maxJobsNumber, content: newData, code: code};
|
|
|
newJob = createObj.newJob(newJobData);
|
|
|
newJob.count = 1;
|
|
|
totalJobs.jobs[totalJobs.prefix + maxJobsNumber] = newJob;
|
|
@@ -1283,9 +1437,11 @@ var itemsController = {
|
|
|
if(field === 'content'){
|
|
|
maxItemsNumber++;
|
|
|
let id = maxItemsNumber;
|
|
|
- itemsAjax.createItemCharacter(billsLibId, newData, maxItemsNumber, id);
|
|
|
+ let code = tools.getNewCode(totalItems, 'items');
|
|
|
+ code++;
|
|
|
+ itemsAjax.createItemCharacter(billsLibId, newData, code, id);
|
|
|
var newItemData, newItem;
|
|
|
- newItemData = {id: id, content: newData, code: maxItemsNumber};
|
|
|
+ newItemData = {id: id, content: newData, code: code};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
newItem.count = 1;
|
|
|
totalItems.items[totalItems.prefix + id] = newItem;
|
|
@@ -1350,9 +1506,11 @@ var itemsController = {
|
|
|
if(field === 'content'){
|
|
|
maxItemsNumber++;
|
|
|
let newId = maxItemsNumber;
|
|
|
- itemsAjax.createItemCharacter(billsLibId,newData, maxItemsNumber, newId);
|
|
|
+ let code = tools.getNewCode(totalItems, 'items');
|
|
|
+ code++;
|
|
|
+ itemsAjax.createItemCharacter(billsLibId,newData, code, newId);
|
|
|
var newItemData, newItem;
|
|
|
- newItemData = {id: newId, content: newData, code: maxItemsNumber};
|
|
|
+ newItemData = {id: newId, content: newData, code: code};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
newItem.count = 1;
|
|
|
totalItems.items[totalItems.prefix + newId] = newItem;
|
|
@@ -1408,15 +1566,11 @@ var valueController = {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
-
|
|
|
createValue: function(sheet, totalItems, id, field, newValue){
|
|
|
var newData;
|
|
|
if(field === 'value'){
|
|
|
var newCode = valueController.getCode(totalItems, id);
|
|
|
newData = {code: newCode, value: newValue};
|
|
|
- console.log(`newCode: ${newCode}`);
|
|
|
- console.log(`id: ${id}`);
|
|
|
- console.log(sheet.getActiveRowIndex());
|
|
|
tools.reSetCell(sheet, sheet.getActiveRowIndex(), 0, newCode, newCode);
|
|
|
}
|
|
|
else {
|
|
@@ -1429,6 +1583,8 @@ var valueController = {
|
|
|
sheet.getCell(args.row, args.col).value('');
|
|
|
}
|
|
|
}
|
|
|
+ console.log(`finItem`);
|
|
|
+ console.log(totalItems.findItem(id).data);
|
|
|
totalItems.findItem(id).data.itemValue.push(newData);
|
|
|
itemsAjax.updateValue(billsLibId, id, newData, null, 'create');
|
|
|
},
|
|
@@ -1484,8 +1640,13 @@ var valueController = {
|
|
|
|
|
|
getCode: function(totalItems, id){
|
|
|
var valArr = totalItems.findItem(id).data.itemValue;
|
|
|
- tools.resort(valArr, 'code', true);
|
|
|
- return valArr.length > 0 ? valArr[valArr.length - 1].code + 1 : 1;
|
|
|
+ if(valArr){
|
|
|
+ tools.resort(valArr, 'code', true);
|
|
|
+ return valArr.length > 0 ? valArr[valArr.length - 1].code + 1 : 1;
|
|
|
+ }else {
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+
|
|
|
},
|
|
|
|
|
|
isRepeat: function(arr, newValue){
|
|
@@ -1533,12 +1694,14 @@ var totalJobsController = {
|
|
|
if(field === 'content'){
|
|
|
maxJobsNumber++;
|
|
|
let id = maxJobsNumber;
|
|
|
- jobsAjax.createJobContent(billsLibId, newData, maxJobsNumber, id);
|
|
|
+ let code = tools.getNewCode(totalJobs, 'jobs');
|
|
|
+ code++;
|
|
|
+ jobsAjax.createJobContent(billsLibId, newData, code, id);
|
|
|
var newJobData, newJob;
|
|
|
- newJobData = {id: id, content: newData, code: maxJobsNumber};
|
|
|
+ newJobData = {id: id, content: newData, code: code};
|
|
|
newJob = createObj.newJob(newJobData);
|
|
|
totalJobs.jobsArr.push(newJob);
|
|
|
- tools.reSetCell(sheet, args.row, 0, maxJobsNumber, id);
|
|
|
+ tools.reSetCell(sheet, args.row, 0, code, id);
|
|
|
}
|
|
|
else {
|
|
|
if(typeof newData === 'number'){
|
|
@@ -1608,24 +1771,28 @@ var totalItemsController = {
|
|
|
createItem: function(sheet, totalItems, field, newData, args){
|
|
|
if(field === 'content'){
|
|
|
maxItemsNumber++;
|
|
|
- itemsAjax.createItemCharacter(billsLibId, newData, maxItemsNumber, function(id){
|
|
|
+ let id = maxItemsNumber;
|
|
|
+ let code = tools.getNewCode(totalItems, 'items');
|
|
|
+ code++;
|
|
|
+ itemsAjax.createItemCharacter(billsLibId, newData, code, id);
|
|
|
var newItemData, newItem;
|
|
|
- newItemData = {id: id, content: newData, code: maxItemsNumber};
|
|
|
+ newItemData = {id: id, content: newData, code: code, itemValue: []};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
totalItems.itemsArr.push(newItem);
|
|
|
- tools.reSetCell(sheet, args.row, 0, maxItemsNumber, id);
|
|
|
- });
|
|
|
+ totalItems.items[totalItems.prefix + id] = newItem;
|
|
|
+ tools.reSetCell(sheet, args.row, 0, code, id);
|
|
|
}
|
|
|
else {
|
|
|
if(typeof newData === 'number'){
|
|
|
maxItemsNumber = maxItemsNumber >= newData ? maxItemsNumber : newData;
|
|
|
- itemsAjax.createItemCharacter(billsLibId, '', newData, function(id){
|
|
|
+ let id = maxItemsNumber;
|
|
|
+ itemsAjax.createItemCharacter(billsLibId, '', newData, id);
|
|
|
var newItemData, newItem;
|
|
|
- newItemData = {id: id, content: '', code: newData};
|
|
|
+ newItemData = {id: id, content: '', code: newData, itemValue: []};
|
|
|
newItem = createObj.newItem(newItemData);
|
|
|
totalItems.itemsArr.push(newItem);
|
|
|
+ totalItems.items[totalItems.prefix + id] = newItem;
|
|
|
tools.reSetCell(sheet, args.row, 0, null, id);
|
|
|
- });
|
|
|
}
|
|
|
else {
|
|
|
//编号只能为数字
|