| | |
| | | <el-button type="primary" |
| | | @click="handleAddMaterialRow">新增</el-button> |
| | | </div> |
| | | <el-alert v-if="!materialTableLoading && bomRowCount === 0" |
| | | type="warning" |
| | | :closable="false" |
| | | show-icon |
| | | style="margin-bottom: 12px" |
| | | title="当前订单没有可领料的BOM物料:请确认BOM结构已维护,并在工序管理中将需要领料的工序开启“是否领料”" /> |
| | | <el-table v-loading="materialTableLoading" |
| | | :data="materialTableData" |
| | | border |
| | |
| | | const materialTableLoading = ref(false); |
| | | const materialSaving = ref(false); |
| | | const materialTableData = ref([]); |
| | | // BOM中标记了“是否领料”的物料行数,为0时提示先去工序管理开启领料标记 |
| | | const bomRowCount = ref(0); |
| | | const selectedMaterialRows = ref([]); |
| | | const purchaseLedgerDialogVisible = ref(false); |
| | | const purchaseLedgerAddDialogRef = ref(null); |
| | |
| | | const detailList = Array.isArray(detailRes?.data) |
| | | ? detailRes.data |
| | | : detailRes?.data?.records || []; |
| | | // 后端只返回工序已标记“是否领料”的BOM物料,行数为0时给出操作提示 |
| | | bomRowCount.value = bomList.length; |
| | | |
| | | // 按“工序+原料”汇总历史领料:已领数量、退料数量 |
| | | const pickedMap = new Map(); |
| | |
| | | materialTableData.value = []; |
| | | selectedMaterialRows.value = []; |
| | | currentMaterialSelectRowIndex.value = -1; |
| | | bomRowCount.value = 0; |
| | | }; |
| | | |
| | | // 按型号汇总所有批次的原料可用库存余量,并记录每个批号对应的库存数量 |