feat: 新增删除接口

This commit is contained in:
奔跑的面条 2022-05-22 15:25:07 +08:00
parent b21fc3f5e7
commit 7c5a66978e
5 changed files with 48 additions and 33 deletions

View File

@ -4,7 +4,7 @@ import { PageEnum, ErrorPageNameMap } from "@/enums/pageEnum"
import { StorageEnum } from '@/enums/storageEnum' import { StorageEnum } from '@/enums/storageEnum'
import { axiosPre } from '@/settings/httpSetting' import { axiosPre } from '@/settings/httpSetting'
import { SystemStoreEnum, SystemStoreUserInfoEnum } from '@/store/modules/systemStore/systemStore.d' import { SystemStoreEnum, SystemStoreUserInfoEnum } from '@/store/modules/systemStore/systemStore.d'
import { redirectErrorPage, getLocalStorage, routerTurnByName } from '@/utils' import { redirectErrorPage, getLocalStorage, routerTurnByName, httpErrorHandle } from '@/utils'
import { fetchAllowList } from './axios.config' import { fetchAllowList } from './axios.config'
import includes from 'lodash/includes' import includes from 'lodash/includes'
@ -67,7 +67,7 @@ axiosInstance.interceptors.response.use(
(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['$t']('http.error_message')) httpErrorHandle()
Promise.reject(err) Promise.reject(err)
} }
) )

View File

@ -21,3 +21,13 @@ export const createProjectApi = async (data: object) => {
httpErrorHandle(); httpErrorHandle();
} }
} }
// * 删除项目
export const deleteProjectApi = async (data: object) => {
try {
const res = await http(RequestHttpEnum.DELETE)(`${ModuleTypeEnum.PROJECT}/delete`, data);
return res;
} catch {
httpErrorHandle();
}
}

View File

@ -2,5 +2,5 @@
* * * *
*/ */
export const httpErrorHandle = () => { export const httpErrorHandle = () => {
window['$message'].error('请求失败,请稍后重试!') window['$message'].error(window['$t']('http.error_message'))
} }

View File

@ -1,8 +1,9 @@
import { ref, reactive } from 'vue'; import { ref, reactive } from 'vue';
import { goDialog } from '@/utils' import { goDialog, httpErrorHandle } from '@/utils'
import { DialogEnum } from '@/enums/pluginEnum' import { DialogEnum } from '@/enums/pluginEnum'
import { projectListApi } from '@/api/path/project' import { projectListApi, deleteProjectApi } from '@/api/path/project'
import { ChartList } from '../../../index.d' import { Chartype, ChartList } from '../../../index.d'
import { ResultEnum } from '@/enums/httpEnum'
// 数据初始化 // 数据初始化
export const useDataListInit = () => { export const useDataListInit = () => {
@ -20,7 +21,6 @@ export const useDataListInit = () => {
// 数据请求 // 数据请求
const fetchList = async () => { const fetchList = async () => {
try {
const res: any = await projectListApi({ const res: any = await projectListApi({
page: paginat.page, page: paginat.page,
limit: paginat.limit limit: paginat.limit
@ -28,8 +28,8 @@ export const useDataListInit = () => {
if (res.data) { if (res.data) {
const { count } = res const { count } = res
paginat.count = count paginat.count = count
list.value = res.data.map((e:any) => { list.value = res.data.map((e: any) => {
const {id, projectName, state, createTime, createUserId} = e const { id, projectName, state, createTime, createUserId } = e
return { return {
id: id, id: id,
title: projectName, title: projectName,
@ -39,9 +39,7 @@ export const useDataListInit = () => {
} }
}) })
} }
} catch (error) {
window['$message'].error(window['$t']('http.error_message'))
}
} }
// 修改页数 // 修改页数
@ -57,15 +55,22 @@ export const useDataListInit = () => {
} }
// 删除 // 删除
const deleteHandle = (cardData: object, index: number) => { const deleteHandle = (cardData: Chartype, index: number) => {
goDialog({ goDialog({
type: DialogEnum.DELETE, type: DialogEnum.DELETE,
promise: true, promise: true,
onPositiveCallback: () => onPositiveCallback: () => new Promise(res => {
new Promise(res => setTimeout(() => res(1), 1000)), res(deleteProjectApi({
promiseResCallback: (e: any) => { ids: cardData.id
}))
}),
promiseResCallback: (res: any) => {
if (res.code === ResultEnum.SUCCESS) {
window['$message'].success('删除成功') window['$message'].success('删除成功')
list.value.splice(index, 1) fetchList()
return
}
httpErrorHandle()
} }
}) })
} }

View File

@ -10,7 +10,7 @@
<project-items-card <project-items-card
:cardData="item" :cardData="item"
@resize="resizeHandle" @resize="resizeHandle"
@delete="deleteHandle($event, index)" @delete="deleteHandle(item, index)"
@edit="editHandle" @edit="editHandle"
></project-items-card> ></project-items-card>
</n-grid-item> </n-grid-item>