From b524dc50dedb0e6d8ae0a432ae2d436829da9319 Mon Sep 17 00:00:00 2001
From: gaosp <gaosp>
Date: 星期六, 13 一月 2024 11:35:45 +0800
Subject: [PATCH] update

---
 src/store/modules/user.js |   67 ++++++++++++++++-----------------
 1 files changed, 32 insertions(+), 35 deletions(-)

diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index cfb6680..26f4fdd 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -1,18 +1,25 @@
-import { login, getUserInfo, URL_CFG } from '@/api/MdcApi'
+import { login, getUserInfo, getPlanList, URL_CFG} from '@/api/MdcApi'
 import { getToken, setToken, removeToken } from '@/utils/auth'
 import Vue from 'vue'
+let workshopList = []
+let userInfo ={}
+try {
+  workshopList = JSON.parse(localStorage.getItem('workshopList')) || []
+} catch (error) {
+  
+}
+try {
+  userInfo = JSON.parse(localStorage.getItem('userInfo')) || {}
+} catch (error) {
+  
+}
+
 const user = {
   state: {
     token: getToken().value,
-    workshopList: [], // 杞﹂棿鍒楄〃
+    workshopList: workshopList, // 杞﹂棿鍒楄〃
     deviceCategories: [], // 璁惧绉嶇被
-    userInfo: { // 鐢ㄦ埛淇℃伅
-      user: '',
-      name: '',
-      phone: '',
-      roles: '',
-      avatar: ''
-    }
+    userInfo: userInfo
   },
 
   mutations: {
@@ -29,12 +36,8 @@
       state.roles = roles
     },
     SET_WORKSHOP_LIST: (state, workshopList = []) => {
-      for (let i = 0; i < state.workshopList.length; i++) {
-        Vue.delete(state.workshopList, i)
-      }
-      for (let i = 0; i < workshopList.length; i++) {
-        Vue.set(state.workshopList, i, workshopList[i])
-      }
+      state.workshopList = [...workshopList]
+      localStorage.setItem('workshopList',JSON.stringify(state.workshopList))
     },
     SET_DEVICE_CATEGORY_LIST: (state, categoryArr = []) => {
       for (let i = 0; i < state.deviceCategories.length; i++) {
@@ -50,6 +53,7 @@
       state.userInfo.phone = data.phone || ''
       state.userInfo.roles = data.roles
       state.userInfo.avatar = data.avatar || (process.env.NODE_ENV === 'development' ? '/static/data/user/zh_tx.png' : URL_CFG.BASE_URL + '/static/data/user/zh_tx.png')
+      localStorage.setItem('userInfo', JSON.stringify(state.userInfo))
     }
   },
 
@@ -71,12 +75,6 @@
             
           }
         }).catch(error => {
-          // TODO: del
-          // let response = {"result":"SUCCESS","data":"43a187c9b3f1f6cd6c8342c15f91a52a"}
-          // setToken(response.data)
-          // commit('SET_TOKEN', response.data)
-          // resolve(response)
-
           reject(error)
           // console.log(error)
         })
@@ -87,27 +85,26 @@
       return new Promise((resolve, reject) => {
         getUserInfo().then(data => {
           if (data.result === 'SUCCESS') {
-            // if (data.workshopList && data.workshopList.length > 0) {
-            //   commit('SET_WORKSHOP_LIST', data.workshopList)
-            //   // console.log(data)
-            //   commit('SET_DEVICE_CATEGORY_LIST', data.workshopList)
-            //   commit('SET_USER_INFO', data)
-            //   resolve({ code: 1, data: data })
-            // } else {
-            //   commit('SET_WORKSHOP_LIST', [])
-            //   commit('SET_DEVICE_CATEGORY_LIST', [])
-            //   commit('SET_TOKEN', '')
-            //   commit('SET_USER_INFO', {})
-            //   removeToken()
-            //   resolve({ code: 0, msg: '鎮ㄦ病鏈夋潈闄愯闂紝璇疯仈绯荤鐞嗗憳杩涜鎺堟潈锛�' })
-            // }
+            commit('SET_USER_INFO',data.data)
+            this.dispatch('GetPlanList')
+              resolve({ code: 1, data: data })
           }else {
             removeToken()
             resolve({ code: 0, msg: '鐢变簬鎮ㄩ暱鏃堕棿娌℃湁鎿嶄綔锛岃閲嶆柊鐧诲綍锛�' })
           }
         }).catch(() => {
+          removeToken()
           resolve({ code: -1, msg: '缃戠粶寮傚父锛岀◢鍚庨噸璇曪紒' })
         })
+        
+      })
+    },
+    GetPlanList ({ commit, store }) {
+      return getPlanList().then(data => {
+        if (data.result === 'SUCCESS') {
+          commit('SET_WORKSHOP_LIST', data.data || [])
+        }
+        return data
       })
     },
     // 鐧诲嚭

--
Gitblit v1.9.3