diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b4bccf654..e1d983984 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,7 +2,7 @@ name: "Tagged Release" on: push: - branches: [ rel-7.0.3 ] + branches: [ rel-7.1.0 ] jobs: tagged-release: @@ -14,4 +14,4 @@ jobs: with: repo_token: "${{ secrets.GITHUB_TOKEN }}" prerelease: false - automatic_release_tag: "7.0.3" + automatic_release_tag: "7.1.0" diff --git a/apps/vue/src/api/sys/user.ts b/apps/vue/src/api/sys/user.ts index 7b4c4ae05..067358799 100644 --- a/apps/vue/src/api/sys/user.ts +++ b/apps/vue/src/api/sys/user.ts @@ -9,6 +9,11 @@ import { useGlobSetting } from '/@/hooks/setting'; import { ContentTypeEnum } from '/@/enums/httpEnum'; import { ErrorMessageMode } from '/#/axios'; +import { t } from '/@/hooks/web/useI18n'; +import { useMessage } from '/@/hooks/web/useMessage'; +import { useUserStoreWithOut } from '/@/store/modules/user'; + +const { createErrorModal } = useMessage(); enum Api { Login = '/connect/token', @@ -87,6 +92,16 @@ export function getUserInfo() { { errorMessageMode: 'none', apiUrl: '/connect', + }).catch(() => { + const userStore = useUserStoreWithOut(); + createErrorModal({ + title: t('sys.api.errorTip'), + content: t('sys.api.getUserInfoErrorMessage'), + onOk: () => { + userStore.setToken(undefined); + userStore.logout(true); + } + }); }); } diff --git a/apps/vue/src/api/text-templating/definitions/index.ts b/apps/vue/src/api/text-templating/definitions/index.ts index 86c3b6352..e50cb98df 100644 --- a/apps/vue/src/api/text-templating/definitions/index.ts +++ b/apps/vue/src/api/text-templating/definitions/index.ts @@ -15,7 +15,7 @@ export const CreateAsyncByInput = (input: TextTemplateDefinitionCreateDto) => { controller: controllerName, action: 'CreateAsync', uniqueName: 'CreateAsyncByInput', - params: input, + data: input, }); }; @@ -49,7 +49,9 @@ export const GetListAsyncByInput = (input: TextTemplateDefinitionGetListInput) = controller: controllerName, action: 'GetListAsync', uniqueName: 'GetListAsyncByInput', - params: input, + params: { + input: input, + }, }); }; diff --git a/apps/vue/src/api/text-templating/definitions/model/index.ts b/apps/vue/src/api/text-templating/definitions/model/index.ts index afd0aba0d..4f51c5ff8 100644 --- a/apps/vue/src/api/text-templating/definitions/model/index.ts +++ b/apps/vue/src/api/text-templating/definitions/model/index.ts @@ -1,10 +1,12 @@ export interface TextTemplateDefinitionDto { name: string; displayName: string; + formatedDisplayName?: string; defaultCultureName?: string; isInlineLocalized: boolean; isLayout: boolean; - layout: string; + layout?: string; + layoutName?: string; isStatic: boolean; renderEngine?: string; } diff --git a/apps/vue/src/locales/lang/en/sys.ts b/apps/vue/src/locales/lang/en/sys.ts index 71e5c5d89..c0104f6ea 100644 --- a/apps/vue/src/locales/lang/en/sys.ts +++ b/apps/vue/src/locales/lang/en/sys.ts @@ -7,10 +7,10 @@ export default { apiTimeoutMessage: 'The interface request timed out, please refresh the page and try again!', apiRequestFailed: 'The interface request failed, please try again later!', networkException: 'network anomaly', - networkExceptionMsg: - 'Please check if your network connection is normal! The network is abnormal', + networkExceptionMsg: 'Please check if your network connection is normal! The network is abnormal', + getUserInfoErrorMessage: 'Failed to obtain user information. Please log in again!', - errMsg401: 'The user does not have permission (token, user name, password error)!', + errMsg401: 'The request interface requires authentication. You failed authentication or the session timed out. Please log in again!', errMsg403: 'The user is authorized, but access is forbidden!', errMsg404: 'Network request error, the resource was not found!', errMsg405: 'Network request error, request method not allowed!', diff --git a/apps/vue/src/locales/lang/zh-CN/sys.ts b/apps/vue/src/locales/lang/zh-CN/sys.ts index eda0e0c5b..94af3aa2a 100644 --- a/apps/vue/src/locales/lang/zh-CN/sys.ts +++ b/apps/vue/src/locales/lang/zh-CN/sys.ts @@ -8,8 +8,9 @@ export default { apiRequestFailed: '请求出错,请稍候重试', networkException: '网络异常', networkExceptionMsg: '网络异常,请检查您的网络连接是否正常!', + getUserInfoErrorMessage: '获取用户信息失败, 请重新登录!', - errMsg401: '用户没有权限(令牌、用户名、密码错误)!', + errMsg401: '请求接口需要验证身份,您未通过认证或会话已超时, 请重新登录!', errMsg403: '用户得到授权,但是访问是被禁止的。!', errMsg404: '网络请求错误,未找到该资源!', errMsg405: '网络请求错误,请求方法未允许!', diff --git a/apps/vue/src/utils/http/axios/checkStatus.ts b/apps/vue/src/utils/http/axios/checkStatus.ts index c1de5b9cb..18d997dfd 100644 --- a/apps/vue/src/utils/http/axios/checkStatus.ts +++ b/apps/vue/src/utils/http/axios/checkStatus.ts @@ -68,6 +68,8 @@ export function checkStatus( errMessage = t('sys.api.errMsg505'); break; default: + errMessage = t('sys.api.apiRequestFailed'); + break; } if (errMessage) { @@ -80,16 +82,6 @@ export function checkStatus( } export function checkResponse(response: any): string | undefined { - if (!response?.data) { - // 都没捕获到则提示默认错误信息 - const { t } = useI18n(); - const message = t('sys.api.apiRequestFailed'); - checkStatus(response.status, message); - return message; - } - - let errorJson = response.data.error; - // 会话超时 if (response.status === 401) { const userStore = useUserStoreWithOut(); @@ -98,6 +90,14 @@ export function checkResponse(response: any): string | undefined { const { t } = useI18n(); return t('sys.api.errMsg401'); } + + if (!response?.data) { + // 都没捕获到则提示默认错误信息 + checkStatus(response, ''); + return undefined; + } + + let errorJson = response.data.error; // abp框架抛出异常信息 if (response.headers['_abperrorformat'] === 'true') { diff --git a/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionModal.vue b/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionModal.vue new file mode 100644 index 000000000..36b77101e --- /dev/null +++ b/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionModal.vue @@ -0,0 +1,99 @@ + + + + + \ No newline at end of file diff --git a/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionTable.vue b/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionTable.vue index 03eb34b09..2ff886d98 100644 --- a/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionTable.vue +++ b/apps/vue/src/views/text-templating/templates/components/TemplateDefinitionTable.vue @@ -1,6 +1,14 @@