|
@@ -1,7 +1,13 @@
|
|
|
<template>
|
|
|
<div class="m-container">
|
|
|
<h2>
|
|
|
- <div class="squrt"></div>退团申请 <filter-search @reload="reloadSearch" :keys="['visitFlag']" :moreKeys="['organId']"/>
|
|
|
+ <div class="squrt"></div>
|
|
|
+ 退团申请
|
|
|
+ <filter-search
|
|
|
+ @reload="reloadSearch"
|
|
|
+ :keys="['visitFlag']"
|
|
|
+ :moreKeys="['organId']"
|
|
|
+ />
|
|
|
</h2>
|
|
|
<div class="m-core">
|
|
|
<save-form
|
|
@@ -19,7 +25,11 @@
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
- <el-select v-model="searchForm.status" clearable placeholder="请选择状态">
|
|
|
+ <el-select
|
|
|
+ v-model="searchForm.status"
|
|
|
+ clearable
|
|
|
+ placeholder="请选择状态"
|
|
|
+ >
|
|
|
<el-option
|
|
|
v-for="(item, key) in withdrawalStatus"
|
|
|
:key="key"
|
|
@@ -31,7 +41,12 @@
|
|
|
<el-form-item>
|
|
|
<el-button native-type="submit" type="danger">搜索</el-button>
|
|
|
<el-button native-type="reset" type="primary">重置</el-button>
|
|
|
- <el-button @click="onExport" type="primary" v-permission="'export/musicGroupQuit'">导出</el-button>
|
|
|
+ <el-button
|
|
|
+ @click="onExport"
|
|
|
+ type="primary"
|
|
|
+ v-permission="'export/musicGroupQuit'"
|
|
|
+ >导出</el-button
|
|
|
+ >
|
|
|
</el-form-item>
|
|
|
</save-form>
|
|
|
<el-table
|
|
@@ -39,23 +54,46 @@
|
|
|
style="width: 100%"
|
|
|
:header-cell-style="{ background: '#EDEEF0', color: '#444' }"
|
|
|
>
|
|
|
- <el-table-column
|
|
|
- prop="userId"
|
|
|
- label="学员编号"
|
|
|
- >
|
|
|
- <copy-text slot-scope="scope">{{scope.row.userId}}</copy-text>
|
|
|
+ <el-table-column prop="userId" label="学员编号">
|
|
|
+ <copy-text slot-scope="scope">{{ scope.row.userId }}</copy-text>
|
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="userId"
|
|
|
- label="学员姓名"
|
|
|
- >
|
|
|
- <copy-text slot-scope="scope">{{scope.row.user.username}}</copy-text>
|
|
|
+ <el-table-column prop="userId" label="学员姓名">
|
|
|
+ <copy-text slot-scope="scope">{{
|
|
|
+ scope.row.user.username
|
|
|
+ }}</copy-text>
|
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="musicGroupId"
|
|
|
- label="所属乐团"
|
|
|
- >
|
|
|
- <copy-text slot-scope="scope">{{scope.row.musicGroup.name}}</copy-text>
|
|
|
+ <el-table-column prop="musicGroupId" label="所属乐团">
|
|
|
+ <copy-text slot-scope="scope">{{
|
|
|
+ scope.row.musicGroup.name
|
|
|
+ }}</copy-text>
|
|
|
+ </el-table-column>
|
|
|
+
|
|
|
+ <el-table-column prop="createTime" label="申请时间">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>
|
|
|
+ {{ scope.row.createTime|dateForMinFormat}}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="createTime" label="申请人"></el-table-column>
|
|
|
+ <el-table-column prop="createTime" label="退费金额">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>
|
|
|
+ <p v-if="scope.row.status=='PROCESSING'">
|
|
|
+ --
|
|
|
+ </p>
|
|
|
+ <p v-else>
|
|
|
+ {{ scope.row.returnTotalFee|moneyFormat}}
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="userComment" label="退团原因">
|
|
|
+ <overflow-text
|
|
|
+ width="100%"
|
|
|
+ slot-scope="scope"
|
|
|
+ :text="scope.row.userComment"
|
|
|
+ ></overflow-text>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="状态">
|
|
|
<template slot-scope="scope">
|
|
@@ -63,21 +101,15 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="createTime"
|
|
|
- label="申请时间"
|
|
|
- ></el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="userComment"
|
|
|
- label="退团原因"
|
|
|
- >
|
|
|
- <overflow-text width="100%" slot-scope="scope" :text="scope.row.userComment"></overflow-text>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
align="center"
|
|
|
fixed="right"
|
|
|
width="200px;"
|
|
|
label="操作"
|
|
|
- v-if="permission('musicGroupQuit/quitMusicGroup/quit') || permission('musicGroupQuit/quitMusicGroup/quit-only') || permission('visit/add/tuituanliebiao')"
|
|
|
+ v-if="
|
|
|
+ permission('musicGroupQuit/quitMusicGroup/quit') ||
|
|
|
+ permission('musicGroupQuit/quitMusicGroup/quit-only') ||
|
|
|
+ permission('visit/add/tuituanliebiao')
|
|
|
+ "
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
<el-button
|
|
@@ -85,7 +117,8 @@
|
|
|
v-if="permission('musicGroupQuit/quitMusicGroup/quit')"
|
|
|
:disabled="scope.row.status != 'PROCESSING'"
|
|
|
@click="quieTeamMask(scope.row)"
|
|
|
- >审核</el-button>
|
|
|
+ >审核</el-button
|
|
|
+ >
|
|
|
<!-- <el-button
|
|
|
type="text"
|
|
|
v-if="permission('musicGroupQuit/quitMusicGroup/quit-only')"
|
|
@@ -96,7 +129,8 @@
|
|
|
type="text"
|
|
|
v-if="permission('visit/add/tuituanliebiao')"
|
|
|
@click="addVisit(scope.row)"
|
|
|
- >新增回访</el-button>
|
|
|
+ >新增回访</el-button
|
|
|
+ >
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -109,13 +143,39 @@
|
|
|
@pagination="FetchList"
|
|
|
/>
|
|
|
</div>
|
|
|
- <el-dialog title="审核" width="640px" :visible.sync="quitVisible">
|
|
|
+ <el-dialog title="审核" width="700px" :visible.sync="quitVisible">
|
|
|
<quitModal
|
|
|
v-if="quitVisible && detail"
|
|
|
- :detail="detail"
|
|
|
+ :activeRow="detail"
|
|
|
+ :quitForm="quitForm"
|
|
|
@close="quitVisible = false"
|
|
|
@submited="FetchList"
|
|
|
/>
|
|
|
+ <span slot="footer" class="dialog-footer question">
|
|
|
+ <div>
|
|
|
+ <el-popover placement="right" width="500" trigger="click">
|
|
|
+ <div class="popoverWrap">
|
|
|
+ <p>乐团退团退费规则:</p>
|
|
|
+ <p>退还乐器练习云教练费用:报名缴费时缴费的乐器练习云教练费用</p>
|
|
|
+ <p>退还课程费用:缴费总额-已结束课时单价之和</p>
|
|
|
+ <p>退还乐器费用:报名缴费时缴纳的乐器费用(团购、租金)</p>
|
|
|
+ <p>退还教辅费用:报名缴费时缴费的教辅费用</p>
|
|
|
+ <p>退还乐保费用:报名缴费时缴费的乐保费用</p>
|
|
|
+ </div>
|
|
|
+ <el-button
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-question"
|
|
|
+ slot="reference"
|
|
|
+ style="color: red"
|
|
|
+ >退团退费说明</el-button
|
|
|
+ >
|
|
|
+ </el-popover>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <el-button @click="quitVisible = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="submitInfo">确 定</el-button>
|
|
|
+ </div>
|
|
|
+ </span>
|
|
|
</el-dialog>
|
|
|
<!-- <el-dialog title="退团" width="500px" :visible.sync="quitOnlyVisible">
|
|
|
<quitOnlyModal
|
|
@@ -137,18 +197,18 @@
|
|
|
</template>
|
|
|
<script>
|
|
|
import pagination from "@/components/Pagination/index";
|
|
|
-import { permission } from '@/utils/directivePage'
|
|
|
-import quitModal from './modals/quit'
|
|
|
-import quitOnlyModal from './modals/quitOnly'
|
|
|
-import visit from './modals/visit'
|
|
|
-import { Export } from '@/utils/downLoadFile'
|
|
|
-import qs from 'qs'
|
|
|
-import { musicGroupQuitQeryPage } from './api'
|
|
|
-import { withdrawalStatus } from '@/constant'
|
|
|
+import { permission } from "@/utils/directivePage";
|
|
|
+import quitModal from "@/views/teamDetail/components/modals/quite-team";
|
|
|
+import quitOnlyModal from "./modals/quitOnly";
|
|
|
+import visit from "./modals/visit";
|
|
|
+import { Export } from "@/utils/downLoadFile";
|
|
|
+import qs from "qs";
|
|
|
+import { musicGroupQuitQeryPage } from "./api";
|
|
|
+import { withdrawalStatus } from "@/constant";
|
|
|
const initSearch = {
|
|
|
- search: '',
|
|
|
- status: null
|
|
|
-}
|
|
|
+ search: "",
|
|
|
+ status: null,
|
|
|
+};
|
|
|
export default {
|
|
|
components: { pagination, quitModal, quitOnlyModal, visit },
|
|
|
data() {
|
|
@@ -160,7 +220,7 @@ export default {
|
|
|
detail: null,
|
|
|
list: [],
|
|
|
searchForm: {
|
|
|
- ...initSearch
|
|
|
+ ...initSearch,
|
|
|
},
|
|
|
rules: {
|
|
|
// 分页规则
|
|
@@ -169,10 +229,22 @@ export default {
|
|
|
total: 0, // 总条数
|
|
|
page_size: [10, 20, 40, 50], // 选择限制显示条数
|
|
|
},
|
|
|
- }
|
|
|
+ quitForm: {
|
|
|
+ // 退团信息确认
|
|
|
+ isRefundCourseFee: null,
|
|
|
+ isRefundInstrumentFee: null,
|
|
|
+ isRefundTeachingAssistantsFee: null,
|
|
|
+ isMaintenanceFee: null,
|
|
|
+ cloudTeacherAmount: null,
|
|
|
+ isCloudTeacherAmount: null,
|
|
|
+ isRefundMemberFee: null,
|
|
|
+ maintenanceFee: 0,
|
|
|
+ reason: "",
|
|
|
+ },
|
|
|
+ };
|
|
|
},
|
|
|
mounted() {
|
|
|
- this.FetchList()
|
|
|
+ this.FetchList();
|
|
|
},
|
|
|
methods: {
|
|
|
permission,
|
|
@@ -181,24 +253,24 @@ export default {
|
|
|
this.FetchList();
|
|
|
},
|
|
|
submit() {
|
|
|
- this.rules.page = 1
|
|
|
- this.FetchList()
|
|
|
+ this.rules.page = 1;
|
|
|
+ this.FetchList();
|
|
|
},
|
|
|
onReSet() {
|
|
|
- this.searchForm = {...initSearch}
|
|
|
+ this.searchForm = { ...initSearch };
|
|
|
this.submit();
|
|
|
},
|
|
|
quieTeamMask(row) {
|
|
|
- this.quitVisible = true
|
|
|
- this.detail = row
|
|
|
+ this.quitVisible = true;
|
|
|
+ this.detail = row;
|
|
|
},
|
|
|
quieTeam(row) {
|
|
|
- this.quitOnlyVisible = true
|
|
|
- this.detail = row
|
|
|
+ this.quitOnlyVisible = true;
|
|
|
+ this.detail = row;
|
|
|
},
|
|
|
addVisit(row) {
|
|
|
- this.visitVisible = true
|
|
|
- this.detail = row
|
|
|
+ this.visitVisible = true;
|
|
|
+ this.detail = row;
|
|
|
},
|
|
|
async FetchList() {
|
|
|
try {
|
|
@@ -207,20 +279,28 @@ export default {
|
|
|
rows: this.rules.limit,
|
|
|
visitFlag: this.$route.query.visitFlag,
|
|
|
...this.searchForm,
|
|
|
- })
|
|
|
+ });
|
|
|
this.rules.total = res.data.total;
|
|
|
- this.list = res.data.rows
|
|
|
+ this.list = res.data.rows;
|
|
|
} catch (error) {}
|
|
|
},
|
|
|
onExport() {
|
|
|
- const { ...rest} = this.searchForm
|
|
|
- Export(this, {
|
|
|
- url: '/api-web/export/musicGroupQuit',
|
|
|
- fileName: '退团申请.xls',
|
|
|
- method: 'post',
|
|
|
- params: qs.stringify({ visitFlag: this.$route.query.visitFlag, ...rest })
|
|
|
- }, '您确定导出退团申请列表?')
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
+ const { ...rest } = this.searchForm;
|
|
|
+ Export(
|
|
|
+ this,
|
|
|
+ {
|
|
|
+ url: "/api-web/export/musicGroupQuit",
|
|
|
+ fileName: "退团申请.xls",
|
|
|
+ method: "post",
|
|
|
+ params: qs.stringify({
|
|
|
+ visitFlag: this.$route.query.visitFlag,
|
|
|
+ ...rest,
|
|
|
+ }),
|
|
|
+ },
|
|
|
+ "您确定导出退团申请列表?"
|
|
|
+ );
|
|
|
+ },
|
|
|
+ submitInfo() {},
|
|
|
+ },
|
|
|
+};
|
|
|
</script>
|