|
|
@@ -667,7 +667,7 @@ let gljAdjOprObj = {
|
|
|
onClipboardPasting: function (sender, info) {
|
|
|
|
|
|
},
|
|
|
- getValidPasteDatas: function (pasteItems, info) {
|
|
|
+ getValidPasteDatas: function (pasteItems, info) {//2018-12-21 这里的if else 太多了,不好维护
|
|
|
let me = gljAdjOprObj;
|
|
|
let rst = [];
|
|
|
for(let i = 0, len = pasteItems.length; i < len; i++){
|
|
|
@@ -676,20 +676,21 @@ let gljAdjOprObj = {
|
|
|
//update
|
|
|
if(row < me.currentGljAdjList.length){
|
|
|
let updateObj = me.currentGljAdjList[row];
|
|
|
+ validObj.index = row;//要有下标做为匹配的依据,不然在复制多行并且某个单元格是只读的情况下,这里返回的updateList个数会比选中的行数少,造成更新行和实际不匹配的情况
|
|
|
if(typeof pasteItems[i].coeType !== 'undefined' && typeof pasteItems[i].gljCode !== 'undefined'){
|
|
|
let gljName = me.getGljName(pasteItems[i].gljCode, me.gljList);
|
|
|
- if(pasteItems[i].coeType === '单个工料机' && gljName){
|
|
|
+ if((updateObj.coeType === '单个工料机'||updateObj.coeType === '替换人材机') && gljName){
|
|
|
validObj.coeType = pasteItems[i].coeType;
|
|
|
validObj.gljCode = pasteItems[i].gljCode;
|
|
|
validObj.gljName = gljName;
|
|
|
}
|
|
|
- else if(pasteItems[i].coeType !== '单个工料机' && me.setting.comboItems.coeType.indexOf(pasteItems[i].coeType) !== -1){
|
|
|
+ else if((pasteItems[i].coeType !== '单个工料机'||pasteItems[i].coeType !== '替换人材机') && me.setting.comboItems.coeType.indexOf(pasteItems[i].coeType) !== -1){
|
|
|
validObj.coeType = pasteItems[i].coeType;
|
|
|
}
|
|
|
}
|
|
|
else if(typeof pasteItems[i].coeType === 'undefined' && typeof pasteItems[i].gljCode !== 'undefined'){
|
|
|
let gljName = me.getGljName(pasteItems[i].gljCode, me.gljList);
|
|
|
- if(typeof updateObj.coeType !== 'undefined' && updateObj.coeType === '单个工料机' && gljName){
|
|
|
+ if(typeof updateObj.coeType !== 'undefined' && (updateObj.coeType === '单个工料机'||updateObj.coeType === '替换人材机') && gljName){
|
|
|
validObj.gljCode = pasteItems[i].gljCode;
|
|
|
validObj.gljName = gljName;
|
|
|
}
|
|
|
@@ -697,13 +698,12 @@ let gljAdjOprObj = {
|
|
|
else if(typeof pasteItems[i].coeType !== 'undefined' && typeof pasteItems[i].gljCode === 'undefined'){
|
|
|
if(me.setting.comboItems.coeType.indexOf(pasteItems[i].coeType) !== -1){
|
|
|
validObj.coeType = pasteItems[i].coeType;
|
|
|
- if(validObj.coeType !== '单个工料机' && typeof updateObj.gljCode !== '单个工料机' && updateObj.gljCode.toString().trim().length > 0){
|
|
|
+ if(validObj.coeType !== '单个工料机' && typeof updateObj.coeType !== '单个工料机' && updateObj.gljCode.toString().trim().length > 0){
|
|
|
validObj.gljCode = '';
|
|
|
validObj.gljName = '';
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- else {
|
|
|
+ } else {
|
|
|
if(typeof pasteItems[i].operator !== 'undefined' && me.setting.comboItems.operator.indexOf(pasteItems[i].operator) !== -1){
|
|
|
validObj.operator = pasteItems[i].operator;
|
|
|
}
|
|
|
@@ -711,16 +711,21 @@ let gljAdjOprObj = {
|
|
|
validObj.amount = pasteItems[i].amount;
|
|
|
}
|
|
|
}
|
|
|
+ if(typeof pasteItems[i].replaceCode !== 'undefined' && updateObj.coeType === '替换人材机'){
|
|
|
+ let gljName = me.getGljName(pasteItems[i].replaceCode, me.gljList);
|
|
|
+ validObj.replaceCode = pasteItems[i].replaceCode;
|
|
|
+ validObj.replaceName = gljName;
|
|
|
+ }
|
|
|
}
|
|
|
else {
|
|
|
if(typeof pasteItems[i].coeType !== 'undefined' && typeof pasteItems[i].gljCode !== 'undefined'){
|
|
|
let gljName = me.getGljName(pasteItems[i].gljCode, me.gljList);
|
|
|
- if(pasteItems[i].coeType === '单个工料机' && gljName){
|
|
|
+ if((pasteItems[i].coeType === '单个工料机'||pasteItems[i].coeType === '替换人材机') && gljName){
|
|
|
validObj.coeType = pasteItems[i].coeType;
|
|
|
validObj.gljCode = pasteItems[i].gljCode;
|
|
|
validObj.gljName = gljName;
|
|
|
}
|
|
|
- else if(pasteItems[i].coeType !== '单个工料机' && me.setting.comboItems.coeType.indexOf(pasteItems[i].coeType) !== -1){
|
|
|
+ else if((pasteItems[i].coeType !== '单个工料机'||pasteItems[i].coeType !== '替换人材机') && me.setting.comboItems.coeType.indexOf(pasteItems[i].coeType) !== -1){
|
|
|
validObj.coeType = pasteItems[i].coeType;
|
|
|
}
|
|
|
}
|
|
|
@@ -749,8 +754,9 @@ let gljAdjOprObj = {
|
|
|
for(let i = 0, len = validDatas.length; i < len; i++){
|
|
|
row = i + info.cellRange.row;
|
|
|
//update
|
|
|
- if(row < me.currentGljAdjList.length){
|
|
|
- let updateObj = me.currentGljAdjList[row];
|
|
|
+ if(row < me.currentGljAdjList.length && typeof validDatas[i].index !=='undefined'){
|
|
|
+ let updateObj = me.currentGljAdjList[validDatas[i].index];//这里改成读取下标
|
|
|
+ delete validDatas[i].index; //清除下标
|
|
|
for(let attr in validDatas[i]){
|
|
|
updateObj[attr] = validDatas[i][attr];
|
|
|
}
|