From 510bbb4e5e0bf980e2478813112bd3e80772fb3a Mon Sep 17 00:00:00 2001 From: batman <978517621@qq.com> Date: 星期四, 09 三月 2023 17:31:32 +0800 Subject: [PATCH] 新修改添加页面 --- src/views/specialWorkSystem/specialIndex/index.vue | 157 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 140 insertions(+), 17 deletions(-) diff --git a/src/views/specialWorkSystem/specialIndex/index.vue b/src/views/specialWorkSystem/specialIndex/index.vue index 54102a3..f18f329 100644 --- a/src/views/specialWorkSystem/specialIndex/index.vue +++ b/src/views/specialWorkSystem/specialIndex/index.vue @@ -83,21 +83,21 @@ :value="item.id" /> </el-select> - <el-button type="text" size="small">所有记录>></el-button> </div> </div> <div class="chart"> - <el-table ref="multipleTableRef" :data="warningData" style="width: 100%" :header-cell-style="isFull==true?{background: none}:{ background: '#fafafa' }"> - <el-table-column property="name" label="姓名" width="180" align="center"/> + <el-table ref="multipleTableRef" :data="warningData" style="width: 100%" stripe border :header-cell-style="{ background: '#fafafa' }"> + <el-table-column property="name" label="姓名" align="center"/> <el-table-column property="dep" label="所属部门" align="center"/> <el-table-column property="warning" label="异常报警次数" align="center"/> <el-table-column property="role" label="角色" align="center"/> - <el-table-column property="isCard" label="是否持证" align="center" width="180"> + <el-table-column property="isCard" label="是否持证" align="center"> <template #default="scope"> <span>{{scope.row.isCard == 1?'是':'否'}}</span> </template> </el-table-column> </el-table> + <el-button type="text" size="small" style="margin-top: 10px">所有记录>></el-button> </div> <!-- <div class="chart" :id="slfx"></div>--> </div> @@ -179,9 +179,9 @@ <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()" /> </el-col> </el-row> - <el-table ref="multipleTableRef" :data="workData" style="width: 100%" :header-cell-style="{ background: '#fafafa' }"> + <el-table ref="multipleTableRef" stripe border :data="workData" style="width: 100%" :header-cell-style="{ background: '#fafafa' }"> <el-table-column property="num" label="作业证编号" align="center"/> - <el-table-column property="dep" label="部门" align="center"/> + <el-table-column property="dep" label="部门" align="center"/> <el-table-column property="applyer" label="申请人" align="center"/> <el-table-column property="worker" label="作业人" align="center"/> <el-table-column property="type" label="作业类型" align="center"/> @@ -210,7 +210,7 @@ <template #default="scope"> <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看作业票</el-button> <el-button link type="primary" size="small" :icon="FolderChecked" @click="handleReview(scope.row)">验收</el-button> - <el-button link type="primary" size="small" :icon="FolderChecked" @click="handleReview(scope.row)">查看实时监控</el-button> + <el-button link type="primary" size="small" :icon="VideoPlay" @click="openVideo(scope.row)">查看实时监控</el-button> </template> </el-table-column> </el-table> @@ -254,6 +254,7 @@ </span> </template> </el-dialog> + <video-detail ref="videoRef"></video-detail> </div> </template> @@ -264,7 +265,7 @@ import { useUserInfo } from '/@/stores/userInfo'; import { Session } from '/@/utils/storage'; import { useRouter } from 'vue-router'; -import { Edit, View, Plus, Delete, Refresh, Search, Finished, Download, FolderChecked } from '@element-plus/icons-vue'; +import { Edit, View, Plus, Delete, Refresh, Search, Finished, Download, FolderChecked, VideoPlay } from '@element-plus/icons-vue'; import { ElTable, ElMessage } from 'element-plus'; import { specialIndexApi } from '/@/api/specialWorkSystem/specialIndex'; import { workApplyApi } from '/@/api/specialWorkSystem/workApply'; @@ -275,6 +276,7 @@ import axios from 'axios'; import * as echarts from "echarts"; import screenfull from "screenfull"; +import VideoDetail from "/@/views/specialWorkSystem/specialIndex/components/videoDetail.vue"; // 定义接口来定义对象的类型 interface stateType { @@ -331,6 +333,7 @@ export default defineComponent({ name: 'specialIndex', components: { + VideoDetail, fire: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/wdsq/components/fireLog.vue')), space: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/wdsq/components/spaceLog.vue')), hoist: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/wdsq/components/hoistLog.vue')), @@ -348,6 +351,7 @@ const zyfb = ref("eChartZyfb" + Date.now() + Math.random()) const slfx = ref("eChartSlfx" + Date.now() + Math.random()) const zyqs = ref("eChartZyqs" + Date.now() + Math.random()) + const videoRef = ref(); const state = reactive<stateType>({ pageIndex1: 1, pageSize1: 10, @@ -393,6 +397,36 @@ reason: '分析超时', warning: 0, message: 1 + }, + { + num: '222', + dep: '部门2', + applyer: '张凤', + worker: '李羽飞', + type: '动土作业', + level: '一级', + applyTime: '2023-03-08', + startTime: '2023-03-08', + endTime: '2023-03-08', + status: 1, + reason: '分析超时', + warning: 1, + message: 0 + }, + { + num: '333', + dep: '部门3', + applyer: '张凤', + worker: '李羽飞', + type: '动火作业', + level: '一级', + applyTime: '2023-03-08', + startTime: '2023-03-08', + endTime: '2023-03-08', + status: 2, + reason: '分析超时', + warning: 2, + message: 0 }, { num: '222', @@ -495,6 +529,13 @@ warning: 51, role: '监护人', isCard: 0 + }, + { + name: '黄公子', + dep: '有机事业部', + warning: 69, + role: '作业人', + isCard: 1 } ], reviewForm: { @@ -513,6 +554,12 @@ initZyqs() }); const toFullscreen =()=>{ + const element = document.getElementById('bigScreen') + if (!screenfull.isEnabled) { + ElMessage.warning('暂不不支持全屏'); + return false; + } + screenfull.toggle(element); state.isFull = !state.isFull if(state.isFull == true){ state.themeColor = '#11FEEE' @@ -522,13 +569,6 @@ initZyfb() initSlfx() initZyqs() - console.log(state.isFull,'quanp',state.themeColor) - const element = document.getElementById('bigScreen') - if (!screenfull.isEnabled) { - ElMessage.warning('暂不不支持全屏'); - return false; - } - screenfull.toggle(element); } const getTypePie = async ()=>{ let res = await specialIndexApi().analyseType(state.chartSearch1.startTime,state.chartSearch1.endTime,state.chartSearch1.searchDep); @@ -827,7 +867,9 @@ const handleReview = (row)=>{ state.dialogReview = true } - + const openVideo = ()=>{ + videoRef.value.openDialog() + } const submitReview = async (formEl: FormInstance | undefined) => { if (!formEl) return await formEl.validate((valid, fields) => { @@ -855,12 +897,15 @@ Finished, Download, FolderChecked, + VideoPlay, reviewFormRef, + videoRef, zyfb, slfx, zyqs, toFullscreen, handleReview, + openVideo, submitReview, reLoadData, toApply, @@ -937,12 +982,14 @@ .chart-tit{ width: 100%; + height: 15%; display: flex; align-items: flex-start; justify-content: space-between; .tit{ font-size: 1.33rem; font-weight: bolder; + white-space: nowrap; } .filter-part{ display: flex; @@ -972,7 +1019,59 @@ } .chart{ width: 100%; - height: 88%; + height: 85%; + .el-table{ + height: 90% !important; + :deep(.el-table__inner-wrapper){ + height: 100% !important; + .el-table__header-wrapper { + height: 20% !important; + .el-table__header{ + height: 100% !important; + th{ + height: 100% !important; + padding: 0 0 !important; + .cell{ + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + } + } + } + .el-table__body-wrapper { + height: 80% !important; + .el-scrollbar__view{ + height: 100% !important; + .el-table__body{ + height: 100% !important; + tbody{ + height: 100% !important; + .el-table__row{ + height: 25% !important; + td{ + height: 25% !important; + padding: 0 0 !important; + .left-info{ + display: flex; + align-items: center; + } + .cell{ + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + .el-button{ + padding: 0 !important; + } + } + } + } + } + } + } + } + } } .el-radio-group{ width: 20%; @@ -1329,6 +1428,14 @@ background-color: rgba(10,31,92,1); border: 1px solid rgba(17,254,238,.4); color: #11FEEE; + .el-cascader-node{ + .in-active-path{ + background: #0049af; + } + &:hover{ + background: #0049af; + } + } .el-cascader-node__label{ color: #11FEEE; } @@ -1370,6 +1477,7 @@ background-color: rgba(0,0,0,0) !important; :deep(thead){ color: #11FEEE !important; + background-color: #092846 !important } :deep(tr){ background-color: rgba(0,0,0,0) !important; @@ -1377,6 +1485,9 @@ background-color: rgba(0,0,0,0) !important; } } + } + .el-button--text{ + color: #11FEEE; } } } @@ -1395,11 +1506,15 @@ } } } + :deep(.el-range-separator){ + color: #11FEEE; + } .el-table { color: #11FEEE !important; background-color: rgba(0,0,0,0) !important; :deep(thead){ color: #11FEEE !important; + background-color: #092846 !important } :deep(tr){ background-color: rgba(0,0,0,0) !important; @@ -1416,6 +1531,14 @@ background-color: rgba(10,31,92,1); border: 1px solid rgba(17,254,238,.4); color: #11FEEE; + .el-cascader-node{ + .in-active-path{ + background: #0049af; + } + &:hover{ + background: #0049af; + } + } .el-cascader-node__label{ color: #11FEEE; } -- Gitblit v1.9.2