补发货修改
This commit is contained in:
parent
6c247e18d8
commit
d4bd51714a
|
|
@ -201,11 +201,11 @@ function beforeSubmitApply() {
|
|||
if (hasError) break;
|
||||
|
||||
// 第二步:校验采购量+利库量不可全部为0
|
||||
if (cgNum + lkNum <= 0) {
|
||||
layer.msg('序号为' + (i + 1) + '的数据,请填写采购量或利库量(不可全部为0)', { icon: 7 });
|
||||
hasError = true;
|
||||
break;
|
||||
}
|
||||
// if (cgNum + lkNum <= 0) {
|
||||
// layer.msg('序号为' + (i + 1) + '的数据,请填写采购量或利库量(不可全部为0)', { icon: 7 });
|
||||
// hasError = true;
|
||||
// break;
|
||||
// }
|
||||
|
||||
o.cgTotal = cgNum;
|
||||
o.lkTotal = lkNum;
|
||||
|
|
@ -226,6 +226,20 @@ function beforeSubmitApply() {
|
|||
// 若存在错误,直接返回,不执行后续逻辑
|
||||
if (hasError) return;
|
||||
|
||||
|
||||
if (targetData && targetData.length > 0) {
|
||||
targetData = targetData.filter(item => {
|
||||
// 过滤条件:采购总量+利库总量 > 0
|
||||
return (parseInt(item.cgTotal || 0) + parseInt(item.lkTotal || 0)) > 0;
|
||||
});
|
||||
|
||||
// 如果过滤后没有数据,提示用户并返回
|
||||
if (targetData.length === 0) {
|
||||
layer.msg('请填写有效的采购量或利库量(不可全部为0)', { icon: 7 });
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// 第四步:仅当无任何错误时,才判断是否需要弹出总量超需用量的确认框
|
||||
if (confirmIndex > -1) {
|
||||
layer.confirm('序号为' + (confirmIndex + 1) + '的数据,采购量+利库量总和大于需要量,是否确认提交?', {
|
||||
|
|
@ -245,6 +259,33 @@ function submitApply() {
|
|||
|
||||
let data = form.val('formInfo');
|
||||
let dataList = getBaseTableData();
|
||||
|
||||
// ========== 过滤采购量和利库量都为0的数据 ==========
|
||||
// 第一步:过滤主数据列表,只保留有有效数值的条目
|
||||
dataList = dataList.filter(item => {
|
||||
// 先计算当前条目的采购总量和利库总量
|
||||
let cgTotal = 0, lkTotal = 0;
|
||||
if (item.supList && item.supList.length > 0) {
|
||||
item.supList.forEach(supItem => {
|
||||
cgTotal += parseInt(supItem.cgNum || 0);
|
||||
lkTotal += parseInt(supItem.lkNum || 0);
|
||||
});
|
||||
}
|
||||
// 过滤条件:采购总量+利库总量 > 0
|
||||
return (cgTotal + lkTotal) > 0;
|
||||
});
|
||||
|
||||
// 第二步:进一步过滤每个条目中的supList,移除其中采购量和利库量都为0的子项
|
||||
dataList.forEach(item => {
|
||||
if (item.supList && item.supList.length > 0) {
|
||||
item.supList = item.supList.filter(supItem => {
|
||||
let cgNum = parseInt(supItem.cgNum || 0);
|
||||
let lkNum = parseInt(supItem.lkNum || 0);
|
||||
return (cgNum + lkNum) > 0;
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
data.id = dataObj.id;
|
||||
data.detailsList = dataList;
|
||||
data.planId = objParam.id;
|
||||
|
|
|
|||
Loading…
Reference in New Issue