feat: 新增创建接口,修改i8n部分内容

This commit is contained in:
奔跑的面条 2022-05-21 18:03:15 +08:00
parent 5b8dda60bd
commit 39023832e3
9 changed files with 55 additions and 16 deletions

View File

@ -43,27 +43,31 @@ axiosInstance.interceptors.response.use(
const { code } = res.data as { code: number }
// 成功
if (code === ResultEnum.DATA_SUCCESS) {
if (code === ResultEnum.SUCCESS) {
return Promise.resolve(res.data)
}
// 登录过期
if (code === ResultEnum.SERVER_FORBIDDEN) {
if (code === ResultEnum.TOKEN_OVERDUE) {
window['$message'].error(window['$t']('http.token_overdue_message'))
routerTurnByName(PageEnum.BASE_LOGIN_NAME)
return Promise.reject(res.data)
return
}
// 重定向
// 固定错误码重定向
if (ErrorPageNameMap.get(code)) {
redirectErrorPage(code)
return
}
// 提示错误
window['$message'].error(window['$t']((res.data as any).msg))
return Promise.resolve(res.data)
},
(err: AxiosResponse) => {
const { code } = err.data as { code: number }
if (ErrorPageNameMap.get(code)) redirectErrorPage(code)
window['$message'].error('接口异常,请检查!')
window['$message'].error(window['$t']('http.error_message'))
Promise.reject(err)
}
)

View File

@ -5,7 +5,7 @@ import { RequestHttpEnum, ModuleTypeEnum } from '@/enums/httpEnum'
// * 新增项目
export const createProjectApi = async (data: object) => {
try {
const res = await http(RequestHttpEnum.POST)(`${ModuleTypeEnum.SYSTEM}/project/create`, data);
const res = await http(RequestHttpEnum.POST)(`${ModuleTypeEnum.PROJECT}/create`, data);
return res;
} catch {
httpErrorHandle();

View File

@ -27,8 +27,14 @@ const global = {
r_more: 'More',
}
const http = {
error_message: 'The interface is abnormal, please check the interface!',
token_overdue_message: 'Login expired, please log in again!'
}
export default {
global,
http,
login,
project
}

View File

@ -2,6 +2,6 @@ export default {
desc: "Login",
form_auto: "Sign in automatically",
form_button: "Login",
login_success: "Login success",
login_message: "Please complete the letter",
login_success: "Login success!",
login_message: "Please complete the letter!",
}

View File

@ -1,6 +1,8 @@
export default {
create_btn: 'Creat',
create_tip: 'Please select a content for development',
create_success: 'Creat Success!',
create_failure: 'Failed to create, please try again later',
create_tip: 'Please select a content for development!',
project: 'Project',
my: 'My',
new_project: 'New Project',

View File

@ -26,8 +26,14 @@ const global = {
r_more: '更多',
}
const http = {
error_message: '接口异常,请检查!',
token_overdue_message: '登录过期,请重新登录!'
}
export default {
global,
http,
login,
project
}

View File

@ -1,6 +1,8 @@
export default {
// aside
create_btn: '新建',
create_success: '新建成功!',
create_failure: '新建失败,请稍后重试!',
create_tip: '从哪里出发好呢?',
project: '项目',
my: '我的',

View File

@ -107,7 +107,7 @@ export const reloadRoutePage = () => {
export const logout = async () => {
const res:any = await logoutApi()
if(res.code === ResultEnum.SUCCESS) {
window['$message'].success((`${window.$t('global.logout_success')}!`))
window['$message'].success((`${window['$t']('global.logout_success')}!`))
}
clearCookie(RequestHttpHeaderEnum.COOKIE)
clearLocalStorage(StorageEnum.GO_SYSTEM_STORE)

View File

@ -38,7 +38,9 @@
import { watch } from 'vue'
import { icon } from '@/plugins'
import { PageEnum, ChartEnum } from '@/enums/pageEnum'
import { ResultEnum } from '@/enums/httpEnum'
import { fetchPathByName, routerTurnByPath, renderLang, getUUID } from '@/utils'
import { createProjectApi } from '@/api/path/project'
const { FishIcon, CloseIcon } = icon.ionicons5
const { StoreIcon, ObjectStorageIcon } = icon.carbon
@ -82,13 +84,30 @@ const closeHandle = () => {
}
//
const btnHandle = (key: string) => {
const btnHandle = async (key: string) => {
switch (key) {
case ChartEnum.CHART_HOME_NAME:
const id = getUUID()
const path = fetchPathByName(ChartEnum.CHART_HOME_NAME, 'href')
routerTurnByPath(path, [id], undefined, true)
closeHandle()
try {
//
const res:any = await createProjectApi({
//
projectName: getUUID(),
// remarks
remarks: null,
//
indexImage: null,
})
if(res.code === ResultEnum.SUCCESS) {
window['$message'].success(window['$t']('project.create_success'))
const { id } = res
const path = fetchPathByName(ChartEnum.CHART_HOME_NAME, 'href')
routerTurnByPath(path, [id], undefined, true)
closeHandle()
}
} catch (error) {
window['$message'].error(window['$t']('project.create_failure'))
}
break;
}
}