|
@@ -7,6 +7,7 @@
|
|
|
content="分部云教练数据详情"
|
|
|
>
|
|
|
</el-page-header>
|
|
|
+
|
|
|
<div class="m-core">
|
|
|
<save-form
|
|
|
:inline="true"
|
|
@@ -34,9 +35,15 @@
|
|
|
<el-form-item>
|
|
|
<!-- <el-button native-type="submit" type="primary">搜索</el-button>
|
|
|
<el-button native-type="reset" type="danger">重置</el-button> -->
|
|
|
- <el-button type="primary" @click="organDateExport" v-permission="'export/organTeacherMemberStudentData'">导出</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ @click="organDateExport"
|
|
|
+ v-permission="'export/organTeacherMemberStudentData'"
|
|
|
+ >导出</el-button
|
|
|
+ >
|
|
|
</el-form-item>
|
|
|
</save-form>
|
|
|
+ <a class="msg" v-if="noTeacherStudentNum>0">当前分部有{{noTeacherStudentNum}}名学员没有关联指导老师</a>
|
|
|
<div class="tableWrap">
|
|
|
<el-table
|
|
|
style="width: 100%"
|
|
@@ -52,36 +59,51 @@
|
|
|
align="center"
|
|
|
prop="totalStudentNum"
|
|
|
label="学员总数"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ prop="cloudStudyUseStudentNum"
|
|
|
+ label="使用人数"
|
|
|
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
+ prop="cloudStudyUseStudentDuty"
|
|
|
+ label="使用人数比"
|
|
|
+
|
|
|
+ >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>
|
|
|
+ {{scope.row.cloudStudyUseStudentDuty}}%
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
prop="vipStudentNum"
|
|
|
label="付费会员数"
|
|
|
-
|
|
|
></el-table-column>
|
|
|
- <el-table-column
|
|
|
+ <!-- <el-table-column
|
|
|
align="center"
|
|
|
prop="eVipStudentNum"
|
|
|
label="试用会员"
|
|
|
|
|
|
- ></el-table-column>
|
|
|
+ ></el-table-column> -->
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
prop="vipStudentDuty"
|
|
|
label="会员占比"
|
|
|
-
|
|
|
>
|
|
|
- <template slot-scope="scope">
|
|
|
- <div>
|
|
|
- {{scope.row.vipStudentDuty}}%
|
|
|
- </div>
|
|
|
- </template>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>{{ scope.row.vipStudentDuty }}%</div>
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
<el-table-column align="center" prop="studentId" label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
<div>
|
|
|
- <el-button type="text" @click="gotoDetail(scope.row)">详情</el-button>
|
|
|
+ <el-button type="text" @click="gotoDetail(scope.row)"
|
|
|
+ >详情</el-button
|
|
|
+ >
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -119,7 +141,7 @@ import load from "@/utils/loading";
|
|
|
import organStudentDetail from "./organStudentDetail";
|
|
|
import { Export } from "@/utils/downLoadFile";
|
|
|
import { queryMemberStudentData } from "../api";
|
|
|
-import qs from 'qs'
|
|
|
+import qs from "qs";
|
|
|
export default {
|
|
|
name: "organDateDetail",
|
|
|
components: { pagination, organStudentDetail },
|
|
@@ -139,6 +161,7 @@ export default {
|
|
|
page_size: [10, 20, 40, 50], // 选择限制显示条数
|
|
|
},
|
|
|
studentVisible: false,
|
|
|
+ noTeacherStudentNum:0,
|
|
|
};
|
|
|
},
|
|
|
//生命周期 - 创建完成(可以访问当前this实例)
|
|
@@ -155,40 +178,49 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
init() {
|
|
|
- this.getList()
|
|
|
+ this.getList();
|
|
|
},
|
|
|
- async getList() {
|
|
|
- try{
|
|
|
- const res = await queryMemberStudentData({organId:this.searchForm.organId,page:this.rules.page,rows:this.rules.limit})
|
|
|
- this.tableList = res.data.rows
|
|
|
- this.rules.total = res.data.total;
|
|
|
- }catch(e){
|
|
|
- console.log(e)
|
|
|
- }
|
|
|
+ async getList() {
|
|
|
+ try {
|
|
|
+ const res = await queryMemberStudentData({
|
|
|
+ organId: this.searchForm.organId,
|
|
|
+ page: this.rules.page,
|
|
|
+ rows: this.rules.limit,
|
|
|
+ });
|
|
|
+ this.tableList = res.data.rows;
|
|
|
+ this.rules.total = res.data.total;
|
|
|
+ this.noTeacherStudentNum = res.data.statInfo.noTeacherStudentNum
|
|
|
+ this.$refs.saveForm.save();
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e);
|
|
|
+ }
|
|
|
},
|
|
|
search() {
|
|
|
this.rules.page = 1;
|
|
|
this.getList();
|
|
|
- this.$refs.saveForm.save();
|
|
|
+
|
|
|
},
|
|
|
onReSet() {},
|
|
|
gotoDetail(row) {
|
|
|
- this.$router.push({name:'studentList',params:{teacherId:row.teacherId}})
|
|
|
+ this.$router.push({
|
|
|
+ name: "studentList",
|
|
|
+ params: { teacherId: row.teacherId },
|
|
|
+ });
|
|
|
// this.studentVisible = true;
|
|
|
},
|
|
|
goback() {
|
|
|
this.$store.dispatch("delVisitedViews", this.$route);
|
|
|
this.$router.push({ path: "/main/main?tabrouter=cloudDate" });
|
|
|
},
|
|
|
- organDateExport(){
|
|
|
- let params = { ...this.searchForm, };
|
|
|
+ organDateExport() {
|
|
|
+ let params = { ...this.searchForm };
|
|
|
Export(
|
|
|
this,
|
|
|
{
|
|
|
url: "/api-web/export/organTeacherMemberStudentData",
|
|
|
fileName: "分部云教练数据详情.xls",
|
|
|
method: "post",
|
|
|
- params:qs.stringify(params)
|
|
|
+ params: qs.stringify(params),
|
|
|
},
|
|
|
"您确定导出分部云教练数据详情列表?"
|
|
|
);
|
|
@@ -197,4 +229,11 @@ export default {
|
|
|
};
|
|
|
</script>
|
|
|
<style lang='scss' scoped>
|
|
|
+.msg {
|
|
|
+ color: red;
|
|
|
+ margin-bottom: 20px;
|
|
|
+ display: block;
|
|
|
+ text-decoration-line: underline;
|
|
|
+ font-size: 14px;
|
|
|
+}
|
|
|
</style>
|