现场wms使用优化

This commit is contained in:
liuhanqing
2026-01-23 14:46:47 +08:00
parent f9ecde29fc
commit 695a065dc0
31 changed files with 1389 additions and 48 deletions

View File

@@ -123,9 +123,9 @@
<el-table-column label="层" align="center" prop="theFloor"/>
<el-table-column label="重量" align="center" prop="theType"/>
<el-table-column label="容量" align="center" prop="theTypeName"/>
<el-table-column label="部门" align="center" prop="model">
<el-table-column label="部门" align="center" prop="issDouble">
<template slot-scope="scope">
<dict-tag :options="getDeptDictOptions(scope.row)" :value="scope.row.model"/>
<dict-tag :options="getDeptDictOptions(scope.row)" :value="scope.row.issDouble"/>
</template>
</el-table-column>
<el-table-column width=120 label="操作" align="center" class-name="small-padding fixed-width"> <!-- 操作 -->
@@ -262,9 +262,16 @@
</div>
<el-form ref="form" :model="form" :rules="rules" label-width="90px">
<el-row style="margin-bottom: 10px; margin-left: 20px;">
<el-button type="primary" icon="el-icon-download" size="mini" @click="openImportDialog">导入入库子单</el-button>
</el-row>
<el-form-item label="子单编码" prop="stockinDetailId">
<el-input v-model="form.stockinDetailId" placeholder="请输入子单编码" />
</el-form-item>
<el-form-item label="合同号" prop="orderId">
<el-input v-model="form.orderId" placeholder="请输入合同号" />
</el-form-item>
<el-form-item label="产品号" prop="power">
<el-input v-model="form.power" placeholder="请输入产品号" />
</el-form-item>
@@ -470,6 +477,52 @@
<el-button @click="cargoSpaceSelectVisible = false">取消</el-button>
</div>
</el-dialog>
<!-- 导入入库子单弹窗 -->
<el-dialog title="导入入库子单" :visible.sync="importDialogVisible" width="900px" append-to-body>
<el-form :model="importQueryParams" ref="importQueryForm" :inline="true" size="mini">
<el-form-item label="合同号" prop="spare6">
<el-input v-model="importQueryParams.spare6" placeholder="请输入合同号" clearable @keyup.enter.native="handleImportQuery"/>
</el-form-item>
<el-form-item label="产品号" prop="spare7">
<el-input v-model="importQueryParams.spare7" placeholder="请输入产品号" clearable @keyup.enter.native="handleImportQuery"/>
</el-form-item>
<el-form-item label="代号" prop="spare9">
<el-input v-model="importQueryParams.spare9" placeholder="请输入代号" clearable @keyup.enter.native="handleImportQuery"/>
</el-form-item>
<el-form-item label="台次" prop="spare5">
<el-input v-model="importQueryParams.spare5" placeholder="请输入台次" clearable @keyup.enter.native="handleImportQuery"/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleImportQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetImportQuery">重置</el-button>
</el-form-item>
</el-form>
<el-table v-loading="importLoading" :data="importList" @current-change="handleImportCurrentChange" highlight-current-row height="400">
<el-table-column label="入库单号" align="center" prop="stockinId" />
<el-table-column label="合同号" align="center" prop="spare6" />
<el-table-column label="产品号" align="center" prop="spare7" />
<el-table-column label="代号" align="center" prop="spare9" />
<el-table-column label="台次" align="center" prop="spare5" />
<el-table-column label="物料编码" align="center" prop="productId" />
<el-table-column label="物料名称" align="center" prop="productName" />
<el-table-column label="数量" align="center" prop="quantityX" />
</el-table>
<pagination
v-show="importTotal>0"
:total="importTotal"
:page.sync="importQueryParams.pageNum"
:limit.sync="importQueryParams.pageSize"
@pagination="handleImportQuery"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitImport">确 定</el-button>
<el-button @click="importDialogVisible = false">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
@@ -485,6 +538,7 @@ import {
import {listWarehouse} from "@/api/bas/warehouse"
import {listBasProduct} from "@/api/bas/BasProduct"
import {listCargoSpace} from "@/api/bas/cargoSpace"
import { listStockInDetail } from "@/api/in/stockInDetail"
export default {
name: "Management",
@@ -597,7 +651,25 @@ export default {
},
selectedCargoSpace: null,
// 子表加载状态
detailLoading: false
detailLoading: false,
// 选中的库存数据
selectedStockData: [],
// 导入相关
importDialogVisible: false,
importLoading: false,
importList: [],
importTotal: 0,
importQueryParams: {
pageNum: 1,
pageSize: 10,
orderId: null,
power: null,
distribution: null,
spare5: null
},
importCurrentRow: null
}
},
created() {
@@ -911,6 +983,59 @@ export default {
} else {
this.$modal.msgWarning("请选择一个货位")
}
},
/** 打开导入弹窗 */
openImportDialog() {
this.importDialogVisible = true;
this.resetImportQuery();
},
/** 导入查询 */
handleImportQuery() {
this.importLoading = true;
listStockInDetail(this.importQueryParams).then(response => {
this.importList = response.rows;
this.importTotal = response.total;
this.importLoading = false;
});
},
/** 重置导入查询 */
resetImportQuery() {
this.importQueryParams = {
pageNum: 1,
pageSize: 10,
orderId: null,
power: null,
distribution: null,
spare5: null
};
this.importList = [];
this.importTotal = 0;
this.importCurrentRow = null;
},
/** 导入行选中 */
handleImportCurrentChange(val) {
this.importCurrentRow = val;
},
/** 确认导入 */
submitImport() {
if (!this.importCurrentRow) {
this.$modal.msgWarning("请选择一条数据");
return;
}
const row = this.importCurrentRow;
// 回填数据
this.form.orderId = row.spare6;
this.form.power = row.spare7;
this.form.distribution = row.spare9;
this.form.spare5 = row.spare5;
this.form.productId = row.productId;
this.form.productName = row.productName;
this.form.quantity = row.quantityX;
this.form.stockinDetailId = row.stockinDetailId;
this.importDialogVisible = false;
this.$modal.msgSuccess("导入数据成功");
}
}
}