检测过程流程展示页面框架绘制

This commit is contained in:
GYYM
2024-11-18 22:04:59 +08:00
parent 5cdbee88b4
commit 977a998767
15 changed files with 1469 additions and 171 deletions

View File

@@ -448,8 +448,8 @@ ElMessageBox.confirm(
'检测全部结束,你可以停留在此页面查看检测结果,或返回首页进行复检、报告生成和归档等操作',
'检测完成',
{
confirmButtonText: 'OK',
cancelButtonText: 'Cancel',
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'success',
}
)

View File

@@ -6,7 +6,7 @@
<el-form-item label="名称" prop="name" :label-width="100">
<el-input v-model="formData.name" placeholder="请输入名称" autocomplete="off" :disabled="isReadOnly"/>
</el-form-item>
<el-form-item label="父计划" prop="father_Plan_Id" :label-width="100">
<!-- <el-form-item label="父计划" prop="father_Plan_Id" :label-width="100">
<el-select v-model="formData.father_Plan_Id" placeholder="请选择父计划" autocomplete="off" :disabled="isReadOnly" @change="fatherPlanChange">
<el-option
v-for="plan in testFatherPlanList"
@@ -15,7 +15,17 @@
:value="plan.id">
</el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item label='检测源' prop='source_Id' :label-width='100'>
<el-select v-model="formData.source_Id" multiple placeholder="请选择检测源">
<el-option
v-for="plan in sourceDataList"
:key="plan.id"
:label="plan.label"
:value="plan.id"
/>
</el-select>
</el-form-item>
<el-form-item label="数据源" prop="dataSource_Id" :label-width="100">
<el-select v-model="formData.dataSource_Id" placeholder="请选择数据源" autocomplete="off" :disabled="isReadOnly">
<el-option
@@ -46,7 +56,16 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label='被检设备' :label-width='100' prop='device_Id'>
<el-select v-model="formData.device_Id" multiple placeholder="请选择被检设备">
<el-option
v-for="plan in deviceDataList"
:key="plan.id"
:label="plan.label"
:value="plan.id"
/>
</el-select>
</el-form-item>
</el-form>
</div>
<template #footer>
@@ -62,7 +81,7 @@
import{ElMessage, FormInstance,FormItemRule}from'element-plus'
import { defineProps, defineEmits, reactive,watch,ref, Ref } from 'vue';
import { dialogSmall} from '@/utils/elementBind'
import {dictPattern,dictTestState,dictReportState,dictResult,testPlanDataList,testSoureDataList,testScriptDataList,testErrSystDataList,planData,testFatherPlanList} from '@/api/plan/planData'
import {dictPattern,dictTestState,dictReportState,dictResult,testPlanDataList,sourceDataList,deviceDataList,testSoureDataList,testScriptDataList,testErrSystDataList,planData,testFatherPlanList} from '@/api/plan/planData'
const props = defineProps<{
visible: boolean;
@@ -73,9 +92,11 @@
name: string;
pattern: string; //模式,字典表(数字、模拟、比对)
father_Plan_Id: string; //父计划ID
source_Id: string;//检测源ID
dataSource_Id: string; //数据源ID
script_Id: string; //检测脚本ID
error_Sys_Id: string;//误差体系ID
device_Id: string;//被检设备ID
test_State: string; //检测状态
report_State: string; //报告生成状态
result: string;//检测结果
@@ -119,6 +140,7 @@ const emit = defineEmits<{
const formRuleRef = ref<FormInstance>()
const rules: Ref<Record<string, Array<FormItemRule>>> = ref({
name: [{ required: true, message: '检测计划名称必填!', trigger: 'blur' }],
source_Id: [{ required: true, message: '检测源必选!', trigger: 'blur' }],
dataSource_Id: [{ required: true, message: '数据源必选!', trigger: 'blur' }],
script_Id: [{ required: true, message: '检测脚本必选!', trigger: 'blur' }],
error_Sys_Id: [{ required: true, message: '误差体系必选!', trigger: 'blur' }],

View File

@@ -8,7 +8,8 @@
<!-- 表格 header 按钮 -->
<template #tableHeader='scope'>
<el-button type='primary' :icon='Download' @click='importClick'>导入</el-button>
<el-button type='primary' :icon='CirclePlus' :disabled='!(scope.selectedList.length > 1)' @click='combineClick'>
<el-button type='primary' :icon='Upload' @click='exportClick'>导出</el-button>
<el-button type='primary' :icon='ScaleToOriginal' :disabled='!(scope.selectedList.length > 1)' @click='combineClick'>
合并
</el-button>
<el-button type='primary' :icon='CirclePlus' @click='openAddDialog'>新增</el-button>
@@ -20,9 +21,11 @@
<!-- 表格操作 -->
<template #operation='scope'>
<!-- <el-button type='primary' link :icon='View' @click="handleRowClick(scope.row)">查看</el-button> -->
<el-button type='primary' link :icon='Upload' @click='exportClick'>导出</el-button>
<!-- <el-button type='primary' link :icon='Upload' @click='exportClick'>导出</el-button> -->
<el-button type='primary' link :icon='EditPen' @click='openEditDialog(scope.row)'>编辑</el-button>
<div class='cn-render-buttons'>
<el-button type='primary' link :icon='Delete' @click='openEditDialog(scope.row)'>删除</el-button>
<el-button type='primary' link :icon='List' @click='showDeviceOpen(scope.row)'>设备绑定</el-button>
<!-- <div class='cn-render-buttons'>
<el-dropdown trigger='click'>
<el-button link type='primary' class='table-operate'>
<div class='table-operate-text'>更多</div>
@@ -41,7 +44,7 @@
</el-dropdown-menu>
</template>
</el-dropdown>
</div>
</div> -->
</template>
</ProTable>
@@ -77,7 +80,7 @@
import ProTable from '@/components/ProTable/index.vue'
import TimeControl from '@/components/TimeControl/index.vue'
import type { ProTableInstance, ColumnProps } from '@/components/ProTable/interface'
import { CirclePlus, Delete, EditPen, View, Upload, Download, List, Tools } from '@element-plus/icons-vue'
import { ScaleToOriginal, CirclePlus, Delete, EditPen, View, Upload, Download, List, Tools } from '@element-plus/icons-vue'
import {
dictPattern,
dictTestState,
@@ -163,14 +166,14 @@ const columns = reactive<ColumnProps<Plan.PlanAndSourceBO>[]>([
{ type: 'index', fixed: 'left', width: 70, label: '序号' },
{
prop: 'name',
label: '检测计划名称',
label: '名称',
width: 200,
search: { el: 'input' },
},
{
prop: 'testSourceName',
label: '检测源名称',
width: 300,
label: '检测源',
width: 215,
render: scope => {
return (
<div class='flx-flex-start'>
@@ -187,7 +190,7 @@ const columns = reactive<ColumnProps<Plan.PlanAndSourceBO>[]>([
{
prop: 'script_Id',
label: '检测脚本',
width: 300,
width: 350,
enum: testScriptDataList,
fieldNames: { label: 'label', value: 'id' },
render: scope => {
@@ -215,7 +218,7 @@ const columns = reactive<ColumnProps<Plan.PlanAndSourceBO>[]>([
},
{
prop: 'dataSource_Id',
label: '数据源名称',
label: '数据源',
width: 200,
enum: testSoureDataList,
fieldNames: { label: 'label', value: 'id' },
@@ -247,13 +250,13 @@ const columns = reactive<ColumnProps<Plan.PlanAndSourceBO>[]>([
search: { el: 'select', props: { filterable: true } },
fieldNames: { label: 'label', value: 'id' },
},
{
prop: 'father_Plan_Id',
label: '父节点',
width: 200,
enum: testFatherPlanList,
fieldNames: { label: 'label', value: 'id' },
},
// {
// prop: 'father_Plan_Id',
// label: '父节点',
// width: 200,
// enum: testFatherPlanList,
// fieldNames: { label: 'label', value: 'id' },
// },
// {
// prop: 'create_Time',
// label: '记录时间',