整体测试及优化,部分细节功能待完善
This commit is contained in:
parent
3f94ece6d4
commit
37402b0ea4
@ -86,5 +86,17 @@ const api = {
|
||||
params:data
|
||||
})
|
||||
},
|
||||
freeze: data => { // 冻结积分
|
||||
return service({
|
||||
url: '/point/freeze/'+data.id,
|
||||
method: 'put'
|
||||
})
|
||||
},
|
||||
unfreeze:data => { // 解冻积分
|
||||
return service({
|
||||
url: '/point/unfreeze/'+data.id,
|
||||
method: 'put'
|
||||
})
|
||||
},
|
||||
}
|
||||
export default api
|
||||
|
@ -57,5 +57,12 @@ const api = {
|
||||
data
|
||||
})
|
||||
},
|
||||
assistantOperator : data => {// 审核提交-助教
|
||||
return service({
|
||||
url: '/assistant/change',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
},
|
||||
}
|
||||
export default api
|
||||
|
@ -70,5 +70,12 @@ const api = {
|
||||
data
|
||||
})
|
||||
},
|
||||
getAuctionDetailList: data => { // 获取竞拍 抽奖 记录
|
||||
return service({
|
||||
url: '/auction/record',
|
||||
method: 'get',
|
||||
params:data
|
||||
})
|
||||
},
|
||||
}
|
||||
export default api
|
||||
|
@ -130,6 +130,21 @@ const custom = {
|
||||
else{
|
||||
return num/flag+'万'
|
||||
}
|
||||
},addTreeFormatSubject(data,type) {
|
||||
if(!data) {
|
||||
return []
|
||||
}
|
||||
data.map( item => {
|
||||
item.label = item.name
|
||||
item.value = item[type]
|
||||
if(item.level !== 3) {
|
||||
item.disabled = true
|
||||
}
|
||||
if(item.children) {
|
||||
custom.addTreeFormatSubject(item.children,type)
|
||||
}
|
||||
})
|
||||
return data
|
||||
},
|
||||
getDealType() { // 获取交易类型
|
||||
return [
|
||||
|
@ -265,7 +265,7 @@ const viewParams = ref({
|
||||
sort:'desc'
|
||||
})
|
||||
const dialogViewVisible = ref(false)
|
||||
const viewInfo = ref({})
|
||||
const viewInfo = ref([])
|
||||
const view_total = ref(0)
|
||||
async function viewAuctionFunc(row) { // 竞拍明细
|
||||
viewParams.value.id = row.id
|
||||
@ -276,6 +276,9 @@ async function viewAuctionFunc(row) { // 竞拍明细
|
||||
viewInfo.value = res.data.list
|
||||
}
|
||||
}
|
||||
function closeViewDialog() {
|
||||
dialogViewVisible.value = false
|
||||
}
|
||||
</script>
|
||||
<template>
|
||||
<div>
|
||||
|
@ -48,7 +48,8 @@ async function getCourseList() {
|
||||
async function getSubject(){ // 获取课程分类
|
||||
const res = await api.getSubjectList(subjectParams.value)
|
||||
if(res.code === 0) {
|
||||
subjectList.value = custom.getStdSubject(res.data.records)
|
||||
// subjectList.value = custom.getStdSubject(res.data.records)
|
||||
subjectList.value = custom.addTreeFormatSubject(res.data.records,'id')
|
||||
// console.log(subjectList.value)
|
||||
}
|
||||
}
|
||||
@ -183,14 +184,15 @@ async function enterVerifyDialog() { // 审核提交
|
||||
<el-input v-model="queryParams.name" placeholder="根据课程名称进行查询" />
|
||||
</el-form-item>
|
||||
<el-form-item label="课程分类">
|
||||
<el-select v-model="queryParams.subject" clearable placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in subjectList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
<!-- <el-select v-model="queryParams.subject" clearable placeholder="请选择">-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in subjectList"-->
|
||||
<!-- :key="item.id"-->
|
||||
<!-- :label="item.name"-->
|
||||
<!-- :value="item.id"-->
|
||||
<!-- />-->
|
||||
<!-- </el-select>-->
|
||||
<el-tree-select v-model="queryParams.subject" :data="subjectList" :render-after-expand="false" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button size="small" type="primary" icon="search" @click="onSubmit">查询</el-button>
|
||||
@ -253,19 +255,13 @@ async function enterVerifyDialog() { // 审核提交
|
||||
@click="editCourseFunc(scope.row)"
|
||||
>查看</el-button>
|
||||
<el-button
|
||||
v-if="scope.row.status === 2"
|
||||
icon="check"
|
||||
size="small"
|
||||
type="primary"
|
||||
link
|
||||
@click="checkCourseFunc(scope.row)"
|
||||
>审核</el-button>
|
||||
<!-- <el-button-->
|
||||
<!-- icon="delete"-->
|
||||
<!-- size="small"-->
|
||||
<!-- type="danger"-->
|
||||
<!-- link-->
|
||||
<!-- @click="deleteCourseFunc(scope.row)"-->
|
||||
<!-- >删除</el-button>-->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -21,7 +21,8 @@ const queryParams = ref({
|
||||
pageSize:10,
|
||||
user_id:0,
|
||||
type:'', // 是否中奖
|
||||
time:'', // 抽经时间
|
||||
time:'', // 抽经时间,
|
||||
current_page:1
|
||||
})
|
||||
const tableData = ref([])
|
||||
const total = ref(0)
|
||||
@ -37,6 +38,7 @@ const typeList = ref([
|
||||
])
|
||||
// 生命周期
|
||||
onMounted(() => {
|
||||
queryParams.value.id = parseInt(route.params.user_id)
|
||||
// getAuctionDetailList()
|
||||
})
|
||||
// 方法
|
||||
@ -57,7 +59,9 @@ const onReset = () => {
|
||||
user_id:0,
|
||||
type:'', // 是否中奖
|
||||
time:'', // 抽经时间
|
||||
current_page:1
|
||||
}
|
||||
queryParams.value.id = parseInt(route.params.user_id)
|
||||
}
|
||||
function handleCurrentChange(val) {
|
||||
queryParams.value.page = val
|
||||
|
@ -59,6 +59,7 @@ const onReset = () => {
|
||||
type:'',
|
||||
deal_time:''
|
||||
}
|
||||
queryParams.value.id = parseInt(route.params.user_id)
|
||||
}
|
||||
function handleCurrentChange(val) {
|
||||
queryParams.value.page = val
|
||||
@ -90,15 +91,15 @@ function getTypeName(type) {
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<!-- <el-form-item label="交易时间">-->
|
||||
<!-- <el-date-picker class="oi-item" style="margin-left:5px"-->
|
||||
<!-- v-model="queryParams.deal_time"-->
|
||||
<!-- type="date"-->
|
||||
<!-- placeholder="交易时间"-->
|
||||
<!-- format="YYYY-MM-DD"-->
|
||||
<!-- value-format="x"-->
|
||||
<!-- />-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="交易时间">
|
||||
<el-date-picker class="oi-item" style="margin-left:5px"
|
||||
v-model="queryParams.deal_time"
|
||||
type="date"
|
||||
placeholder="交易时间"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="x"
|
||||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button size="small" type="primary" icon="search" @click="onSubmit">查询</el-button>
|
||||
|
@ -57,6 +57,7 @@ const onReset = () => {
|
||||
type:'',
|
||||
deal_time:''
|
||||
}
|
||||
queryParams.value.id = parseInt(route.params.user_id)
|
||||
}
|
||||
function handleCurrentChange(val) {
|
||||
queryParams.value.page = val
|
||||
@ -67,6 +68,7 @@ function handleSizeChange(val) {
|
||||
getDealPointList()
|
||||
}
|
||||
function getTypeName(type) {
|
||||
console.log(deal_types.value,type)
|
||||
return deal_types.value.filter((item,i) => {
|
||||
return item.value == type
|
||||
})[0].name
|
||||
@ -78,12 +80,12 @@ function getTypeName(type) {
|
||||
<div class="gva-search-box">
|
||||
<el-form ref="searchForm" :inline="true" :model="queryParams">
|
||||
<el-form-item label="交易类别">
|
||||
<el-select v-model="queryParams.subject" clearable placeholder="请选择">
|
||||
<el-select v-model="queryParams.type" clearable placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in deal_types"
|
||||
:key="item.value"
|
||||
:label="item.name"
|
||||
:value="item.name"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -108,10 +110,10 @@ function getTypeName(type) {
|
||||
<div class="gva-table-box">
|
||||
<!-- 数据列表-->
|
||||
<el-table :data="tableData">
|
||||
<el-table-column align="left" label="交易单号" min-width="150" prop="wallet_log_id" />
|
||||
<el-table-column align="left" label="交易单号" min-width="150" prop="consume_id" />
|
||||
<el-table-column align="left" label="交易类型" min-width="150">
|
||||
<template #default="scope">
|
||||
{{getTypeName(scope.row.wallet_log_type)}}
|
||||
{{getTypeName(scope.row.point_type)}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="left" label="交易时间" min-width="150" >
|
||||
|
@ -83,7 +83,8 @@ function initChart() { // echart
|
||||
async function getSubject(){ // 获取课程分类
|
||||
const res = await capi.getSubjectList(subjectParams.value)
|
||||
if(res.code === 0) {
|
||||
subjectList.value = custom.getStdSubject(res.data.records)
|
||||
// subjectList.value = custom.getStdSubject(res.data.records)
|
||||
subjectList.value = custom.addTreeFormatSubject(res.data.records,'id')
|
||||
// console.log(subjectList.value)
|
||||
}
|
||||
}
|
||||
@ -106,6 +107,7 @@ const onReset = () => {
|
||||
last_time:'',
|
||||
subject:''
|
||||
}
|
||||
queryParams.value.id = parseInt(route.params.user_id)
|
||||
}
|
||||
// const handleSelectionChange = (val) => {
|
||||
// question_ids.value = val
|
||||
@ -126,14 +128,15 @@ function handleSizeChange(val) {
|
||||
<el-form ref="searchForm" :inline="true" :model="queryParams">
|
||||
|
||||
<el-form-item label="课程分类">
|
||||
<el-select v-model="queryParams.subject" clearable placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in subjectList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
<!-- <el-select v-model="queryParams.subject" clearable placeholder="请选择">-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in subjectList"-->
|
||||
<!-- :key="item.id"-->
|
||||
<!-- :label="item.name"-->
|
||||
<!-- :value="item.id"-->
|
||||
<!-- />-->
|
||||
<!-- </el-select>-->
|
||||
<el-tree-select v-model="queryParams.subject" :data="subjectList" :render-after-expand="false" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="最后学习时间">
|
||||
@ -163,7 +166,7 @@ function handleSizeChange(val) {
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="left" label="科目" min-width="150" prop="subject"></el-table-column>
|
||||
<el-table-column align="left" label="课程" min-width="150" prop="subject" />
|
||||
<el-table-column align="left" label="课程" min-width="150" prop="name" />
|
||||
<el-table-column align="left" label="学习时长(分钟)" min-width="150" prop="duration" />
|
||||
|
||||
</el-table>
|
||||
|
@ -37,7 +37,7 @@ const typeList = ref([
|
||||
])
|
||||
// 生命周期
|
||||
onMounted(() => {
|
||||
// getRaffleDetailList()
|
||||
getRaffleDetailList()
|
||||
})
|
||||
// 方法
|
||||
async function getRaffleDetailList() {
|
||||
|
@ -36,8 +36,9 @@ onMounted(() => {
|
||||
async function getSubject(){ // 获取课程分类
|
||||
const res = await capi.getSubjectList(subjectParams.value)
|
||||
if(res.code === 0) {
|
||||
subjectList.value = custom.getStdSubject(res.data.records)
|
||||
// subjectList.value = custom.getStdSubject(res.data.records)
|
||||
// console.log(subjectList.value)
|
||||
subjectList.value = custom.addTreeFormatSubject(res.data.records,'id')
|
||||
}
|
||||
}
|
||||
async function getTestDetailList() {
|
||||
@ -58,6 +59,7 @@ const onReset = () => {
|
||||
last_time:'',
|
||||
subject:''
|
||||
}
|
||||
queryParams.value.id = parseInt(route.params.user_id)
|
||||
}
|
||||
function handleCurrentChange(val) {
|
||||
queryParams.value.page = val
|
||||
@ -82,14 +84,15 @@ async function getCourseName(course_id) {
|
||||
<el-form ref="searchForm" :inline="true" :model="queryParams">
|
||||
|
||||
<el-form-item label="课程分类">
|
||||
<el-select v-model="queryParams.subject" clearable placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in subjectList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
<!-- <el-select v-model="queryParams.subject" clearable placeholder="请选择">-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in subjectList"-->
|
||||
<!-- :key="item.id"-->
|
||||
<!-- :label="item.name"-->
|
||||
<!-- :value="item.id"-->
|
||||
<!-- />-->
|
||||
<!-- </el-select>-->
|
||||
<el-tree-select v-model="queryParams.subject" :data="subjectList" :render-after-expand="false" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="测试时间">
|
||||
|
@ -272,7 +272,7 @@ const viewParams = ref({
|
||||
sort:'desc'
|
||||
})
|
||||
const dialogViewVisible = ref(false)
|
||||
const viewInfo = ref({})
|
||||
const viewInfo = ref([])
|
||||
const view_total = ref(0)
|
||||
async function viewAuctionFunc(row) { // 竞拍明细
|
||||
viewParams.value.id = row.id
|
||||
@ -511,8 +511,8 @@ async function viewAuctionFunc(row) { // 竞拍明细
|
||||
<el-table :data="viewInfo" border >
|
||||
<el-table-column align="center" label="ID" prop="id" />
|
||||
<el-table-column align="center" label="用户名称" prop="name" />
|
||||
<el-table-column align="center" label="投注积分" prop="point" />
|
||||
<el-table-column align="center" label="是否中标" prop="status" />
|
||||
<!-- <el-table-column align="center" label="抽奖积分" prop="point" />-->
|
||||
<el-table-column align="center" label="是否中奖" prop="status" />
|
||||
<el-table-column align="center" label="参与时间" prop="CreatedAt" />
|
||||
</el-table>
|
||||
<div class="gva-pagination">
|
||||
|
@ -128,7 +128,7 @@ function deleteExamFunc(row) {
|
||||
})
|
||||
}
|
||||
function handleCurrentChange(val) {
|
||||
queryParams.value.pageIndex = val
|
||||
queryParams.value.page = val
|
||||
getIntegralList()
|
||||
}
|
||||
function handleSizeChange(val) {
|
||||
@ -181,6 +181,38 @@ function getStateName(state) {
|
||||
}
|
||||
return str
|
||||
}
|
||||
async function integralOperationFunc(type,row) { // 冻结 解冻
|
||||
let func = '', title = ''
|
||||
if(type == 1) {
|
||||
func = 'freeze'
|
||||
title = '是否冻结该用户积分?'
|
||||
}
|
||||
else {
|
||||
func = 'unfreeze'
|
||||
title = '是否解冻该用户积分?'
|
||||
}
|
||||
// const res = await api[func]({id:row.id})
|
||||
// if(res === 0) {
|
||||
//
|
||||
// }
|
||||
|
||||
ElMessageBox.confirm(title, '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(async() => {
|
||||
const res = await api[func]({id:row.point_id})
|
||||
if (res.code === 0) {
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '操作成功!'
|
||||
})
|
||||
getIntegralList()
|
||||
}
|
||||
},() => {
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<template>
|
||||
<div>
|
||||
@ -241,18 +273,20 @@ function getStateName(state) {
|
||||
<el-table-column align="center" fixed="right" label="操作" width="200">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
icon="edit"
|
||||
size="small"
|
||||
type="primary"
|
||||
link
|
||||
@click="viewOrderFunc(scope.row)"
|
||||
>冻结</el-button>
|
||||
<el-button
|
||||
icon="delete"
|
||||
v-if="scope.row.status === 1"
|
||||
icon="close"
|
||||
size="small"
|
||||
type="danger"
|
||||
link
|
||||
@click="deleteExamFunc(scope.row)"
|
||||
@click="integralOperationFunc(1,scope.row)"
|
||||
>冻结</el-button>
|
||||
<el-button
|
||||
v-if="scope.row.status === 2"
|
||||
icon="select"
|
||||
size="small"
|
||||
type="primary"
|
||||
link
|
||||
@click="integralOperationFunc(2,scope.row)"
|
||||
>解冻</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
@ -134,6 +134,8 @@ function getStateName(state) {
|
||||
<div class="di-right">{{assistantInfo.valid_num}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="detail-info-box">
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">管理学员:</div>
|
||||
@ -143,75 +145,79 @@ function getStateName(state) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">课程订单:</div>
|
||||
<div class="di-right">{{assistantInfo.course_num}}</div>
|
||||
<div class="di-right">{{assistantInfo.student_info?.course_num}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">课程收益:</div>
|
||||
<div class="di-right">{{assistantInfo.course_income}}</div>
|
||||
<div class="di-right">{{assistantInfo.student_info?.course_income}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">试卷订单:</div>
|
||||
<div class="di-right">{{assistantInfo.exam_num}}</div>
|
||||
<div class="di-right">{{assistantInfo.student_info?.exam_num}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">试卷收益:</div>
|
||||
<div class="di-right">{{assistantInfo.exam_income}}</div>
|
||||
<div class="di-right">{{assistantInfo.student_info?.exam_income}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="detail-info-box">
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">推荐老师:</div>
|
||||
<div class="di-right">{{assistantInfo.teacher_num}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="dib-row">-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">授课总订单:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">授课总收益:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="dib-row">-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">试卷总订单:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">试卷总收益:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">授课总订单:</div>
|
||||
<div class="di-right">{{assistantInfo.teacher_info?.course_num}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">授课总收益:</div>
|
||||
<div class="di-right">{{assistantInfo.teacher_info?.course_income}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">试卷总订单:</div>
|
||||
<div class="di-right">{{assistantInfo.teacher_info?.exam_num}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">试卷总收益:</div>
|
||||
<div class="di-right">{{assistantInfo.teacher_info?.exam_income}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="detail-info-box">
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">推荐助教:</div>
|
||||
<div class="di-right">{{assistantInfo.assistant_num}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="dib-row">-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">课程总订单:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">课程总收益:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="dib-row">-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">试卷总订单:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="dib-item">-->
|
||||
<!-- <div class="di-left">试卷总收益:</div>-->
|
||||
<!-- <div class="di-right">{{assistantInfo.assistant_info?.num}}</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">课程总订单:</div>
|
||||
<div class="di-right">{{assistantInfo.assistant_info?.course_num}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">课程总收益:</div>
|
||||
<div class="di-right">{{assistantInfo.assistant_info?.course_income}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">试卷总订单:</div>
|
||||
<div class="di-right">{{assistantInfo.assistant_info?.exam_num}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">试卷总收益:</div>
|
||||
<div class="di-right">{{assistantInfo.assistant_info?.exam_income}}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- 操作区域-->
|
||||
@ -289,6 +295,10 @@ function getStateName(state) {
|
||||
}
|
||||
.gva-table-box{
|
||||
.detail-info-box{
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #f0f2f5;
|
||||
padding-bottom: 10px;
|
||||
box-shadow: 10px 2px 7px #f0f2f5;
|
||||
.dib-row{
|
||||
overflow: hidden;
|
||||
.link-item{
|
||||
|
@ -51,7 +51,7 @@ const total = ref(0)
|
||||
// })
|
||||
const question_id = ref(0)
|
||||
const content = ref(null)
|
||||
const teacher_ids = ref([])
|
||||
const asistant_ids = ref([])
|
||||
// 生命周期
|
||||
onMounted(() => {
|
||||
getAssistantList()
|
||||
@ -85,8 +85,8 @@ const onReset = () => {
|
||||
}
|
||||
}
|
||||
async function onDelete() {
|
||||
const ids = teacher_ids.value
|
||||
const res = await api.delExamination({ teacher_ids:ids })
|
||||
const ids = asistant_ids.value
|
||||
const res = await api.delExamination({ asistant_ids:ids })
|
||||
if (res.code === 0) {
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
@ -97,7 +97,7 @@ async function onDelete() {
|
||||
}
|
||||
}
|
||||
const handleSelectionChange = (val) => {
|
||||
teacher_ids.value = val.map((item) => {
|
||||
asistant_ids.value = val.map((item) => {
|
||||
return item.teacher_info_id
|
||||
})
|
||||
}
|
||||
@ -119,12 +119,12 @@ const pFormRules = ref({
|
||||
})
|
||||
const p_type = ref(null); // 审核类型
|
||||
const pForm = ref({})
|
||||
const teacher_id = ref(0)
|
||||
const asistant_id = ref(0)
|
||||
const p_title = ref('')
|
||||
function processFunc(row,state) { // 审核
|
||||
p_type.value = state
|
||||
p_visible.value = true
|
||||
teacher_id.value = row.user_id
|
||||
asistant_id.value = row.user_id
|
||||
if(state === 3) { //同意
|
||||
p_title.value = '审核同意'
|
||||
}
|
||||
@ -136,17 +136,18 @@ function close_pv(){
|
||||
p_visible.value = false
|
||||
}
|
||||
async function pOk() { // 审核提交
|
||||
const res = await api.teacherOperator({
|
||||
teacher_id:teacher_id.value,
|
||||
const res = await api.assistantOperator({
|
||||
assistant_id:asistant_id.value,
|
||||
status:p_type.value,
|
||||
desc:pForm.value.desc
|
||||
})
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: res.data.msg
|
||||
message: res.msg
|
||||
})
|
||||
if(res.code === 0) {
|
||||
close_pv()
|
||||
getAssistantList()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@ -206,6 +207,11 @@ async function pOk() { // 审核提交
|
||||
{{scope.row.province>-1?cityList[scope.row.province].name:'无'}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="状态" min-width="150">
|
||||
<template #default="scope">
|
||||
{{scope.row.status==1?'申请中':scope.row.status==2?'已拒绝':'已同意'}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column align="center" label="管理学员" prop="invite_id" />-->
|
||||
<!-- <el-table-column align="center" label="课程订单" prop="invite_id" />-->
|
||||
<!-- <el-table-column align="center" label="收益" prop="invite_id" />-->
|
||||
|
@ -57,20 +57,20 @@ const user_list = ref([])
|
||||
// 生命周期
|
||||
onMounted(() => {
|
||||
getManagerList()
|
||||
getUserList()
|
||||
// getUserList()
|
||||
})
|
||||
// provide('subjectList', subjectList)
|
||||
// provide('current_subject', current_subject)
|
||||
// 方法
|
||||
async function getUserList() {
|
||||
const res = await capi.getUserList({
|
||||
page:1,
|
||||
pageSize:1000
|
||||
})
|
||||
if(res.code === 0) {
|
||||
user_list.value = res.data.records
|
||||
}
|
||||
}
|
||||
// async function getUserList() {
|
||||
// const res = await capi.getUserList({
|
||||
// page:1,
|
||||
// pageSize:1000
|
||||
// })
|
||||
// if(res.code === 0) {
|
||||
// user_list.value = res.data.records
|
||||
// }
|
||||
// }
|
||||
async function getManagerList() {
|
||||
const res = await api.getManagerList(queryParams.value)
|
||||
if(res.code === 0) {
|
||||
@ -182,6 +182,20 @@ async function saveData() {
|
||||
dialogVisible.value = false
|
||||
}
|
||||
}
|
||||
/*搜索用户相关*/
|
||||
const selectLoading = ref(false)
|
||||
async function remoteMethod(query) {
|
||||
selectLoading.value = true
|
||||
const res = await capi.getUserList({
|
||||
name:query,
|
||||
page:1,
|
||||
pageSize:100
|
||||
})
|
||||
selectLoading.value = false
|
||||
if(res.code === 0) {
|
||||
user_list.value = res.data.records
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<template>
|
||||
<div>
|
||||
@ -298,9 +312,26 @@ async function saveData() {
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户ID" prop="user_id">
|
||||
<el-select v-model="mForm.user_id" clearable placeholder="请选择">
|
||||
<!-- <el-select v-model="mForm.user_id" clearable placeholder="请选择">-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="(item,index) in user_list"-->
|
||||
<!-- :key="item.user_id"-->
|
||||
<!-- :label="item.nickname"-->
|
||||
<!-- :value="item.user_id"-->
|
||||
<!-- />-->
|
||||
<!-- </el-select>-->
|
||||
|
||||
<el-select
|
||||
v-model="mForm.user_id"
|
||||
filterable
|
||||
remote
|
||||
reserve-keyword
|
||||
placeholder="搜索用户"
|
||||
remote-show-suffix
|
||||
:remote-method="remoteMethod"
|
||||
>
|
||||
<el-option
|
||||
v-for="(item,index) in user_list"
|
||||
v-for="item in user_list"
|
||||
:key="item.user_id"
|
||||
:label="item.nickname"
|
||||
:value="item.user_id"
|
||||
|
@ -108,7 +108,7 @@ function toDealDetail(type) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">积分:</div>
|
||||
<div class="di-right">{{userManageInfo.points}}</div>
|
||||
<div class="di-right">{{userManageInfo.point}}</div>
|
||||
</div>
|
||||
<div class="dib-item link-item" @click="toDealDetail(detail_type.dealDetailPoint)">
|
||||
<div class="di-left">查看交易明细</div>
|
||||
@ -117,11 +117,11 @@ function toDealDetail(type) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">报课次数:</div>
|
||||
<div class="di-right">{{userManageInfo.course_sale}}次</div>
|
||||
<div class="di-right">{{userManageInfo.course_num}}次</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">累计消费金额:</div>
|
||||
<div class="di-right">{{userManageInfo.course_income}}</div>
|
||||
<div class="di-right">{{userManageInfo.course_expend}}</div>
|
||||
</div>
|
||||
<div class="dib-item link-item" @click="toDealDetail(detail_type.learningDetail)">
|
||||
<div class="di-left">查看学习记录</div>
|
||||
@ -130,11 +130,11 @@ function toDealDetail(type) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">测试次数:</div>
|
||||
<div class="di-right">{{userManageInfo.exam_sale}}次</div>
|
||||
<div class="di-right">{{userManageInfo.exam_num}}次</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">累计金额:</div>
|
||||
<div class="di-right">{{userManageInfo.exam_income}}</div>
|
||||
<div class="di-right">{{userManageInfo.exam_expend}}</div>
|
||||
</div>
|
||||
<div class="dib-item link-item" @click="toDealDetail(detail_type.testDetail)">
|
||||
<div class="di-left">查看测试记录</div>
|
||||
@ -143,11 +143,11 @@ function toDealDetail(type) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">抽奖次数:</div>
|
||||
<div class="di-right">{{userManageInfo.exam_sale}}次</div>
|
||||
<div class="di-right">{{userManageInfo.lottery_num}}次</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">中奖次数:</div>
|
||||
<div class="di-right">{{userManageInfo.exam_income}}次</div>
|
||||
<div class="di-right">{{userManageInfo.lottery_win}}次</div>
|
||||
</div>
|
||||
<div class="dib-item link-item" @click="toDealDetail(detail_type.raffleDetail)">
|
||||
<div class="di-left">查看抽奖记录</div>
|
||||
@ -156,11 +156,11 @@ function toDealDetail(type) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">竞拍次数:</div>
|
||||
<div class="di-right">{{userManageInfo.exam_sale}}次</div>
|
||||
<div class="di-right">{{userManageInfo.auction_num}}次</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">中奖次数:</div>
|
||||
<div class="di-right">{{userManageInfo.exam_income}}次</div>
|
||||
<div class="di-right">{{userManageInfo.auction_win}}次</div>
|
||||
</div>
|
||||
<div class="dib-item link-item" @click="toDealDetail(detail_type.auctionDetail)">
|
||||
<div class="di-left">查看竞拍记录</div>
|
||||
@ -169,7 +169,7 @@ function toDealDetail(type) {
|
||||
<div class="dib-row">
|
||||
<div class="dib-item">
|
||||
<div class="di-left">邀请人姓名:</div>
|
||||
<div class="di-right">{{userManageInfo.invite_id}}</div>
|
||||
<div class="di-right">{{userManageInfo.invite_name}}</div>
|
||||
</div>
|
||||
<div class="dib-item">
|
||||
<div class="di-left">邀请人姓名ID:</div>
|
||||
|
Loading…
Reference in New Issue
Block a user