feat(工艺参数): 为参数卡片添加量纲显示功能

在工艺参数卡片模板中新增unit字段支持,用于显示各参数的物理量纲。修改了模板组件以在筛选条件、卡片头部和主体中显示量纲单位,提升参数可读性。同时优化了卡片布局和字体大小。
This commit is contained in:
砂糖
2026-01-07 17:35:17 +08:00
parent 8926b9697d
commit 37263119a2
2 changed files with 395 additions and 163 deletions

View File

@@ -1,34 +1,78 @@
<!-- ProcessParamCardTemplate.vue 改造后新增processAcceptKeys筛选区 -->
<template>
<div class="panel-container">
<el-row>
<!-- 筛选区域动态渲染processAcceptKeys对应的筛选控件 -->
<!-- 筛选区域动态渲染processAcceptKeys对应的筛选控件 -->
<el-col :span="19.5">
<el-row :gutter="8" align="middle" class="filter-row">
<!-- 循环processAcceptKeys生成筛选控件 -->
<el-form inline>
<el-form-item v-for="key in processAcceptKeys" :key="key" :label="getFieldLabel(key)" class="filter-form-item" label-width="100px">
<el-form inline>
<el-form-item
v-for="key in processAcceptKeys"
:key="key"
:label="getFieldUnit(key) ? `${getFieldLabel(key)}(${getFieldUnit(key)})` : getFieldLabel(key)"
class="filter-form-item"
label-width="100px"
>
<!-- 输入框 -->
<el-input v-if="getFieldComponentType(key) === 'el-input'" v-model="queryParams[key]"
:placeholder="`请输入${getFieldLabel(key)}`" size="mini" clearable @keyup.enter="handleQuery" />
<el-input
v-if="getFieldComponentType(key) === 'el-input'"
v-model="queryParams[key]"
:placeholder="`请输入${getFieldLabel(key)}`"
size="mini"
clearable
@keyup.enter="handleQuery"
/>
<!-- 下拉选择框 -->
<el-select v-else-if="getFieldComponentType(key) === 'el-select'" v-model="queryParams[key]"
:placeholder="`请选择${getFieldLabel(key)}`" size="mini" clearable @change="handleQuery">
<el-option v-for="item in getFieldOptions(key)" :key="item.value" :label="item.label"
:value="item.value" />
<el-select
v-else-if="getFieldComponentType(key) === 'el-select'"
v-model="queryParams[key]"
:placeholder="`请选择${getFieldLabel(key)}`"
size="mini"
clearable
@change="handleQuery"
>
<el-option
v-for="item in getFieldOptions(key)"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<!-- 其他自定义组件兼容扩展 -->
<component v-else :is="getFieldComponentType(key)" v-model="queryParams[key]"
:placeholder="`Please ${getFieldInputHint(key)}`" size="mini" clearable :options="getFieldOptions(key)"
@change="handleQuery" />
<component
v-else
:is="getFieldComponentType(key)"
v-model="queryParams[key]"
:placeholder="`Please ${getFieldInputHint(key)}`"
size="mini"
clearable
:options="getFieldOptions(key)"
@change="handleQuery"
/>
</el-form-item>
</el-form>
<!-- 筛选操作按钮查询 + 重置 -->
<el-col :xs="24" :sm="12" :md="6" class="filter-btn-group">
<el-button type="primary" plain icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button>
<el-button type="default" plain icon="el-icon-refresh-left" size="mini" @click="handleResetFilter"
style="margin-left: 8px;">重置</el-button>
<el-button
type="primary"
plain
icon="el-icon-search"
size="mini"
@click="handleQuery"
>
查询
</el-button>
<el-button
type="default"
plain
icon="el-icon-refresh-left"
size="mini"
@click="handleResetFilter"
style="margin-left: 8px;"
>
重置
</el-button>
</el-col>
</el-row>
</el-col>
@@ -36,37 +80,87 @@
<!-- 顶部操作栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd">新增</el-button>
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>
新增
</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport">导出</el-button>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
>
导出
</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="el-icon-refresh" size="mini" @click="handleRefresh">刷新</el-button>
<el-button
type="success"
plain
icon="el-icon-refresh"
size="mini"
@click="handleRefresh"
>
刷新
</el-button>
</el-col>
</el-row>
<!-- 卡片网格布局 -->
<div v-loading="loading" class="card-grid-container">
<el-row :gutter="12">
<el-col v-for="(item, index) in paramList" :key="index" :xs="24" :sm="12" :md="8" :lg="6" :xl="4"
class="card-col">
<el-card class="parameter-card" shadow="never" :body-style="{ padding: '10px' }">
<el-col
v-for="(item, index) in paramList"
:key="index"
:xs="24"
:sm="12"
:md="8"
:lg="6"
:xl="4"
class="card-col"
>
<el-card
class="parameter-card"
shadow="never"
:body-style="{ padding: '10px' }"
>
<!-- 卡片头部processAcceptKeys 字段编辑禁用的标识字段 -->
<div slot="header" class="card-header">
<span class="card-title">
<template v-for="(key, idx) in processAcceptKeys">
{{ getFieldLabel(key) }}: {{ getFieldDisplayValue(key, item[key]) || '-' }}
{{ idx < processAcceptKeys.length - 1 ? ' | ' : '' }} </template>
{{ getFieldUnit(key) ? ` ${getFieldUnit(key)}` : '' }}
{{ idx < processAcceptKeys.length - 1 ? ' | ' : '' }}
</template>
</span>
</div>
<!-- 卡片主体processReturnKeys 字段业务参数 -->
<div class="card-body">
<div class="param-row" v-for="(row, rowIdx) in getGroupedReturnKeys" :key="rowIdx">
<div class="param-item" v-for="(key, colIdx) in row" :key="colIdx">
<span class="param-label">{{ getFieldLabel(key) }}:</span>
<span class="param-value">{{ getFieldDisplayValue(key, item[key]) || '-' }}</span>
<div
class="param-row"
v-for="(row, rowIdx) in getGroupedReturnKeys"
:key="rowIdx"
>
<div
class="param-item"
v-for="(key, colIdx) in row"
:key="colIdx"
>
<span class="param-label">
{{ getFieldLabel(key) }}({{ getFieldUnit(key) || '-' }}):
</span>
<span class="param-value">
{{ getFieldDisplayValue(key, item[key]) || '-' }}
</span>
</div>
<!-- 补全空项保证每行两个布局 -->
<div class="param-item" v-if="row.length === 1"></div>
@@ -75,9 +169,30 @@
<!-- 卡片底部操作按钮 -->
<div class="card-footer">
<el-button size="mini" type="text" icon="el-icon-copy-document" @click="handleCopy(item)">复制</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(item)">编辑</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(item)">删除</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-copy-document"
@click="handleCopy(item)"
>
复制
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(item)"
>
编辑
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(item)"
>
删除
</el-button>
</div>
</el-card>
</el-col>
@@ -90,36 +205,94 @@
</div>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 新增/编辑弹窗 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="formRules" label-width="100px">
<el-dialog
:title="title"
:visible.sync="open"
width="600px"
append-to-body
>
<el-form
ref="form"
:model="form"
:rules="formRules"
label-width="100px"
>
<!-- 第一部分processAcceptKeys编辑禁用新增可编辑 -->
<el-form-item v-for="(key, idx) in processAcceptKeys" :key="`accept-${idx}-${key}`" :label="getFieldLabel(key)"
:prop="key">
<el-input v-if="getFieldComponentType(key) == 'el-input'" v-model="form[key]" placeholder="Please enter"
:disabled="isEdit" />
<el-select v-else-if="getFieldComponentType(key) == 'el-select'" v-model="form[key]"
placeholder="请选择" :disabled="isEdit">
<el-option v-for="item in getFieldOptions(key)" :key="item.value" :label="item.label" :value="item.value" />
<el-form-item
v-for="(key, idx) in processAcceptKeys"
:key="`accept-${idx}-${key}`"
:label="getFieldUnit(key) ? `${getFieldLabel(key)}(${getFieldUnit(key)})` : getFieldLabel(key)"
:prop="key"
>
<el-input
v-if="getFieldComponentType(key) == 'el-input'"
v-model="form[key]"
placeholder="Please enter"
:disabled="isEdit"
/>
<el-select
v-else-if="getFieldComponentType(key) == 'el-select'"
v-model="form[key]"
placeholder="请选择"
:disabled="isEdit"
>
<el-option
v-for="item in getFieldOptions(key)"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<component v-else :is="getFieldComponentType(key)" v-model="form[key]"
:placeholder="`请${getFieldInputHint(key)}${getFieldLabel(key)}`" :disabled="isEdit"
:options="getFieldOptions(key)" />
<component
v-else
:is="getFieldComponentType(key)"
v-model="form[key]"
:placeholder="`请${getFieldInputHint(key)}${getFieldLabel(key)}`"
:disabled="isEdit"
:options="getFieldOptions(key)"
/>
</el-form-item>
<!-- 第二部分processReturnKeys始终可编辑 -->
<el-form-item v-for="(key, idx) in processReturnKeys" :key="`return-${idx}-${key}`" :label="getFieldLabel(key)"
:prop="key">
<el-input v-if="getFieldComponentType(key) == 'el-input'" v-model="form[key]" placeholder="Please enter" />
<el-select v-else-if="getFieldComponentType(key) == 'el-select'" v-model="form[key]"
placeholder="请选择">
<el-option v-for="item in getFieldOptions(key)" :key="item.value" :label="item.label" :value="item.value" />
<el-form-item
v-for="(key, idx) in processReturnKeys"
:key="`return-${idx}-${key}`"
:label="getFieldUnit(key) ? `${getFieldLabel(key)}(${getFieldUnit(key)})` : getFieldLabel(key)"
:prop="key"
>
<el-input
v-if="getFieldComponentType(key) == 'el-input'"
v-model="form[key]"
placeholder="Please enter"
/>
<el-select
v-else-if="getFieldComponentType(key) == 'el-select'"
v-model="form[key]"
placeholder="请选择"
>
<el-option
v-for="item in getFieldOptions(key)"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<component v-else :is="getFieldComponentType(key)" v-model="form[key]"
:placeholder="`请${getFieldInputHint(key)}${getFieldLabel(key)}`" :options="getFieldOptions(key)" />
<component
v-else
:is="getFieldComponentType(key)"
v-model="form[key]"
:placeholder="`请${getFieldInputHint(key)}${getFieldLabel(key)}`"
:options="getFieldOptions(key)"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -139,58 +312,59 @@ export default {
type: Object,
required: true,
validator: (val) => {
const requiredKeys = ['list', 'get', 'add', 'update', 'del', 'export'];
return requiredKeys.every(key => typeof val[key] === 'function');
}
const requiredKeys = ["list", "get", "add", "update", "del", "export"];
return requiredKeys.every((key) => typeof val[key] === "function");
},
},
// 2. 字段配置schema数组格式[{
// prop: 字段名,
// label: 字段标签,
// required?: 是否必填,
// 2. 字段配置schema数组格式[{
// prop: 字段名,
// label: 字段标签,
// required?: 是否必填,
// type?: 'input'|'select'默认input,
// options?: 下拉选项数组type=select时生效,
// dict?: 字典转换函数用于显示值转换如钢种ID转名称
// unit?: 量纲如mm、MPa、KN
// }]
schema: {
type: Array,
required: true,
validator: (val) => val.every(item => !!item.prop && !!item.label)
validator: (val) => val.every((item) => !!item.prop && !!item.label),
},
// 3. 工艺参数接受值字符串数组编辑禁用的字段prop
processAcceptKeys: {
type: Array,
required: true,
validator: (val) => val.every(item => typeof item === 'string')
validator: (val) => val.every((item) => typeof item === "string"),
},
// 4. 工艺参数返回值字符串数组可编辑的业务参数字段prop
processReturnKeys: {
type: Array,
required: true,
validator: (val) => val.every(item => typeof item === 'string')
validator: (val) => val.every((item) => typeof item === "string"),
},
// 7. 额外查询参数(如钢种筛选)
extraQueryParams: {
type: Object,
default: () => ({})
}
default: () => ({}),
},
},
data() {
// 合并所有需要绑定的字段,初始化空值(解决响应式问题)
const allKeys = [...this.processAcceptKeys, ...this.processReturnKeys];
const initForm = {};
allKeys.forEach(key => {
initForm[key] = ''; // 为每个字段初始化空字符串,保证响应式
allKeys.forEach((key) => {
initForm[key] = ""; // 为每个字段初始化空字符串,保证响应式
});
// 初始化查询参数合并分页参数、额外参数、processAcceptKeys空值
const initQueryParams = {
pageNum: 1,
pageSize: 10,
...this.extraQueryParams
...this.extraQueryParams,
};
// 为processAcceptKeys每个字段初始化查询参数空值
this.processAcceptKeys.forEach(key => {
initQueryParams[key] = '';
this.processAcceptKeys.forEach((key) => {
initQueryParams[key] = "";
});
return {
@@ -211,7 +385,7 @@ export default {
// 是否为新增状态
isAdd: false,
// 表单校验规则
formRules: {}
formRules: {},
};
},
created() {
@@ -232,44 +406,50 @@ export default {
// 编辑状态(更直观的计算属性)
isEdit() {
return !this.isAdd;
}
},
},
methods: {
/** 根据字段prop获取标签从schema数组中匹配 */
getFieldLabel(prop) {
const field = this.schema.find(item => item.prop === prop);
const field = this.schema.find((item) => item.prop === prop);
return field ? field.label : prop;
},
/** 新增根据字段prop获取量纲 */
getFieldUnit(prop) {
const field = this.schema.find((item) => item.prop === prop);
return field?.unit || "";
},
/** 根据字段prop获取控件类型默认input */
getFieldComponentType(prop) {
const field = this.schema.find(item => item.prop === prop);
return field?.type || 'el-input';
const field = this.schema.find((item) => item.prop === prop);
return field?.type || "el-input";
},
/** 根据字段prop获取输入提示输入/选择) */
getFieldInputHint(prop) {
const field = this.schema.find(item => item.prop === prop);
return field?.type === 'el-select' ? '请选择' : '请输入';
const field = this.schema.find((item) => item.prop === prop);
return field?.type === "el-select" ? "请选择" : "请输入";
},
/** 根据字段prop获取下拉选项 */
getFieldOptions(prop) {
const field = this.schema.find(item => item.prop === prop);
const field = this.schema.find((item) => item.prop === prop);
return field?.options || [];
},
/** 根据字段prop和值获取显示值支持字典转换 */
getFieldDisplayValue(prop, value) {
if (value === '' || value === null || value === undefined) return '-';
const field = this.schema.find(item => item.prop === prop);
if (value === "" || value === null || value === undefined) return "-";
const field = this.schema.find((item) => item.prop === prop);
// 有字典转换函数则执行转换
if (field?.dict && typeof field.dict === 'function') {
if (field?.dict && typeof field.dict === "function") {
return field.dict(value);
}
// 下拉选项转换ID转label
if (field?.type === 'el-select' && field?.options.length) {
const option = field.options.find(item => item.value == value);
if (field?.type === "el-select" && field?.options.length) {
const option = field.options.find((item) => item.value == value);
return option ? option.label : value;
}
return value;
@@ -280,11 +460,16 @@ export default {
this.formRules = {};
// 遍历所有字段(接受值+返回值)生成校验规则
const allKeys = [...this.processAcceptKeys, ...this.processReturnKeys];
allKeys.forEach(key => {
const field = this.schema.find(item => item.prop === key);
if (field?.required !== false) { // 默认必填除非显式设置required: false
allKeys.forEach((key) => {
const field = this.schema.find((item) => item.prop === key);
if (field?.required !== false) {
// 默认必填除非显式设置required: false
this.formRules[key] = [
{ required: true, message: `${this.getFieldInputHint(key)} ${this.getFieldLabel(key)}`, trigger: 'blur' }
{
required: true,
message: `${this.getFieldInputHint(key)} ${this.getFieldLabel(key)}`,
trigger: "blur",
},
];
}
});
@@ -303,8 +488,8 @@ export default {
/** 重置筛选条件 */
handleResetFilter() {
// 重置processAcceptKeys对应的筛选字段为空
this.processAcceptKeys.forEach(key => {
this.queryParams[key] = '';
this.processAcceptKeys.forEach((key) => {
this.queryParams[key] = "";
});
// 重置额外查询参数(可选:若需要保留额外参数,可注释此行)
// Object.keys(this.extraQueryParams).forEach(key => {
@@ -319,13 +504,16 @@ export default {
this.loading = true;
// 合并额外查询参数(最终查询参数:分页+筛选+额外参数)
const queryParams = { ...this.queryParams, ...this.extraQueryParams };
this.apis.list(queryParams).then(response => {
this.paramList = response.rows || [];
this.total = response.total || 0;
this.loading = false;
}).catch(() => {
this.loading = false;
});
this.apis
.list(queryParams)
.then((response) => {
this.paramList = response.rows || [];
this.total = response.total || 0;
this.loading = false;
})
.catch(() => {
this.loading = false;
});
},
/** 取消弹窗 */
@@ -338,8 +526,8 @@ export default {
resetForm() {
const allKeys = [...this.processAcceptKeys, ...this.processReturnKeys];
const initForm = {};
allKeys.forEach(key => {
initForm[key] = '';
allKeys.forEach((key) => {
initForm[key] = "";
});
this.form = initForm; // 重置为初始化状态
if (this.$refs.form) {
@@ -361,8 +549,8 @@ export default {
this.resetForm();
// 复制行数据到表单
const allKeys = [...this.processAcceptKeys, ...this.processReturnKeys];
allKeys.forEach(key => {
this.form[key] = row[key] || '';
allKeys.forEach((key) => {
this.form[key] = row[key] || "";
});
this.open = true;
this.title = `复制新增工艺参数`;
@@ -371,61 +559,68 @@ export default {
/** 修改操作(优化异常处理和数据赋值) */
handleUpdate(row) {
this.isAdd = false; // 标记为编辑态
this.resetForm(); // 重置表单
this.apis.get(row).then(response => {
const data = response.data || {};
// 赋值到表单处理undefined情况保证字段有值
const allKeys = [...this.processAcceptKeys, ...this.processReturnKeys];
allKeys.forEach(key => {
this.form[key] = data[key] !== undefined ? data[key] : '';
this.resetForm(); // 重置表单
this.apis
.get(row)
.then((response) => {
const data = response.data || {};
// 赋值到表单处理undefined情况保证字段有值
const allKeys = [...this.processAcceptKeys, ...this.processReturnKeys];
allKeys.forEach((key) => {
this.form[key] = data[key] !== undefined ? data[key] : "";
});
this.open = true;
this.title = `编辑工艺参数`;
})
.catch((error) => {
this.$modal.msgError("获取详情失败,请稍后重试。");
console.error("获取详情失败:", error);
});
this.open = true;
this.title = `编辑工艺参数`;
}).catch(error => {
this.$modal.msgError('获取详情失败,请稍后重试。');
console.error('获取详情失败:', error);
});
},
/** 提交表单 */
submitForm() {
this.$refs.form.validate(valid => {
this.$refs.form.validate((valid) => {
if (valid) {
const api = this.isAdd ? this.apis.add : this.apis.update;
api(this.form).then(() => {
this.$modal.msgSuccess(this.isAdd ? "新增成功" : "更新成功");
this.open = false;
this.getList();
}).catch(error => {
this.$modal.msgError(this.isAdd ? "新增失败" : "更新失败");
console.error('提交失败:', error);
});
api(this.form)
.then(() => {
this.$modal.msgSuccess(this.isAdd ? "新增成功" : "更新成功");
this.open = false;
this.getList();
})
.catch((error) => {
this.$modal.msgError(this.isAdd ? "新增失败" : "更新失败");
console.error("提交失败:", error);
});
}
});
},
/** 删除操作 */
handleDelete(row) {
this.$modal.confirm('确定删除该工艺参数吗?').then(() => {
return this.apis.del(row);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => { });
this.$modal
.confirm("确定删除该工艺参数吗?")
.then(() => {
return this.apis.del(row);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出操作 */
handleExport() {
try {
this.download(this.apis.export, {
...this.queryParams
}, `工艺参数_${new Date().getTime()}.xlsx`);
this.download(this.apis.export, { ...this.queryParams }, `工艺参数_${new Date().getTime()}.xlsx`);
} catch (error) {
this.$modal.msgWarning('导出功能暂未配置,请联系管理员。');
console.error('导出失败:', error);
this.$modal.msgWarning("导出功能暂未配置,请联系管理员。");
console.error("导出失败:", error);
}
}
}
},
},
};
</script>
@@ -557,7 +752,7 @@ export default {
.param-value {
color: #333;
font-weight: 500;
font-size: 12px;
font-size: 10px;
}
}
}

View File

@@ -1,11 +1,21 @@
<template>
<ProcessParamCardTemplate :apis="tensionApis" :schema="tensionSchema" :processAcceptKeys="processAcceptKeys"
:processReturnKeys="processReturnKeys" />
<ProcessParamCardTemplate
:apis="tensionApis"
:schema="tensionSchema"
:processAcceptKeys="processAcceptKeys"
:processReturnKeys="processReturnKeys"
/>
</template>
<script>
import ProcessParamCardTemplate from './T.vue';
import { listTension, getTension, delTension, addTension, updateTension } from "@/api/business/tension";
import ProcessParamCardTemplate from "./T.vue";
import {
listTension,
getTension,
delTension,
addTension,
updateTension,
} from "@/api/business/tension";
export default {
name: "Tension",
@@ -18,37 +28,64 @@ export default {
get: getTension,
add: addTension,
update: updateTension,
del: (row) => delTension({ thicks: [row.thick], yieldStrens: [row.yieldStren] }),
export: 'business/tension/export'
del: (row) =>
delTension({ thicks: [row.thick], yieldStrens: [row.yieldStren] }),
export: "business/tension/export",
},
// 2. 字段配置schema数组格式
// 2. 字段配置schema数组格式- 新增unit字段表示量纲
tensionSchema: [
// 标识字段processAcceptKeys
{ prop: 'thick', label: '厚度', required: true },
{ prop: 'yieldStren', label: '屈服强度', required: true },
{ prop: "thick", label: "厚度", required: true, unit: "mm" }, // 厚度:毫米
{ prop: "yieldStren", label: "屈服强度", required: true, unit: "MPa" }, // 屈服强度:兆帕
// 业务参数processReturnKeys
{ prop: 'value1', label: '开卷机张力', required: true },
{ prop: 'value2', label: '入口活套', required: true },
{ prop: 'value3', label: '清洗段', required: true },
{ prop: 'value4', label: '炉区张力', required: true },
{ prop: 'value5', label: '冷却塔', required: true },
{ prop: 'value6', label: '平整机(停机状态)', required: true },
{ prop: 'value7', label: '平整机入口', required: true },
{ prop: 'value8', label: '平整机出口', required: true },
{ prop: 'value9', label: '张力矫直机(停机状态)', required: true },
{ prop: 'value10', label: '张力矫直机出口', required: true },
{ prop: 'value11', label: '后处理段', required: true },
{ prop: 'value12', label: '出口活套', required: true },
{ prop: 'value13', label: '卷取机', required: true }
{ prop: "value1", label: "开卷机张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value2", label: "入口活套张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value3", label: "清洗段张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value4", label: "炉区张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value5", label: "冷却塔", required: true, unit: "℃" }, // 冷却塔:摄氏度
{
prop: "value6",
label: "平整机张力",
required: true,
unit: "KN",
}, // 张力:千牛
{ prop: "value7", label: "平整机入口张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value8", label: "平整机出口张力", required: true, unit: "KN" }, // 张力:千牛
{
prop: "value9",
label: "矫直机张力",
required: true,
unit: "KN",
}, // 张力:千牛
{
prop: "value10",
label: "矫直机出口张力",
required: true,
unit: "KN",
}, // 张力:千牛
{ prop: "value11", label: "后处理段张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value12", label: "出口活套张力", required: true, unit: "KN" }, // 张力:千牛
{ prop: "value13", label: "卷取机张力", required: true, unit: "KN" }, // 张力:千牛
],
// 3. 工艺参数接受值编辑禁用的字段prop
processAcceptKeys: ['thick', 'yieldStren'],
processAcceptKeys: ["thick", "yieldStren"],
// 4. 工艺参数返回值可编辑的业务参数字段prop
processReturnKeys: [
'value1', 'value2', 'value3', 'value4', 'value5', 'value6',
'value7', 'value8', 'value9', 'value10', 'value11', 'value12', 'value13'
]
"value1",
"value2",
"value3",
"value4",
"value5",
"value6",
"value7",
"value8",
"value9",
"value10",
"value11",
"value12",
"value13",
],
};
}
},
};
</script>
</script>