This commit is contained in:
2025-07-03 16:49:28 +08:00
parent bc67220ef1
commit 3da5817404
7 changed files with 401 additions and 204 deletions

View File

@ -44,3 +44,11 @@ export function delTmMemberPlatform(data) {
}) })
} }
//修改TmMemberPlatform的字符
export function tmMemberPlatformChangeChar(data){
return request({
url: '/api/v1/tm-member-platform/change-chars',
method: 'post',
data: data
})
}

View File

@ -1,78 +1,86 @@
import request from '@/utils/request' import request from "@/utils/request";
// 查询TmMember列表 // 查询TmMember列表
export function listTmMember(query) { export function listTmMember(query) {
return request({ return request({
url: '/api/v1/tm-member', url: "/api/v1/tm-member",
method: 'get', method: "get",
params: query params: query,
}) });
} }
// 查询TmMember详细 // 查询TmMember详细
export function getTmMember(id) { export function getTmMember(id) {
return request({ return request({
url: '/api/v1/tm-member/' + id, url: "/api/v1/tm-member/" + id,
method: 'get' method: "get",
}) });
} }
// 新增TmMember // 新增TmMember
export function addTmMember(data) { export function addTmMember(data) {
return request({ return request({
url: '/api/v1/tm-member', url: "/api/v1/tm-member",
method: 'post', method: "post",
data: data data: data,
}) });
} }
// 修改TmMember // 修改TmMember
export function updateTmMember(data) { export function updateTmMember(data) {
return request({ return request({
url: '/api/v1/tm-member/' + data.id, url: "/api/v1/tm-member/" + data.id,
method: 'put', method: "put",
data: data data: data,
}) });
} }
// 删除TmMember // 删除TmMember
export function delTmMember(data) { export function delTmMember(data) {
return request({ return request({
url: '/api/v1/tm-member', url: "/api/v1/tm-member",
method: 'delete', method: "delete",
data: data data: data,
}) });
} }
// 获取API Key // 获取API Key
export function getMyKey() { export function getMyKey() {
return request({ return request({
url: '/api/v1/tm-member/api-key', url: "/api/v1/tm-member/api-key",
method: 'get' method: "get",
}) });
} }
// 获取使用量统计 // 获取使用量统计
export function getTranslateDataStatistic() { export function getTranslateDataStatistic() {
return request({ return request({
url: '/api/v1/translate/datastatistics', url: "/api/v1/translate/datastatistics",
method: 'get' method: "get",
}) });
} }
// 字符充值 // 字符充值
export function tmMemberRecharge(data) { // export function tmMemberRecharge(data) {
// return request({
// url: '/api/v1/tm-member/recharge',
// method: 'post',
// data: data
// })
// }
export function tmMemberManageRecharge(data) {
return request({ return request({
url: '/api/v1/tm-member/recharge', url: "/api/v1/tm-member/manager-recharge",
method: 'post', method: "post",
data: data data: data,
}) });
} }
export function changeTmMemberStatus(data) { export function changeTmMemberStatus(data) {
return request({ return request({
url: '/api/v1/tm-member/status', url: "/api/v1/tm-member/status",
method: 'put', method: "put",
data: data data: data,
}) });
} }

View File

