提交 78990520 authored 作者: 王鹏飞's avatar 王鹏飞

fix: #3278; 删除操作增加确认提示

上级 2cbd1d83
...@@ -3,7 +3,7 @@ import type { ChannelFormData, ChannelMember, User, Role } from '../types' ...@@ -3,7 +3,7 @@ import type { ChannelFormData, ChannelMember, User, Role } from '../types'
import AppList from '@/components/base/AppList.vue' import AppList from '@/components/base/AppList.vue'
import { getMemberList, addMember, deleteMember } from '../api' import { getMemberList, addMember, deleteMember } from '../api'
import { useMap } from '../composables/useMap' import { useMap } from '../composables/useMap'
import { ElMessage } from 'element-plus' import { ElMessage, ElMessageBox } from 'element-plus'
import { provideForm } from '../util' import { provideForm } from '../util'
import { useNow, useDateFormat } from '@vueuse/core' import { useNow, useDateFormat } from '@vueuse/core'
...@@ -72,14 +72,16 @@ const handleSubmitMember = function (data: { user: User; role: Role[] }) { ...@@ -72,14 +72,16 @@ const handleSubmitMember = function (data: { user: User; role: Role[] }) {
// 删除人员 // 删除人员
function handleDelete(row: ChannelMember, index: number) { function handleDelete(row: ChannelMember, index: number) {
if (isAdd) { ElMessageBox.confirm('确定要删除该成员吗?', '提示').then(() => {
form.members.splice(index, 1) if (isAdd) {
} else { form.members.splice(index, 1)
deleteMember({ user_id: row.user_id, role_id: row.role_id, channel_id: form.channel_id }).then(() => { } else {
ElMessage({ message: '删除成功', type: 'success' }) deleteMember({ user_id: row.user_id, role_id: row.role_id, channel_id: form.channel_id }).then(() => {
appList?.refetch() ElMessage({ message: '删除成功', type: 'success' })
}) appList?.refetch()
} })
}
})
} }
</script> </script>
......
...@@ -3,7 +3,7 @@ import type { ChannelFormData, ChannelProject } from '../types' ...@@ -3,7 +3,7 @@ import type { ChannelFormData, ChannelProject } from '../types'
import AppList from '@/components/base/AppList.vue' import AppList from '@/components/base/AppList.vue'
import { getProjectList, addProject, updateProject, deleteProject } from '../api' import { getProjectList, addProject, updateProject, deleteProject } from '../api'
import { useMap } from '../composables/useMap' import { useMap } from '../composables/useMap'
import { ElMessage } from 'element-plus' import { ElMessage, ElMessageBox } from 'element-plus'
import { provideForm } from '../util' import { provideForm } from '../util'
import { useNow, useDateFormat } from '@vueuse/core' import { useNow, useDateFormat } from '@vueuse/core'
...@@ -93,14 +93,16 @@ function handleUpdateSubmit(data: ChannelProject) { ...@@ -93,14 +93,16 @@ function handleUpdateSubmit(data: ChannelProject) {
// 删除项目 // 删除项目
function handleDelete(row: ChannelProject, index: number) { function handleDelete(row: ChannelProject, index: number) {
if (isAdd) { ElMessageBox.confirm('确定要删除该项目吗?', '提示').then(() => {
form.projects.splice(index, 1) if (isAdd) {
} else { form.projects.splice(index, 1)
deleteProject({ id: pid, contract_id: row.id }).then(() => { } else {
ElMessage({ message: '删除成功', type: 'success' }) deleteProject({ id: pid, contract_id: row.id }).then(() => {
appList?.refetch() ElMessage({ message: '删除成功', type: 'success' })
}) appList?.refetch()
} })
}
})
} }
</script> </script>
......
...@@ -3,12 +3,12 @@ import type { ProjectFormData, ProjectMember, User, Role } from '../types' ...@@ -3,12 +3,12 @@ import type { ProjectFormData, ProjectMember, User, Role } from '../types'
import AppList from '@/components/base/AppList.vue' import AppList from '@/components/base/AppList.vue'
import { getProjectUserList, addMember, deleteMember } from '../api' import { getProjectUserList, addMember, deleteMember } from '../api'
import { useMap } from '../composables/useMap' import { useMap } from '../composables/useMap'
import { ElMessage } from 'element-plus' import { ElMessage, ElMessageBox } from 'element-plus'
import { provideForm } from '../util' import { provideForm } from '../util'
import { useNow, useDateFormat } from '@vueuse/core' import { useNow, useDateFormat } from '@vueuse/core'
const { hasAuth, projectId } = await useMap() const { hasAuth, projectId } = await useMap()
const AddMember = defineAsyncComponent(() => import('../components/AddMember.vue')) const AddMember = defineAsyncComponent(() => import('./AddMember.vue'))
const props = defineProps<{ id?: string }>() const props = defineProps<{ id?: string }>()
const route = useRoute() const route = useRoute()
...@@ -72,14 +72,16 @@ const handleSubmitMember = function (data: { user: User; role: Role[] }) { ...@@ -72,14 +72,16 @@ const handleSubmitMember = function (data: { user: User; role: Role[] }) {
// 删除人员 // 删除人员
function handleDelete(row: ProjectMember, index: number) { function handleDelete(row: ProjectMember, index: number) {
if (isAdd) { ElMessageBox.confirm('确定要删除该成员吗?', '提示').then(() => {
form.members.splice(index, 1) if (isAdd) {
} else { form.members.splice(index, 1)
deleteMember({ user_id: row.user_id, role_id: row.role_id, project_id: form.project_id }).then(() => { } else {
ElMessage({ message: '删除成功', type: 'success' }) deleteMember({ user_id: row.user_id, role_id: row.role_id, project_id: form.project_id }).then(() => {
appList?.refetch() ElMessage({ message: '删除成功', type: 'success' })
}) appList?.refetch()
} })
}
})
} }
</script> </script>
......
...@@ -3,7 +3,7 @@ import type { ProjectRequestParams, ProjectFormData } from '../types' ...@@ -3,7 +3,7 @@ import type { ProjectRequestParams, ProjectFormData } from '../types'
import type { FormInstance } from 'element-plus' import type { FormInstance } from 'element-plus'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import InfoBase from '../components/InfoBase.vue' import InfoBase from '../components/InfoBase.vue'
import InfoUsers from '../components/InfoUsers.vue' import InfoMember from '../components/InfoMember.vue'
import { createProject, updateProject, getProjectDetail } from '../api' import { createProject, updateProject, getProjectDetail } from '../api'
import { provideForm } from '../util' import { provideForm } from '../util'
import { useMap } from '../composables/useMap' import { useMap } from '../composables/useMap'
...@@ -90,7 +90,7 @@ function handleUpdate(params: ProjectRequestParams) { ...@@ -90,7 +90,7 @@ function handleUpdate(params: ProjectRequestParams) {
<el-form scroll-to-error :model="form" label-width="100px" :disabled="action === 'view'" ref="formRef"> <el-form scroll-to-error :model="form" label-width="100px" :disabled="action === 'view'" ref="formRef">
<InfoBase style="margin: 20px 0"></InfoBase> <InfoBase style="margin: 20px 0"></InfoBase>
</el-form> </el-form>
<InfoUsers v-if="action !== 'update' && hasAuth('project-member')"></InfoUsers> <InfoMember v-if="action !== 'update' && hasAuth('project-member')"></InfoMember>
<el-row justify="center" style="margin-top: 40px"> <el-row justify="center" style="margin-top: 40px">
<template v-if="action === 'view'"> <template v-if="action === 'view'">
<el-button auto-insert-space @click="handleCancel">关闭</el-button> <el-button auto-insert-space @click="handleCancel">关闭</el-button>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论