diff --git a/code/WebApp/vanilla/api/site.js b/code/WebApp/vanilla/api/site.js index 614ccd9f..3543762a 100644 --- a/code/WebApp/vanilla/api/site.js +++ b/code/WebApp/vanilla/api/site.js @@ -17,7 +17,7 @@ async function getLocalizationAsync() { locale: "zh", messages: { zh: { - application: "北京北汽模塑-SAS结算分析系统", + application: "北汽模塑销售结算系统", copyright: "长春市闻荫科技有限公司 ©2023", test: "测试", compareAttribute: "{0}”和{1}不匹配", diff --git a/code/WebApp/vanilla/api/user.js b/code/WebApp/vanilla/api/user.js index 51d53a10..e830bbdd 100644 --- a/code/WebApp/vanilla/api/user.js +++ b/code/WebApp/vanilla/api/user.js @@ -16,6 +16,7 @@ const isLogin = async () => { return true; } else { appStore.token = null; + removeAccessToken(); } } return false; @@ -39,6 +40,7 @@ const login = async (data) => { const logout = () => { const appStore = useAppStore(); appStore.token = null; + removeAccessToken(); removeRefreshToken(); router.push({ path: "/login", query: { redirect: router.currentRoute.value.fullPath } }); }; @@ -47,11 +49,13 @@ const getUser = async () => { const result = await get("abp/application-configuration"); const data = result.data; const user = {}; - user.name = data.currentUser.userName; + user.id = data.currentUser.id; + user.userName = data.currentUser.userName; user.email = data.currentUser.email; + user.phoneNumber = data.currentUser.phoneNumber; user.roles = data.currentUser.roles; - const menus = (await get("base/role-menus")).data; - user.permissions = menus.items; + user.permissions = data.auth.policies; + user.localization = data.localization; return user; }; @@ -66,6 +70,10 @@ const hasPermission = (to) => { } }; +const accessTokenKey = "access_token"; +const getAccessToken = () => localStorage.getItem(accessTokenKey); +const setAccessToken = (token) => localStorage.setItem(accessTokenKey, token); +const removeAccessToken = () => localStorage.removeItem(accessTokenKey); const refreshTokenKey = "refresh_token"; const getRefreshToken = () => localStorage.getItem(refreshTokenKey); @@ -77,4 +85,4 @@ const removeRefreshToken = () => { connection.stop(); }; -export { isLogin, login, logout, getUser, hasPermission }; +export { isLogin, login, logout, getAccessToken, setAccessToken, setRefreshToken, getUser, hasPermission }; diff --git a/code/WebApp/vanilla/components/form/form-input.js b/code/WebApp/vanilla/components/form/form-input.js index 02911edf..a99cc6c0 100644 --- a/code/WebApp/vanilla/components/form/form-input.js +++ b/code/WebApp/vanilla/components/form/form-input.js @@ -1,6 +1,7 @@ import html from "html"; import { ref, reactive, watch } from "vue"; import { dayjs } from "element-plus"; +import { post } from "../../request/index.js"; export default { template: html` @@ -20,8 +21,9 @@ export default { :multiple="!!schema.multiple" clearable style="width:100%" + :title="JSON.stringify(options)" > - +