heyang 2 anni fa
parent
commit
9d9e7f1727

+ 4 - 4
.env.production

@@ -8,12 +8,12 @@ VUE_APP_ENV = 'development'
 # ####################接口配置####################
 
 # 88服务器
-# VUE_APP_BASE_API = 'http://192.168.1.88/labSystem'
+VUE_APP_BASE_API = 'http://192.168.1.88/labSystem'
 # 柴
 #VUE_APP_BASE_API = 'http://192.168.1.9:8080'
 # 暨大
 #VUE_APP_BASE_API = 'http://192.168.8.3/labSystem/'
-VUE_APP_BASE_API = 'http://lab.sxitdlc.com/jndxlabSystem/'
+#VUE_APP_BASE_API = 'http://lab.sxitdlc.com/jndxlabSystem/'
 # 矿大
 #VUE_APP_BASE_API = 'http://192.168.1.248/labSystem/'
 # 矿大-文昌
@@ -29,10 +29,10 @@ VUE_APP_BASE_VIDEO_API = 'https://lab.sxitdlc.com'
 
 
 # MQTT地址
-#VUE_APP_BASE_MQTT_API = 'ws://192.168.1.43:1884'
+VUE_APP_BASE_MQTT_API = 'ws://192.168.1.43:1884'
 # 暨大MQTT地址
 #VUE_APP_BASE_MQTT_API = 'ws://192.168.8.3:1884'
-VUE_APP_BASE_MQTT_API = 'wss://lab.sxitdlc.com/jndxmqtt'
+#VUE_APP_BASE_MQTT_API = 'wss://lab.sxitdlc.com/jndxmqtt'
 #矿大
 #VUE_APP_BASE_MQTT_API = 'ws://192.168.1.248:1884'
 #矿大-文昌

+ 2 - 3
.gitignore

@@ -1,6 +1,6 @@
 .DS_Store
-node_modules/
-dist/
+node_modules
+/dist
 
 
 # local env files
@@ -21,4 +21,3 @@ pnpm-debug.log*
 *.njsproj
 *.sln
 *.sw?
-bigData

+ 1 - 14
README.md

