| | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button type="primary" |
| | | :loading="mergeSubmitLoading" |
| | | @click="handleMergeSubmit">确定下发</el-button> |
| | | <el-button @click="isShowNewModal = false">取消</el-button> |
| | | </span> |
| | |
| | | |
| | | // 合并下发弹窗控制 |
| | | const isShowNewModal = ref(false); |
| | | const mergeSubmitLoading = ref(false); |
| | | // 合并下发表单数据 |
| | | const mergeForm = reactive({ |
| | | productName: "", |
| | |
| | | }); |
| | | }; |
| | | const onBlur = value => { |
| | | // 限制四位小数 |
| | | mergeForm.totalAssignedQuantity = Number(value.toFixed(4)); |
| | | mergeForm.totalAssignedQuantity = Number(Number(value).toFixed(10)); |
| | | }; |
| | | |
| | | const fetchProductOptions = () => { |
| | |
| | | }; |
| | | } |
| | | summary[category].totalAssignedQuantity += Number( |
| | | (Number(row.qtyRequired || 0) - Number(row.quantityIssued || 0)).toFixed( |
| | | 4 |
| | | ) |
| | | ( |
| | | Number(row.qtyRequired || 0) - Number(row.quantityIssued || 0) |
| | | ).toFixed(10) |
| | | ); |
| | | }); |
| | | |
| | |
| | | // 计算总制造数量 (默认qtyRequired的和) |
| | | const totalAssignedQuantity = selectedRows.value.reduce((sum, row) => { |
| | | return sum + Number(row.qtyRequired || 0) - Number(row.quantityIssued || 0); |
| | | }, 0); |
| | | sumAssignedQuantity.value = totalAssignedQuantity; |
| | | console.log(totalAssignedQuantity); |
| | | }, 0); // 避免浮点数精度问题(如 37.800000000000004) |
| | | const fixedTotal = Number(totalAssignedQuantity.toFixed(10)); |
| | | sumAssignedQuantity.value = fixedTotal; |
| | | console.log(fixedTotal); |
| | | // 设置表单数据 |
| | | mergeForm.productName = productName; |
| | | mergeForm.model = firstRow.model || ""; |
| | | mergeForm.totalAssignedQuantity = totalAssignedQuantity; |
| | | mergeForm.totalAssignedQuantity = fixedTotal; |
| | | mergeForm.planCompleteTime = firstRow.requiredDate || ""; |
| | | mergeForm.productId = firstRow.productId || ""; |
| | | mergeForm.ids = selectedRows.value.map(row => row.id); |
| | |
| | | const payload = { |
| | | ...mergeForm, |
| | | }; |
| | | mergeSubmitLoading.value = true; |
| | | productionPlanCombine(payload) |
| | | .then(res => { |
| | | if (res.code === 200) { |
| | |
| | | .catch(err => { |
| | | console.error("合并下发异常:", err); |
| | | ElMessage.error("系统异常,合并下发失败"); |
| | | }) |
| | | .finally(() => { |
| | | mergeSubmitLoading.value = false; |
| | | }); |
| | | // 可以选择刷新列表或其他操作 |
| | | }; |