|
@@ -17,16 +17,16 @@
|
|
|
v-model.trim="searchForm.search"
|
|
|
clearable
|
|
|
@keyup.enter.native="search"
|
|
|
- placeholder="乐团名称、编号"
|
|
|
+ placeholder="乐团/学员名称、编号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item>
|
|
|
+ <!-- <el-form-item>
|
|
|
<el-input
|
|
|
v-model.trim="searchForm.search"
|
|
|
@keyup.enter.native="search"
|
|
|
placeholder="学员姓名、编号"
|
|
|
></el-input>
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item> -->
|
|
|
<el-form-item prop="organId">
|
|
|
<el-select
|
|
|
class="multiple"
|
|
@@ -44,18 +44,18 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item prop="isActive">
|
|
|
+ <el-form-item prop="hasMember">
|
|
|
<el-select
|
|
|
class="multiple"
|
|
|
- v-model.trim="searchForm.isActive"
|
|
|
+ v-model.trim="searchForm.hasMember"
|
|
|
clearable
|
|
|
placeholder="会员是否过期"
|
|
|
>
|
|
|
- <el-option label="是" value="true"></el-option>
|
|
|
- <el-option label="否" value="false"></el-option>
|
|
|
+ <el-option label="已过期" value="0"></el-option>
|
|
|
+ <el-option label="即将过期" value="1"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="isActive">
|
|
|
+ <!-- <el-form-item prop="isActive">
|
|
|
<el-select
|
|
|
class="multiple"
|
|
|
v-model.trim="searchForm.isActive"
|
|
@@ -65,7 +65,7 @@
|
|
|
<el-option label="是" value="true"></el-option>
|
|
|
<el-option label="否" value="false"></el-option>
|
|
|
</el-select>
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item> -->
|
|
|
<el-form-item>
|
|
|
<el-button native-type="submit" type="primary">搜索</el-button>
|
|
|
<el-button native-type="reset" type="danger">重置</el-button>
|
|
@@ -79,51 +79,55 @@
|
|
|
>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
- prop="studentId"
|
|
|
+ prop="userId"
|
|
|
label="学员编号"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
- prop="studentId"
|
|
|
+ prop="username"
|
|
|
label="学员姓名"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
- prop="studentId"
|
|
|
+ prop="organName"
|
|
|
label="所属分部"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
- prop="studentId"
|
|
|
+ prop="musicGroupName"
|
|
|
label="所属乐团"
|
|
|
></el-table-column>
|
|
|
+ <el-table-column align="center" prop="studentId" label="会员是否过期">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>
|
|
|
+ {{ scope.row.memberDay > 0 ? "否" : "是" }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
- prop="studentId"
|
|
|
- label="会员是否过期"
|
|
|
- ></el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="center"
|
|
|
- prop="studentId"
|
|
|
+ prop="memberDay"
|
|
|
label="会员有效期剩余天数"
|
|
|
></el-table-column>
|
|
|
<el-table-column align="center" prop="studentId" label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
<div>
|
|
|
- <auth
|
|
|
- :auths="'musicGroupQuit/directQuitMusicGroup4463'"
|
|
|
- >
|
|
|
- <el-button type="text" @click="quitTeam(scope.row)"
|
|
|
- >退团退费</el-button
|
|
|
- >
|
|
|
- </auth>
|
|
|
- <auth
|
|
|
- :auths="'musicGroupQuit/directQuitMusicGroup4462'"
|
|
|
- >
|
|
|
- <el-button type="text" @click="quieTeams(scope.row)"
|
|
|
- >退团</el-button
|
|
|
- >
|
|
|
- </auth>
|
|
|
+ <!-- addVisit -->
|
|
|
+ <auth :auths="'visit/add/4465'">
|
|
|
+ <el-button type="text" @click="addVisit(scope.row)"
|
|
|
+ >新增回访</el-button
|
|
|
+ >
|
|
|
+ </auth>
|
|
|
+ <auth :auths="'musicGroupQuit/directQuitMusicGroup4463'">
|
|
|
+ <el-button type="text" @click="quitTeam(scope.row)"
|
|
|
+ >退团退费</el-button
|
|
|
+ >
|
|
|
+ </auth>
|
|
|
+ <auth :auths="'musicGroupQuit/directQuitMusicGroup4462'">
|
|
|
+ <el-button type="text" @click="quieTeams(scope.row)"
|
|
|
+ >退团</el-button
|
|
|
+ >
|
|
|
+ </auth>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -138,9 +142,9 @@
|
|
|
/>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <!-- 退团弹窗 -->
|
|
|
+ <!-- 退团弹窗 -->
|
|
|
<el-dialog title="退团信息确认" width="640px" :visible.sync="quitVisible">
|
|
|
- <quiteTeam :quitForm="quitForm" :activeRow="activeRow" ref="quitForm"/>
|
|
|
+ <quiteTeam :quitForm="quitForm" :activeRow="activeRow" ref="quitForm" />
|
|
|
<span slot="footer" class="dialog-footer question">
|
|
|
<div>
|
|
|
<el-popover placement="right" width="500" trigger="click">
|
|
@@ -167,6 +171,22 @@
|
|
|
</div>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
+ <!-- 新增回访 -->
|
|
|
+ <el-dialog
|
|
|
+ title="新增回访"
|
|
|
+ width="500px"
|
|
|
+ :visible.sync="visitVisible"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <visit
|
|
|
+ v-if="visitVisible && activeRow"
|
|
|
+ :detail="activeRow"
|
|
|
+ :username="activeRow.username"
|
|
|
+ @close="visitVisible = false"
|
|
|
+ @submited="getList"
|
|
|
+ :useVisitType="['其它', '会员续费']"
|
|
|
+ />
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -174,13 +194,13 @@
|
|
|
import axios from "axios";
|
|
|
import { getToken } from "@/utils/auth";
|
|
|
import pagination from "@/components/Pagination/index";
|
|
|
-import quiteTeam from "@/views/teamDetail/components/modals/quite-team"
|
|
|
-import {
|
|
|
- StudentQuit,
|
|
|
-} from "@/api/buildTeam";
|
|
|
+import quiteTeam from "@/views/teamDetail/components/modals/quite-team";
|
|
|
+import { StudentQuit } from "@/api/buildTeam";
|
|
|
import load from "@/utils/loading";
|
|
|
+import { getMusicMemberList } from "./api";
|
|
|
+import visit from "@/views/withdrawal-application/modals/visit";
|
|
|
export default {
|
|
|
- components: { pagination,quiteTeam },
|
|
|
+ components: { pagination, quiteTeam,visit },
|
|
|
data() {
|
|
|
return {
|
|
|
searchForm: {
|
|
@@ -207,8 +227,9 @@ export default {
|
|
|
maintenanceFee: 0,
|
|
|
reason: "",
|
|
|
},
|
|
|
- quitVisible:false,
|
|
|
- activeRow:null,
|
|
|
+ quitVisible: false,
|
|
|
+ activeRow: null,
|
|
|
+ visitVisible:false
|
|
|
};
|
|
|
},
|
|
|
//生命周期 - 创建完成(可以访问当前this实例)
|
|
@@ -220,8 +241,25 @@ export default {
|
|
|
this.init();
|
|
|
},
|
|
|
methods: {
|
|
|
- init() {},
|
|
|
- getList() {},
|
|
|
+ init() {
|
|
|
+ if(this.$route.query.hasMember){
|
|
|
+ this.$set(this.searchForm,'hasMember',this.$route.query.hasMember)
|
|
|
+ }
|
|
|
+ this.getList();
|
|
|
+ },
|
|
|
+ async getList() {
|
|
|
+ try {
|
|
|
+ const res = await getMusicMemberList({
|
|
|
+ ...this.searchForm,
|
|
|
+ page: this.rules.page,
|
|
|
+ rows: this.rules.limit,
|
|
|
+ });
|
|
|
+ this.tableList = res.data.rows;
|
|
|
+ this.rules.total = res.data.total;
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e);
|
|
|
+ }
|
|
|
+ },
|
|
|
search() {
|
|
|
this.rules.page = 1;
|
|
|
this.getList();
|
|
@@ -323,6 +361,10 @@ export default {
|
|
|
|
|
|
// row.typeVisible = false;
|
|
|
},
|
|
|
+ addVisit(row) {
|
|
|
+ this.visitVisible = true;
|
|
|
+ this.activeRow = row;
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|