//列表每一条数据多选 选择一行(取消一行选中)
handleChangeCheckBoxRow = (item, index, e, trades) =>{//console.log(item, index, e, trades)
let {tradeIdsList,templeNewId,isPrint} = this.state;
let {checkedList, checkedRow, keyIDNum}= this.props
let checkedListNew=_.cloneDeep(checkedList);
let tradeIdsListNew=_.cloneDeep(tradeIdsList);
let templeNewIdNew=_.cloneDeep(templeNewId);
let isPrintNew=_.cloneDeep(isPrint);
let oidsA=[]if(e.target.checked) {for (let i = 0; i < trades.children.length; i++) {for (let j = 0; j < trades.children[i].orderList.length; j++) {
checkedListNew.push(trades.children[i].orderList[j].oid)
oidsA.push(trades.children[i].orderList[j].oid);
}
}
let index= _.findIndex(tradeIdsListNew, function(o) {return o.keyTid ===trades.keyTid
})if (index !== -1) {
tradeIdsListNew[index].keyTid=trades.keyTid
tradeIdsListNew[index].oids=oidsA
}else{
tradeIdsListNew.push({
keyTid: trades.keyTid,
oids: oidsA,
num:1})
}//最新打印的面单号 使用的模板
let index1 = _.findIndex(templeNewIdNew, function(o) {return o=== trades.children[0].lastTemplateId
})if(index1 !== -1){
templeNewIdNew=templeNewIdNew
}else{
templeNewIdNew.push(trades.children[0].lastTemplateId)
}//是否打印
let index2 = _.findIndex(isPrintNew, function(o) {return o=== trades.children[0].isPrint
})if(index2 !== -1){
isPrintNew=isPrintNew
}else{
isPrintNew.push(trades.children[0].isPrint)
}
}else{for (let i = 0; i < trades.children.length; i++) {for (let j = 0; j < trades.children[i].orderList.length; j++) {
checkedListNew= _.filter(checkedListNew, function(o) {return o !=trades.children[i].orderList[j].oid;
})
oidsA= _.filter(oidsA, function(o) {return o !=trades.children[i].orderList[j].oid;
})
}
}
let index= _.findIndex(tradeIdsListNew, function(o) {return o.keyTid ===trades.keyTid
})if (index !== -1) {
tradeIdsListNew.splice(index,1)
}
let index1= _.filter(templeNewIdNew, function(o) {return o !== trades.children[0].lastTemplateId
})if (index1.length > 0) {
templeNewIdNew=index1;
}else{
templeNewIdNew=[]
}//是否打印过
let index2 = _.filter(isPrintNew, function(o) {return o !== trades.children[0].isPrint
})if (index2.length > 0) {
isPrintNew=index2;
}else{
isPrintNew=[]
}
}//console.log('结束',isPrintNew)
this.props.setVal({
checkedList: checkedListNew,
})this.setState({
tradeIdsList: tradeIdsListNew,
templeNewId :templeNewIdNew,
isPrint :isPrintNew
}, ()=>{if(e.target.checked) {
checkedRow.push(trades.keyTid)
}else{
checkedRow= _.filter(checkedRow, function(o) {return o !=trades.keyTid;
})
}
console.log('结束',checkedRow)this.props.setVal({
checkedRow: checkedRow
})//全选
if (keyIDNum.length ===checkedRow.length) {this.setState({
checkedAll:true})
}else{this.setState({
checkedAll:false})
}
})
}//最外层多选 选择全部(取消全部选中)
handleChangeCheckBoxAll = (e) =>{
let {dataSource}= this.props;
let templeNewIdNew=[];
let isPrintNew=[];
let tradeIdsListNew=[];
let checkedListFull=[]
let checkedListEmpty=[]
let checkedRowTrue=[]
let checkedRowFalse=[]if(e.target.checked) {
dataSource.forEach((item, index)=>{for (let k = 0; k < item.tradeList.length; k++) {
let oidsA=[];
let tradeObj={}
tradeObj.keyTid=item.tradeList[k].keyTid
checkedRowTrue.push(item.tradeList[k].keyTid)for (let i = 0; i < item.tradeList[k].children.length; i++) {
templeNewIdNew.push(item.tradeList[k].children[0].lastTemplateId)
isPrintNew.push(item.tradeList[k].children[0].isPrint)for (let j = 0; j < item.tradeList[k].children[i].orderList.length; j++) {
checkedListFull.push(item.tradeList[k].children[i].orderList[j].oid)
oidsA.push(item.tradeList[k].children[i].orderList[j].oid);
}
}
tradeObj.oids=oidsA
tradeObj.nums= 1tradeIdsListNew.push(tradeObj)
}
})
console.log('结束',checkedRowTrue)this.props.setVal({
checkedRow: checkedRowTrue,
checkedList: checkedListFull,
})this.setState({
checkedAll:true,
tradeIdsList: tradeIdsListNew,
templeNewId: templeNewIdNew,
isPrint: isPrintNew,
})
}else{
tradeIdsListNew=[]
templeNewIdNew=[]
isPrintNew=[]this.props.setVal({
checkedRow: checkedRowFalse,
checkedList: checkedListEmpty,
})this.setState({
checkedAll:false,
tradeIdsList: tradeIdsListNew,
templeNewId: templeNewIdNew,
isPrint: isPrintNew,
})
}
}