@@ -1,4 +1,4 @@
-# demo1
+# demo2
 
 ## Project setup
 ```
@@ -22,16 +22,3 @@ npm run lint
 
 ### Customize configuration
 See [Configuration Reference](https://cli.vuejs.org/config/).
-### 发版注意修改地方
-```
-request.js文件
-axios.defaults.headers.common
-
-http.js文件
-//预案-获取摄像头列表
-export const startListDeviceIds = data => get("/jinandaxue/api/play/startList",data,'video')
-
-.env.production文件 服务地址 视频地址 MQTT地址
-
-```
-

File diff suppressed because it is too large
+ 10868 - 1955
package-lock.json


+ 13 - 16
package.json

@@ -1,27 +1,27 @@
 {
-  "name": "",
+  "name": "demo2",
   "version": "0.1.0",
   "private": true,
   "scripts": {
-    "dev": "vue-cli-service serve",
     "serve": "vue-cli-service serve",
     "build": "vue-cli-service build",
-    "test": "vue-cli-service build --mode test"
+    "lint": "vue-cli-service lint"
   },
   "dependencies": {
-    "axios": "^0.27.2",
+    "axios": "^1.1.3",
     "core-js": "^3.8.3",
-    "echarts": "^4.9.0",
-    "element-plus": "^2.2.14",
+    "echarts": "^4.4.0",
+    "element-ui": "^2.15.10",
     "flv.js": "^1.6.2",
-    "jquery": "^3.6.0",
+    "jquery": "^3.6.1",
     "mqtt": "^4.2.8",
+    "node-sass": "^7.0.1",
     "qs": "^6.11.0",
     "script-ext-html-webpack-plugin": "^2.1.5",
+    "sass-loader": "^13.0.2",
     "swiper": "^4.3.3",
-    "vue": "^3.2.13",
-    "vue-router": "^4.1.4",
-    "vue-seamless-scroll": "^1.1.23"
+    "vue": "^2.6.14",
+    "vue-router": "^3.5.2"
   },
   "devDependencies": {
     "@babel/core": "^7.12.16",
@@ -31,9 +31,7 @@
     "@vue/cli-service": "~5.0.0",
     "eslint": "^7.32.0",
     "eslint-plugin-vue": "^8.0.3",
-    "node-sass": "^7.0.1",
-    "sass": "^1.54.5",
-    "sass-loader": "^13.0.2"
+    "vue-template-compiler": "^2.6.14"
   },
   "eslintConfig": {
     "root": true,
@@ -41,7 +39,7 @@
       "node": true
     },
     "extends": [
-      "plugin:vue/vue3-essential",
+      "plugin:vue/essential",
       "eslint:recommended"
     ],
     "parserOptions": {
@@ -52,7 +50,6 @@
   "browserslist": [
     "> 1%",
     "last 2 versions",
-    "not dead",
-    "not ie 11"
+    "not dead"
   ]
 }

BIN
public/favicon.ico


+ 6 - 20
src/App.vue

@@ -1,26 +1,12 @@
 <template>
-  <el-config-provider :locale="locale">
-    <router-view/>
-  </el-config-provider>
+  <div id="app">
+    <transition name="fade"
+                mode="out-in">
+      <router-view></router-view>
+    </transition>
+  </div>
 </template>
 
-<script>
-    import { defineComponent } from 'vue'
-    import { ElConfigProvider } from 'element-plus'
-    import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
-    export default defineComponent({
-        name: 'App',
-        components: {
-            ElConfigProvider,
-        },
-        setup() {
-            return {
-                locale: zhCn,
-            }
-        },
-    })
-</script>
-
 <style>
 #app {
   overflow: hidden;

+ 0 - 37
src/assets/js/echarts.js

@@ -1,37 +0,0 @@
-// 引入 echarts 核心模块,核心模块提供了 echarts 使用必须要的接口。
-import * as echarts from "echarts/core";
-
-/** 引入柱状图and折线图图表,图表后缀都为 Chart  */
-import { BarChart, LineChart } from "echarts/charts";
-
-// 引入提示框,标题,直角坐标系,数据集,内置数据转换器组件,组件后缀都为 Component
-import {
-    TitleComponent,
-    TooltipComponent,
-    GridComponent,
-    DatasetComponent,
-    TransformComponent,
-} from "echarts/components";
-
-// 标签自动布局,全局过渡动画等特性
-import { LabelLayout, UniversalTransition } from "echarts/features";
-
-// 引入 Canvas 渲染器,注意引入 CanvasRenderer 或者 SVGRenderer 是必须的一步
-import { CanvasRenderer } from "echarts/renderers";
-
-// 注册必须的组件
-echarts.use([
-    TitleComponent,
-    TooltipComponent,
-    GridComponent,
-    DatasetComponent,
-    TransformComponent,
-    BarChart,
-    LabelLayout,
-    UniversalTransition,
-    CanvasRenderer,
-    LineChart,
-]);
-
-// 导出
-export default echarts;

+ 7 - 2
src/assets/styles/publicEle.css

@@ -54,7 +54,7 @@
         background-color: rgba(30, 208, 248, 0.1); }
       .form-box .el-form-item .el-form-item__content .el-select .el-input--suffix .el-input__inner {
         color: #0E9EED;
-        background-color: none;
+        background-color: rgba(30, 208, 248, 0.1);
         border-color: #1ED0F8; }
       .form-box .el-form-item .el-form-item__content .el-select .el-input--suffix input::placeholder {
         color: #999999; }
@@ -76,6 +76,11 @@
   .el-range-editor--small .el-input__inner {
     height: 40px; }
 
+.el-select-dropdown {
+  background-color: #043668; }
+  .el-select-dropdown .el-select-dropdown__item {
+    color: #0E9EED; }
+
 /*时间控件*/
 .select-big-data-time {
   background-color: #043668;
@@ -186,7 +191,7 @@
   background-color: transparent !important; }
 
 .el-pagination.is-background .btn-next, .el-pagination.is-background .btn-prev, .el-pagination.is-background .el-pager li {
-  background-color: none;
+  background-color: rgba(30, 208, 248, 0.1);
   border: 1px solid #fff;
   border-radius: 4px; }
 

File diff suppressed because it is too large
+ 1 - 1
src/assets/styles/publicEle.css.map


+ 8 - 2
src/assets/styles/publicEle.scss

@@ -67,7 +67,7 @@
         .el-input--suffix{
           .el-input__inner{
             color: #0E9EED;
-            background-color: none;
+            background-color: rgba(30,208,248, 0.1);
             border-color: #1ED0F8;
           }
           input::placeholder{
@@ -101,6 +101,12 @@
     height: 40px;
   }
 }
+.el-select-dropdown{
+  background-color: #043668;
+  .el-select-dropdown__item{
+    color:#0E9EED;
+  }
+}
 /*时间控件*/
 .select-big-data-time{
   background-color: #043668;
@@ -252,7 +258,7 @@
   background-color: transparent !important;
 }
 .el-pagination.is-background .btn-next, .el-pagination.is-background .btn-prev, .el-pagination.is-background .el-pager li{
-  background-color: none;
+  background-color: rgba(30,208,248, 0.1);
   border: 1px solid #fff;
   border-radius: 4px;
 }

+ 19 - 14
src/main.js

@@ -1,19 +1,24 @@
-import { createApp } from 'vue'
+import Vue from 'vue'
 import App from './App.vue'
-import axios from './utils/request';
-import router from './router'
-import ElementPlus from 'element-plus'
-import 'element-plus/dist/index.css'
+import axios from 'axios'
+import routes from './router/index';
+import VueRouter from 'vue-router';
+import echarts from 'echarts';
+import ElementUI from 'element-ui';
+import 'element-ui/lib/theme-chalk/index.css';
 import '@/assets/styles/publicEle.scss'
+Vue.prototype.axios = axios
+Vue.prototype.$echarts = echarts;
+Vue.use(VueRouter);
+Vue.use(ElementUI);
+Vue.config.productionTip = false
 
-import  echarts from 'echarts'
-
-const app = createApp(App);
-app.use(router)
-    .use(ElementPlus)
-    .mount('#app')
-
-app.config.globalProperties.$axios = axios;
-app.config.globalProperties.$echarts = echarts // 全局挂载echarts
 
+const router = new VueRouter({
+  routes
+});
 
+new Vue({
+  router,
+  render: h => h(App),
+}).$mount('#app')

+ 112 - 121
src/router/index.js

@@ -1,135 +1,126 @@
-// src/router/index.js createWebHistory
-import {createRouter, createWebHashHistory} from 'vue-router'
-import { defineAsyncComponent } from 'vue'
-const router = createRouter({
-     history: createWebHashHistory(),  // hash 模式
-    //history: createWebHistory(),  // history 模式
-    routes: [
-        {
-            path: '/',
-            name: 'home',
-            component: defineAsyncComponent(() => import(`../views/home.vue`)),
-            meta: {
-                title: '实验室安全智能监测与控制系统',
-            },
-        },
-        {
-            path: '/admittanceDetail',
-            name: 'admittanceDetail',
-            component: defineAsyncComponent(() => import(`../views/admittanceDetail.vue`)),
-            meta: {
-                title: '安全准入办理统计',
-            },
-        },
-        {
-            path: '/controlDetail',
-            name: 'controlDetail',
-            component: defineAsyncComponent(() => import(`../views/controlDetail.vue`)),
-            meta: {
-                title: '分级管控',
-            },
-        },
-        {
-            path: '/dangerDetail',
-            name: 'dangerDetail',
-            component: defineAsyncComponent(() => import(`../views/dangerDetail.vue`)),
-            meta: {
-                title: '安全隐患统计',
-            },
+import Home from '../views/home.vue';
+import AdmittanceDetail from '../views/admittanceDetail.vue';
+import ControlDetail from '../views/controlDetail.vue';
+import DangerDetail from '../views/dangerDetail.vue';
+import IllegalDetail from '../views/illegalDetail.vue';
+import InspectDetail from '../views/inspectDetail.vue';
+import LabPersonDetail from '../views/labPersonDetail.vue';
+import PlanDetail from '../views/planDetail.vue';
+import RiskDetail from '../views/riskDetail.vue';
+import WarningDetail from '../views/warningDetail.vue';
+import WorkInfoDetail from '../views/workInfoDetail.vue'
+import WorkPlanDetail from '../views/workPlanDetail.vue';
+import ClassifyGradeDetail from '../views/classifyGradeDetail.vue';
+
+const router = [
+    {
+      path: '/',
+      component: Home,
+      name: 'home',
+      meta: {
+         title: '实验室安全智能监测与控制系统',
+      },
+    },
+    {
+        path: '/admittanceDetail',
+        component: AdmittanceDetail,
+        name: 'admittanceDetail',
+        meta: {
+            title: '安全准入办理统计',
         },
-        {
-            path: '/illegalDetail',
-            name: 'illegalDetail',
-            component: defineAsyncComponent(() => import(`../views/illegalDetail.vue`)),
-            meta: {
-                title: '人员违规统计',
-            },
+    },
+    {
+        path: '/controlDetail',
+        component: ControlDetail,
+        name: 'controlDetail',
+        meta: {
+            title: '分级管控',
         },
-        {
-            path: '/inspectDetail',
-            name: 'inspectDetail',
-            component: defineAsyncComponent(() => import(`../views/inspectDetail.vue`)),
-            meta: {
-                title: '安全检查',
-            },
+    },
+    {
+        path: '/dangerDetail',
+        component: DangerDetail,
+        name: 'dangerDetail',
+        meta: {
+            title: '安全隐患统计',
         },
-        {
-            path: '/inspectDetail2',
-            name: 'inspectDetail2',
-            component: defineAsyncComponent(() => import(`../views/inspectDetail2.vue`)),
-            meta: {
-                title: '安全检查',
-            },
+    },
+    {
+        path: '/illegalDetail',
+        component: IllegalDetail,
+        name: 'illegalDetail',
+        meta: {
+            title: '人员违规统计',
         },
-        {
-            path: '/labPersonDetail',
-            name: 'labPersonDetail',
-            component: defineAsyncComponent(() => import(`../views/labPersonDetail.vue`)),
-            meta: {
-                title: '进入实验室人员',
-            },
+    },
+    {
+        path: '/inspectDetail',
+        component: InspectDetail,
+        name: 'inspectDetail',
+        meta: {
+            title: '安全检查',
         },
-        {
-            path: '/planDetail',
-            name: 'planDetail',
-            component: defineAsyncComponent(() => import(`../views/planDetail.vue`)),
-            meta: {
-                title: '预案执行统计',
-            },
+    },
+    {
+        path: '/labPersonDetail',
+        component: LabPersonDetail,
+        name: 'labPersonDetail',
+        meta: {
+            title: '进入实验室人员',
         },
-        {
-            path: '/riskDetail',
-            name: 'riskDetail',
-            component: defineAsyncComponent(() => import(`../views/riskDetail.vue`)),
-            meta: {
-                title: '危险源统计',
-            },
+    },
+    {
+        path: '/planDetail',
+        component: PlanDetail,
+        name: 'planDetail',
+        meta: {
+            title: '预案执行统计',
         },
-        {
-            path: '/warningDetail',
-            name: 'warningDetail',
-            component: defineAsyncComponent(() => import(`../views/warningDetail.vue`)),
-            meta: {
-                title: '预案',
-            },
+    },
+    {
+        path: '/riskDetail',
+        component: RiskDetail,
+        name: 'riskDetail',
+        meta: {
+            title: '危险源统计',
         },
-        {
-            path: '/workInfoDetail',
-            name: 'workInfoDetail',
-            component: defineAsyncComponent(() => import(`../views/workInfoDetail.vue`)),
-            meta: {
-                title: '工作通知',
-            },
+    },
+    {
+        path: '/warningDetail',
+        component: WarningDetail,
+        name: 'warningDetail',
+        meta: {
+            title: '预案',
         },
-        {
-            path: '/workPlanDetail',
-            name: 'workPlanDetail',
-            component: defineAsyncComponent(() => import(`../views/workPlanDetail.vue`)),
-            meta: {
-                title: '工作计划',
-            },
+    },
+    {
+        path: '/workInfoDetail',
+        component: WorkInfoDetail,
+        name: 'workInfoDetail',
+        meta: {
+            title: '工作通知',
         },
-        {
-            path: '/classifyGradeDetail',
-            name: 'classifyGradeDetail',
-            component: defineAsyncComponent(() => import(`../views/classifyGradeDetail.vue`)),
-            meta: {
-                title: '实验室分类分级',
-            },
+    },
+    {
+        path: '/workPlanDetail',
+        component: WorkPlanDetail,
+        name: 'workPlanDetail',
+        meta: {
+            title: '工作计划',
         },
-        {
-            path: '/*',
-            redirect: '/',
+    },
+    {
+        path: '/classifyGradeDetail',
+        component: ClassifyGradeDetail,
+        name: 'classifyGradeDetail',
+        meta: {
+            title: '实验室分类分级',
         },
-    ]
-})
-// 全局路由守卫
-router.beforeEach((to, from, next)=>{
-    // console.log(to, from)
-    if (to.meta.title) {
-        document.title = `${to.meta.title}`;
-    }
-    next()
-})
+    },
+    {
+        path: '/*',
+        redirect: '/',
+    },
 
+]
 export default router

+ 2 - 2
src/utils/request.js

@@ -12,8 +12,8 @@ axios.defaults.withCredentials = false;
 
 // 允许跨域
 axios.defaults.headers.post["Access-Control-Allow-Origin-Type"] = "*";
-axios.defaults.headers.common["Authorization"] = 'Bearer 336c397f-3e32-44c4-b18e-ca14bf4f9d10';//`Bearer ${localStorage.getItem('access_token')`;
-//axios.defaults.headers.common["Authorization"] = 'Bearer '+localStorage.getItem('Authorization')+''
+//axios.defaults.headers.common["Authorization"] = 'Bearer 4a09416c-2290-4d57-b05e-be9a1b7595c5';//`Bearer ${localStorage.getItem('access_token')`;
+axios.defaults.headers.common["Authorization"] = 'Bearer '+localStorage.getItem('Authorization')+''
 
 //设置超时
 axios.defaults.timeout = 15000;

+ 5 - 8
src/views/admittanceDetail.vue

@@ -47,8 +47,8 @@
                 <el-table-column align="center" header-align='center' prop="applyNum" label="申请准入人数"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="approvalNum" label="准入通过人数"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="percent" label="通过率" width="420">
-                    <template #default="{row}">
-                        <el-progress :percentage="Number(row.percent)" :stroke-width="20"></el-progress>
+                    <template slot-scope="scope">
+                        <el-progress :percentage="Number(scope.row.percent)" :stroke-width="20"></el-progress>
                     </template>
                 </el-table-column>
             </el-table>
@@ -67,9 +67,7 @@
 </template>
 
 <script>
-import {applyListCollege, applyListCollegeColumn, departmentsList, getLogoInfo, getSubjectDict} from "../api/http"
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {applyListCollege, applyListCollegeColumn, departmentsList, getSubjectDict} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -100,14 +98,13 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
@@ -193,7 +190,7 @@ export default {
       this.getAjaxList();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.groupDeptId = "";
       this.editForm.optionId = "";

+ 1 - 4
src/views/classifyGradeDetail.vue

@@ -12,10 +12,7 @@
 </template>
 
 <script>
-import {notifyplan, onlineByBigView} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {

+ 5 - 17
src/views/controlDetail.vue

@@ -50,8 +50,8 @@
                 <el-table-column align="center" header-align='center' prop="planNum" label="计划执行数"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="finishedNum" label="实际执行数"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="rateNum" label="执行率" width="420">
-                    <template  #default="{row}">
-                        <el-progress :percentage="Number(row.rateNum)" :stroke-width="20"></el-progress>
+                    <template  slot-scope="scope">
+                        <el-progress :percentage="Number(scope.row.rateNum)" :stroke-width="20"></el-progress>
                     </template>
                 </el-table-column>
             </el-table>
@@ -71,9 +71,6 @@
 
 <script>
 import {chartDetails, departmentsList, getSubjectDict, workCharts} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -105,14 +102,13 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
@@ -146,14 +142,6 @@ export default {
     },
     getAjaxData: function () {
       let _this=this;
-      let obj={
-        'subId':this.editForm.subId,
-        'type':localStorage.getItem('deptLevel'),
-        'pageNum':this.editForm.pageNum,
-        'pageSize':this.editForm.pageSize,
-        'startTime':this.editForm.beginTimeStr,
-        'endTime':this.editForm.endTimeStr,
-      }
       //图表
       workCharts().then((res) =>{
         if(res.code==200){
@@ -196,7 +184,7 @@ export default {
       this.getAjaxData();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.subId = "";
       this.editForm.groupDeptId = "";
@@ -317,7 +305,7 @@ export default {
             },},
         ]
       };
-      var illegal_chart = echarts.init(document.getElementById('illegal_chart'));
+      var illegal_chart = this.$echarts.init(document.getElementById('illegal_chart'));
       illegal_chart.setOption(illegalOption);
 }
   },

+ 4 - 9
src/views/dangerDetail.vue

@@ -74,16 +74,12 @@
 
 <script>
 import {
-  applyListCollege,
   checkOptionList,
   departmentsList,
   getSubjectDict,
   optionChartDetails,
   optionCharts
 } from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -113,14 +109,13 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
@@ -212,7 +207,7 @@ export default {
       this.getAjaxData();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.schoolDeptId = "";
       this.editForm.optionId = "";
@@ -320,7 +315,7 @@ export default {
             },
             itemStyle: {
               normal: {
-                color: new echarts.graphic.LinearGradient(
+                color: new this.$echarts.graphic.LinearGradient(
                     0, 0, 0, 1,
                     [
                       {offset: 0, color: 'rgba(22, 31, 63, 0.5)'},
@@ -338,7 +333,7 @@ export default {
           }
         ]
       };
-      var danger_chart = echarts.init(document.getElementById('danger_chart'));
+      var danger_chart = this.$echarts.init(document.getElementById('danger_chart'));
       danger_chart.setOption(safetydetailOption);
     }
   },

+ 16 - 23
src/views/home.vue

@@ -159,8 +159,8 @@
         <!---->
         <div class="left_b_b" >
           <ul id="move_ani" :style="`animation-duration: ${labInfoList.length/0.1}s;height:${labInfoList.length*66*1.7}px;`">
-            <template v-for='(item,index8) in labInfoList' :key="index8">
-              <li v-if="item.sensorFunctionStatusList.length>0">
+            <template v-for='(item) in labInfoList' >
+              <li v-if="item.sensorFunctionStatusList.length>0" :key="item.id">
                 <div class="left_b_b_t">
                   <i>{{item.room}}</i>
                   <i>{{item.address}}</i>
@@ -301,13 +301,11 @@ import {
 } from "../api/http"
 import Swiper from 'swiper'
 import $ from 'jquery'
-import router from "@/router";
-import { useRouter } from 'vue-router'
 import mqtt from 'mqtt/dist/mqtt'
-
 export default {
 
   data(){
+
     return {
       //MQTT请求参数-传感器
       mtopic:"lab/bigview",
@@ -395,7 +393,7 @@ export default {
     },
     //安全检查
     openinspectUrl(){
-      this.$router.push({path:'./inspectDetail2',query:{key:this.laboratoryId}})
+      this.$router.push({path:'./inspectDetail',query:{key:this.laboratoryId}})
 
     },
     //安全检查批次
@@ -436,7 +434,7 @@ export default {
         password: process.env.VUE_APP_BASE_MQTT_PASSWORD
       });
       this.client.on("connect", e =>{
-        console.log("连接成功");
+        console.log("连接成功",e);
         this.client.subscribe(this.mtopic, (err) => {
           if (!err) {
             console.log("警报通道订阅成功:" + this.mtopic);
@@ -515,19 +513,14 @@ export default {
           let dataX=[];
           let dataValue=[];
           let data=res.data.listTg;
-          let applyNum;
           _this.listcount=res.data.listcount////总数
           for (var i = 0; i < data.length; i++) {
             dataX.push( data[i].applyMonth)
-            //dataValue.push(data[i].applyNum)
-            if(data[i].applyNum==0){
-              applyNum='';
-            }else{
-              applyNum=data[i].applyNum;
+            dataValue.push(data[i].applyNum);
 
-            }
-            dataValue.push(applyNum)
           }
+          console.log(dataX)
+          console.log(dataValue)
           this.admittanceFun(dataX,dataValue)
 
         }
@@ -728,6 +721,7 @@ export default {
 
     /*人员违规统计*/
     illegalFun:function(illegalX,illegalData) {
+
          let  illegalOption = {
             grid: {
               left: '6%',
@@ -810,7 +804,7 @@ export default {
               },
               areaStyle: {
                 normal: {
-                  color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
+                  color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
                     offset: 0,
                     color: '#917FFF'
                   }, {
@@ -821,7 +815,7 @@ export default {
               },
             }]
           };
-          var left_m_b = echarts.init(document.getElementById('left_b_t_l_b'));
+          var left_m_b = this.$echarts.init(document.getElementById('left_b_t_l_b'));
           left_m_b.setOption(illegalOption);
             //定时动画
            clearInterval(chartReload);
@@ -935,7 +929,7 @@ export default {
           show: false,
         },
       };
-      var left_b_b = echarts.init(document.getElementById('left_b_t_r_b'));
+      var left_b_b = this.$echarts.init(document.getElementById('left_b_t_r_b'));
       left_b_b.setOption(admittanceOption);
       //定时动画
       clearInterval(chartReload2);
@@ -1039,7 +1033,7 @@ export default {
           show: false,
         },
       };
-      var right_t_b = echarts.init(document.getElementById('right_t_b'));
+      var right_t_b = this.$echarts.init(document.getElementById('right_t_b'));
       right_t_b.setOption(planOption);
       //定时动画
       clearInterval(chartReload3);
@@ -1157,7 +1151,7 @@ export default {
 
         ]
       };
-      var left_t_b = echarts.init(document.getElementById('right_m_l_b'));
+      var left_t_b = this.$echarts.init(document.getElementById('right_m_l_b'));
       left_t_b.setOption(safetyOption);
       //定时动画
       clearInterval(chartReload4);
@@ -1215,7 +1209,7 @@ export default {
           }
         ]
       };
-      var right_m_b = echarts.init(document.getElementById('right_m_r_b'));
+      var right_m_b = this.$echarts.init(document.getElementById('right_m_r_b'));
       right_m_b.setOption(riskOption);
        //定时动画
        clearInterval(chartReload5);
@@ -1290,7 +1284,7 @@ export default {
           data: dataX
         }]
       };
-      var right_b_r_b_b = echarts.init(document.getElementById('right_b_r_b_b'));
+      var right_b_r_b_b = this.$echarts.init(document.getElementById('right_b_r_b_b'));
       right_b_r_b_b.setOption(classifyOption);
       //定时动画
       clearInterval(chartReload6);
@@ -1312,7 +1306,6 @@ export default {
        //Authorization
         localStorage.setItem('Authorization',identity)
         localStorage.setItem('deptLevel','2')////这个是登陆后,刘波给你的院校的类型
-      }else{
       }
   },
   mounted: function () {

+ 29 - 22
src/views/illegalDetail.vue

@@ -80,11 +80,7 @@ import {
   detailSubList,
   getDictViolation,
   getSubjectDict,
-  optionChartDetails
 } from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -118,14 +114,13 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
     },
     indexMethod(index) {
       return (this.param.pageNo - 1) * this.param.pageSize + index + 1;
@@ -137,7 +132,6 @@ export default {
       let obj={
         'subjectId':this.editForm.subId,
         'violationType':this.editForm.violationType,
-        'violationType':this.editForm.violationType,
         'beginTimeStr':this.editForm.beginTimeStr,
         'endTimeStr':this.editForm.endTimeStr,
       }
@@ -172,11 +166,31 @@ export default {
           let dataLength=0;
           let dataNum=[];
 
-          illegalDetailData=data
-          illegalDetailData[0].unshift('product')
-          dataLength=illegalDetailData[0].length-1
-          for(var i=0;i<dataLength;i++){
-            dataNum.push({ type: 'bar',barWidth : '6%', itemStyle: { normal: { barBorderRadius: 8}},"label": {"normal": {"show": true,"position": "top",fontSize: 14,color: '#fff',}}, },)
+          if(data.length<=1){
+            illegalDetailData=[
+              ['product', '0', '0', '0', '0', '0','0'],
+              ['0', 0, 0, 0,0,0,0],
+              ['0', 0, 0, 0,0,0,0],
+              ['0', 0, 0, 0,0,0,0],
+              ['0', 0, 0, 0,0,0,0],
+
+            ]
+            dataNum= [
+              { type: 'bar', itemStyle: { normal: { barBorderRadius: 8}} ,"label": {"normal": {"show": true,"position": "top",fontSize: 14,color: '#fff',}},},
+              { type: 'bar' , itemStyle: { normal: { barBorderRadius: 8}}},
+              { type: 'bar', itemStyle: { normal: { barBorderRadius: 8}} },
+              { type: 'bar' , itemStyle: { normal: { barBorderRadius: 8}}},
+              { type: 'bar', itemStyle: { normal: { barBorderRadius: 8}} },
+              { type: 'bar' , itemStyle: { normal: { barBorderRadius: 8}}}
+            ]
+
+          }else{
+            illegalDetailData=data
+            illegalDetailData[0].unshift('product')
+            dataLength=illegalDetailData[0].length-1
+            for(var i=0;i<dataLength;i++){
+              dataNum.push({ type: 'bar',barWidth : '6%', itemStyle: { normal: { barBorderRadius: 8}},"label": {"normal": {"show": true,"position": "top",fontSize: 14,color: '#fff',}}, },)
+            }
           }
           _this.illegalDetailFun(illegalDetailData,dataNum)
 
@@ -218,7 +232,7 @@ export default {
       this.getAjaxData();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.subId = "";
       this.editForm.violationType = "";
@@ -233,7 +247,6 @@ export default {
     },
     getdate() {
       var date = new Date();
-      var seperator1 = "-";
       var year = date.getFullYear();
       var month = date.getMonth() + 1;
       var strDate = date.getDate();
@@ -347,7 +360,7 @@ export default {
              { type: 'bar' , itemStyle: { normal: { barBorderRadius: 8}}}
          ]*/
       };
-      var illegal_chart = echarts.init(document.getElementById('illegal_chart'));
+      var illegal_chart = this.$echarts.init(document.getElementById('illegal_chart'));
       illegal_chart.setOption(illegalOption);
     }
   },
@@ -361,13 +374,7 @@ export default {
     this.getAjaxData()
     this.getAjaxList()
 
-    //页面切换按钮
-    $(".main_t_t_l").click(function () {
-      window.open("index.html",'_self');
-    });
-    $(".header_r").click(function () {
-      window.open("index.html",'_self');
-    });
+
   },
 
 

+ 235 - 144
src/views/inspectDetail.vue

@@ -1,65 +1,103 @@
 <template>
-  <div class="main" v-cloak>
+  <div class="main">
 
-        <Header/>
-        <div class="main_t">
-            <div class="main_t_t">
-                <i class="main_t_t_l">当前位置:首页 &gt;</i>
-                <i>安全检查</i>
-            </div>
-        </div>
+    <Header/>
+    <div class="main_t">
+      <div class="main_t_t">
+        <i class="main_t_t_l">当前位置:首页 &gt;</i>
+        <i>安全检查</i>
+      </div>
+    </div>
+
+    <div class="main_b">
+      <div class="main_b_title">遗留问题</div>
+      <!--查询条件-->
+      <el-form :model="editForm" ref="queryParams" class="form-box" :inline="true" style="margin:20px;">
+        <el-form-item label="实验室" prop="dangerId" label-width="98px">
+          <el-select v-model="editForm.subId" popper-class="select-big-data" placeholder="请选择实验室">
+            <el-option
+                v-for="item in labList"
+                :key="item.id"
+                :label="item.name"
+                :value="item.id">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label-width="0">
+          <el-button type="primary" @click.native.prevent="onSearch" native-type="submit">查询</el-button>
+          <el-button @click="resetForm('searchForm')">重置</el-button>
+        </el-form-item>
+      </el-form>
+      <!--列表-->
+      <el-table :data="tableData"  style="width: 100%" height="270" :row-class-name="tableRowClassName">
+        <el-table-column align="center" header-align='center' type="index" :index="indexMethod" label="序号" width="60"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="laboratoryName" label="实验室"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="typeName" label="安全分类"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="typeLevel" label="安全分级"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="yhMs" label="隐患名称"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="remark" label="检查批次"></el-table-column>
+      </el-table>
+      <el-pagination
+          style="margin-top: 14px"
+          background
+          @current-change="handleCurrentChange"
+          :page-sizes="[10, 20, 30, 40]"
+          :current-page.sync="editForm.pageNum"
+          :page-size="editForm.pageSize"
+          layout="total,prev, pager, next"
+          :total="totalNum">
+      </el-pagination>
+    </div>
+    <div class="main_b2">
+      <div class="main_b_title">本次检查问题</div>
+      <!--查询条件-->
+      <el-form :model="editForm2" ref="queryParams" class="form-box" :inline="true" style="margin:20px;">
+        <el-form-item label="实验室" prop="dangerId" label-width="98px">
+          <el-select v-model="editForm2.subId" popper-class="select-big-data" placeholder="请选择实验室">
+            <el-option
+                v-for="item in labList"
+                :key="item.id"
+                :label="item.name"
+                :value="item.id">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label-width="0">
+          <el-button type="primary" @click.native.prevent="onSearch2" native-type="submit">查询</el-button>
+          <el-button @click="resetForm2('searchForm')">重置</el-button>
+        </el-form-item>
+      </el-form>
+      <!--列表-->
+      <el-table :data="tableData2"  style="width: 100%" height="270" :row-class-name="tableRowClassName">
+        <el-table-column align="center" header-align='center' type="index" :index="indexMethod2" label="序号" width="60"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="laboratoryName" label="实验室"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="typeName" label="安全分类"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="typeLevel" label="安全分级"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="yhMs" label="隐患名称"></el-table-column>
+        <el-table-column align="center" header-align='center' prop="isZg" label="整改状态">
+          <template #default="{row}">
+            <span v-if="row.isZg == 0">已整改</span>
+            <span v-if="row.isZg != 0">未整改</span>
+          </template>
+        </el-table-column>
 
-        <div class="main_b">
-            <!--查询条件-->
-            <el-form :model="editForm" ref="queryParams" class="form-box">
-                <el-form-item label="实验室" prop="dangerId" label-width="98px">
-                    <el-select v-model="editForm.subId" popper-class="select-big-data" placeholder="请选择实验室">
-                        <el-option
-                                v-for="item in labList"
-                                :key="item.id"
-                                :label="item.name"
-                                :value="item.id">
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item label-width="0">
-                    <el-button type="primary" @click.native.prevent="onSearch" native-type="submit">查询</el-button>
-                    <el-button @click="resetForm('searchForm')">重置</el-button>
-                </el-form-item>
-            </el-form>
-            <!--列表-->
-            <el-table :data="tableData"  style="width: 100%" height="720" :row-class-name="tableRowClassName">
-                <el-table-column align="center" header-align='center' type="index" :index="indexMethod" label="序号" width="60"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="laboratoryName" label="实验室"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="typeName" label="安全分类"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="安全分级" label="安全分级"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="yhMs" label="隐患名称"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="isZg" label="整改状态">
-                    <template slot-scope="scope">
-                        <span v-if="scope.row.isZg==0">已整改</span>
-                        <span v-else-if="scope.row.isZg!=0">未整改</span>
-                    </template>
-                </el-table-column>
-            </el-table>
-            <el-pagination
-                    style="margin-top: 14px"
-                    background
-                    @current-change="handleCurrentChange"
-                    :page-sizes="[10, 20, 30, 40]"
-                    :current-page.sync="editForm.pageNum"
-                    :page-size="editForm.pageSize"
-                    layout="total,prev, pager, next"
-                    :total="totalNum">
-            </el-pagination>
-        </div>
+      </el-table>
+      <el-pagination
+          style="margin-top: 14px"
+          background
+          @current-change="handleCurrentChange2"
+          :page-sizes="[10, 20, 30, 40]"
+          :current-page.sync="editForm2.pageNum"
+          :page-size="editForm2.pageSize"
+          layout="total,prev, pager, next"
+          :total="totalNum2">
+      </el-pagination>
     </div>
+  </div>
 </template>
 
 <script>
-import {} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {getSubjectDict, indexCheckDetalsWzg, indexCheckDetalsYzg} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -73,79 +111,96 @@ export default {
         pageNum:1,
         pageSize:10
       },
+      editForm2:{
+        deptLevel:'',//这个是登陆后,刘波给你的院校的类型
+        subId:'',//实验室类型
+        pageNum:1,
+        pageSize:10
+      },
       labList:[],//实验室
       totalNum:0,
+      totalNum2:0,
       tableData:[],
+      tableData2:[],
       codeData:'',
     }
   },
   methods: {
-    tableRowClassName({row, rowIndex}) {
+    back(){
+      this.$router.push('/')
+    },
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
     },
+
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
     },
+    indexMethod2(index) {
+      return (this.editForm2.pageNum - 1) * this.editForm2.pageSize + index + 1;
+    },
     //请求列表
     getAjaxList:function (){
       let _this=this;
-      //列表
-      $.ajax({
-        type: "get",
-        url: URL+'laboratory/checkRecord/indexGetCheckDetals?id='+this.codeData+
-            '&laboratoryId='+this.editForm.subId+
-            '&pageNum='+this.editForm.pageNum+
-            '&pageSize='+this.editForm.pageSize,
 
-        dataType: "json",
-        contentType: 'application/json',
-        //data:JSON.stringify(data),
-        beforeSend : function(request) {undefined
-          request.setRequestHeader("Authorization", localStorage.getItem('Authorization'));
-        },
-        success: function (res) {
-
-          if(res.code==200){
-            let data = res.rows;
-            if(data && data.length>0){
-              _this.tableData = data;
-              _this.totalNum = parseInt(res.total);
-            }else{
-              _this.tableData = [];
-              _this.totalNum = 0;
-            }
+      //遗留问题
+      let obj={
+        'laboratoryId':this.editForm.subId,
+        'id':this.codeData,
+        'pageNum':this.editForm.pageNum,
+        'pageSize':this.editForm.pageSize,
+      }
+      indexCheckDetalsWzg(obj).then((res) =>{
+        if(res.code==200){
+          let data = res.rows;
+          if(data && data.length>0){
+            _this.tableData = data;
+            _this.totalNum = parseInt(res.total);
+          }else{
+            _this.tableData = [];
+            _this.totalNum = 0;
           }
         }
-      });
+      })
+    },
+    //请求列表
+    getAjaxList2:function (){
+      let _this=this;
+      //已整改的
+      let obj={
+        'laboratoryId':this.editForm2.subId,
+        'id':this.codeData,
+        'pageNum':this.editForm.pageNum,
+        'pageSize':this.editForm.pageSize,
+      }
+      indexCheckDetalsYzg(obj).then((res) =>{
+        if(res.code==200){
+          let data = res.rows;
+          if(data && data.length>0){
+            _this.tableData2 = data;
+            _this.totalNum2 = parseInt(res.total);
+          }else{
+            _this.tableData2 = [];
+            _this.totalNum2 = 0;
+          }
+        }
+      })
     },
     getAjaxData: function () {
       let _this=this;
       //查询实验室
-      $.ajax({
-        type: "get",
-        url: URL+'laboratory/subject/getSubjectDict',
-        dataType: "json",
-        contentType: 'application/json',
-        //data:JSON.stringify(data),
-        beforeSend : function(request) {undefined
-          request.setRequestHeader("Authorization", localStorage.getItem('Authorization'));
-        },
-        success: function (res) {
-          if(res.code==200){
-            let data=res.data;
-            _this.labList=data
-
-          }
+      getSubjectDict().then((res) =>{
+        if(res.code==200){
+          let data=res.data;
+          _this.labList=data
 
         }
-      });
-
+      })
     },
     /*查询*/
     onSearch() {
@@ -154,20 +209,38 @@ export default {
       this.getAjaxList();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
       this.editForm.subId = "";
       this.onSearch();
     },
+    /*查询*/
+    onSearch2() {
+
+      this.editForm2.pageNum =1;
+      this.getAjaxList2();
+    },
+    /*重置*/
+    resetForm2() {
+      this.editForm2.subId = "";
+      this.onSearch2();
+    },
     handleCurrentChange(val) {
       this.editForm.pageNum = val;
       this.getAjaxList();
     },
+    handleCurrentChange2(val) {
+      this.editForm2.pageNum = val;
+      this.getAjaxList2();
+    },
   },
   mounted() {
     this.codeData=this.$route.query.key
     this.getAjaxData()
     this.getAjaxList()
+    this.getAjaxList2()
   },
+
+
 }
 </script>
 
@@ -196,44 +269,8 @@ export default {
   left: 0;
   top: 0;
   z-index: 50;
-
   background: #062338;
-
-  .header {
-    width: 100%;
-    position: absolute;
-    left: rw(0);
-    top: rh(0);
-    z-index: 100;
-    display: flex;
-    justify-content: flex-start;
-
-    .header_l {
-      width: rw(182);
-      height: rh(44);
-      margin: rh(10) 0 0 rw(40);
-    }
-    .header_c {
-      width: rw(1180);
-      height: rh(152);
-      margin-left: rw(136);
-      background: url("~@/assets/image/index_icon2.png") no-repeat;
-      background-size: 100% 100%;
-      font-size: rh(30);
-      font-family: Microsoft YaHei;
-      font-weight: bold;
-      color: #FFFFFF;
-      line-height: rh(30);
-      text-align: center;
-      padding-top: rh(26);
-    }
-    .header_r {
-      margin-left: rw(264);
-      width: rw(82);
-      height: rh(32);
-      margin-top: rh(18);
-    }
-  }
+  overflow: hidden;
   .main_t{
     background: #062338;
     width: rw(1852);
@@ -254,19 +291,73 @@ export default {
 
       }
       >i:nth-of-type(2){
-        color: #486CC2;
+        color: #1ED0F8;
       }
     }
   }
   .main_b{
-
+    background: rgba(9, 55, 81, 0.6);
     padding: 0 rw(32);
     width: rw(1852);
-    height: rh(602);
-    position: absolute;
-    left: rw(34);
-    top: rh(138);
-    z-index: 200;
+    height: rh(442);
+    //position: absolute;
+    //left: rw(34);
+    //top: rh(138);
+    //z-index: 200;
+    margin-top: rh(138);
+    margin-left:rw(34);
+    overflow: hidden;
+    .main_b_title{
+      font-size: rh(24);
+      font-family: Microsoft YaHei;
+      font-weight: bold;
+      color: #FFFFFF;
+      line-height: rh(24);
+      text-align: center;
+      margin-top: rh(10);
+    }
+  }
+  .main_b_h{
+    background: rgba(9, 55, 81, 0.6);
+    padding: 0 rw(32);
+    width: rw(1852);
+    height: rh(894);
+    margin-top: rh(138);
+    margin-left:rw(34);
+    overflow: hidden;
+    display: flex;
+    flex-direction: column;
+    .main_b_title{
+      font-size: rh(24);
+      font-family: Microsoft YaHei;
+      font-weight: bold;
+      color: #FFFFFF;
+      line-height: rh(24);
+      text-align: center;
+      margin-top: rh(10);
+    }
+  }
+  .main_b2{
+    background: rgba(9, 55, 81, 0.6);
+    padding: 0 rw(32);
+    width: rw(1852);
+    height: rh(442);
+    margin-left:rw(34);
+    margin-top:rw(10);
+    overflow: hidden;
+    //position: absolute;
+    //left: rw(34);
+    //top: rh(588);
+    //z-index: 200;
+    .main_b_title{
+      font-size: rh(24);
+      font-family: Microsoft YaHei;
+      font-weight: bold;
+      color: #FFFFFF;
+      line-height: rh(24);
+      text-align: center;
+      margin-top: rh(10);
+    }
   }
 }
 </style>

+ 0 - 372
src/views/inspectDetail2.vue

@@ -1,372 +0,0 @@
-<template>
- <div class="main">
-
-        <Header/>
-        <div class="main_t">
-            <div class="main_t_t">
-                <i class="main_t_t_l">当前位置:首页 &gt;</i>
-                <i>安全检查</i>
-            </div>
-        </div>
-
-        <div class="main_b">
-            <div class="main_b_title">遗留问题</div>
-            <!--查询条件-->
-            <el-form :model="editForm" ref="queryParams" class="form-box" :inline="true" style="margin:20px;">
-                <el-form-item label="实验室" prop="dangerId" label-width="98px">
-                    <el-select v-model="editForm.subId" popper-class="select-big-data" placeholder="请选择实验室">
-                        <el-option
-                                v-for="item in labList"
-                                :key="item.id"
-                                :label="item.name"
-                                :value="item.id">
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item label-width="0">
-                    <el-button type="primary" @click.native.prevent="onSearch" native-type="submit">查询</el-button>
-                    <el-button @click="resetForm('searchForm')">重置</el-button>
-                </el-form-item>
-            </el-form>
-            <!--列表-->
-            <el-table :data="tableData"  style="width: 100%" height="270" :row-class-name="tableRowClassName">
-                <el-table-column align="center" header-align='center' type="index" :index="indexMethod" label="序号" width="60"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="laboratoryName" label="实验室"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="typeName" label="安全分类"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="typeLevel" label="安全分级"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="yhMs" label="隐患名称"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="remark" label="检查批次"></el-table-column>
-            </el-table>
-            <el-pagination
-                    style="margin-top: 14px"
-                    background
-                    @current-change="handleCurrentChange"
-                    :page-sizes="[10, 20, 30, 40]"
-                    :current-page.sync="editForm.pageNum"
-                    :page-size="editForm.pageSize"
-                    layout="total,prev, pager, next"
-                    :total="totalNum">
-            </el-pagination>
-        </div>
-        <div class="main_b2">
-            <div class="main_b_title">本次检查问题</div>
-            <!--查询条件-->
-            <el-form :model="editForm2" ref="queryParams" class="form-box" :inline="true" style="margin:20px;">
-                <el-form-item label="实验室" prop="dangerId" label-width="98px">
-                    <el-select v-model="editForm2.subId" popper-class="select-big-data" placeholder="请选择实验室">
-                        <el-option
-                                v-for="item in labList"
-                                :key="item.id"
-                                :label="item.name"
-                                :value="item.id">
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item label-width="0">
-                    <el-button type="primary" @click.native.prevent="onSearch2" native-type="submit">查询</el-button>
-                    <el-button @click="resetForm2('searchForm')">重置</el-button>
-                </el-form-item>
-            </el-form>
-            <!--列表-->
-            <el-table :data="tableData2"  style="width: 100%" height="270" :row-class-name="tableRowClassName">
-                <el-table-column align="center" header-align='center' type="index" :index="indexMethod2" label="序号" width="60"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="laboratoryName" label="实验室"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="typeName" label="安全分类"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="typeLevel" label="安全分级"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="yhMs" label="隐患名称"></el-table-column>
-                <el-table-column align="center" header-align='center' prop="isZg" label="整改状态">
-                    <template #default="{row}">
-                      <span v-if="row.isZg == 0">已整改</span>
-                      <span v-if="row.isZg != 0">未整改</span>
-                    </template>
-                </el-table-column>
-
-            </el-table>
-            <el-pagination
-                    style="margin-top: 14px"
-                    background
-                    @current-change="handleCurrentChange2"
-                    :page-sizes="[10, 20, 30, 40]"
-                    :current-page.sync="editForm2.pageNum"
-                    :page-size="editForm2.pageSize"
-                    layout="total,prev, pager, next"
-                    :total="totalNum2">
-            </el-pagination>
-        </div>
-    </div>
-</template>
-
-<script>
-import {getSubjectDict, indexCheckDetalsWzg, indexCheckDetalsYzg, optionChartDetails} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
-import Header from '@/components/header.vue'
-export default {
-  components: {
-    Header
-  },
-  data() {
-    return {
-      editForm:{
-        deptLevel:'',//这个是登陆后,刘波给你的院校的类型
-        subId:'',//实验室类型
-        pageNum:1,
-        pageSize:10
-      },
-      editForm2:{
-        deptLevel:'',//这个是登陆后,刘波给你的院校的类型
-        subId:'',//实验室类型
-        pageNum:1,
-        pageSize:10
-      },
-      labList:[],//实验室
-      totalNum:0,
-      totalNum2:0,
-      tableData:[],
-      tableData2:[],
-      codeData:'',
-    }
-  },
-  methods: {
-    back(){
-      this.$router.push('/')
-    },
-    tableRowClassName({row, rowIndex}) {
-      if (rowIndex%2 === 0) {
-        return 'success-row';
-      } else{
-
-        return 'warning-row';
-      }
-      return '';
-    },
-
-    indexMethod(index) {
-      return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
-    },
-    indexMethod2(index) {
-      return (this.editForm2.pageNum - 1) * this.editForm2.pageSize + index + 1;
-    },
-    //请求列表
-    getAjaxList:function (){
-      let _this=this;
-
-      //遗留问题
-      let obj={
-        'laboratoryId':this.editForm.subId,
-        'id':this.codeData,
-        'pageNum':this.editForm.pageNum,
-        'pageSize':this.editForm.pageSize,
-      }
-      indexCheckDetalsWzg(obj).then((res) =>{
-        if(res.code==200){
-          let data = res.rows;
-          if(data && data.length>0){
-            _this.tableData = data;
-            _this.totalNum = parseInt(res.total);
-          }else{
-            _this.tableData = [];
-            _this.totalNum = 0;
-          }
-        }
-      })
-    },
-    //请求列表
-    getAjaxList2:function (){
-      let _this=this;
-      //已整改的
-      let obj={
-        'laboratoryId':this.editForm2.subId,
-        'id':this.codeData,
-        'pageNum':this.editForm.pageNum,
-        'pageSize':this.editForm.pageSize,
-      }
-      indexCheckDetalsYzg(obj).then((res) =>{
-        if(res.code==200){
-          let data = res.rows;
-          if(data && data.length>0){
-            _this.tableData2 = data;
-            _this.totalNum2 = parseInt(res.total);
-          }else{
-            _this.tableData2 = [];
-            _this.totalNum2 = 0;
-          }
-        }
-      })
-    },
-    getAjaxData: function () {
-      let _this=this;
-      //查询实验室
-      getSubjectDict().then((res) =>{
-        if(res.code==200){
-          let data=res.data;
-          _this.labList=data
-
-        }
-      })
-    },
-    /*查询*/
-    onSearch() {
-
-      this.editForm.pageNum =1;
-      this.getAjaxList();
-    },
-    /*重置*/
-    resetForm(formName) {
-      this.editForm.subId = "";
-      this.onSearch();
-    },
-    /*查询*/
-    onSearch2() {
-
-      this.editForm2.pageNum =1;
-      this.getAjaxList2();
-    },
-    /*重置*/
-    resetForm2(formName) {
-      this.editForm2.subId = "";
-      this.onSearch2();
-    },
-    handleCurrentChange(val) {
-      this.editForm.pageNum = val;
-      this.getAjaxList();
-    },
-    handleCurrentChange2(val) {
-      this.editForm2.pageNum = val;
-      this.getAjaxList2();
-    },
-  },
-  mounted() {
-    this.codeData=this.$route.query.key
-    this.getAjaxData()
-    this.getAjaxList()
-    this.getAjaxList2()
-  },
-
-
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style lang="scss" scoped>
-
-@function rw($px){
-
-  @return $px*100/1920 *1vw;
-}
-@function rh($px){
-
-  @return $px*100/1080 *1vh;
-}
-* {
-  padding: 0;
-  margin: 0;
-  box-sizing: border-box;
-}
-.main {
-  width: rw(1920);
-  height: rh(1080);
-  /* background: url("../img/index_bg.png") no-repeat;
-   background-size: 100% 100%;*/
-  position: relative;
-  left: 0;
-  top: 0;
-  z-index: 50;
-  background: #062338;
-  overflow: hidden;
-  .main_t{
-    background: #062338;
-    width: rw(1852);
-    position: absolute;
-    left: rw(34);
-    top: rh(86);
-    z-index: 200;
-    .main_t_t{
-      margin: rh(20) 0 0 rw(18);
-      >i{
-        font-size: rh(16);
-        font-family: Microsoft YaHei;
-        font-weight: bold;
-        color: #FFFFFF;
-        line-height: rh(16);
-      }
-      >i:nth-of-type(1){
-
-      }
-      >i:nth-of-type(2){
-        color: #1ED0F8;
-      }
-    }
-  }
-  .main_b{
-    background: rgba(9, 55, 81, 0.6);
-    padding: 0 rw(32);
-    width: rw(1852);
-    height: rh(442);
-    //position: absolute;
-    //left: rw(34);
-    //top: rh(138);
-    //z-index: 200;
-      margin-top: rh(138);
-      margin-left:rw(34);
-      overflow: hidden;
-    .main_b_title{
-      font-size: rh(24);
-      font-family: Microsoft YaHei;
-      font-weight: bold;
-      color: #FFFFFF;
-      line-height: rh(24);
-      text-align: center;
-      margin-top: rh(10);
-    }
-  }
-  .main_b_h{
-    background: rgba(9, 55, 81, 0.6);
-    padding: 0 rw(32);
-    width: rw(1852);
-    height: rh(894);
-    margin-top: rh(138);
-    margin-left:rw(34);
-    overflow: hidden;
-    display: flex;
-    flex-direction: column;
-    .main_b_title{
-      font-size: rh(24);
-      font-family: Microsoft YaHei;
-      font-weight: bold;
-      color: #FFFFFF;
-      line-height: rh(24);
-      text-align: center;
-      margin-top: rh(10);
-    }
-  }
-  .main_b2{
-    background: rgba(9, 55, 81, 0.6);
-    padding: 0 rw(32);
-    width: rw(1852);
-    height: rh(442);
-    margin-left:rw(34);
-    margin-top:rw(10);
-    overflow: hidden;
-    //position: absolute;
-    //left: rw(34);
-    //top: rh(588);
-    //z-index: 200;
-    .main_b_title{
-      font-size: rh(24);
-      font-family: Microsoft YaHei;
-      font-weight: bold;
-      color: #FFFFFF;
-      line-height: rh(24);
-      text-align: center;
-      margin-top: rh(10);
-    }
-  }
-}
-</style>
-<style lang="scss">
-li{list-style:none}
-i,em,b{font-style:normal;font-weight:100;}
-body{margin: 0}
-</style>

+ 4 - 7
src/views/labPersonDetail.vue

@@ -69,10 +69,7 @@
 </template>
 
 <script>
-import {classifiedListAll, classtypeListAll, onlineByBigView, optionCharts,departmentsList,getSubjectDict} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {classifiedListAll, classtypeListAll, onlineByBigView,departmentsList,getSubjectDict} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -103,14 +100,14 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
+
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
@@ -190,7 +187,7 @@ export default {
       this.getAjaxData();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.groupDeptId = "";
       this.editForm.typeId = "";

+ 19 - 22
src/views/planDetail.vue

@@ -41,29 +41,29 @@
                 </el-form-item>
             </el-form>
             <!--列表-->
-            <el-table :data="tableData"  style="width: 100%;" height="780"   :row-class-name="tableRowClassName">
+            <el-table :data="tableData"  style="width: 100%;" height="740"   :row-class-name="tableRowClassName">
                 <el-table-column align="center" header-align='center' type="index" :index="indexMethod" label="序号" width="60"></el-table-column>
                 <el-table-column align="left" header-align='center' prop="subjectName" label="实验室">
-                     <template #default="{row}" >
+                     <template slot-scope="scope" >
                         <div class="lab_border">
-                           <span class="lab_span"><i>{{row.classifiedName}}</i><i>{{row.typeName}}</i></span>
-                           <span class="lab_span2">{{row.subjectName}}</span>
+                           <span class="lab_span"><i>{{scope.row.classifiedName}}</i><i>{{scope.row.typeName}}</i></span>
+                           <span class="lab_span2">{{scope.row.subjectName}}</span>
                         </div>
                      </template>
                 </el-table-column>
                 <el-table-column align="center" header-align='center' prop="createTimeStr" label="起始时间"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="overTime" label="结束时间"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="alarmInfo" label="风险预警">
-                 <template #default="{row}" >
-                     <span class="risk_span"><img v-if="row.alarmInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="row.alarmInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>声光报警</span>
-                     <span class="risk_span"><img v-if="row.phoneInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="row.phoneInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>电话</span>
-                     <span class="risk_span"><img v-if="row.phoneInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="row.phoneInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>短信</span>
+                 <template slot-scope="scope">
+                     <span class="risk_span"><img v-if="scope.row.alarmInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="scope.row.alarmInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>声光报警</span>
+                     <span class="risk_span"><img v-if="scope.row.phoneInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="scope.row.phoneInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>电话</span>
+                     <span class="risk_span"><img v-if="scope.row.phoneInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="scope.row.phoneInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>短信</span>
                  </template>
                 </el-table-column>
                 <el-table-column align="center" header-align='center' prop="sesorContent" label="应急处置">
-                     <template #default="{row}" >
-                         <span class="risk_span"><img v-if="row.windInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="row.windInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>通风</span>
-                         <span class="risk_span"><img v-if="row.powerInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="row.powerInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>断电</span>
+                     <template slot-scope="scope" >
+                         <span class="risk_span"><img v-if="scope.row.windInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="scope.row.windInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>通风</span>
+                         <span class="risk_span"><img v-if="scope.row.powerInfo==1" src="@/assets/image/icon_fxyj_xz.png"/><img  v-if="scope.row.powerInfo==0" src="@/assets/image/icon_fxyj_zc.png"/>断电</span>
                          <span class="risk_span"><img  src="@/assets/image/icon_fxyj_zc.png"/>短信</span>
                      </template>
                 </el-table-column>
@@ -83,10 +83,7 @@
 </template>
 
 <script>
-import {departmentsList, getRiskPlanList, getSubjectDict, getYearControlInfo, onlineByBigView} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {departmentsList, getRiskPlanList, getSubjectDict, getYearControlInfo,} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -115,14 +112,14 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
+
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
@@ -207,7 +204,7 @@ export default {
       this.getAjaxData();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.groupDeptId = "";
       this.editForm.subjectId = "";
@@ -225,7 +222,7 @@ export default {
      planDetailFun:function (dataX,dataVal) {
   const data = dataVal
   const sideData = data.map(item => item)//侧边主体高度
-  planOption =  {
+  let planOption =  {
 
 
     tooltip: {
@@ -321,7 +318,7 @@ export default {
 
       itemStyle: {
         normal: {
-          color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
+          color: new this.$echarts.graphic.LinearGradient(0, 1, 0, 0, [{
             offset: 0,
             color: "#228efb" // 0% 处的颜色
           }, {
@@ -343,7 +340,7 @@ export default {
       barWidth: 8,
       itemStyle: {
         normal: {
-          color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
+          color: new this.$echarts.graphic.LinearGradient(0, 1, 0, 0, [{
             offset: 0,
             color: "#228efb" // 0% 处的颜色
           }, {
@@ -378,7 +375,7 @@ export default {
     },
     ]
   };
-  var plan_chart = echarts.init(document.getElementById('plan_chart'));
+  var plan_chart = this.$echarts.init(document.getElementById('plan_chart'));
   plan_chart.setOption(planOption);
 }
   },

+ 7 - 12
src/views/riskDetail.vue

@@ -43,8 +43,8 @@
                 <el-table-column align="center" header-align='center' prop="chName" label="危险源"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="num" label="数量"></el-table-column>
                 <el-table-column align="center" header-align='center' prop="percentageNum" label="占比" width="420">
-                    <template  #default="{row}">
-                        <el-progress  :percentage="Number(row.percentageNum)" :stroke-width="20"></el-progress>
+                    <template  slot-scope="scope">
+                        <el-progress  :percentage="Number(scope.row.percentageNum)" :stroke-width="20"></el-progress>
                     </template>
                 </el-table-column>
             </el-table>
@@ -66,14 +66,10 @@
 import {
   departmentsList,
   getSubjectDict,
-  onlineByBigView,
   queryHazardColumnarTop,
   queryHazardList,
   queryHazardOption
 } from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -126,14 +122,14 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
+
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;
@@ -218,7 +214,7 @@ export default {
       this.getAjaxList();
     },
     /*重置*/
-    resetForm(formName) {
+    resetForm() {
 
       this.editForm.subId = "";
       this.editForm.hazardId = "";
@@ -232,7 +228,6 @@ export default {
 
     /*安全隐患详情图表*/
     riskDetailFun:function (dataX,dataValue) {
-        const data = dataValue
       //const sideData = data.map(item => item + 4.5)//侧边主体高度
       let planOption =   {
         color: ['#3398DB'],
@@ -321,7 +316,7 @@ export default {
 
               normal: {
                 borderRadius:4,
-                color: new echarts.graphic.LinearGradient(
+                color: new this.$echarts.graphic.LinearGradient(
                     0, 0, 0, 1,
                     [
                       {offset: 0, color: '#007EFF'},
@@ -339,7 +334,7 @@ export default {
           }
         ]
       };
-      var plan_chart = echarts.init(document.getElementById('plan_chart'));
+      var plan_chart = this.$echarts.init(document.getElementById('plan_chart'));
       plan_chart.setOption(planOption);
     }
   },

+ 2 - 48
src/views/warningDetail.vue

@@ -12,7 +12,7 @@
                 <div class="main_m_t_l">首次报警时间 {{firstTime}}</div>
                 <div class="dowebok">
                    <ul class="main_m_t_c_n">
-                       <li v-for="(item,index) in weather" :key="item.index">
+                       <li v-for="(item,index) in weather" :key="index">
                            <!--<img src="static/img/img/index_icon6.png"/>-->
                            <img  v-if="item.funNum == 'wendu'" src="@/assets/image/img/index_icon6.png">
                            <img  v-if="item.funNum == 'shidu'" src="@/assets/image/img/index_icon7.png">
@@ -119,14 +119,9 @@ import flvjs from "flv.js"
 import {
   abnormalLogOrderByList, bigviewFunctionList, bigviewSub, bigviewWarnMessage,
   controllerList,
-  listCollegeApplyColumn,
-  mangerControl,
-  requestUrl,
+
   startListDeviceIds
 } from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -209,48 +204,7 @@ export default {
         }
       },2000);
     },
-    //开关
-    switchFun:function (item){
-      let _this=this
-      if(item.state.code==3 || item.state.code==4){
-        let text = item.state.code==3?'关闭':(item.state.code==4?'开启':'');
-        this.$confirm('确定要'+text+'该设备吗?', '提示', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then(() => {
-          _this.mangerControl(item);
-        }).catch(() => {
-
-        });
-      }
-    },
-    //开关给后台传输返回结果 需要MQTT监听是否成功
-    mangerControl:function (item){
-      let _this=this;
 
-      let id=item.id
-      let command=item.state.code==3?'close':(item.state.code==4?'open':'')
-      let obj={
-        id:item.id,
-        command:item.state.code==3?'close':(item.state.code==4?'open':'')
-      }
-      mangerControl({obj}).then((res) =>{
-        if(res.code==200){
-          let data=res.data;
-          _this.$message({
-            message: '操作成功',
-            type: 'error'
-          });
-          _this.switchStateFun()
-        }else{
-          _this.$message({
-            message: res.msg,
-            type: 'error'
-          });
-        }
-      })
-    },
     //获取开关状态
     switchStateFun(){
       let _this=this;

+ 3 - 12
src/views/workInfoDetail.vue

@@ -17,10 +17,7 @@
 </template>
 
 <script>
-import {notifyplan, onlineByBigView} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {notifyplan,} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -45,17 +42,11 @@ export default {
 
       //工作通知
       notifyplan(_this.codeData).then((res) =>{
-        let  percent2percent25 = (URI) => {
-          if(URI.indexOf('%') > -1) {
-            return URI.replace(/%/g,'%25')
-          }else{
-            return URI;
-          }
-        }
+
 
         if (res.code == 200) {
           let data=res.data;
-          let aa=percent2percent25(data.content)
+
           _this.title=data.title
           _this.company=data.company
           _this.content=unescape(data.content)

+ 2 - 6
src/views/workPlanDetail.vue

@@ -30,10 +30,7 @@
 </template>
 
 <script>
-import {onlineByBigView} from "../api/http"
-
-import $ from 'jquery'
-import * as echarts from 'echarts'
+import {listIndexJhDetals} from "../api/http"
 import Header from '@/components/header.vue'
 export default {
   components: {
@@ -56,14 +53,13 @@ export default {
     back(){
       this.$router.push('/')
     },
-    tableRowClassName({row, rowIndex}) {
+    tableRowClassName({ rowIndex}) {
       if (rowIndex%2 === 0) {
         return 'success-row';
       } else{
 
         return 'warning-row';
       }
-      return '';
     },
     indexMethod(index) {
       return (this.editForm.pageNum - 1) * this.editForm.pageSize + index + 1;

+ 55 - 55
vue.config.js

@@ -9,7 +9,7 @@ module.exports = defineConfig({
   devServer: { //启动项目在8080端口自动打开
     host:"127.0.0.1",
     open: true,
-    port: 8888,
+    port: 30000,
     //proxy: null,
     proxy: process.env.VUE_APP_ENV === 'production' ? 'https://www.aaa.com/' : 'https://gateway.bbb.com/'
 
@@ -18,62 +18,62 @@ module.exports = defineConfig({
     config
         .when(process.env.VUE_APP_ENV !== 'www.dlc.com',
             config => {
-                config
-                    .plugin('ScriptExtHtmlWebpackPlugin')
-                    .after('html')
-                    .use('script-ext-html-webpack-plugin', [{
-                        // `runtime` must same as runtimeChunk name. default is `runtime`
-                        inline: /runtime\..*\.js$/
-                    }])
-                    .end()
-                config
-                    .optimization.splitChunks({
-                    chunks: 'all',
-                    minSize: 50000, //构建出来的chunk大于30000才会被分割
-                    maxSize: 100000, //会尝试根据这个大小进行代码分割
-                    // cacheGroups: {
-                    //     libs: {
-                    //         name: 'chunk-libs',
-                    //         test: /[\\/]node_modules[\\/]/,
-                    //         priority: 10,
-                    //         chunks: 'initial'
-                    //     },
-                    //     elementUI: {
-                    //         name: 'chunk-elementUI',
-                    //         priority: 20,
-                    //         test: /[\\/]node_modules[\\/]_?element-plus(.*)/,
-                    //         chunks: 'initial'
-                    //     },
-                    //     echarts: {
-                    //         name: 'chunk-echarts',
-                    //         priority: 20,
-                    //         test: /[\\/]node_modules[\\/]_?echarts(.*)/,
-                    //     },
-                    //     flv: {
-                    //         name: 'chunk-flv',
-                    //         priority: 20,
-                    //         test: /[\\/]node_modules[\\/]_?flv(.*)/
-                    //     },
-                    //     jsJquery: {
-                    //         name: 'chunk-jquery',
-                    //         priority: 20,
-                    //         test: /[\\/]node_modules[\\/]_?jquery(.*)/
-                    //     },
-                    //     mqtt: {
-                    //         name: 'chunk-mqtt',
-                    //         priority: 20,
-                    //         test: /[\\/]node_modules[\\/]_?mqtt(.*)/
-                    //     },
-                    //     mqttPacket: {
-                    //         name: 'chunk-mqtt-packet',
-                    //         priority: 20,
-                    //         test: /[\\/]node_modules[\\/]_?mqtt-packet(.*)/
-                    //     },
-                    // }
-                })
+              config
+                  .plugin('ScriptExtHtmlWebpackPlugin')
+                  .after('html')
+                  .use('script-ext-html-webpack-plugin', [{
+                    // `runtime` must same as runtimeChunk name. default is `runtime`
+                    inline: /runtime\..*\.js$/
+                  }])
+                  .end()
+              config
+                  .optimization.splitChunks({
+                chunks: 'all',
+                minSize: 50000, //构建出来的chunk大于30000才会被分割
+                maxSize: 100000, //会尝试根据这个大小进行代码分割
+                // cacheGroups: {
+                //     libs: {
+                //         name: 'chunk-libs',
+                //         test: /[\\/]node_modules[\\/]/,
+                //         priority: 10,
+                //         chunks: 'initial'
+                //     },
+                //     elementUI: {
+                //         name: 'chunk-elementUI',
+                //         priority: 20,
+                //         test: /[\\/]node_modules[\\/]_?element-plus(.*)/,
+                //         chunks: 'initial'
+                //     },
+                //     echarts: {
+                //         name: 'chunk-echarts',
+                //         priority: 20,
+                //         test: /[\\/]node_modules[\\/]_?echarts(.*)/,
+                //     },
+                //     flv: {
+                //         name: 'chunk-flv',
+                //         priority: 20,
+                //         test: /[\\/]node_modules[\\/]_?flv(.*)/
+                //     },
+                //     jsJquery: {
+                //         name: 'chunk-jquery',
+                //         priority: 20,
+                //         test: /[\\/]node_modules[\\/]_?jquery(.*)/
+                //     },
+                //     mqtt: {
+                //         name: 'chunk-mqtt',
+                //         priority: 20,
+                //         test: /[\\/]node_modules[\\/]_?mqtt(.*)/
+                //     },
+                //     mqttPacket: {
+                //         name: 'chunk-mqtt-packet',
+                //         priority: 20,
+                //         test: /[\\/]node_modules[\\/]_?mqtt-packet(.*)/
+                //     },
+                // }
+              })
             }
         )
-    },
+  },
   //去掉console
   // configureWebpack: (config) => {
   //   // 判断为生产模式下,因为开发模式我们是想保存console的