This commit is contained in:
朱昊天
2026-06-16 10:37:33 +08:00
parent 9ff6a57544
commit d5736cd5f8
13 changed files with 173 additions and 15 deletions

View File

@@ -10,6 +10,15 @@
<el-form-item label="供货商" prop="supplierId">
<VendorSelect v-model="queryParams.supplierId" />
</el-form-item>
<el-form-item label="厂家" prop="factory">
<el-input v-model="queryParams.factory" placeholder="请输入厂家" clearable />
</el-form-item>
<el-form-item label="物料类型" prop="materialTypeSnapshot">
<el-select v-model="queryParams.materialTypeSnapshot" placeholder="请选择" clearable style="width: 140px;">
<el-option label="主材" :value="2" />
<el-option label="辅材" :value="1" />
</el-select>
</el-form-item>
<el-form-item label="入库时间" prop="timeRange">
<el-date-picker
v-model="queryParams.timeRange"
@@ -45,6 +54,9 @@
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" size="mini" @click="handleExport">导出</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" size="mini" @click="handleExportOrder">导出单据</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="info" plain size="mini" @click="openFlow">统计/导出</el-button>
</el-col>
@@ -69,6 +81,19 @@
<span v-else>{{ scope.row.materialNames || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="厂家" align="center" min-width="220">
<template #default="scope">
<el-tooltip v-if="scope.row.factoryNames && String(scope.row.factoryNames).length > 16" effect="dark" placement="top">
<template #content>
<div style="max-width: 420px; white-space: normal; word-break: break-all;">
{{ scope.row.factoryNames }}
</div>
</template>
<span>{{ String(scope.row.factoryNames).slice(0, 16) + '…' }}</span>
</el-tooltip>
<span v-else>{{ scope.row.factoryNames || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="业务类型" align="center" prop="bizType" min-width="120" />
<el-table-column label="责任人" align="center" prop="responsibleName" min-width="120" />
<el-table-column label="状态" align="center" width="90">
@@ -369,6 +394,8 @@ export default {
orderCode: undefined,
itemName: undefined,
supplierId: undefined,
factory: undefined,
materialTypeSnapshot: undefined,
timeRange: undefined,
startTime: undefined,
endTime: undefined,
@@ -458,6 +485,10 @@ export default {
this.queryParams.timeRange = undefined
this.queryParams.startTime = undefined
this.queryParams.endTime = undefined
this.queryParams.supplierId = undefined
this.queryParams.itemName = undefined
this.queryParams.factory = undefined
this.queryParams.materialTypeSnapshot = undefined
this.handleQuery()
},
handleSelectionChange(selection) {
@@ -476,6 +507,16 @@ export default {
`stockIoOrder_in_detail_${new Date().getTime()}.xlsx`
)
},
handleExportOrder() {
this.syncTimeRange()
this.download(
'/gear/stockIoOrder/export',
{
...this.queryParams
},
`stockIoOrder_in_${new Date().getTime()}.xlsx`
)
},
syncTimeRange() {
const tr = this.queryParams.timeRange
if (tr && tr.length === 2) {

View File

@@ -10,6 +10,15 @@
<el-form-item label="供货商" prop="supplierId">
<VendorSelect v-model="queryParams.supplierId" />
</el-form-item>
<el-form-item label="厂家" prop="factory">
<el-input v-model="queryParams.factory" placeholder="请输入厂家" clearable />
</el-form-item>
<el-form-item label="物料类型" prop="materialTypeSnapshot">
<el-select v-model="queryParams.materialTypeSnapshot" placeholder="请选择" clearable style="width: 140px;">
<el-option label="主材" :value="2" />
<el-option label="辅材" :value="1" />
</el-select>
</el-form-item>
<el-form-item label="出库时间" prop="timeRange">
<el-date-picker
v-model="queryParams.timeRange"
@@ -42,6 +51,9 @@
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" size="mini" @click="handleExport">导出</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" size="mini" @click="handleExportOrder">导出单据</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="info" plain size="mini" @click="openFlow">统计/导出</el-button>
</el-col>
@@ -66,6 +78,19 @@
<span v-else>{{ scope.row.materialNames || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="厂家" align="center" min-width="220">
<template #default="scope">
<el-tooltip v-if="scope.row.factoryNames && String(scope.row.factoryNames).length > 16" effect="dark" placement="top">
<template #content>
<div style="max-width: 420px; white-space: normal; word-break: break-all;">
{{ scope.row.factoryNames }}
</div>
</template>
<span>{{ String(scope.row.factoryNames).slice(0, 16) + '…' }}</span>
</el-tooltip>
<span v-else>{{ scope.row.factoryNames || '-' }}</span>
</template>
</el-table-column>
<el-table-column label="业务类型" align="center" prop="bizType" min-width="120" />
<el-table-column label="责任人" align="center" prop="responsibleName" min-width="120" />
<el-table-column label="状态" align="center" width="90">
@@ -350,6 +375,8 @@ export default {
orderCode: undefined,
itemName: undefined,
supplierId: undefined,
factory: undefined,
materialTypeSnapshot: undefined,
timeRange: undefined,
startTime: undefined,
endTime: undefined,
@@ -439,6 +466,10 @@ export default {
this.queryParams.timeRange = undefined
this.queryParams.startTime = undefined
this.queryParams.endTime = undefined
this.queryParams.supplierId = undefined
this.queryParams.itemName = undefined
this.queryParams.factory = undefined
this.queryParams.materialTypeSnapshot = undefined
this.handleQuery()
},
handleSelectionChange(selection) {
@@ -456,6 +487,16 @@ export default {
`stockIoOrder_out_detail_${new Date().getTime()}.xlsx`
)
},
handleExportOrder() {
this.syncTimeRange()
this.download(
'/gear/stockIoOrder/export',
{
...this.queryParams
},
`stockIoOrder_out_${new Date().getTime()}.xlsx`
)
},
syncTimeRange() {
const tr = this.queryParams.timeRange
if (tr && tr.length === 2) {