From 57e41603c53514536cc3bd22d83136c8fc8803e9 Mon Sep 17 00:00:00 2001 From: cKey <35512826+colinin@users.noreply.github.com> Date: Sat, 11 Dec 2021 13:12:21 +0800 Subject: [PATCH] add user Settings --- .../src/api/settings/model/settingModel.ts | 4 +++ apps/vue/src/api/settings/settings.ts | 22 ++++++++++--- apps/vue/src/utils/http/axios/index.ts | 13 ++++---- apps/vue/src/views/account/center/Setting.vue | 31 +++++++++++++++++++ apps/vue/src/views/account/center/index.vue | 16 ++++++++-- .../Localization/ApplicationContracts/en.json | 2 ++ .../ApplicationContracts/zh-Hans.json | 2 ++ 7 files changed, 77 insertions(+), 13 deletions(-) create mode 100644 apps/vue/src/views/account/center/Setting.vue diff --git a/apps/vue/src/api/settings/model/settingModel.ts b/apps/vue/src/api/settings/model/settingModel.ts index a577068b7..32cb86c0f 100644 --- a/apps/vue/src/api/settings/model/settingModel.ts +++ b/apps/vue/src/api/settings/model/settingModel.ts @@ -56,3 +56,7 @@ export class SettingGroup { description?: string; settings = new Array(); } + +export interface SettingGroupResult { + items: SettingGroup[]; +} diff --git a/apps/vue/src/api/settings/settings.ts b/apps/vue/src/api/settings/settings.ts index c1d65c9a8..34ace2748 100644 --- a/apps/vue/src/api/settings/settings.ts +++ b/apps/vue/src/api/settings/settings.ts @@ -1,16 +1,17 @@ import { defHttp } from '/@/utils/http/axios'; -import { SettingGroup, SettingsUpdate } from './model/settingModel'; -import { ListResultDto } from '/@/api/model/baseModel'; +import { SettingGroupResult, SettingsUpdate } from './model/settingModel'; enum Api { GetGlobalSettings = '/api/setting-management/settings/by-global', SetGlobalSettings = '/api/setting-management/settings/change-global', GetCurrentTenantSettings = '/api/setting-management/settings/by-current-tenant', SetCurrentTenantSettings = '/api/setting-management/settings/change-current-tenant', + GetCurrentUserSettings = '/api/setting-management/settings/by-current-user', + SetCurrentUserSettings = '/api/setting-management/settings/change-current-user', } export const getGlobalSettings = () => { - return defHttp.get>({ + return defHttp.get({ url: Api.GetGlobalSettings, }); }; @@ -23,7 +24,7 @@ export const setGlobalSettings = (payload: SettingsUpdate) => { }; export const getCurrentTenantSettings = () => { - return defHttp.get>({ + return defHttp.get({ url: Api.GetCurrentTenantSettings, }); }; @@ -34,3 +35,16 @@ export const setCurrentTenantSettings = (payload: SettingsUpdate) => { url: Api.SetCurrentTenantSettings, }); }; + +export const getCurrentUserSettings = () => { + return defHttp.get({ + url: Api.GetCurrentUserSettings, + }); +}; + +export const setCurrentUserSettings = (payload: SettingsUpdate) => { + return defHttp.put({ + data: payload, + url: Api.SetCurrentUserSettings, + }); +}; diff --git a/apps/vue/src/utils/http/axios/index.ts b/apps/vue/src/utils/http/axios/index.ts index 455453406..a00d3813d 100644 --- a/apps/vue/src/utils/http/axios/index.ts +++ b/apps/vue/src/utils/http/axios/index.ts @@ -38,13 +38,14 @@ const transform: AxiosTransform = { } const { data } = res; - if (!data) { - // return '[HTTP] Request has no return value'; - throw new Error(t('sys.api.apiRequestFailed')); - } - + // 对包装结果处理 if (res.headers['_abpwrapresult'] === 'true') { + if (!data) { + // return '[HTTP] Request has no return value'; + throw new Error(t('sys.api.apiRequestFailed')); + } + const { code, result, message, details } = data; const hasSuccess = data && Reflect.has(data, 'code') && code === ResultEnum.CODE; if (hasSuccess) { @@ -62,7 +63,7 @@ const transform: AxiosTransform = { throw new Error(content || t('sys.api.apiRequestFailed')); } - return res.data; + return data; }, // 请求之前处理config diff --git a/apps/vue/src/views/account/center/Setting.vue b/apps/vue/src/views/account/center/Setting.vue new file mode 100644 index 000000000..44284540b --- /dev/null +++ b/apps/vue/src/views/account/center/Setting.vue @@ -0,0 +1,31 @@ + + diff --git a/apps/vue/src/views/account/center/index.vue b/apps/vue/src/views/account/center/index.vue index a8519f37b..1f700b577 100644 --- a/apps/vue/src/views/account/center/index.vue +++ b/apps/vue/src/views/account/center/index.vue @@ -14,7 +14,7 @@
- +