From 99f528e235f11126fea44480c6e8888a9e463f2f Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期六, 08 十一月 2025 21:09:53 +0800
Subject: [PATCH] feat:任务附件上传和同步
---
app/store/modules/user.js | 72 +++++++++++++++++++++++++++++++++++-
1 files changed, 70 insertions(+), 2 deletions(-)
diff --git a/app/store/modules/user.js b/app/store/modules/user.js
index c1ec441..66b252d 100644
--- a/app/store/modules/user.js
+++ b/app/store/modules/user.js
@@ -2,6 +2,7 @@
import storage from '@/utils/storage'
import constant from '@/utils/constant'
import { login, logout, getInfo } from '@/api/login'
+import { wechatLogin } from '@/api/wechat'
import { getToken, setToken, removeToken } from '@/utils/auth'
const baseUrl = config.baseUrl
@@ -9,19 +10,33 @@
const user = {
state: {
token: getToken(),
+ userId: storage.get(constant.userId),
name: storage.get(constant.name),
+ nickName: storage.get(constant.nickName),
avatar: storage.get(constant.avatar),
roles: storage.get(constant.roles),
- permissions: storage.get(constant.permissions)
+ permissions: storage.get(constant.permissions),
+ deptId: storage.get(constant.deptId),
+ branchCompanyId: storage.get(constant.branchCompanyId),
+ branchCompanyName: storage.get(constant.branchCompanyName),
+ oaUserId: storage.get(constant.oaUserId)
},
mutations: {
SET_TOKEN: (state, token) => {
state.token = token
},
+ SET_USER_ID: (state, userId) => {
+ state.userId = userId
+ storage.set(constant.userId, userId)
+ },
SET_NAME: (state, name) => {
state.name = name
storage.set(constant.name, name)
+ },
+ SET_NICK_NAME: (state, nickName) => {
+ state.nickName = nickName
+ storage.set(constant.nickName, nickName)
},
SET_AVATAR: (state, avatar) => {
state.avatar = avatar
@@ -34,6 +49,22 @@
SET_PERMISSIONS: (state, permissions) => {
state.permissions = permissions
storage.set(constant.permissions, permissions)
+ },
+ SET_DEPT_ID: (state, deptId) => {
+ state.deptId = deptId
+ storage.set(constant.deptId, deptId)
+ },
+ SET_BRANCH_COMPANY_ID: (state, branchCompanyId) => {
+ state.branchCompanyId = branchCompanyId
+ storage.set(constant.branchCompanyId, branchCompanyId)
+ },
+ SET_BRANCH_COMPANY_NAME: (state, branchCompanyName) => {
+ state.branchCompanyName = branchCompanyName
+ storage.set(constant.branchCompanyName, branchCompanyName)
+ },
+ SET_OA_USER_ID: (state, oaUserId) => {
+ state.oaUserId = oaUserId
+ storage.set(constant.oaUserId, oaUserId)
}
},
@@ -55,6 +86,19 @@
})
},
+ // 寰俊鐧诲綍
+ WechatLogin({ commit }, wechatData) {
+ return new Promise((resolve, reject) => {
+ wechatLogin(wechatData).then(res => {
+ setToken(res.token)
+ commit('SET_TOKEN', res.token)
+ resolve()
+ }).catch(error => {
+ reject(error)
+ })
+ })
+ },
+
// 鑾峰彇鐢ㄦ埛淇℃伅
GetInfo({ commit, state }) {
return new Promise((resolve, reject) => {
@@ -62,14 +106,24 @@
const user = res.user
const avatar = (user == null || user.avatar == "" || user.avatar == null) ? require("@/static/images/profile.jpg") : baseUrl + user.avatar
const username = (user == null || user.userName == "" || user.userName == null) ? "" : user.userName
+ const nickname = (user == null || user.nickName == "" || user.nickName == null) ? username : user.nickName
+ const userId = (user == null || user.userId == null) ? null : user.userId
+ const deptId = (user == null || user.deptId == null) ? null : user.deptId
+
if (res.roles && res.roles.length > 0) {
commit('SET_ROLES', res.roles)
commit('SET_PERMISSIONS', res.permissions)
} else {
commit('SET_ROLES', ['ROLE_DEFAULT'])
}
+ commit('SET_USER_ID', userId)
commit('SET_NAME', username)
+ commit('SET_NICK_NAME', nickname)
commit('SET_AVATAR', avatar)
+ commit('SET_DEPT_ID', deptId)
+ commit('SET_BRANCH_COMPANY_ID', res.branchCompanyId)
+ commit('SET_BRANCH_COMPANY_NAME', res.branchCompanyName)
+ commit('SET_OA_USER_ID', res.oaUserId)
resolve(res)
}).catch(error => {
reject(error)
@@ -86,8 +140,22 @@
commit('SET_PERMISSIONS', [])
removeToken()
storage.clean()
+
+ // 瑙﹀彂鍏ㄥ眬浜嬩欢锛岄�氱煡 App.vue 鍋滄杞
+ uni.$emit('user-logout')
+
resolve()
}).catch(error => {
+ // 鍗充娇閫�鍑烘帴鍙eけ璐ワ紝涔熻娓呯┖鏈湴鐘舵��
+ commit('SET_TOKEN', '')
+ commit('SET_ROLES', [])
+ commit('SET_PERMISSIONS', [])
+ removeToken()
+ storage.clean()
+
+ // 瑙﹀彂鍏ㄥ眬浜嬩欢
+ uni.$emit('user-logout')
+
reject(error)
})
})
@@ -95,4 +163,4 @@
}
}
-export default user
+export default user
\ No newline at end of file
--
Gitblit v1.9.1