|
@@ -6,6 +6,7 @@ let materialOjb = {
|
|
|
billsSpread:null,
|
|
|
materialSpread:null,
|
|
|
billsList:JSON.parse(billsList),
|
|
|
+ materialList:[],
|
|
|
billsSetting:{
|
|
|
header: [
|
|
|
{headerName: "清单编号", headerWidth: 180, dataCode: "code", dataType: "String",formatter: "@"},
|
|
@@ -51,17 +52,31 @@ let materialOjb = {
|
|
|
|
|
|
},
|
|
|
canDelete : function (sheet) {
|
|
|
+ let me = this;
|
|
|
let sel = sheet.getSelections()[0];
|
|
|
- console.log(sel);
|
|
|
+ let datas = sheet.name() == 'billsSheet'?me.billsList:me.materialList;
|
|
|
if(sel.row === undefined || sel.row < 0) return false ;//一行都没选中时,不能删除
|
|
|
-
|
|
|
- //选中空行时,不能删除
|
|
|
- // to do
|
|
|
+ if((sel.row + sel.rowCount) > datas.length) return false;//选中了空行,不能删除
|
|
|
return true;
|
|
|
},
|
|
|
+ deleteBills : async function(sheet){
|
|
|
+ let me = this,deleteList = [];
|
|
|
+ let sel = sheet.getSelections()[0];
|
|
|
+ for(let i = 0;i<sel.rowCount;i++){
|
|
|
+ if(me.billsList[sel.row + i]) deleteList.push(getDeleteDatas(me.billsList[sel.row + i]));
|
|
|
+ }
|
|
|
+ if(deleteList.length > 0) await me.saveBills(deleteList);
|
|
|
+
|
|
|
+
|
|
|
+ function getDeleteDatas(tem) {
|
|
|
+ return {type:'delete', ID:tem.ID}
|
|
|
+ }
|
|
|
+
|
|
|
+ },
|
|
|
|
|
|
initRightClick : function(id,spread) {
|
|
|
let me = this;
|
|
|
+ let sheet = spread.getActiveSheet();
|
|
|
$.contextMenu({
|
|
|
selector: '#'+id,
|
|
|
build: function ($trigger, e) {
|
|
@@ -74,10 +89,11 @@ let materialOjb = {
|
|
|
name: "删除",
|
|
|
icon: 'fa-trash-o',
|
|
|
disabled: function () {
|
|
|
- return !me.canDelete(spread.getActiveSheet());
|
|
|
+ return !me.canDelete(sheet);
|
|
|
},
|
|
|
callback: function (key, opt) {
|
|
|
- console.log();
|
|
|
+ sheet.name() == 'billsSheet' ? me.deleteBills(sheet):"";
|
|
|
+ console.log( me.rightClickTarget);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -163,7 +179,9 @@ let materialOjb = {
|
|
|
this.updateCache(l.code,l.updateData)
|
|
|
}
|
|
|
}if(r.type == 'delete'){
|
|
|
-
|
|
|
+ _.remove(this.billsList,function (item) {
|
|
|
+ return _.includes(r.list,item.ID)
|
|
|
+ })
|
|
|
}
|
|
|
}
|
|
|
if(missCodes.length > 0) alert(`没有找到清单:${missCodes.join("、")}`);
|