feat: 新增业务员、合同号查询与展示,优化钢卷管理功能

1.  在钢卷相关API中新增对saleName和contractNo字段的过滤逻辑,避免数据覆盖
2.  多个报表页面新增业务员和合同号查询条件
3.  钢卷物料页面重构表单布局,新增生产耗时计算、合同绑定功能
4.  告警页面优化UI展示,新增详情弹窗和备注处理流程
5.  多处代码格式化与注释优化
This commit is contained in:
2026-06-22 14:42:46 +08:00
parent 1167bc117b
commit 3e640b4a4d
7 changed files with 722 additions and 340 deletions

View File

@@ -41,14 +41,15 @@
<muti-select v-model="queryParams.qualityStatusCsv" :options="dict.type.coil_quality_status"
placeholder="请选择品质" clearable />
</el-form-item>
<!-- <el-form-item label="导出模式" prop="abnormalExportCount">
<el-radio-group v-model="abnormalExportCount">
<el-radio-button :label="0">多行导出</el-radio-button>
<el-radio-button :label="1">单行拼接</el-radio-button>
</el-radio-group>
</el-form-item> -->
<el-form-item label="业务员" prop="saleName">
<el-input style="width: 200px;" v-model="queryParams.saleName" placeholder="请输入业务员" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="合同号" prop="contractNo">
<el-input style="width: 200px;" v-model="queryParams.contractNo" placeholder="请输入合同号" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item>
<!-- <el-button type="primary" @click="getList">查询</el-button> -->
<el-dropdown split-button type="primary" @click="getList" @command="handleCommand">
查询
<el-dropdown-menu slot="dropdown">
@@ -57,14 +58,8 @@
<el-dropdown-item command="exportDataMore">导出产出钢卷(多行)</el-dropdown-item>
<el-dropdown-item command="exportLossDataMore">导出消耗钢卷(多行)</el-dropdown-item>
<!-- <el-dropdown-item command="saveOutputReport">保存产出报表</el-dropdown-item>
<el-dropdown-item command="saveLossReport">保存消耗报表</el-dropdown-item> -->
</el-dropdown-menu>
</el-dropdown>
<!-- <el-button type="primary" @click="exportData">导出产出钢卷</el-button>
<el-button type="primary" @click="exportLossData">导出消耗钢卷</el-button>
<el-button type="primary" @click="saveOutputReport">保存产出报表</el-button>
<el-button type="primary" @click="saveLossReport">保存消耗报表</el-button> -->
</el-form-item>
</el-form>
</el-row>

View File

@@ -38,6 +38,15 @@
<muti-select v-model="queryParams.qualityStatusCsv" :options="dict.type.coil_quality_status"
placeholder="请选择品质" clearable />
</el-form-item>
<el-form-item label="业务员" prop="saleName">
<el-input style="width: 200px;" v-model="queryParams.saleName" placeholder="请输入业务员" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="合同号" prop="contractNo">
<el-input style="width: 200px;" v-model="queryParams.contractNo" placeholder="请输入合同号" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item prop="endTime">
<el-button type="primary" @click="getList">查询</el-button>
<el-button type="primary" @click="exportData">导出</el-button>

View File

@@ -99,6 +99,12 @@
<warehouse-select v-model="queryParams.warehouseId" placeholder="请选择仓库/库区/库位"
style="width: 100%; display: inline-block; width: 200px;" clearable />
</el-form-item>
<el-form-item label="业务员" prop="saleName">
<el-input v-model="queryParams.saleName" placeholder="请输入业务员" clearable size="small" />
</el-form-item>
<el-form-item label="合同号" prop="contractNo">
<el-input v-model="queryParams.contractNo" placeholder="请输入合同号" clearable size="small" />
</el-form-item>
</template>
<template v-else>
<el-form-item label="入场钢卷号" prop="enterCoilNo">
@@ -134,6 +140,12 @@
<muti-select v-model="queryParams.qualityStatusCsv" :options="dict.type.coil_quality_status"
placeholder="请选择品质" clearable />
</el-form-item>
<el-form-item label="业务员" prop="saleName">
<el-input v-model="queryParams.saleName" placeholder="请输入业务员" clearable size="small" />
</el-form-item>
<el-form-item label="合同号" prop="contractNo">
<el-input v-model="queryParams.contractNo" placeholder="请输入合同号" clearable size="small" />
</el-form-item>
</template>
<el-form-item>
<el-button type="primary" @click="handleQuery">查询</el-button>
@@ -541,7 +553,7 @@ export default {
'材质属性': ['material', 'manufacturer', 'surfaceTreatmentDesc', 'zincLayer', 'packingStatus', 'temperGrade', 'coatingType', 'chromePlateCoilNo'],
'用途': ['purpose', 'businessPurpose'],
'状态': ['qualityStatus', 'statusDesc', 'isRelatedToOrderText'],
'其他': ['itemName', 'itemId', 'packagingRequirement', 'trimmingRequirement', 'transferType', 'saleName', 'remark', 'team'],
'其他': ['itemName', 'itemId', 'packagingRequirement', 'trimmingRequirement', 'transferType', 'contractNo', 'saleName', 'remark', 'team'],
},
queryParams: {
startTime: start,