feat: 物料台账改为时间段搜索

This commit is contained in:
砂糖
2025-08-11 14:39:33 +08:00
parent 3c2cc85e27
commit 243b74a9e4
4 changed files with 402 additions and 80 deletions

View File

@@ -9,16 +9,6 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="类型" prop="ioType">
<el-select v-model="queryParams.ioType" placeholder="请选择类型" clearable>
<el-option
v-for="dict in dict.type.stock_io_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item> -->
<el-form-item label="业务类型" prop="bizType">
<el-select v-model="queryParams.bizType" placeholder="请选择业务类型" clearable>
<el-option
@@ -135,12 +125,6 @@
icon="el-icon-document"
@click="showDetail(scope.row)"
>明细</el-button>
<!-- <el-button
size="mini"
type="text"
icon="el-icon-printer"
@click="handleShowBarcodeDrawer(scope.row)"
>打印条码</el-button> -->
</template>
</el-table-column>
</el-table>
@@ -159,16 +143,6 @@
<el-form-item label="出入库单号" prop="stockIoCode">
<el-input v-model="form.stockIoCode" placeholder="请输入出入库单号" />
</el-form-item>
<!-- <el-form-item label="类型" prop="ioType">
<el-select v-model="form.ioType" placeholder="请选择类型">
<el-option
v-for="dict in dict.type.stock_io_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item> -->
<el-form-item label="业务类型" prop="bizType">
<el-select v-model="form.bizType" placeholder="请选择业务类型">
<el-option
@@ -204,35 +178,17 @@
@status-changed="onStatusChanged"
/>
</el-dialog>
<!-- 条码打印抽屉 -->
<!-- <el-drawer
title="条码打印"
:visible.sync="drawerBarcodeVisible"
size="100%"
direction="btt"
:with-header="true"
>
<BarcodeGenerator
v-if="drawerBarcodeVisible"
:barcodes="drawerBarcodeData.barcodes"
:perRow="drawerBarcodeData.perRow"
:barcodeWidth="drawerBarcodeData.barcodeWidth"
:barcodeHeight="drawerBarcodeData.barcodeHeight"
/>
</el-drawer> -->
</div>
</template>
<script>
import { listStockIo, getStockIo, delStockIo, addStockIo, updateStockIo } from "@/api/wms/stockIo";
import { listStockIoDetail } from "@/api/wms/stockIoDetail";
import StockIoDetailPanel from './detail.vue';
import BarcodeGenerator from './barcode.vue';
export default {
name: "StockIo",
dicts: ['stock_biz_type', 'stock_io_type', 'stock_status'],
components: { StockIoDetailPanel, BarcodeGenerator },
dicts: ['stock_biz_type', 'stock_status'],
components: { StockIoDetailPanel },
props: {
ioType: {
require: true
@@ -279,9 +235,6 @@ export default {
stockIoCode: [
{ required: true, message: "出入库单号不能为空", trigger: "blur" }
],
// ioType: [
// { required: true, message: "类型不能为空", trigger: "change" }
// ],
bizType: [
{ required: true, message: "业务类型不能为空", trigger: "change" }
],
@@ -300,14 +253,6 @@ export default {
},
detailDialogVisible: false,
detailStockIo: null,
// 条码打印抽屉相关
// drawerBarcodeVisible: false,
// drawerBarcodeData: {
// barcodes: [],
// perRow: 3,
// barcodeWidth: 180,
// barcodeHeight: 60
// },
};
},
created() {
@@ -442,22 +387,6 @@ export default {
// 刷新列表
this.getList();
},
// async handleShowBarcodeDrawer(row) {
// // 获取明细列表
// const res = await listStockIoDetail({ stockIoId: row.stockIoId });
// const details = res.data || res.rows || [];
// // 拼接条码内容 stockIoId_warehouseId_materialId_quantity
// const barcodes = details.filter(el => el.recordType == 0).map(item => {
// return encodeURIComponent(`${row.stockIoId}_${item.warehouseId || ''}_${item.itemId || ''}_${item.quantity || ''}`);
// });
// // this.drawerBarcodeData = {
// // barcodes,
// // perRow: 3,
// // barcodeWidth: 180,
// // barcodeHeight: 60
// // };
// // this.drawerBarcodeVisible = true;
// },
getIoTypeTagType(type) {
if (type === 'in') return 'success';
if (type === 'out') return 'primary';