diff --git a/src/api/groupBuy.js b/src/api/groupBuy.js index b9e789a..74959f4 100644 --- a/src/api/groupBuy.js +++ b/src/api/groupBuy.js @@ -174,3 +174,29 @@ export const exportGroupBuyIdcInfo = () => { export const setGroupBuyOrder = (groupBuyId) => { return request.post("/api/v1/admin/activity/group_buy/set_order", { group_buy_id: groupBuyId }) } + +/** + * 删除指定队伍 + * @param {string} groupBuyId - 队伍ID + * @returns {Promise} 返回删除结果 + */ +export const removeGroupBuy = (groupBuyId) => { + return request.delete("/api/v1/admin/activity/group_buy/remove", { params: { group_buy_id: groupBuyId } }) +} + +/** + * 清除所有队伍 + * @returns {Promise} 返回清除结果 + */ +export const clearAllGroupBuy = () => { + return request.delete("/api/v1/admin/activity/group_buy/clear") +} + +/** + * 清除指定用户的所有队伍 + * @param {string} userId - 用户ID + * @returns {Promise} 返回清除结果 + */ +export const clearUserGroupBuy = (userId) => { + return request.delete("/api/v1/admin/activity/group_buy/user_clear", { params: { user_id: userId } }) +} diff --git a/src/views/activity/GroupBuyActivity.vue b/src/views/activity/GroupBuyActivity.vue index d0a502d..fbb4b0d 100644 --- a/src/views/activity/GroupBuyActivity.vue +++ b/src/views/activity/GroupBuyActivity.vue @@ -11,6 +11,9 @@ 刷新列表 + + 清除所有队伍 + @@ -61,6 +64,13 @@ > 查看详情 + + 删除 + @@ -138,7 +148,7 @@ import { exportIdcInfo, setOrder } from '@/api/admin/activity' -import { getGroupBuyTypeList,getGroupBuyTypeTags } from '@/api/groupBuy' +import { getGroupBuyTypeList, getGroupBuyTypeTags, removeGroupBuy, clearAllGroupBuy, clearUserGroupBuy } from '@/api/groupBuy' // 数据状态 const loading = ref(false) @@ -451,6 +461,48 @@ const handleExport = async () => { onMounted(() => { fetchGroupList() }) + +// 删除指定队伍 +const handleRemoveGroup = async (row) => { + try { + await ElMessageBox.confirm('确定要删除该队伍吗?', '确认删除', { type: 'warning' }) + const res = await removeGroupBuy(row.id) + if (res.code === 200) { + ElMessage.success('删除成功') + fetchGroupList() + } else { + ElMessage.error(res.message || '删除失败') + } + } catch { /* 取消 */ } +} + +// 清除所有队伍 +const handleClearAll = async () => { + try { + await ElMessageBox.confirm('确定要清除所有队伍吗?此操作不可恢复!', '危险操作', { type: 'error', confirmButtonText: '确定清除' }) + const res = await clearAllGroupBuy() + if (res.code === 200) { + ElMessage.success('已清除所有队伍') + fetchGroupList() + } else { + ElMessage.error(res.message || '清除失败') + } + } catch { /* 取消 */ } +} + +// 清除指定用户的所有队伍 +const handleClearUserGroups = async (userId) => { + try { + await ElMessageBox.confirm(`确定要清除用户 ${userId} 的所有队伍吗?`, '确认操作', { type: 'warning' }) + const res = await clearUserGroupBuy(userId) + if (res.code === 200) { + ElMessage.success('清除成功') + fetchGroupList() + } else { + ElMessage.error(res.message || '清除失败') + } + } catch { /* 取消 */ } +}