diff --git a/js/aq_demand_plan/child/send_out_supplement.js b/js/aq_demand_plan/child/send_out_supplement.js index 3724522..c59d74f 100644 --- a/js/aq_demand_plan/child/send_out_supplement.js +++ b/js/aq_demand_plan/child/send_out_supplement.js @@ -163,6 +163,96 @@ $(document).on("click", ".file-iteme .handle", function (event) { return false; }); +//暂存 +function temporaryStorage(){ + delSupIdArr = []; + + 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; + data.proId = objParam.proId; + + // 补充模式下,禁止删除原有文件,清空删除文件ID + delImgIdList = []; + let delFileId = '', delSupId = ''; + if (delImgIdList && delImgIdList.length > 0) { + for (let i = 0; i < delImgIdList.length; i++) { + if (i === delImgIdList.length - 1) { + delFileId += delImgIdList[i]; + } else { + delFileId += delImgIdList[i] + '@'; + } + } + } + if (delSupIdArr && delSupIdArr.length > 0) { + for (let i = 0; i < delSupIdArr.length; i++) { + if (i === delSupIdArr.length - 1) { + delSupId += delSupIdArr[i]; + } else { + delSupId += delSupIdArr[i] + '@'; + } + } + } + data.delFileId = delFileId; + data.delSupId = delSupId; + let formData = new FormData(); + for (let i = 0; i < fileList.length; i++) { + formData.append("file[]", fileList[i].file) + } + console.log(data); + formData.append('params', JSON.stringify(data)); + let loadingMsg = layer.msg('正在提交补充,请稍等...', { icon: 16, shade: 0.01, time: '0' }); + let url = dataUrl + 'backstage/purchase/addPurchaseDataBySupplementAndTemporary'; + ajaxRequestByUploadFile(url, formData, function () { + $('.save').addClass("layui-btn-disabled").attr("disabled", true); + $('.cancel').addClass("layui-btn-disabled").attr("disabled", true); + }, function (result) { + layer.close(loadingMsg); + $('.save').removeClass("layui-btn-disabled").attr("disabled", false); + $('.cancel').removeClass("layui-btn-disabled").attr("disabled", false); + if (result.code === 200) { + parent.layer.msg(result.msg, { icon: 1 }); + closePage(result.data); + } else { + layer.msg(result.msg, { icon: 2 }); + } + }, function (xhr, status, error) { + layer.close(loadingMsg); + layer.msg('服务异常,请稍后重试', { icon: 16, scrollbar: false, time: 2000 }); + $('.save').removeClass("layui-btn-disabled").attr("disabled", false); + $('.cancel').removeClass("layui-btn-disabled").attr("disabled", false); + errorFn(xhr, status, error) + }, null); +} + // 触发表单提交 function saveData2() { $('#formSubmit').trigger('click') @@ -492,12 +582,12 @@ function setSelectData(modelId, value) { function setFormInput(value, type, id) { let html = '
'; // 核心修改:强制将所有指定字段的值置空 - let safeValue = ''; + let safeValue = setNullValue(value); if (type === 1) { // 采购量 - 强制置空 html += ''; } else if (type === 2) { // 利库量 - 强制置空 - let oldValue = 0; // 重置为0 + let oldValue = safeValue || 0; // 重置为0 html += ''; } else if (type === 3) { // 供应商 - 强制置空(不选中任何选项) html += ''; - html += "" + (i + 1) + ""; - html += "" + (l.type || '') + ""; - html += "" + (l.name || '') + ""; - html += "" + (l.model || '') + ""; - html += "" + (l.unit || '') + ""; - html += "" + (l.needNum-l.num || 0) + ""; - // 采购量:添加index属性 - html += "" + setFormInput(0, 1, l.modelId).replace('"; - // 利库量:添加index属性 - html += "" + setFormInput(0, 2, l.modelId).replace('"; - html += "" + setFormInput('', 3, l.modelId) + ""; - // 出厂日期:强制置空 - html += "" + setFormInput('', 4, l.modelId) + ""; - // 检验日期:强制置空 - html += "" + setFormInput('', 5, l.modelId) + ""; - // 备注:强制置空 - html += "" + setFormInput('', 6, l.modelId) + ""; - html += ""; + if (item.status=='暂存'){ + // 主行:带rowspan合并单元格 + html += ""; // 重置historyLkNum为0 + html += ''; + html += "" + (i + 1) + ""; + html += "" + (l.type || '') + ""; + html += "" + (l.name || '') + ""; + html += "" + (l.model || '') + ""; + html += "" + (l.unit || '') + ""; + html += "" + (l.needNum-l.num || 0) + ""; + html += "" + (item.status || '') + ""; + // 采购量:添加index属性 + html += "" + setFormInput(item.cgNum, 1, l.modelId).replace('"; + // 利库量:添加index属性 + html += "" + setFormInput(item.lkNum, 2, l.modelId).replace('"; + html += "" + setFormInput(item.supId, 3, l.modelId) + ""; + // 出厂日期:强制置空 + html += "" + setFormInput(item.ccDay, 4, l.modelId) + ""; + // 检验日期:强制置空 + html += "" + setFormInput(item.jyDay, 5, l.modelId) + ""; + // 备注:强制置空 + html += "" + setFormInput(item.remark, 6, l.modelId) + ""; + html += ""; + } else { + html += ""; // 重置historyLkNum为0 + html += ''; + html += "" + (i + 1) + ""; + html += "" + (l.type || '') + ""; + html += "" + (l.name || '') + ""; + html += "" + (l.model || '') + ""; + html += "" + (l.unit || '') + ""; + html += "" + (l.needNum-l.num || 0) + ""; + html += "" + ('-') + ""; + // 采购量:添加index属性 + html += "" + setFormInput(0, 1, l.modelId).replace('"; + // 利库量:添加index属性 + html += "" + setFormInput(0, 2, l.modelId).replace('"; + html += "" + setFormInput('', 3, l.modelId) + ""; + // 出厂日期:强制置空 + html += "" + setFormInput('', 4, l.modelId) + ""; + // 检验日期:强制置空 + html += "" + setFormInput('', 5, l.modelId) + ""; + // 备注:强制置空 + html += "" + setFormInput('', 6, l.modelId) + ""; + html += ""; + } + } }); } diff --git a/page/aq_demand_plan/child/send_out_supplemen.html b/page/aq_demand_plan/child/send_out_supplemen.html index 213d434..1ffe06a 100644 --- a/page/aq_demand_plan/child/send_out_supplemen.html +++ b/page/aq_demand_plan/child/send_out_supplemen.html @@ -151,15 +151,16 @@ - - + - - + + + @@ -174,6 +175,7 @@
+
+ 序号序号 类型 名称 规格单位需要量单位需要量状态 *采购量 *利库量 供应商