refactor: 多页面UI优化与功能完善

1. 优化合同页面默认备注内容
2. 修复分卷编辑接口参数缺失问题
3. 新增分卷、合卷、加工菜单路由
4. 重构导航栏默认显示逻辑
5. 升级重定向菜单页面样式与布局
6. 优化告警页面查询与展示字段
7. 重构全局搜索组件为弹窗模式
8. 优化报表页面代码格式与接口参数
This commit is contained in:
2026-06-12 11:25:15 +08:00
parent d3c6790603
commit 98116fa042
8 changed files with 306 additions and 150 deletions

View File

@@ -1,21 +1,34 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="告警级别" prop="warningLevel">
<el-form-item label="告警类型" prop="warningType">
<el-radio-group v-model="queryParams.warningType" @change="handleQuery">
<el-radio-button label="">全部</el-radio-button>
<el-radio-button label="LENGTH">长度告警</el-radio-button>
<el-radio-button label="THICKNESS">厚度告警</el-radio-button>
</el-radio-group>
</el-form-item>
<!-- <el-form-item label="告警级别" prop="warningLevel">
<el-select v-model="queryParams.warningLevel" placeholder="请选择告警级别" clearable @keyup.enter.native="handleQuery">
<el-option label="警告" value="WARNING" />
<el-option label="错误" value="ERROR" />
<el-option label="严重错误" value="CRITICAL" />
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item label="告警状态" prop="warningStatus">
<el-select v-model="queryParams.warningStatus" placeholder="请选择告警状态" clearable
@keyup.enter.native="handleQuery">
@change="handleQuery">
<el-option label="未处理" value="0" />
<el-option label="已处理" value="1" />
<el-option label="已忽略" value="2" />
</el-select>
</el-form-item>
<el-form-item label="工序" prop="actionType">
<el-select v-model="queryParams.actionType" placeholder="请选择工序" clearable
@change="handleQuery">
<el-option v-for="item in dict.type.action_type" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="处理人" prop="handleBy">
<el-input v-model="queryParams.handleBy" placeholder="请输入处理人" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
@@ -35,18 +48,26 @@
}}</span>
</template>
</el-table-column>
<el-table-column label="工序" align="center" prop="actionType">
<template slot-scope="scope">
<dict-tag :options="dict.type.action_type" :value="scope.row.actionType" />
</template>
</el-table-column>
<el-table-column label="入场卷号" align="center" prop="coilVo.enterCoilNo" />
<el-table-column label="当前卷号" align="center" prop="coilVo.currentCoilNo" />
<el-table-column label="发生时间" align="center" prop="createTime" width="180">
<!-- 如果是今天的标红显示 -->
<template slot-scope="scope">
<span v-if="isToday(scope.row.createTime)" style="color: red;">{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
<span v-else>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="理论值" align="center" prop="theoreticalVal" />
<el-table-column label="实测值" align="center" prop="actualVal" />
<el-table-column label="允许偏差" align="center" prop="allowDeviation" />
<el-table-column label="实际偏差值" align="center" prop="deviationValue" />
<el-table-column label="偏差率(%)" align="center" prop="deviationRate" />
<el-table-column label="告警级别" align="center" prop="warningLevel">
<template slot-scope="scope">
<span>{{ scope.row.warningLevel === 'WARNING' ? '警告' : scope.row.warningLevel === 'ERROR' ? '错误' : '严重错误'
}}</span>
</template>
</el-table-column>
<el-table-column label="告警说明" align="center" prop="warningMsg" />
<el-table-column label="告警说明" align="center" prop="warningMsg" show-overflow-tooltip />
<el-table-column label="告警状态" align="center" prop="warningStatus">
<template slot-scope="scope">
<span>{{ scope.row.warningStatus == 0 ? '未处理' : scope.row.warningStatus == 1 ? '已处理' : '已忽略' }}</span>
@@ -157,7 +178,7 @@ export default {
pageNum: 1,
pageSize: 10,
coilId: undefined,
warningType: undefined,
warningType: '',
theoreticalVal: undefined,
actualVal: undefined,
allowDeviation: undefined,
@@ -231,6 +252,7 @@ export default {
}
};
},
dicts: ['action_type'],
created() {
this.getList();
},
@@ -247,7 +269,7 @@ export default {
/** 忽略按钮操作 */
handleIgnore(row) {
this.loading = true;
updateMaterialWarning({ ...row, warningStatus: 2 }).then(response => {
updateMaterialWarning({ ...row, warningStatus: 2, handleBy: this.$store.state.user.name, handleTime: this.parseTime(new Date(), '{y}-{m}-{d} {h}:{i}:{s}') }).then(response => {
this.loading = false;
this.$message({
message: "忽略成功",
@@ -256,10 +278,23 @@ export default {
this.getList();
});
},
/** 判断是否是今天的 */
isToday(date) {
const today = new Date();
const year = today.getFullYear();
const month = today.getMonth() + 1;
const day = today.getDate();
const dateObj = new Date(date);
const year2 = dateObj.getFullYear();
const month2 = dateObj.getMonth() + 1;
const day2 = dateObj.getDate();
return year === year2 && month === month2 && day === day2;
},
/** 处理按钮操作 */
handleHandle(row) {
this.loading = true;
updateMaterialWarning({ ...row, warningStatus: 1 }).then(response => {
// 填写处理人和处理时间
updateMaterialWarning({ ...row, warningStatus: 1, handleBy: this.$store.state.user.name, handleTime: this.parseTime(new Date(), '{y}-{m}-{d} {h}:{i}:{s}') }).then(response => {
this.loading = false;
this.$message({
message: "处理成功",