@ -79,6 +79,9 @@
:style="{ width: '100%' }" :style="{ width: '100%' }"
/> />
</el-form-item> </el-form-item>
<el-form-item label="默认赠送字符数">
<el-input v-model="form.tm_gift_characters" placeholder="请输入默认赠送字符数"></el-input>
</el-form-item>
<el-form-item size="large"> <el-form-item size="large">
<el-button type="primary" @click="submitForm">提交</el-button> <el-button type="primary" @click="submitForm">提交</el-button>
<el-button @click="resetForm">重置</el-button> <el-button @click="resetForm">重置</el-button>
@ -121,7 +124,8 @@ export default {
sys_user_initPassword: undefined, sys_user_initPassword: undefined,
sys_index_skinName: undefined, sys_index_skinName: undefined,
sys_index_sideTheme: undefined, sys_index_sideTheme: undefined,
trx_receive_address: undefined trx_receive_address: undefined,
tm_gift_characters: undefined
}, },
rules: { rules: {
sys_app_name: [{ sys_app_name: [{
@ -144,7 +148,8 @@ export default {
message: '请选择侧栏主题', message: '请选择侧栏主题',
trigger: 'change' trigger: 'change'
}], }],
trx_receive_address: [{ required: true, message: '请输入TRX收货地址', trigger: 'blur' }] trx_receive_address: [{ required: true, message: '请输入TRX收货地址', trigger: 'blur' }],
tm_gift_characters: [{ required: true, message: '请输入默认赠送字符数', trigger: 'blur' }]
}, },
otherRules: { otherRules: {

View File

@ -3,23 +3,13 @@
<template #wrapper> <template #wrapper>
<el-card class="box-card"> <el-card class="box-card">
<el-form ref="queryForm" :model="queryParams" :inline="true" label-width="68px"> <el-form ref="queryForm" :model="queryParams" :inline="true" label-width="68px">
<el-form-item label="用户昵称" prop="nickName"><el-input <el-form-item label="用户昵称" prop="nickName"><el-input v-model="queryParams.nickName" placeholder="请输入用户昵称"
v-model="queryParams.nickName" clearable size="small" @keyup.enter.native="handleQuery" />
placeholder="请输入用户昵称"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" clearable placeholder="请选择"> <el-select v-model="queryParams.status" clearable placeholder="请选择">
<el-option <el-option v-for="dict in statusOptions" :key="dict.value" :label="dict.label" :value="dict.value" />
v-for="dict in statusOptions"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -49,23 +39,33 @@
<el-table v-loading="loading" :data="tmMemberList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="tmMemberList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="Id" align="center" prop="userId" width="80" />
<el-table-column label="用户昵称" align="center" prop="nickName" :show-overflow-tooltip="true" /> <el-table-column label="用户昵称" align="center" prop="nickName" :show-overflow-tooltip="true" />
<el-table-column label="Key" align="center" prop="apiKey" /> <el-table-column label="Key" align="center" prop="apiKey" />
<!-- <el-table-column label="总字符" align="center" prop="totalChars" /> --> <!-- <el-table-column label="总字符" align="center" prop="totalChars" /> -->
<el-table-column label="剩余字符" align="center" prop="remainChars"> <el-table-column label="已用字符" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-for="(item,index) in scope.row.platforms" :key="'remains'+index">{{ item.name }}{{ item.remainChars }}</div> <div v-for="(item, index) in scope.row.usedPlatform" :key="'used' + index">
{{ item.name }}{{ item.totalChars }}
<!-- <el-button v-permisaction="['admin:tmMember:changeChars']"
size="mini" type="text" icon="el-icon-edit" class="char-btn">修改
</el-button> -->
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="状态" align="center" :show-overflow-tooltip="true"> <el-table-column label="剩余字符" align="center" prop="remainChars">
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <div v-for="(item, index) in scope.row.platforms" :key="'remains' + index">{{ item.name }}{{
v-if="checkPermisAction(['admin:tmMember:changeStatus'])" item.totalChars }} <el-button v-permisaction="['admin:tmMember:changeChars']" size="mini" type="text"
v-model="scope.row.status" icon="el-icon-edit" class="char-btn"
:active-value="1" @click="handleChangeChar(item, scope.row.nickName, 1)">修改</el-button>
:inactive-value="2" </div>
@change="handleStatusChange(scope.row)" </template>
/> </el-table-column>
<el-table-column label="状态" align="center" width="80px">
<template slot-scope="scope">
<el-switch v-if="checkPermisAction(['admin:tmMember:changeStatus'])" v-model="scope.row.status"
:active-value="1" :inactive-value="2" @change="handleStatusChange(scope.row)" />
<div v-else> <div v-else>
<el-tag v-if="scope.row.status === 1" type="success">启用</el-tag> <el-tag v-if="scope.row.status === 1" type="success">启用</el-tag>
<el-tag v-else type="danger">禁用</el-tag> <el-tag v-else type="danger">禁用</el-tag>
@ -73,18 +73,18 @@
<!-- --> <!-- -->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="用户状态" align="center"> <el-table-column label="用户状态" align="center" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.userStatus === 2" type="success">正常</el-tag> <el-tag v-if="scope.row.userStatus === 2" type="success">正常</el-tag>
<el-tag v-else type="danger">禁用</el-tag> <el-tag v-else type="danger">禁用</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="创建时间" prop="createdAt" sortable="custom" width="155"> <el-table-column label="创建时间" prop="createdAt" sortable="custom" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.createdAt) }}</span> <span>{{ parseTime(scope.row.createdAt) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="120">
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <el-popconfirm class="delete-popconfirm" title="确认要修改吗?" confirm-button-text="修改" <!-- <el-popconfirm class="delete-popconfirm" title="确认要修改吗?" confirm-button-text="修改"
@confirm="handleUpdate(scope.row)"> @confirm="handleUpdate(scope.row)">
@ -98,19 +98,10 @@
type="text" icon="el-icon-delete">删除 type="text" icon="el-icon-delete">删除
</el-button> </el-button>
</el-popconfirm> --> </el-popconfirm> -->
<el-popconfirm <el-popconfirm class="delete-popconfirm" title="确认要充值吗?" confirm-button-text="充值"
class="delete-popconfirm" @confirm="handleRecharge(scope.row)">
title="确认要充值吗?" <el-button slot="reference" v-permisaction="['admin:tmMember:recharge']" size="mini" type="text"
confirm-button-text="充值" icon="el-icon-edit">充值
@confirm="handleRecharge(scope.row)"
>
<el-button
slot="reference"
v-permisaction="['admin:tmMember:recharge']"
size="mini"
type="text"
icon="el-icon-edit"
>充值
</el-button> </el-button>
</el-popconfirm> </el-popconfirm>
@ -118,13 +109,8 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageIndex"
v-show="total > 0" :limit.sync="queryParams.pageSize" @pagination="getList" />
:total="total"
:page.sync="queryParams.pageIndex"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改对话框 --> <!-- 添加或修改对话框 -->
<!-- <el-dialog :title="title" :visible.sync="open" width="500px"> <!-- <el-dialog :title="title" :visible.sync="open" width="500px">
@ -165,13 +151,14 @@
</div> </div>
</el-dialog> --> </el-dialog> -->
<tm-member-recharge <tm-member-recharge :userId="showRechargeData.UserId" v-model="showRecharge" :memberId="showRechargeData.memberId"
:id="rechargeId" :api-key="showRechargeData.showApiKey" :nick-name="showRechargeData.showNickName" @close="handleRechargeClose" />
v-model="showRecharge"
:api-key="showApiKey" <!-- <tm-member-change :visible.sync="showChange" :memberId="showCangeData.memberId"
:nick-name="showNickName" :userId="showCangeData.userId"
@close="handleRechargeClose" :userName="showCangeData.nickName" :platformName="showCangeData.platformName"
/> :totalNum="showCangeData.totalNum" :platformId="showCangeData.platformId"
@close="handleChangeCharClose" /> -->
</el-card> </el-card>
</template> </template>
</BasicLayout> </BasicLayout>
@ -181,11 +168,13 @@
import { addTmMember, delTmMember, getTmMember, listTmMember, updateTmMember, changeTmMemberStatus } from '@/api/admin/tm-member' import { addTmMember, delTmMember, getTmMember, listTmMember, updateTmMember, changeTmMemberStatus } from '@/api/admin/tm-member'
import TmMemberRecharge from './tm-member-recharge.vue' import TmMemberRecharge from './tm-member-recharge.vue'
import checkPermisAction from '@/utils/permisaction' import checkPermisAction from '@/utils/permisaction'
import TmMemberChange from './tm-member-change.vue'
export default { export default {
name: 'TmMember', name: 'TmMember',
components: { components: {
TmMemberRecharge TmMemberRecharge,
TmMemberChange
}, },
data() { data() {
return { return {
@ -205,8 +194,20 @@ export default {
open: false, open: false,
isEdit: false, isEdit: false,
showRecharge: false, showRecharge: false,
showApiKey: undefined, showRechargeData: {
showNickName: undefined, showApiKey: undefined,
showNickName: undefined,
memberId: undefined,
userId: undefined,
},
showChange: false,
showCangeData: {
nickName: undefined,
platformId: undefined,
platformName: undefined,
totalNum: undefined,
type: undefined,
},
rechargeId: undefined, rechargeId: undefined,
// 类型数据字典 // 类型数据字典
typeOptions: [], typeOptions: [],
@ -282,10 +283,10 @@ export default {
} }
this.resetForm('form') this.resetForm('form')
}, },
getImgList: function() { getImgList: function () {
this.form[this.fileIndex] = this.$refs['fileChoose'].resultList[0].fullUrl this.form[this.fileIndex] = this.$refs['fileChoose'].resultList[0].fullUrl
}, },
fileClose: function() { fileClose: function () {
this.fileOpen = false this.fileOpen = false
}, },
areaCodeFormat(row) { areaCodeFormat(row) {
@ -321,7 +322,7 @@ export default {
handleUpdate(row) { handleUpdate(row) {
this.reset() this.reset()
const id = const id =
row.id || this.ids row.id || this.ids
getTmMember(id).then(response => { getTmMember(id).then(response => {
this.form = response.data this.form = response.data
this.open = true this.open = true
@ -330,7 +331,7 @@ export default {
}) })
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm: function() { submitForm: function () {
this.$refs['form'].validate(valid => { this.$refs['form'].validate(valid => {
if (valid) { if (valid) {
if (this.form.id !== undefined) { if (this.form.id !== undefined) {
@ -365,7 +366,7 @@ export default {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(function() { }).then(function () {
return delTmMember({ 'ids': Ids }) return delTmMember({ 'ids': Ids })
}).then((response) => { }).then((response) => {
if (response.code === 200) { if (response.code === 200) {
@ -375,13 +376,16 @@ export default {
} else { } else {
this.msgError(response.msg) this.msgError(response.msg)
} }
}).catch(function() { }).catch(function () {
}) })
}, },
handleRecharge(row) { handleRecharge(row) {
this.rechargeId = row.id this.showRechargeData={
this.showApiKey = row.apiKey UserId: row.userId,
this.showNickName = row.nickName memberId: row.id,
showApiKey: row.apiKey,
showNickName: row.nickName
}
this.showRecharge = true this.showRecharge = true
}, },
handleRechargeClose() { handleRechargeClose() {
@ -404,7 +408,31 @@ export default {
.finally(() => { .finally(() => {
this.loading = false this.loading = false
}) })
},
handleChangeChar(row, nickName, type) {
this.showCangeData = {
nickName: nickName,
platformId: row.platformId,
platformName: row.name,
memberId: row.memberId,
userId: row.userId,
totalNum: row.totalChars,
type: type
}
this.showChange = true
},
// 修改字符关闭事件
handleChangeCharClose() {
this.getList()
} }
} }
} }
</script> </script>
<style scoped>
.char-btn {
margin-left: 5px;
}
</style>

View File

@ -0,0 +1,119 @@
<template>
<el-dialog title="字符充值" :visible.sync="visible" width="500px" @close="handleClose" @open="handleOpen">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="用户" prop="userName">{{ userName }}</el-form-item>
<el-form-item label="平台名称" prop="platformName">
{{ platformName }}
</el-form-item>
<el-form-item label="剩余字符数量" prop="changeNum">
<el-input v-model.number="form.changeNum" placeholder="请输入剩余字符数量"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" :loading="loading" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</template>
<script>
import { tmMemberPlatformChangeChar } from '@/api/admin/tm-member-platform'
export default {
name: 'TmMemberChange',
props: {
type:{
type:Number,
default:1
},
memberId: {
type: Number,
required: true,
default: 0
},
userName: {
type: String,
default: ''
},
platformId:{
type:Number,
default:0
},
platformName: {
type: String,
default: ''
},
totalNum: {
type: Number,
default: 0
},
visible: {
type: Boolean,
default: false
}
},
data() {
return {
form: {
memberId: undefined,
platformId: undefined,
changeNum: 0
},
rules: {
changeNum: [
{ required: true, message: '请输入剩余字符数量', trigger: 'blur' }]
},
loading: false
}
},
// watch:{
// totalNum(newVal,oldVal){
// if(newVal!==oldVal){
// this.form.changeNum=newVal
// }
// }
// },
methods: {
resetForm() {
this.form = {
memberId: undefined,
platformId: undefined,
changeNum: 0
}
},
handleOpen() {
this.form.changeNum = this.totalNum
},
handleClose() {
this.resetForm()
this.$emit('update:visible', false)
this.$emit('close')
},
cancel() {
this.loading = false
this.handleClose()
},
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
this.loading = true
this.form.memberId = this.memberId
this.form.platformId = this.platformId
this.form.type=this.type
tmMemberPlatformChangeChar(this.form).then(response => {
if (response.code === 200) {
this.$message.success('修改成功')
this.handleClose()
} else {
this.$message.error(response.message)
}
})
.finally(() => {
this.loading = false
})
}
})
}
}
}
</script>

View File

@ -1,114 +1,141 @@
<template> <template>
<el-dialog title="字符充值" :visible.sync="value" width="500px" @close="handleClose" @open="handleOpen"> <el-dialog title="字符充值" :visible.sync="value" width="500px" @close="handleClose" @open="handleOpen">
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="用户昵称" prop="nickName"> <el-form-item label="用户昵称" prop="nickName">
{{ nickName }} {{ nickName }}
</el-form-item> </el-form-item>
<el-form-item label="翻译平台" prop="platformId"> <el-form-item label="翻译平台" prop="platformId">
<el-select v-model="form.platformId" placeholder="请选择翻译平台"> <el-select v-model="form.platformId" placeholder="请选择翻译平台">
<el-option v-for="item in platformList" :key="item.id" :label="item.name" :value="item.id" /> <el-option v-for="item in platformList" :key="item.id" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="apiKey"> <el-form-item label="apiKey">
{{ apiKey }} {{ apiKey }}
</el-form-item> </el-form-item>
<el-form-item label="充值字符(万)" prop="totalChars"> <el-form-item label="充值金额(U)" prop="amount">
<el-input v-model.number="form.totalChars" placeholder="充值字符(万)" /> <el-input v-model.number="form.amount" placeholder="充值金额(U)" />
</el-form-item> </el-form-item>
</el-form> <el-form-item label="充值字符(万)" prop="totalChars">
<div slot="footer" class="dialog-footer"> <el-input v-model.number="form.totalChars" placeholder="充值字符(万)" />
<el-button type="primary" :loading="loading" @click="submitForm"> </el-button> </el-form-item>
<el-button @click="cancel"> </el-button> <el-form-item label="过期时间(天)" prop="expireDays">
</div> <el-input v-model.number="form.expireDays" placeholder="过期时间(天)" />
</el-dialog> </el-form-item>
<el-form-item label="收款渠道">
<el-select v-model="form.payChannel" clearable placeholder="请选择收款渠道">
<el-option label="TRX" value="TRX" />
</el-select>
</el-form-item>
<el-form-item label="收款地址">
<el-input v-model="form.payAddress" placeholder="收款地址" />
</el-form-item>
<el-form-item label="交易hash">
<el-input v-model="form.txHash" placeholder="交易hash" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" :loading="loading" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</template> </template>
<script> <script>
import { tmMemberRecharge } from '@/api/admin/tm-member' import { tmMemberManageRecharge } from '@/api/admin/tm-member'
import { listTmPlatform } from '@/api/admin/tm-platform' import { listTmPlatform } from '@/api/admin/tm-platform'
export default { export default {
name: 'TmMemberRecharge', name: 'TmMemberRecharge',
props: { props: {
value: { value: {
type: Boolean, type: Boolean,
default: false default: false
}, },
apiKey: { apiKey: {
type: String, type: String,
default: '' default: ''
}, },
nickName: { nickName: {
type: String, type: String,
default: '' default: ''
}, },
id: { memberId: {
type: Number, type: Number,
default: 0 default: 0
} },
}, userId: {
data() { type: Number,
return { default: 0
loading: false,
form: {},
remainChars: 0,
rules: {
platformId: [{ required: true, message: '请选择翻译平台', trigger: 'blur' }],
totalChars: [{ required: true, message: '请输入充值字符(万)', trigger: 'blur' }]
},
platformList: []
}
},
methods: {
handleOpen() {
this.getPlatform()
},
getPlatform() {
listTmPlatform({ pageIndex: 1, pageSize: 1000 }).then(response => {
if (response.code === 200) {
this.platformList = response.data.list
} }
})
}, },
resetForm() { data() {
this.form = { return {
id: undefined, loading: false,
apiKey: undefined, form: {},
totalChars: undefined remainChars: 0,
} rules: {
platformId: [{ required: true, message: '请选择翻译平台', trigger: 'blur' }],
totalChars: [{ required: true, message: '请输入充值字符(万)', trigger: 'blur' }],
expireDays: [{ required: true, message: '请输入过期时间(天)', trigger: 'blur' }]
},
platformList: []
}
}, },
handleClose() {
this.resetForm()
this.$emit('input', false)
this.$emit('close')
},
cancel() {
this.loading = false
this.handleClose()
},
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
this.loading = true
this.form.id = this.id
const platform = this.platformList.find(item => item.id === this.form.platformId)
this.form.platformCode = platform.code
tmMemberRecharge(this.form).then(response => { methods: {
if (response.code === 200) { handleOpen() {
this.$message.success('充值成功!') this.getPlatform()
this.handleClose() },
} else { getPlatform() {
this.$message.error(response.message) listTmPlatform({ pageIndex: 1, pageSize: 1000 }).then(response => {
if (response.code === 200) {
this.platformList = response.data.list
}
})
},
resetForm() {
this.form = {
id: undefined,
apiKey: undefined,
totalChars: undefined,
userId:undefined,
memberId:undefined,
expireDays: undefined,
} }
}) },
.finally(() => { handleClose() {
this.loading = false this.resetForm()
this.$emit('input', false)
this.$emit('close')
},
cancel() {
this.loading = false
this.handleClose()
},
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
this.loading = true
this.form.memberId = this.memberId
this.form.userId = this.userId
const platform = this.platformList.find(item => item.id === this.form.platformId)
this.form.platformCode = platform.code
tmMemberManageRecharge(this.form).then(response => {
if (response.code === 200) {
this.$message.success('充值成功!')
this.handleClose()
} else {
this.$message.error(response.message)
}
})
.finally(() => {
this.loading = false
})
}
}) })
} }
})
} }
}
} }
</script> </script>

View File

@ -109,11 +109,13 @@
icon="el-icon-view" icon="el-icon-view"
@click="handlePreview(scope.row)" @click="handlePreview(scope.row)"
>预览</el-button> >预览</el-button>
<el-popconfirm <el-popconfirm
class="delete-popconfirm" class="delete-popconfirm"
title="正在使用代码生成请确认?" title="正在使用代码生成请确认?"
confirm-button-text="生成" confirm-button-text="生成"
@onConfirm="handleToProject(scope.row)" @confirm="handleToProject(scope.row)"
> >
<el-button <el-button
slot="reference" slot="reference"
@ -127,7 +129,7 @@
class="delete-popconfirm" class="delete-popconfirm"
title="正在使用【菜单以及API生成到数据库】请确认?" title="正在使用【菜单以及API生成到数据库】请确认?"
confirm-button-text="写入DB" confirm-button-text="写入DB"
@onConfirm="handleToDB(scope.row)" @confirm="handleToDB(scope.row)"
> >
<el-button <el-button
slot="reference" slot="reference"
@ -141,7 +143,7 @@
class="delete-popconfirm" class="delete-popconfirm"
title="正在使用代码生成配置迁移脚本请确认?" title="正在使用代码生成配置迁移脚本请确认?"
confirm-button-text="生成" confirm-button-text="生成"
@onConfirm="handleToApiFile(scope.row)" @confirm="handleToApiFile(scope.row)"
> >
<el-button <el-button
slot="reference" slot="reference"
@ -154,7 +156,7 @@
<el-popconfirm <el-popconfirm
class="delete-popconfirm" class="delete-popconfirm"
title="确认删除数据项?" title="确认删除数据项?"
@onConfirm="handleSingleDelete(scope.row)" @confirm="handleSingleDelete(scope.row)"
> >
<el-button <el-button
slot="reference" slot="reference"