| | |
| | | username, |
| | | userAvatar, |
| | | avatarsStyle, |
| | | userRoles, |
| | | toggleSideBar |
| | | } = useNav(); |
| | | </script> |
| | |
| | | <!-- <img :src="userAvatar" :style="avatarsStyle" /> --> |
| | | <p class="dark:text-white"> |
| | | {{ username || "请完善资料" }} |
| | | <el-tag effect="plain">{{ userRoles.name }}</el-tag> |
| | | </p> |
| | | </span> |
| | | <template #dropdown> |
| | |
| | | </el-dropdown-menu> |
| | | </template> |
| | | </el-dropdown> |
| | | <span |
| | | <!-- <span |
| | | class="set-icon navbar-bg-hover" |
| | | title="打开系统配置" |
| | | @click="onPanel" |
| | | > |
| | | <IconifyIconOffline :icon="Setting" /> |
| | | </span> |
| | | </span> --> |
| | | </div> |
| | | </div> |
| | | </template> |
| | |
| | | |
| | | /** 角色 */ |
| | | const userRoles = computed(() => { |
| | | return isAllEmpty(useUserStoreHook()?.exRoles) |
| | | ? useUserStoreHook()?.exRoles |
| | | : {}; |
| | | return useUserStoreHook()?.exRoles[0]; |
| | | }); |
| | | |
| | | const avatarsStyle = computed(() => { |
| | |
| | | refreshTokenApi |
| | | } from "@/api/user"; |
| | | import { useMultiTagsStoreHook } from "./multiTags"; |
| | | import { type DataInfo, setToken, removeToken, userKey } from "@/utils/auth"; |
| | | import { |
| | | type DataInfo, |
| | | setToken, |
| | | removeToken, |
| | | userKey, |
| | | setEnterpriseInfo |
| | | } from "@/utils/auth"; |
| | | import { cusExtendInfo } from "@/api/mine"; |
| | | |
| | | export const useUserStore = defineStore("pure-user", { |
| | | state: (): userType => ({ |
| | |
| | | // 是否勾选了登录页的免登录 |
| | | isRemembered: false, |
| | | // 登录页的免登录存储几天,默认7天 |
| | | loginDay: 7 |
| | | loginDay: 1, |
| | | // 企业资料 |
| | | enterpriseInfo: |
| | | storageLocal().getItem<DataInfo<number>>("enterpriseInfo") ?? {} |
| | | }), |
| | | actions: { |
| | | /** 存储头像 */ |
| | |
| | | SET_LOGINDAY(value: number) { |
| | | this.loginDay = Number(value); |
| | | }, |
| | | // 设置企业资料 |
| | | SET_ENTERPRISEINFO(value: object) { |
| | | this.loginDay = Number(value); |
| | | }, |
| | | /** 登入 */ |
| | | async loginByUsername(data) { |
| | | return new Promise<LoginResult>((resolve, reject) => { |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | async getCusExtendInfo() { |
| | | return new Promise<LoginResult>((resolve, reject) => { |
| | | cusExtendInfo() |
| | | .then(data => { |
| | | data.result.username = data.result.enterpriseName; |
| | | if (data?.code == 200) { |
| | | setEnterpriseInfo(data.result); |
| | | resolve(data); |
| | | } |
| | | }) |
| | | .catch(error => { |
| | | reject(error); |
| | | }); |
| | | }); |
| | | }, |
| | | /** 前端登出(不调用接口) */ |
| | | logOut() { |
| | | this.username = ""; |
| | | this.exRoles = []; |
| | | this.permissions = []; |
| | | removeToken(); |
| | | useMultiTagsStoreHook().handleTags("equal", [...routerArrays]); |
| | | resetRouter(); |
| | | router.push("/login"); |
| | | if (this.exRoles && this.exRoles.length == 1) { |
| | | router.push({ name: "Login", query: this.exRoles[0] }); |
| | | } else { |
| | | router.push({ name: "Login" }); |
| | | } |
| | | removeToken(); |
| | | this.exRoles = []; |
| | | }, |
| | | /** 刷新`token` */ |
| | | async handRefreshToken(data) { |
| | |
| | | permissions?: Array<string>; |
| | | isRemembered?: boolean; |
| | | loginDay?: number; |
| | | enterpriseInfo: object; |
| | | }; |
| | |
| | | } |
| | | } |
| | | |
| | | export function setEnterpriseInfo(data: DataInfo<Date>) { |
| | | useUserStoreHook().SET_ENTERPRISEINFO(data); |
| | | useUserStoreHook().SET_USERNAME(data.enterpriseName); |
| | | storageLocal().setItem("enterpriseInfo", data); |
| | | const obj = storageLocal().getItem(userKey); |
| | | obj.username = data.enterpriseName; |
| | | storageLocal().setItem(userKey, obj); |
| | | } |
| | | export function removeEnterpriseInfo() { |
| | | storageLocal().removeItem("enterpriseInfo"); |
| | | } |
| | | |
| | | /** 删除`token`以及key值为`user-info`的localStorage信息 */ |
| | | export function removeToken() { |
| | | Cookies.remove(TokenKey); |
| | |
| | | if (res.code == 200) { |
| | | // 获取后端路由 |
| | | return initRouter().then(() => { |
| | | console.log(res, "=-=-=-=", res.result.exRoles[0].hasFlsh); |
| | | if (!res.result.exRoles[0].hasFlsh) { |
| | | disabled.value = true; |
| | | router |
| | |
| | | } else { |
| | | router.replace("welcome"); |
| | | } |
| | | useUserStoreHook().getCusExtendInfo(); |
| | | }); |
| | | } else { |
| | | message(res?.message || "登录失败", { type: "error" }); |
| | |
| | | const isLoading = ref(false); |
| | | const showDialog = ref(false); |
| | | const state = reactive({ |
| | | userInfo: {}, |
| | | userInfo: useUserStoreHook().enterpriseInfo, |
| | | headers: { |
| | | // Accept: "application/json, text/plain, */*", |
| | | // "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8", |
| | |
| | | showDialog: false |
| | | }); |
| | | onMounted(async () => { |
| | | let res = await cusExtendInfo(); |
| | | if (res.code == 200) { |
| | | state.userInfo = res.result; |
| | | state.userInfo.enterpriseTypeName = res.result.enterpriseType; |
| | | state.ruleForm = res.result; |
| | | // let res = await useUserStoreHook().getCusExtendInfo(); |
| | | // if (res.code == 200) { |
| | | // state.userInfo = res.result; |
| | | // state.userInfo.enterpriseTypeName = res.result.enterpriseType; |
| | | // state.ruleForm = res.result; |
| | | // state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(","); |
| | | // } else { |
| | | // message(res.message, { |
| | | // type: "error" |
| | | // }); |
| | | // } |
| | | state.ruleForm = cloneDeep(state.userInfo); |
| | | console.log(state.userInfo); |
| | | |
| | | state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(","); |
| | | } else { |
| | | message(res.message, { |
| | | type: "error" |
| | | }); |
| | | } |
| | | let nowRole = useUserStoreHook()?.exRoles; |
| | | if (nowRole.length >= 1 && !route.query.code) { |
| | | state.ruleForm.transactionCode = nowRole[0].code; |
| | |
| | | let res = await changeCusExtend(obj); |
| | | if (res.code == "200") { |
| | | showDialog.value = false; |
| | | await useUserStoreHook().getCusExtendInfo(); |
| | | message("修改成功!", { |
| | | type: "success" |
| | | }); |
| | |
| | | <template #label> |
| | | <div class="cell-item">企业类型</div> |
| | | </template> |
| | | {{ state.userInfo.enterpriseTypeName }} |
| | | {{ state.userInfo.enterpriseType }} |
| | | </el-descriptions-item> |
| | | <el-descriptions-item> |
| | | <template #label> |
| | |
| | | }; |
| | | // 页面初始化 |
| | | onMounted(async () => { |
| | | let res = await cusExtendInfo(); |
| | | if (res.code == 200) { |
| | | state.ruleForm = res.result; |
| | | if (res.result.enterpriseType) { |
| | | isFirst.value = false; |
| | | } |
| | | // let res = await useUserStoreHook().getCusExtendInfo(); |
| | | // if (res.code == 200) { |
| | | // state.ruleForm = res.result; |
| | | // if (res.result.enterpriseType) { |
| | | // isFirst.value = false; |
| | | // } |
| | | // state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(","); |
| | | // console.log(state.ruleForm.enterpriseType, "state.ruleForm.enterpriseType"); |
| | | // } else { |
| | | // message(res.message, { |
| | | // type: "error" |
| | | // }); |
| | | // } |
| | | state.ruleForm = cloneDeep(useUserStoreHook().enterpriseInfo); |
| | | state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(","); |
| | | console.log(state.ruleForm.enterpriseType, "state.ruleForm.enterpriseType"); |
| | | } else { |
| | | message(res.message, { |
| | | type: "error" |
| | | }); |
| | | if (state.ruleForm.enterpriseType) { |
| | | isFirst.value = false; |
| | | } |
| | | let nowRole = useUserStoreHook()?.exRoles; |
| | | if (nowRole.length >= 1 && !route.query.code) { |
| | |
| | | ? await createrExRolsInformation(obj) |
| | | : await changeCusExtend(obj); |
| | | if (res.code == "200") { |
| | | await useUserStoreHook().getCusExtendInfo(); |
| | | active.value = 3; |
| | | } else { |
| | | message(res.message, { |