| | |
| | | }, |
| | | analyseAllWork: (data: object) => { |
| | | return request({ |
| | | url: import.meta.env.VITE_API_URL + `/specialWork/analyse/allWork/dep`, |
| | | url: import.meta.env.VITE_API_URL + `/specialwork9step/statistic/allWork/dep`, |
| | | method: 'post', |
| | | data: data |
| | | }); |
| | | }, |
| | | analyseDepMonth: (data: number) => { |
| | | return request({ |
| | | url: import.meta.env.VITE_API_URL + `/specialWork/analyse/12month/dep?depId=${data}`, |
| | | url: import.meta.env.VITE_API_URL + `/specialwork9step/statistic/12month/dep?depId=${data}`, |
| | | method: 'get' |
| | | }); |
| | | }, |
| | |
| | | </el-row> |
| | | <el-table :data="reportData" style="width: 100%" height="calc(100% - 48px)" :header-cell-style="{ background: '#fafafa' }"> |
| | | <el-table-column prop="id" label="id" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="reportTime" label="上报时间" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="createTime" label="上报时间" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="programmeName" label="方案名称" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="startTime" label="开始时间" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="endTime" label="结束时间" show-overflow-tooltip></el-table-column> |
| | |
| | | <el-row class="homeCard"> |
| | | <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px"> |
| | | <span>时间筛选:</span> |
| | | <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD HH:mm:ss" type="datetimerange" @change="giveTime()" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" /> |
| | | <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime()" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" /> |
| | | </div> |
| | | <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px"> |
| | | <span>负责人:</span> |
| | |
| | | riskProps: object, |
| | | departmentList: Array<any>, |
| | | departmentRecursionList: Array<DepartmentState>; |
| | | myVar: any |
| | | } |
| | | interface DepartmentState { |
| | | depId: number; |
| | |
| | | riskData: [], |
| | | departmentList: [], |
| | | departmentRecursionList: [], |
| | | myVar: 0 |
| | | myVar: null |
| | | }) |
| | | const timeForm = { |
| | | hour12: false, |
| | |
| | | |
| | | onBeforeUnmount(() =>{ |
| | | clearInterval(state.myVar) |
| | | state.myVar = null |
| | | }) |
| | | |
| | | return { |
| | |
| | | }, |
| | | chartSearch2: { |
| | | depId: 1, |
| | | startTime: '', |
| | | // startTime: '', |
| | | type: null |
| | | }, |
| | | chartSearch3: { |
| | |
| | | getTypePie() |
| | | getWorkDep() |
| | | getDepMonth() |
| | | initZyfb() |
| | | initSlfx() |
| | | initZyqs() |
| | | }); |
| | | const initTime =()=>{ |
| | | state.chartSearch1.startTime = getPeriod(30) |
| | |
| | | }else{ |
| | | state.themeColor = '#333' |
| | | } |
| | | initZyfb() |
| | | initSlfx() |
| | | initZyqs() |
| | | initTime() |
| | | getMydepList() |
| | | getAllDepartment(); |
| | | getTypePie() |
| | | getWorkDep() |
| | | getDepMonth() |
| | | } |
| | | const getTypePie = async ()=>{ |
| | | const data = { |
| | |
| | | if (res.data.code === '200') { |
| | | // console.log('饼图数据>>>', res.data.data) |
| | | state.pieData = JSON.parse(JSON.stringify(res.data.data)) |
| | | // initZyfb() |
| | | initZyfb() |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | } |
| | | const getWorkDep = async ()=>{ |
| | | const data = { |
| | | startTime: state.chartSearch2.startTime, |
| | | endTime: state.endTime, |
| | | // startTime: state.chartSearch2.startTime, |
| | | // endTime: state.endTime, |
| | | depId:state.chartSearch2.depId, |
| | | type: state.chartSearch2.type |
| | | } |
| | | let res = await specialIndexApi().analyseAllWork(data); |
| | | if (res.data.code === '200') { |
| | | // console.log('条形图数据>>>', res.data.data) |
| | | state.squareData = JSON.parse(JSON.stringify(res.data.data)) |
| | | // initSlfx() |
| | | let names = state.squareData.map(i=>i.name) |
| | | let vals = state.squareData.map(i=>i.value) |
| | | initSlfx(names,vals) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | const getDepMonth = async ()=>{ |
| | | let res = await specialIndexApi().analyseDepMonth(state.chartSearch3.depId); |
| | | if (res.data.code === '200') { |
| | | // console.log('折线图数据>>>', res.data.data) |
| | | state.squareData = JSON.parse(JSON.stringify(res.data.data)) |
| | | // initSlfx() |
| | | let names = state.squareData.map(i=>i.name) |
| | | let vals = state.squareData.map(i=>i.value) |
| | | initZyqs(names,vals) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | shadowColor: 'rgba(0, 0, 0, 0.5)' |
| | | }, |
| | | }, |
| | | data: [ |
| | | { value: 0, name: '动火作业' }, |
| | | { value: 0, name: '受限空间作业' }, |
| | | { value: 0, name: '吊装作业' }, |
| | | { value: 0, name: '动土作业' }, |
| | | { value: 0, name: '断路作业' }, |
| | | { value: 0, name: '高处作业' }, |
| | | { value: 0, name: '临时用电作业' }, |
| | | { value: 0, name: '盲板抽堵作业' } |
| | | ] |
| | | data: state.pieData |
| | | } |
| | | ] |
| | | } |
| | |
| | | myChart.resize(); |
| | | }); |
| | | } |
| | | const initSlfx =()=>{ |
| | | const initSlfx =(names:Array<string>,vals:Array<any>)=>{ |
| | | let dom = document.getElementById(slfx.value); |
| | | let myChart = echarts.init(dom); |
| | | let option: EChartsOption; |
| | |
| | | xAxis: [ |
| | | { |
| | | type: 'category', |
| | | data: ['部门一','部门二','部门三'], |
| | | data: names, |
| | | axisTick: { |
| | | alignWithLabel: true |
| | | }, |
| | |
| | | name: 'Direct', |
| | | type: 'bar', |
| | | barWidth: '60%', |
| | | data: [0,0,0], |
| | | data: vals, |
| | | } |
| | | ] |
| | | } |
| | |
| | | myChart.resize(); |
| | | }); |
| | | } |
| | | const initZyqs =()=>{ |
| | | const initZyqs =(names:Array<string>,vals:Array<any>)=>{ |
| | | let dom = document.getElementById(zyqs.value); |
| | | let myChart = echarts.init(dom); |
| | | let option: EChartsOption; |
| | | option = { |
| | | xAxis: { |
| | | type: 'category', |
| | | data: ['四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '一月', '二月', '三月'], |
| | | data: names, |
| | | axisLabel: { |
| | | color: state.themeColor |
| | | } |
| | |
| | | }, |
| | | series: [ |
| | | { |
| | | data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], |
| | | data: vals, |
| | | type: 'line', |
| | | label:{ |
| | | show: true |