From 65c9d768ad5bbb8d01babc4435801b0cb39c9b06 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 23 十二月 2024 10:44:11 +0800
Subject: [PATCH] Merge branch 'master' into positec

---
 src/views/main/index.jsx |   99 +++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 86 insertions(+), 13 deletions(-)

diff --git a/src/views/main/index.jsx b/src/views/main/index.jsx
index 93ec841..6971bcf 100644
--- a/src/views/main/index.jsx
+++ b/src/views/main/index.jsx
@@ -1,29 +1,102 @@
-import React, {Component} from 'react'
-import { ConfigProvider } from 'antd'
-import enUS from 'antd/es/locale/en_US'
-import zhCN from 'antd/es/locale/zh_CN'
+import React, { Component } from 'react'
 
 import asyncComponent from '@/utils/asyncComponent'
 import Header from '@/components/header'
+import MKEmitter from '@/utils/events.js'
 import Sidemenu from '@/components/sidemenu'
 import QueryLog from '@/components/querylog'
+import ImgScale from '@/components/imgScale'
 
-import './index.scss'
+// import './index.scss'
 
 const Tabview = asyncComponent(() => import('@/components/tabview'))
-const _locale = localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS
+const Breadview = asyncComponent(() => import('@/components/breadview'))
+const SysMessage = asyncComponent(() => import('@/components/header/sysmessage/index'))
 
 class Main extends Component {
+  state = {
+    userId: sessionStorage.getItem('UserID')
+  }
+
+  UNSAFE_componentWillMount() {
+    if (!this.state.userId) {
+      this.props.history.replace('/login')
+    }
+  }
+
+  componentDidMount () {
+    MKEmitter.addListener('resetSelectLine', this.resetParentParam)
+
+    if (window.GLOB.sysType !== 'cloud') {
+      Object.defineProperty(window, 'debugger', {
+        configurable: true,
+        enumerable: true,
+        set(value) {
+          if (value === true) {
+            window.GLOB.debugger = true
+          } else if (value === 0) {
+            if (window.backend) {
+              sessionStorage.setItem('systemRun', 'front')
+              window.location.reload()
+            } else {
+              window.mkInfo('绯荤粺褰撳墠鏈娇鐢ㄥ悗绔剼鏈紒')
+            }
+          } else if (value === false) {
+            if (sessionStorage.getItem('systemRun') === 'front') {
+              sessionStorage.removeItem('systemRun')
+              window.location.reload()
+            } else {
+              window.GLOB.debugger = false
+            }
+          }
+        }
+      })
+
+      Object.defineProperty(window, 'debug', {
+        configurable: true,
+        enumerable: true,
+        set(value) {
+          if (value + '' === 'false') {
+            window.GLOB.debugger = false
+            window.GLOB.breakpoint = false
+            sessionStorage.removeItem('breakpoint')
+          } else {
+            window.GLOB.debugger = true
+            window.GLOB.breakpoint = value + ''
+            sessionStorage.setItem('breakpoint', value)
+          }
+          MKEmitter.emit('debugChange')
+        }
+      })
+    }
+  }
+
+  componentWillUnmount () {
+    MKEmitter.removeListener('resetSelectLine', this.resetParentParam)
+  }
+
+  resetParentParam = (MenuID, id, data) => {
+    window.GLOB.CacheData.set(MenuID, {...data, $BID: id})
+  }
+
   render () {
+    const navBar = window.GLOB.navBar
+
+    if (!this.state.userId) return null
+
     return (
-      <div className="mk-main-view">
-        <ConfigProvider locale={_locale}>
+      <>
+        <div className="mk-main-view">
           <Header key="header"/>
-          <Sidemenu key="sidemenu"/>
-          <Tabview key="tabview"/>
-          <QueryLog />
-        </ConfigProvider>
-      </div>
+          {navBar === 'shutter' ? <Sidemenu key="sidemenu"/> : null}
+          {navBar === 'shutter' || navBar === 'menu_board_navigation' ?
+            <Tabview key="tabview"/> :
+            <Breadview key="breadview"/>}
+          <ImgScale />
+        </div>
+        {window.GLOB.systemType === 'production' ? <QueryLog /> : null}
+        {window.GLOB.SysNotice ? <SysMessage /> : null}
+      </>
     )
   }
 }

--
Gitblit v1.8.0