|
|
@@ -40,18 +40,65 @@
|
|
|
<ElTableColumn prop="createdAt" label="注册时间" :formatter="timeFormatter" width="150" />
|
|
|
<ElTableColumn prop="balance" label="余额" />
|
|
|
<ElTableColumn prop="screenBalance" label="筛号余额" width="100" show-overflow-tooltip />
|
|
|
- <ElTableColumn prop="rate" label="费率" />
|
|
|
- <ElTableColumn prop="send" label="已消费" />
|
|
|
- <ElTableColumn label="操作" align="center" width="680">
|
|
|
+ <ElTableColumn prop="rate" label="费率" align="center" />
|
|
|
+ <ElTableColumn prop="send" label="已消费" align="center" />
|
|
|
+ <ElTableColumn prop="maxSend" label="号码发送条数" v-if="isAdmin" width="90" align="center" />
|
|
|
+ <ElTableColumn label="操作" align="center" width="450">
|
|
|
<template #default="{ row }">
|
|
|
- <ElButton type="warning" v-if="isSuperApi" plain @click="userEdit(row)">编辑</ElButton>
|
|
|
- <ElButton v-if="isApi" plain @click="transfer(row.id)">余额划转</ElButton>
|
|
|
- <ElButton v-if="isSuperApi" plain @click="recharge(row.id)">余额充值</ElButton>
|
|
|
- <ElButton v-if="isSuperApi" plain @click="screenRecharge(row.id)">筛号余额</ElButton>
|
|
|
- <ElButton v-if="isAdmin" plain @click="rate(row.id)">修改费率</ElButton>
|
|
|
- <ElButton type="primary" size="small" @click="detail(row)">余额记录</ElButton>
|
|
|
- <ElButton type="danger" v-if="isSuperApi" plain @click="twoFactor(row)">二次验证重置</ElButton>
|
|
|
- <ElButton type="danger" v-if="isSuperApi" plain @click="passwordEdit(row)">密码重置</ElButton>
|
|
|
+ <ElButton type="warning" v-if="isSuperApi" plain @click="userEdit(row)" class="operation-btn">
|
|
|
+ 编辑
|
|
|
+ </ElButton>
|
|
|
+ <ElButton v-if="isAdmin" plain @click="rate(row.id)" class="operation-btn">修改费率</ElButton>
|
|
|
+ <ElButton v-if="isAdmin" plain @click="maxSend(row.id)" class="operation-btn">修改条数</ElButton>
|
|
|
+
|
|
|
+ <ElDropdown trigger="click" class="operation-btn">
|
|
|
+ <el-button type="primary">
|
|
|
+ 余额操作
|
|
|
+ <el-icon class="el-icon--right">
|
|
|
+ <arrow-down />
|
|
|
+ </el-icon>
|
|
|
+ </el-button>
|
|
|
+ <!-- 下拉菜单内容 -->
|
|
|
+ <template #dropdown>
|
|
|
+ <el-dropdown-menu>
|
|
|
+ <el-dropdown-item v-if="isApi" @click="transfer(row.id)"> 余额划转</el-dropdown-item>
|
|
|
+ <el-dropdown-item v-if="isSuperApi" @click="recharge(row.id)"> 余额充值</el-dropdown-item>
|
|
|
+ <el-dropdown-item v-if="isSuperApi" @click="screenRecharge(row.id)">
|
|
|
+ 筛号余额充值
|
|
|
+ </el-dropdown-item>
|
|
|
+ <el-dropdown-item type="primary" size="small" @click="detail(row)" class="operation-btn">
|
|
|
+ 余额记录
|
|
|
+ </el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </template>
|
|
|
+ </ElDropdown>
|
|
|
+
|
|
|
+ <ElDropdown trigger="click" class="operation-btn">
|
|
|
+ <el-button type="danger">
|
|
|
+ 登录操作
|
|
|
+ <el-icon class="el-icon--right">
|
|
|
+ <arrow-down />
|
|
|
+ </el-icon>
|
|
|
+ </el-button>
|
|
|
+ <!-- 下拉菜单内容 -->
|
|
|
+ <template #dropdown>
|
|
|
+ <el-dropdown-menu>
|
|
|
+ <el-dropdown-item type="danger" v-if="isSuperApi" plain @click="twoFactor(row)"
|
|
|
+ >二次验证重置
|
|
|
+ </el-dropdown-item>
|
|
|
+ <el-dropdown-item type="danger" v-if="isSuperApi" plain @click="passwordEdit(row)"
|
|
|
+ >密码重置
|
|
|
+ </el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </template>
|
|
|
+ </ElDropdown>
|
|
|
+
|
|
|
+ <!-- <ElButton v-if="isApi" plain @click="transfer(row.id)">余额划转</ElButton>-->
|
|
|
+ <!-- <ElButton v-if="isSuperApi" plain @click="recharge(row.id)">余额充值</ElButton>-->
|
|
|
+ <!-- <ElButton v-if="isSuperApi" plain @click="screenRecharge(row.id)">筛号余额</ElButton>-->
|
|
|
+ <!-- <ElButton type="primary" size="small" @click="detail(row)" class="operation-btn">余额记录</ElButton>-->
|
|
|
+ <!-- <ElButton type="danger" v-if="isSuperApi" plain @click="twoFactor(row)">二次验证重置</ElButton>-->
|
|
|
+ <!-- <ElButton type="danger" v-if="isSuperApi" plain @click="passwordEdit(row)">密码重置</ElButton>-->
|
|
|
</template>
|
|
|
</ElTableColumn>
|
|
|
</PagingTable>
|
|
|
@@ -188,6 +235,7 @@ import { useUserStore } from '@/stores/user'
|
|
|
import ExpandItem from '@/components/ExpandItem.vue'
|
|
|
import UserAvatar from '@/components/UserAvatar.vue'
|
|
|
import { format } from 'date-fns'
|
|
|
+import { ArrowDown } from '@element-plus/icons-vue'
|
|
|
|
|
|
const isAdmin = inject('isAdmin')
|
|
|
const isSuperApi = inject('isSuperApi')
|
|
|
@@ -420,6 +468,30 @@ const rate = async (userId) => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+const maxSend = async (userId) => {
|
|
|
+ ElMessageBox.prompt('请输入单个号码最大发送条数', '修改条数', {
|
|
|
+ confirmButtonText: '确认',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ inputErrorMessage: '请输入正整数!',
|
|
|
+ inputPattern: /^[1-9]\d*$/
|
|
|
+ })
|
|
|
+ .then(async ({ value }) => {
|
|
|
+ const url = '/users/updateMaxSend/' + userId + '/' + value
|
|
|
+ await http.get(url)
|
|
|
+ table.value.refresh()
|
|
|
+ ElMessage({
|
|
|
+ type: 'success',
|
|
|
+ message: `条数修改成功`
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ ElMessage({
|
|
|
+ type: 'info',
|
|
|
+ message: '取消条数修改'
|
|
|
+ })
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
const selectedRow = ref(null)
|
|
|
const showDetailDialog = ref(false)
|
|
|
const showExportDialog = ref(false)
|
|
|
@@ -598,3 +670,10 @@ async function confirmExport() {
|
|
|
exportDialog()
|
|
|
}
|
|
|
</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+.operation-btn {
|
|
|
+ margin-bottom: auto;
|
|
|
+ margin-left: 10px;
|
|
|
+}
|
|
|
+</style>
|