feat(发货单明细): 添加实际库区显示并优化数据加载逻辑

修改发货单明细表格,新增实际库区列显示。同时将数据加载逻辑改为异步方式,并添加卷号对应的实际库区信息查询功能。移除数量列的显示以简化界面。
This commit is contained in:
砂糖
2026-03-04 13:55:43 +08:00
parent 0aaa01f4bf
commit a4b77f9654

View File

@@ -36,6 +36,7 @@
<el-table-column label="品名" align="center" prop="productName" /> <el-table-column label="品名" align="center" prop="productName" />
<el-table-column label="切边" align="center" prop="edgeType" /> <el-table-column label="切边" align="center" prop="edgeType" />
<el-table-column label="包装" align="center" prop="packaging" /> <el-table-column label="包装" align="center" prop="packaging" />
<el-table-column label="实际库区" align="center" prop="actualWarehouseName" />
<el-table-column label="结算方式" align="center" prop="settlementType" /> <el-table-column label="结算方式" align="center" prop="settlementType" />
<!-- <el-table-column label="原料厂家" align="center" prop="rawMaterialFactory" /> --> <!-- <el-table-column label="原料厂家" align="center" prop="rawMaterialFactory" /> -->
<el-table-column label="卷号" align="center" prop="coilNo"> <el-table-column label="卷号" align="center" prop="coilNo">
@@ -45,7 +46,7 @@
</el-table-column> </el-table-column>
<el-table-column label="规格" align="center" prop="specification" /> <el-table-column label="规格" align="center" prop="specification" />
<el-table-column label="材质" align="center" prop="material" /> <el-table-column label="材质" align="center" prop="material" />
<el-table-column label="数量" align="center" prop="quantity" /> <!-- <el-table-column label="数量" align="center" prop="quantity" /> -->
<el-table-column label="重量" align="center" prop="weight" /> <el-table-column label="重量" align="center" prop="weight" />
<!-- <el-table-column label="单价" align="center" prop="unitPrice" /> --> <!-- <el-table-column label="单价" align="center" prop="unitPrice" /> -->
<el-table-column label="备注" align="center" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" align="center" prop="remark" show-overflow-tooltip />
@@ -121,7 +122,7 @@
<el-form-item label="单价" prop="unitPrice"> <el-form-item label="单价" prop="unitPrice">
<el-input v-model="form.unitPrice" placeholder="请输入单价" /> <el-input v-model="form.unitPrice" placeholder="请输入单价" />
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remark" > <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -135,6 +136,7 @@
<script> <script>
import { listDeliveryWaybillDetail, getDeliveryWaybillDetail, delDeliveryWaybillDetail, addDeliveryWaybillDetail, updateDeliveryWaybillDetail, batchAddDeliveryWaybillDetail } from "@/api/wms/deliveryWaybillDetail"; import { listDeliveryWaybillDetail, getDeliveryWaybillDetail, delDeliveryWaybillDetail, addDeliveryWaybillDetail, updateDeliveryWaybillDetail, batchAddDeliveryWaybillDetail } from "@/api/wms/deliveryWaybillDetail";
import { listCoilByIds } from "@/api/wms/coil";
import CoilSelector from "@/components/CoilSelector"; import CoilSelector from "@/components/CoilSelector";
export default { export default {
@@ -222,16 +224,26 @@ export default {
}, },
methods: { methods: {
/** 查询发货单明细列表 */ /** 查询发货单明细列表 */
getList() { async getList() {
if (!this.waybillId) { if (!this.waybillId) {
return; return;
} }
this.loading = true; this.loading = true;
listDeliveryWaybillDetail({ ...this.queryParams, waybillId: this.waybillId }).then(response => { const response = await listDeliveryWaybillDetail({ ...this.queryParams, waybillId: this.waybillId })
const coils = response.rows.map(item => item.coilId).join(',');
if (coils) {
const coilResponse = await listCoilByIds(coils);
// 查找response中coilId相对应的项将actualWarehouseName赋值给deliveryWaybillDetailList中
response.rows.forEach(item => {
const coil = coilResponse.rows.find(c => c.coilId === item.coilId);
if (coil) {
item.actualWarehouseName = coil.actualWarehouseName;
}
});
}
this.deliveryWaybillDetailList = response.rows; this.deliveryWaybillDetailList = response.rows;
this.total = response.total; this.total = response.total;
this.loading = false; this.loading = false;
});
}, },
// 取消按钮 // 取消按钮
cancel() { cancel() {