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 } const { code } = res.data as { code: number }
// 成功 // 成功
if (code === ResultEnum.DATA_SUCCESS) { if (code === ResultEnum.SUCCESS) {
return Promise.resolve(res.data) 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) routerTurnByName(PageEnum.BASE_LOGIN_NAME)
return Promise.reject(res.data) return
} }
// 重定向 // 固定错误码重定向
if (ErrorPageNameMap.get(code)) { if (ErrorPageNameMap.get(code)) {
redirectErrorPage(code) redirectErrorPage(code)
return
} }
// 提示错误
window['$message'].error(window['$t']((res.data as any).msg))
return Promise.resolve(res.data) return Promise.resolve(res.data)
}, },
(err: AxiosResponse) => { (err: AxiosResponse) => {
const { code } = err.data as { code: number } const { code } = err.data as { code: number }
if (ErrorPageNameMap.get(code)) redirectErrorPage(code) if (ErrorPageNameMap.get(code)) redirectErrorPage(code)
window['$message'].error('接口异常,请检查!') window['$message'].error(window['$t']('http.error_message'))
Promise.reject(err) Promise.reject(err)
} }
) )

View File

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

View File

@ -27,8 +27,14 @@ const global = {
r_more: 'More', 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 { export default {
global, global,
http,
login, login,
project project
} }

View File

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

View File

@ -1,6 +1,8 @@
export default { export default {
create_btn: 'Creat', 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', project: 'Project',
my: 'My', my: 'My',
new_project: 'New Project', new_project: 'New Project',

View File

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

View File

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

View File

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

View File

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