From 1621b3719092d93e6c29f7a27e401529e0454420 Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期一, 01 八月 2022 18:57:45 +0800 Subject: [PATCH] 双重预防 --- src/views/doublePrevent/riskLevel/device/index.vue | 73 +++++++++++++++++++++--------------- 1 files changed, 43 insertions(+), 30 deletions(-) diff --git a/src/views/doublePrevent/riskLevel/device/index.vue b/src/views/doublePrevent/riskLevel/device/index.vue index 8a7bdfe..2bdd69e 100644 --- a/src/views/doublePrevent/riskLevel/device/index.vue +++ b/src/views/doublePrevent/riskLevel/device/index.vue @@ -10,16 +10,7 @@ </div> <div class="basic-line"> <span>部门:</span> - <el-cascader - :options="departmentList" - :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" - placeholder="请选择部门" - clearable - filterable - class="input-box" - v-model="productionDeviceData.params.depId" - > - </el-cascader> + <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-box" v-model="productionDeviceData.params.depId"> </el-cascader> </div> <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> <el-icon> @@ -38,34 +29,35 @@ <el-table-column type="index" label="序号" width="60" /> <el-table-column prop="produceDeviceName" label="生产装置名称" show-overflow-tooltip></el-table-column> <el-table-column prop="depName" label="所属部门" show-overflow-tooltip></el-table-column> - <el-table-column prop="riskLevel" label="风险等级" show-overflow-tooltip></el-table-column> + <el-table-column prop="riskLevel" label="风险等级" show-overflow-tooltip> + <template #default="scope"> + <el-tag :type="scope.row.riskLevel === 1 ? 'success' : scope.row.riskLevel === 2 ? 'info' : scope.row.riskLevel === 3 ? 'warning' : 'danger'"> + {{ parseNumber(scope.row.riskLevel, '风险等级') }} + </el-tag> + </template> + </el-table-column> <el-table-column prop="location" label="区域位置" show-overflow-tooltip></el-table-column> - <el-table-column prop="status" label="状态" show-overflow-tooltip> </el-table-column> + <el-table-column prop="status" label="状态" show-overflow-tooltip> + <template #default="scope"> + <el-tag :type="scope.row.status === 1 ? 'primary' : 'warning'"> + {{ parseNumber(scope.row.status, '状态') }} + </el-tag> + </template> + </el-table-column> <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column> <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip></el-table-column> <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip></el-table-column> <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip></el-table-column> - <el-table-column label="操作" width="150"> + <el-table-column label="操作" width="200" align="center"> <template #default="scope"> - <el-button size="small" text type="primary" @click="onOpenDialogRef('修改', scope.row)">修改</el-button> - <el-button size="small" text type="danger" @click="onDelProductionDevice(scope.row)">删除</el-button> + <el-button size="small" text type="primary" :icon="View" @click="onOpenDialogRef('查看', scope.row)">查看</el-button> + <el-button size="small" text type="primary" :icon="Edit" @click="onOpenDialogRef('修改', scope.row)">修改</el-button> + <el-button size="small" text type="danger" :icon="Delete" @click="onDelProductionDevice(scope.row)">删除</el-button> </template> </el-table-column> </el-table> <br /> - <el-pagination - @size-change="onHandleSizeChange" - @current-change="onHandleCurrentChange" - :pager-count="5" - :page-sizes="[10, 20, 30]" - v-model:current-page="productionDeviceData.params.pageIndex" - background - v-model:page-size="productionDeviceData.params.pageSize" - layout="total, sizes, prev, pager, next, jumper" - :total="productionDeviceData.total" - class="page-position" - > - </el-pagination> + <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="productionDeviceData.params.pageIndex" background v-model:page-size="productionDeviceData.params.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="productionDeviceData.total" class="page-position"> </el-pagination> <br /> <br /> </el-card> @@ -79,6 +71,7 @@ import productionDeviceDialog from './components/productionDeviceDialog.vue'; import { productionDeviceApi } from '/@/api/doublePreventSystem/productionDevice/index.ts'; import { departmentApi } from '/@/api/department'; +import { Edit, Delete, View } from '@element-plus/icons-vue'; // 定义接口来定义对象的类型 interface TableData { @@ -105,14 +98,18 @@ }; }; departmentList: Array<DepartmentState>; + stateList: Array<levelListState>; levelList: Array<levelListState>; } -interface levelListState {} +interface levelListState { + id: number; + name: string; +} interface DepartmentState {} export default { name: 'productionDevice', - components: { productionDeviceDialog }, + components: { productionDeviceDialog, Edit, Delete, View }, setup() { const productionDeviceDialogRef = ref(); const state = reactive<TableDataState>({ @@ -136,6 +133,10 @@ { id: 2, name: '一般风险' }, { id: 3, name: '较大风险' }, { id: 4, name: '重大风险' } + ], + stateList: [ + { id: 1, name: '使用中' }, + { id: 2, name: '已弃用' } ] }); // 初始化表格数据 @@ -213,7 +214,19 @@ getDepartmentData(); }); + const parseNumber = (value: string | number, type: string) => { + if (type === '风险等级') { + return state.levelList.find((item) => item.id === value)?.name; + } else if (type === '状态') { + return state.stateList.find((item) => item.id === value)?.name; + } + }; + return { + Edit, + Delete, + View, + parseNumber, handleSearch, onOpenDialogRef, onHandleSizeChange, -- Gitblit v1.9.2