From c98e45bfac25e9110ad0383faac54a54d98ea9d5 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 18 十一月 2021 20:47:04 +0800
Subject: [PATCH] 2021-11-18

---
 src/store/reducer.js |  132 ++++++++++++++++++-------------------------
 1 files changed, 55 insertions(+), 77 deletions(-)

diff --git a/src/store/reducer.js b/src/store/reducer.js
index 8ad32ae..e262dfa 100644
--- a/src/store/reducer.js
+++ b/src/store/reducer.js
@@ -1,16 +1,34 @@
+import md5 from 'md5'
+import moment from 'moment'
 import * as Type from './action-type'
 
+let _mainMenu = null
+let _url = window.location.href.split('#')[0]
+let _collapse = localStorage.getItem('collapse') === 'true'
+let _level = 10
+let _Mlevel = sessionStorage.getItem('Member_Level')
+
+if (_Mlevel) {
+  if (_Mlevel === md5('mksoft' + moment().format('YYYYMM') + 10)) {
+    _level = 10
+  } else if (_Mlevel === md5('mksoft' + moment().format('YYYYMM') + 20)) {
+    _level = 20
+  } else if (_Mlevel === md5('mksoft' + moment().format('YYYYMM') + 30)) {
+    _level = 30
+  }
+}
+if (localStorage.getItem(_url + '-sideHidden') === 'true') {
+  _mainMenu = ''
+}
+
 let defaultState = {
-  selectedMainMenu: '', // 宸查�変富鑿滃崟
-  tabviews: [],         // 瀵艰埅鏍�
-  collapse: false,      // 鏄惁鏀惰捣渚ц竟鏍忓鑸�
-  isiframe: false,      // 鏄惁涓篿frame绐楀彛
-  debug: false,         // 鐭ュ惁鍙互澶嶅埗鑿滃崟鍙傛暟, 鏄惁鍙繘鍏ョ紪杈戞ā寮�
-  editState: false,     // 鏄惁涓虹紪杈戠姸鎬侊紝鍊间负false銆乼rue
-  editLevel: null,      // 缂栬緫鑿滃崟绾у埆锛屽�间负level1銆乴evel2銆乴evel3銆傘�傘��
-  refreshTab: null,     // 鍒锋柊tabview椤甸潰淇℃伅
-  permAction: {},
-  permFuncField: []
+  menuTree: null,       // 鑿滃崟缁撴瀯鏍�
+  mainMenu: _mainMenu,  // 宸查�変富鑿滃崟
+  collapse: _collapse,  // 鏄惁鏀惰捣渚ц竟鏍忓鑸�
+  editLevel: null,      // 缂栬緫鑿滃崟绾у埆锛屽�间负level1銆乴evel2銆乴evel3銆丠S
+  permAction: {},       // 鐢ㄦ埛鎸夐挳鏉冮檺
+  permMenus: [],        // 鐢ㄦ埛涓夌骇鑿滃崟鍒楄〃
+  memberLevel: _level,  // 浼氬憳绛夌骇
 }
 
 // 鐢ㄦ埛娑堟伅
@@ -22,90 +40,50 @@
         ...state,
         collapse: action.collapse
       }
+    case Type.MODIFY_MENUTREE:
+    // 鍒濆鍖栬彍鍗曚俊鎭�
+      return {
+        ...state,
+        menuTree: action.menuTree
+      }
     case Type.MODIFY_MAINMENU:
     // 鍒囨崲涓昏彍鍗�
       return {
         ...state,
-        selectedMainMenu: action.selectedMainMenu
-      }
-    case Type.MODIFY_TABVIEW:
-    // tab椤垫敼鍙�
-      return {
-        ...state,
-        tabviews: action.tabviews
-      }
-    case Type.TOGGLE_ISIFRAME:
-    // 鍒囨崲鏄惁涓篿frame鐘舵��
-      return {
-        ...state,
-        isiframe: action.isiframe
-      }
-    case Type.RESET_STATE:
-    // 閲嶇疆榛樿鍙傛暟锛堥��鍑烘椂锛�
-      return {
-        ...state,
-        ...{
-          selectedMainMenu: '',
-          tabviews: [],
-          collapse: false,
-          isiframe: false
-        }
-      }
-    case Type.RESET_DEBUG:
-    // 鍒囨崲debug鐘舵��
-      return {
-        ...state,
-        debug: true
-      }
-    case Type.REFRESH_TABVIEW:
-    // 鍒锋柊tab椤甸潰
-      return {
-        ...state,
-        refreshTab: action.refreshTab
-      }
-    case Type.RESET_EDITSTATE:
-    // 閲嶇疆缂栬緫鐘舵��
-      if (state.tabviews.length === 0 && !action.editState) {
-        state.tabviews = [{
-          MenuID: '1576117946681plembmkk9akkv8sn0vtdfdsfaf',
-          MenuName: '棣栭〉',
-          MenuNo: 'MESOrderDetailMwe',
-          selected: true,
-          text: '棣栭〉',
-          type: 'Home'
-        }]
-      }
-      return {
-        ...state,
-        editState: action.editState,
-        collapse: false
+        mainMenu: action.mainMenu
       }
     case Type.RESET_EDITLEVEL:
     // 閲嶇疆缂栬緫绾у埆
       return {
         ...state,
-        editLevel: action.editLevel,
-        tabviews: []
+        editLevel: action.editLevel
       }
-    case Type.INIT_PERMISSION:
-    // 鍒濆鍖栨寜閽潈闄愬強鍒涘缓瀛樺偍杩囩▼鍙敤瀛楁
+    case Type.INIT_ACTIONPERMISSION:
+    // 鍒濆鍖栨寜閽潈闄�
       return {
         ...state,
-        permAction: action.permAction,
-        permFuncField: action.permFuncField
+        permAction: action.permAction
+      }
+    case Type.INIT_MENUPERMISSION:
+    // 鍒濆鍖栦笁绾ц彍鍗曟潈闄�
+      return {
+        ...state,
+        permMenus: action.permMenus
+      }
+    case Type.MODIFY_MEMBERLEVEL:
+      // 淇敼浼氬憳绛夌骇
+      return {
+        ...state,
+        memberLevel: action.memberLevel
       }
     case Type.LOGOUT:
       return {
-        selectedMainMenu: '',
-        tabviews: [],
-        collapse: false,
-        isiframe: false,
-        debug: false,
-        editState: false,
+        menuTree: null,
+        mainMenu: null,
+        collapse: localStorage.getItem('collapse') === 'true',
         editLevel: null,
-        refreshTab: null,
         permAction: {},
-        permFuncField: []
+        permMenus: [],
       }
     default:
       return state

--
Gitblit v1.8.0