2025-08-11 11:06:07 +08:00
|
|
|
<template>
|
2025-10-23 16:04:28 +08:00
|
|
|
<view class="view-page" :style="{backgroundImage: `url('${ThemeData?.app_bg || baseBgUrl}')`}">
|
2025-08-11 11:06:07 +08:00
|
|
|
<headerHeight />
|
|
|
|
|
<navBar :navTitle="`退出审核`">
|
|
|
|
|
</navBar>
|
|
|
|
|
<view class="content">
|
2025-10-23 16:04:28 +08:00
|
|
|
<view class="box-line flex-line w-fill" v-for="(ele, index) in dataList">
|
2025-08-11 11:06:07 +08:00
|
|
|
<view class="flex-line">
|
|
|
|
|
<img style="width: 100rpx;height: 100rpx;border-radius: 50%;" :src="ele.avatar || logo" alt="" />
|
|
|
|
|
<view class="ml-20">
|
|
|
|
|
<view class="color-3 font-32 font-w500">
|
2025-10-23 16:04:28 +08:00
|
|
|
{{ ele.nickname }}
|
2025-08-11 11:06:07 +08:00
|
|
|
</view>
|
|
|
|
|
<view class="color-6 font-24">
|
2025-10-23 16:04:28 +08:00
|
|
|
ID: {{ ele.user_code }}
|
2025-08-11 11:06:07 +08:00
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view>
|
|
|
|
|
<view :class="ele.status === 1 ? 'success-text' : 'error-text'" v-if="ele.status">
|
2025-10-23 16:04:28 +08:00
|
|
|
{{ ele.status === 1 ? '已同意' : '已拒绝' }}
|
2025-08-11 11:06:07 +08:00
|
|
|
</view>
|
|
|
|
|
<view class="flex-line" v-else>
|
2025-10-23 16:04:28 +08:00
|
|
|
<view class="no-button" @click="RefuseOrAgreeData(ele, 2)">
|
2025-08-11 11:06:07 +08:00
|
|
|
拒绝
|
|
|
|
|
</view>
|
2025-10-23 16:04:28 +08:00
|
|
|
<view class="agree-button" @click="RefuseOrAgreeData(ele, 1)">
|
2025-08-11 11:06:07 +08:00
|
|
|
同意
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
2025-10-23 16:04:28 +08:00
|
|
|
<uni-popup ref="message" type="message">
|
|
|
|
|
<uni-popup-message :type="msgType" :message="messageText" :duration="2000"></uni-popup-message>
|
|
|
|
|
</uni-popup>
|
2025-08-11 11:06:07 +08:00
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
2025-10-23 16:04:28 +08:00
|
|
|
import headerHeight from '@/component/headerHeight.vue';
|
|
|
|
|
import baseBgUrl from '@/static/image/general/fy_bg.jpg';
|
|
|
|
|
import http from '@/until/http.js';
|
|
|
|
|
import logo from '@/static/image/logo.png';
|
|
|
|
|
import navBar from '@/component/nav.vue';
|
|
|
|
|
export default {
|
|
|
|
|
components: {
|
|
|
|
|
headerHeight,
|
|
|
|
|
navBar
|
|
|
|
|
},
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
logo,
|
|
|
|
|
baseBgUrl,
|
|
|
|
|
guildId: null,
|
|
|
|
|
msgType: "",
|
|
|
|
|
messageText: "",
|
|
|
|
|
dataList: [],
|
|
|
|
|
searchParams: {
|
|
|
|
|
guild_id: 0,
|
|
|
|
|
token: uni.getStorageSync('token') || ''
|
|
|
|
|
},
|
|
|
|
|
ThemeData: null
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
onLoad(options) {
|
|
|
|
|
const {
|
|
|
|
|
id
|
|
|
|
|
} = options
|
|
|
|
|
this.searchParams.guild_id = id
|
|
|
|
|
if (id) this.getList()
|
|
|
|
|
if (uni.getStorageSync('Theme_Data')) {
|
2025-08-13 10:39:47 +08:00
|
|
|
this.ThemeData = JSON.parse(uni.getStorageSync('Theme_Data'))
|
|
|
|
|
}
|
2025-10-23 16:04:28 +08:00
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
async RefuseOrAgreeData(ele, type) {
|
|
|
|
|
const {
|
|
|
|
|
code,
|
|
|
|
|
data,
|
|
|
|
|
msg
|
|
|
|
|
} = await http.post('/api/Guild/quit_apply_audit', {
|
|
|
|
|
token: uni.getStorageSync('token') || '',
|
|
|
|
|
apply_id: ele.id,
|
|
|
|
|
type
|
|
|
|
|
})
|
|
|
|
|
if (code === 1) {
|
|
|
|
|
this.msgType = 'success'
|
|
|
|
|
this.messageText = `操作成功`
|
|
|
|
|
this.$refs.message.open()
|
|
|
|
|
this.getList()
|
|
|
|
|
} else {
|
|
|
|
|
this.messageText = msg
|
|
|
|
|
this.msgType = 'error'
|
|
|
|
|
this.$refs.message.open()
|
|
|
|
|
}
|
2025-08-11 11:06:07 +08:00
|
|
|
},
|
2025-10-23 16:04:28 +08:00
|
|
|
async getList() {
|
|
|
|
|
const {
|
|
|
|
|
code,
|
|
|
|
|
data
|
|
|
|
|
} = await http.get('/api/Guild/quit_apply_list', this.searchParams)
|
|
|
|
|
if (code) {
|
|
|
|
|
this.dataList = data.list
|
2025-08-11 11:06:07 +08:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-10-23 16:04:28 +08:00
|
|
|
}
|
2025-08-11 11:06:07 +08:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style scoped lang="scss">
|
2025-10-23 16:04:28 +08:00
|
|
|
.view-page {
|
|
|
|
|
min-height: 100vh;
|
|
|
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background-size: 100% 100%;
|
|
|
|
|
|
|
|
|
|
.content {
|
|
|
|
|
padding: 0 24rpx;
|
|
|
|
|
width: calc(100vw - 48rpx);
|
|
|
|
|
height: calc(100vh - 67px);
|
|
|
|
|
|
|
|
|
|
.box-line {
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
margin-top: 24rpx;
|
|
|
|
|
|
|
|
|
|
.success-text {
|
|
|
|
|
color: var(--primary-color);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.error-text {
|
|
|
|
|
color: #FC8871;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.agree-button,
|
|
|
|
|
.no-button {
|
|
|
|
|
width: 140rpx;
|
|
|
|
|
height: 48rpx;
|
|
|
|
|
background: var(--primary-color);
|
|
|
|
|
color: var(--font-button-color);
|
|
|
|
|
border-radius: 68rpx;
|
|
|
|
|
display: inline-flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
|
|
|
}
|
2025-08-11 11:06:07 +08:00
|
|
|
|
2025-10-23 16:04:28 +08:00
|
|
|
.no-button {
|
|
|
|
|
background-color: #333333;
|
|
|
|
|
color: #fff;
|
|
|
|
|
margin-right: 24rpx;
|
2025-08-11 11:06:07 +08:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-10-23 16:04:28 +08:00
|
|
|
}
|
2025-08-11 11:06:07 +08:00
|
|
|
</style>
|