| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 | 
							- import {globalConfig} from '@/config';
 
- import storage from '@/utils/storage';
 
- import {constant} from '@/utils/constant';
 
- import { login, logout, getInfo } from '@/api/login';
 
- import { getToken, setToken, removeToken } from '@/utils/auth';
 
- import profileImg from '@/static/images/profile.jpg';
 
- type State = {
 
-   token: string,
 
-   name: string,
 
-   avatar: string,
 
-   roles: string[],
 
-   permissions: string[],
 
- }
 
- const tokenValue = getToken() ??'' as string;
 
- console.log('Token value:', tokenValue);
 
- const nameValue = storage.get(constant.name)??'' as string;
 
- console.log('Name value:', nameValue);
 
- const avatarValue = storage.get(constant.avatar)??'' as string;
 
- console.log('Avatar value:', avatarValue);
 
- const rolesValue = storage.get(constant.roles)?? [] as string[];
 
- console.log('Roles value:', rolesValue);
 
- const permissionsValue = storage.get(constant.permissions)?? [] as string[];
 
- console.log('Permissions value:', permissionsValue);
 
- export const state = reactive({
 
-   token: tokenValue,
 
-   name: nameValue as string,
 
-   avatar: avatarValue as string,
 
-   roles: rolesValue as string[],
 
-   permissions: permissionsValue as string[]
 
- } as State)
 
- export const SetToken=(token: string)=>{
 
- 	state.token = token;
 
- 	setToken(token)
 
- }
 
- export const SetName=(name: string)=>{
 
- 	state.name = name;
 
- 	storage.set(constant.name, name);
 
- }
 
- export const SetAvatar=(avatar: string)=> {
 
- 	state.avatar = avatar;
 
- 	storage.set(constant.avatar, avatar);
 
- }
 
- export const SetRoles=(roles: string[])=>{
 
-     state.roles = roles;
 
-     storage.set(constant.roles, roles);
 
- }
 
- 	
 
- export const SetPermissions=(permissions: string[]) =>{
 
- 	  state.permissions = permissions;
 
- 	  storage.set(constant.permissions, permissions);
 
- }
 
-   // 登录
 
- export const Login=(userInfo:UTSJSONObject):Promise<void>=> {
 
-     const username:string = (userInfo.getString("username") as string).trim() as string;
 
-     const password:string = userInfo.getString("password") as string;
 
-     const code:string = userInfo.getString("code") as string;
 
-     const uuid:string = userInfo.getString("uuid") as string;
 
- 			
 
- 	return new Promise((resolve, reject) => {
 
- 		/*
 
- 	  login(username, password, code, uuid).then((res:UTSJSONObject) => {
 
- 	    SetToken(res.getString("token") as string);
 
- 	    resolve()
 
- 	  }).catch((error:any) => {
 
- 	    reject(error)
 
- 	  }) */
 
- 	  // #ifdef APP
 
- 	     const token:string = state?.token as string ?? ''
 
- 	     SetToken(token);
 
- 	  // #endif
 
- 	  resolve()
 
- 	})
 
-   }
 
-   // 获取用户信息
 
- export const GetInfo=():Promise<UTSJSONObject>=> {
 
-   return new Promise((resolve, reject) => {
 
- 	getInfo().then((res:UTSJSONObject) => {
 
- 	  let avatar:string=profileImg as string
 
- 	  let username:string="" as string
 
- 	  const resMap=res.toMap() as Map<string,any>
 
- 	   if(resMap.has("user")){
 
- 		   const user:UTSJSONObject|null = res.getJSON("user");
 
- 		   if(user!=null){
 
- 			const userMap=user.toMap() as Map<string,any>
 
- 			if(userMap.has("avatar")&&user.getString("avatar")!=null&&user.getString("avatar")!=""){
 
- 				avatar=globalConfig.baseUrl + user.getString("avatar") as string
 
- 			}
 
- 			if(userMap.has("userName")&&user.getString("userName")!=null&&user.getString("userName")!=""){
 
- 				username= user.getString("userName") as string
 
- 			}
 
- 		   }
 
- 	   }
 
- 	   let roles=[] as string[]
 
- 	   if(resMap.has("roles")){
 
- 		   roles=res.getArray<string>("roles") as string[]
 
- 		   if(roles.length>0){
 
- 			   let permissions=[] as string[]
 
- 			   if(resMap.has("permissions")){
 
- 				   permissions=res.getArray<string>("permissions") as string[]
 
- 			   }
 
- 			   SetPermissions?.(permissions);
 
- 		   }
 
- 	   }
 
- 	   SetRoles?.(roles)
 
- 	   SetName?.(username);
 
- 	   SetAvatar?.(avatar);
 
- 	   resolve(res)
 
- 	})
 
-   })
 
- }
 
-   // 退出系统
 
-   export const LogOut=():Promise<UTSJSONObject>=> {
 
- 	return new Promise<UTSJSONObject>((resolve, reject) => {
 
- 	  logout(state.token).then(() => {
 
- 	    SetToken('');
 
- 		SetRoles([]);
 
- 		SetPermissions([]);   
 
- 		removeToken();
 
- 		//storage.clean?.();
 
- 	    resolve({});
 
- 	  })
 
- 	})
 
-   }
 
 
  |