| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996 | 
							- <template>
 
-   <div class="m-container">
 
-     <h2>
 
-       <div class="squrt"></div>
 
-       乐团管理
 
-       <filter-search @reload="reloadSearch" :moreKeys="['organId']" :keys="['searchType']"
 
-         v-if="permission('/teamList/abnormal')" />
 
-     </h2>
 
-     <div class="m-core">
 
-       <div class="btnList" style="margin-bottom: 20px">
 
-         <el-button type="primary" v-if="permission('musicGroup/createGroup')" @click="createNewTeam">申请乐团</el-button>
 
-       </div>
 
-       <save-form :inline="true" @submit="search" @reset="reset" class="topForm" ref="topForm" :model="topForm">
 
-         <el-form-item prop="search">
 
-           <el-input v-model.trim="topForm.search" clearable @keyup.enter.native="(e) => {
 
-             e.target.blur();
 
-             $refs.topForm.save();
 
-             search();
 
-           }
 
-             " placeholder="请输入乐团名称"></el-input>
 
-         </el-form-item>
 
-         <el-form-item prop="orgin">
 
-           <el-select class="multiple" v-model.trim="topForm.orgin" filterable multiple collapse-tags clearable
 
-             placeholder="请选择分部" @change="onBranchChange">
 
-             <el-option v-for="(item, index) in organList" :key="index" :label="item.name" :value="item.id"></el-option>
 
-           </el-select>
 
-         </el-form-item>
 
-         <el-form-item prop="cooperationOrganId">
 
-           <el-select class="multiple" :disabled="!topForm.orgin.length > 0" v-model.trim="topForm.cooperationOrganId"
 
-             filterable clearable placeholder="请选择合作单位">
 
-             <el-option v-for="(item, index) in cooperationList" :key="index" :label="item.name"
 
-               :value="item.id"></el-option>
 
-           </el-select>
 
-         </el-form-item>
 
-         <el-form-item prop="status">
 
-           <el-select class="multiple" v-model.trim="topForm.status" filterable clearable placeholder="请选择乐团状态">
 
-             <el-option v-for="(item, index) in nowStatus" :key="index" :label="item.label"
 
-               :value="item.value"></el-option>
 
-           </el-select>
 
-         </el-form-item>
 
-         <el-form-item prop="educationalTeacherId">
 
-           <remote-search :commit="'setEducations'" v-model="topForm.educationalTeacherId" />
 
-         </el-form-item>
 
-         <el-form-item prop="isStartedCourse">
 
-           <el-select v-model.trim="topForm.isStartedCourse" filterable placeholder="是否开课" clearable>
 
-             <el-option label="是" :value="true"></el-option>
 
-             <el-option label="否" :value="false"></el-option>
 
-           </el-select>
 
-         </el-form-item>
 
-         <el-form-item prop="courseViewType">
 
-           <el-select v-model.trim="topForm.courseViewType" filterable placeholder="请选择收费模式" clearable>
 
-             <el-option :label="item.label" :value="item.value" v-for="item in courseViewTypeList"
 
-               :key="item.value"></el-option>
 
-           </el-select>
 
-         </el-form-item>
 
-         <el-form-item prop="createTimer">
 
-           <el-date-picker v-model.trim="topForm.createTimer" style="width: 420px" type="daterange"
 
-             value-format="yyyy-MM-dd" range-separator="至" start-placeholder="申请开始日期" end-placeholder="申请结束日期"
 
-             :picker-options="{
 
-               firstDayOfWeek: 1,
 
-             }"></el-date-picker>
 
-         </el-form-item>
 
-         <el-form-item prop="billTimer">
 
-           <el-date-picker v-model.trim="topForm.billTimer" style="width: 420px" type="daterange" value-format="yyyy-MM-dd"
 
-             range-separator="至" start-placeholder="成团开始日期" end-placeholder="成团结束日期" :picker-options="{
 
-               firstDayOfWeek: 1,
 
-             }"></el-date-picker>
 
-         </el-form-item>
 
-         <el-form-item>
 
-           <el-button type="danger" native-type="submit">搜索</el-button>
 
-         </el-form-item>
 
-         <el-form-item>
 
-           <el-button type="primary" native-type="reset">重置</el-button>
 
-         </el-form-item>
 
-         <el-form-item>
 
-           <el-button type="primary" v-permission="'export/musicGroup'" @click="onExport">导出</el-button>
 
-         </el-form-item>
 
-       </save-form>
 
-       <div class="tableWrap">
 
-         <el-table style="width: 100%" @selection-change="handleSelectionChange"
 
-           :header-cell-style="{ background: '#EDEEF0', color: '#444' }" :data="tableData">
 
-           <!-- <el-table-column type="selection"
 
-                            :selectable="checkSelectable"
 
-                            width="50">
 
-           </el-table-column> -->
 
-           <el-table-column prop="organName" align="center" label="所属分部"></el-table-column>
 
-           <el-table-column prop="id" width="100" align="center" label="乐团编号">
 
-             <template slot-scope="scope">
 
-               <copy-text>
 
-                 {{ scope.row.id }}
 
-               </copy-text>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column prop="name" width="200px" align="center" label="乐团名称">
 
-             <template slot-scope="scope">
 
-               <p>
 
-                 {{ scope.row.name }}
 
-               </p>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column align="center" width="200px" prop="cooperationOrganName" max-width="274" label="合作单位">
 
-           </el-table-column>
 
-           <el-table-column prop="status" align="center" label="乐团状态">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.status | musicGroupType }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column prop="status" align="center" label="收费模式">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.courseViewType | courseViewType }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column prop="educationalTeacherName" align="center" label="乐团主管">
 
-           </el-table-column>
 
-           <el-table-column prop="groupMemberNum" align="center" label="成团人数">
 
-           </el-table-column>
 
-           <el-table-column prop="payNum" align="center" label="在读人数">
 
-           </el-table-column>
 
-           <el-table-column prop="course" align="center" label="是否开课">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.firstCourseStartTime ? "是" : "否" }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column prop="createTime" width="100px" align="center" label="申请时间">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.createTime | formatTimer }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column align="center" width="100px" label="成团时间">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.billStartDate | formatTimer }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column align="center" width="100px" label="清单状态">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.hasVerifyMusicalList ? "已确认" : "未确认" }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column align="center" width="100px" label="收费标准">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 {{ scope.row.defaultChargeStandard | moneyFormat(true) }}
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-           <el-table-column align="center" width="220px" fixed="right" label="操作">
 
-             <template slot-scope="scope">
 
-               <div>
 
-                 <!-- 审核中 编辑 -->
 
-                 <el-button type="text" v-if="scope.row.status == 'AUDIT' && permission('musicGroup/auditSuccess')
 
-                   " @click="lookTeamDetail(scope.row)">审核</el-button>
 
-                 <el-button type="text" v-if="scope.row.status == 'DRAFT' && permission('musicGroup/update')"
 
-                   @click="lookTeamDetail(scope.row)">编辑</el-button>
 
-                 <!-- 审核失败 编辑 -->
 
-                 <el-button type="text" v-if="scope.row.status == 'AUDIT_FAILED' && permission('musicGroup/update')
 
-                   " @click="lookTeamDetail(scope.row)">编辑</el-button>
 
-                 <el-button type="text" v-if="scope.row.status == 'FEE_AUDIT_FAILED' &&
 
-                   permission('musicGroup/update')
 
-                   " @click="lookTeamDetail(scope.row)">编辑</el-button>
 
-                 <!-- 报名中缴费中筹备中查看乐团 -->
 
-                 <el-button type="text" v-if="(scope.row.status == 'PRE_APPLY' ||
 
-                   scope.row.status == 'PAUSE' ||
 
-                   scope.row.status == 'PROGRESS' ||
 
-                   scope.row.status == 'CANCELED' ||
 
-                   scope.row.status == 'APPLY' ||
 
-                   scope.row.status == 'PAY' ||
 
-                   scope.row.status == 'PREPARE' ||
 
-                   scope.row.status == 'CLOSE' ||
 
-                   scope.row.status == 'FEE_AUDIT') &&
 
-                   permission('/resetTeaming')
 
-                   " @click="lookTeamDetail(scope.row)">详情</el-button>
 
-                 <!-- <el-button
 
-                   v-if="permission('recharge/findAll')"
 
-                   type="text"
 
-                   @click="lookSteam(scope.row)"
 
-                   >乐团日志</el-button
 
-                 > -->
 
-                 <!-- 进行中 关闭 -->
 
-                 <el-button type="text" v-if="scope.row.status == 'PROGRESS' &&
 
-                   permission('musicGroup/closeMusicGroup')
 
-                   " @click="closeTeamDetail(scope.row)">关闭</el-button>
 
-                 <!-- 进行中 查看 -->
 
-                 <!-- <el-button
 
-                   type="text"
 
-                   v-if="
 
-                     scope.row.status == 'PROGRESS' && permission('/teamDetails')
 
-                   "
 
-                   @click="lookTeamDetail(scope.row)"
 
-                   >查看</el-button
 
-                 > -->
 
-                 <el-button type="text" v-if="(scope.row.status == 'DRAFT' ||
 
-                   scope.row.status == 'AUDIT' ||
 
-                   scope.row.status == 'FEE_AUDIT' ||
 
-                   scope.row.status == 'APPLY' ||
 
-                   scope.row.status == 'PAY' ||
 
-                   scope.row.status == 'PRE_APPLY' ||
 
-                   scope.row.status == 'DRAFT') &&
 
-                   permission('musicGroup/cancelMusicGroup')
 
-                   " @click="stopTeam(scope.row)">取消乐团</el-button>
 
-                 <el-button v-if="scope.row.status == 'PREPARE' && permission('musicGroup/action')"
 
-                   @click="startTeam(scope.row)" type="text">确认成团</el-button>
 
-                 <!-- <el-button type="text"
 
-                            v-if="scope.row.status == 'AUDIT' && permission('musicGroup/cancelMusicGroup')"
 
-                            @click="stopTeam(scope.row)">取消乐团</el-button> -->
 
-                 <el-button v-if="(scope.row.status == 'PAUSE' || scope.row.status == 'CLOSE') &&
 
-                   permission('musicGroup/resumeMusicGroup')
 
-                   " @click="onTeamOpeation('start', scope.row)" type="text">启动</el-button>
 
-                 <el-button v-if="scope.row.status == 'PROGRESS' &&
 
-                   permission('musicGroup/pauseMusicGroup')
 
-                   " @click="onTeamOpeation('pause', scope.row)" type="text">暂停</el-button>
 
-                 <el-button v-if="scope.row.status == 'CANCELED' &&
 
-                   permission('musicGroup/deleteMusicGroup')
 
-                   " @click="deteleTeaming(scope.row)" type="text">删除</el-button>
 
-               </div>
 
-             </template>
 
-           </el-table-column>
 
-         </el-table>
 
-         <!-- 分页器 -->
 
-         <!-- 分页 -->
 
-         <pagination sync :total.sync="rules.total" :page.sync="rules.page" :limit.sync="rules.limit"
 
-           :page-sizes="rules.page_size" @pagination="getList" />
 
-       </div>
 
-       <el-dialog :visible.sync="showSteam" width="500px" title="乐团流程">
 
-         <teamSteam :activeId="activeId" />
 
-         <div slot="footer" class="dialog-footer">
 
-           <el-button type="primary" @click="showSteam = false">确 定</el-button>
 
-         </div>
 
-       </el-dialog>
 
-       <el-dialog :visible.sync="closeVisible" title="确认学员" width="800px">
 
-         <closeStudens v-if="closeVisible" :detail="closeDetail" @close="closeVisible = false" @submited="getList" />
 
-       </el-dialog>
 
-     </div>
 
-   </div>
 
- </template>
 
- <script>
 
- import pagination from "@/components/Pagination/index";
 
- import { getTeamList } from "@/api/teamServer";
 
- import qs from "qs";
 
- import cleanDeep from "clean-deep";
 
- import {
 
-   getCooperation,
 
-   cancelMusicGroup,
 
-   startTeam,
 
-   getEmployeeOrgan,
 
-   pauseMusicGroup,
 
-   resumeMusicGroup,
 
-   deleteMusicGroup,
 
- } from "@/api/buildTeam";
 
- import { musicGroupStatus, courseViewTypeList } from "@/utils/searchArray";
 
- import { isObject } from "util";
 
- import { permission } from "@/utils/directivePage";
 
- import teamSteam from "./teamListComponent/teamSteam";
 
- import closeStudens from "../teamBuild/modals/close-studens";
 
- import { getTimes } from "@/utils";
 
- import { Export } from "@/utils/downLoadFile";
 
- import { queryByOrganId } from "@/api/systemManage";
 
- import Tooltip from "@/components/Tooltip/index";
 
- export default {
 
-   name: "teamList",
 
-   data() {
 
-     return {
 
-       courseViewTypeList,
 
-       closeDetail: {},
 
-       closeVisible: false,
 
-       topForm: {
 
-         search: "",
 
-         status: "",
 
-         word: "",
 
-         orgin: [],
 
-         courseViewType: "",
 
-         billTimer: [],
 
-         createTimer: [],
 
-         cooperationOrganId: null,
 
-         isStartedCourse: null,
 
-         educationalTeacherId: null,
 
-       },
 
-       organList: [],
 
-       nowStatus: musicGroupStatus,
 
-       searchLsit: [], // 存储选择后的数组
 
-       tableData: [], // table数据
 
-       rules: {
 
-         // 分页规则
 
-         limit: 10, // 限制显示条数
 
-         page: 1, // 当前页
 
-         total: 0, // 总条数
 
-         page_size: [10, 20, 40, 50], // 选择限制显示条数
 
-       },
 
-       passed: [], // 传递的参数
 
-       showSteam: false,
 
-       activeId: null,
 
-       cooperationList: [],
 
-     };
 
-   },
 
-   components: {
 
-     pagination,
 
-     teamSteam,
 
-     closeStudens,
 
-     Tooltip,
 
-   },
 
-   mounted() {
 
-     const { query } = this.$route;
 
-     if (query.organId) {
 
-       this.topForm.orgin = [];
 
-       this.topForm.orgin.push(query.organId);
 
-       // this.topForm.orgin = query.organId;
 
-     }
 
-     if (query.search) {
 
-       this.topForm.search = query.search;
 
-     }
 
-     if (this.topForm.orgin.length > 0) {
 
-       this.onBranchChange(this.topForm.orgin);
 
-     }
 
-     this.init();
 
-   },
 
-   activated() {
 
-     this.init();
 
-   },
 
-   methods: {
 
-     reloadSearch() {
 
-       this.rules.page = 1;
 
-       this.getList();
 
-     },
 
-     init() {
 
-       localStorage.setItem("resetCode", "1");
 
-       getEmployeeOrgan().then((res) => {
 
-         if (res.code == 200) {
 
-           this.organList = res.data;
 
-         }
 
-       });
 
-       // 获取乐团合作单位(学校)
 
-       // getCooperation().then(res => {
 
-       // })
 
-       this.getList();
 
-     },
 
-     permission(str) {
 
-       return permission(str);
 
-     },
 
-     reset() {
 
-       this.rules.page = 1;
 
-       this.$refs["topForm"].resetFields();
 
-       this.getList();
 
-     },
 
-     search() {
 
-       this.rules.page = 1;
 
-       this.getList();
 
-     },
 
-     getList() {
 
-       let { createTimer, billTimer, ...reset } = this.topForm;
 
-       getTeamList({
 
-         rows: this.rules.limit,
 
-         page: this.rules.page,
 
-         organId: this.topForm.orgin.join(","),
 
-         search: this.topForm.search || null,
 
-         musicGroupStatus: this.topForm.status || null,
 
-         courseViewType: this.topForm.courseViewType,
 
-         cooperationOrganId: this.topForm.cooperationOrganId || null,
 
-         searchType: this.$route.query.searchType,
 
-         isStartedCourse: this.topForm.isStartedCourse,
 
-         educationalTeacherId: this.topForm.educationalTeacherId || null,
 
-         ...getTimes(createTimer, ["createStartDate", "createEndDate"], "YYYY-MM-DD"),
 
-         ...getTimes(billTimer, ["billStartDate", "billEndDate"], "YYYY-MM-DD"),
 
-       }).then((res) => {
 
-         if (res.code == 200) {
 
-           this.tableData = res.data.rows;
 
-           this.rules.total = res.data.total;
 
-         }
 
-       });
 
-     },
 
-     createNewTeam() {
 
-       // this.$store.dispatch("buildIndex", 0);
 
-       // this.$store.dispatch("delVisitedViews", { path: "/business/teamBuild" });
 
-       localStorage.removeItem(`newTeambase`);
 
-       this.$router.push(
 
-         {
 
-           path: "/business/resetTeaming",
 
-           query: { type: "newTeam", team_status: "newTeam" },
 
-         },
 
-         (router) => {
 
-           router.meta.title = "新建乐团";
 
-         }
 
-       );
 
-     },
 
-     resetTeam() {
 
-       // 这里还有勾选的乐团信息
 
-       if (this.passed && this.passed.length <= 0) {
 
-         this.$message.error("请至少选择一个乐团进行调整");
 
-         return;
 
-       }
 
-       this.$router.push({
 
-         path: "/business/teamDraft",
 
-         query: { type: "teamList", teamList: this.passed },
 
-       });
 
-     },
 
-     resetTeaming(row) {
 
-       // 修改进行中的乐团
 
-       localStorage.removeItem(`${row.id}base`);
 
-       localStorage.removeItem(`${row.id}sound`);
 
-       this.$nextTick((res) => {
 
-         this.$router.push({
 
-           path: "/business/resetTeaming",
 
-           query: { type: "resetTeam", id: row.id },
 
-         });
 
-       });
 
-     },
 
-     setSearchList(obj) {
 
-       //
 
-       // 没有相同的key=>添加这个对象
 
-       // 有相同的key => 替换这个对象
 
-       if (obj.type == 1) {
 
-         let flag = false;
 
-         this.searchLsit = this.searchLsit.map((item) => {
 
-           if (item.id == obj.id) {
 
-             item = obj;
 
-             flag = true;
 
-           }
 
-           return item;
 
-         });
 
-         if (!flag) {
 
-           this.searchLsit.push(obj);
 
-         }
 
-       } else {
 
-         let flag = false;
 
-         this.searchLsit = this.searchLsit.map((item) => {
 
-           if (item.key == obj.key) {
 
-             // 多选框的再次点击=> 等于 就是删除
 
-             item = obj;
 
-             flag = true;
 
-           }
 
-           return item;
 
-         });
 
-         if (!flag) {
 
-           this.searchLsit.push(obj);
 
-         }
 
-       }
 
-     },
 
-     closeSearch(item) {
 
-       // 1.删除search里的元素
 
-       if (item.type == 1) {
 
-         for (let some in this.searchLsit) {
 
-           if (this.searchLsit[some].id == item.id) {
 
-             this.searchLsit.splice(some, 1);
 
-           }
 
-         }
 
-         // 2.清空对应元素所对应的的值
 
-         this.topForm[item.id] = "";
 
-       } else {
 
-         for (let i = 0; i < this.topForm[item.id].length; i++) {
 
-           if (this.topForm[item.id][i] == item.value) {
 
-             this.topForm[item.id].splice(i, 1);
 
-           }
 
-         }
 
-         // 处理search
 
-         for (let some in this.searchLsit) {
 
-           if (
 
-             this.searchLsit[some].value == item.value &&
 
-             this.searchLsit[some].id == item.id
 
-           ) {
 
-             this.searchLsit.splice(some, 1);
 
-           }
 
-           // id: 'school', key: this.schools[item].text, value: val, type: 1
 
-         }
 
-       }
 
-     },
 
-     closeTeamDetail(row) {
 
-       this.closeVisible = true;
 
-       this.closeDetail = { ...row };
 
-     },
 
-     onTeamOpeation(type, row) {
 
-       if (type == "start") {
 
-         this.$confirm("是否确定开启乐团?", "提示", {
 
-           confirmButtonText: "确定",
 
-           cancelButtonText: "取消",
 
-           type: "warning",
 
-         })
 
-           .then(() => {
 
-             resumeMusicGroup({ musicGroupId: row.id }).then((res) => {
 
-               if (res.code == 200) {
 
-                 this.$message.success("开启成功");
 
-                 this.getList();
 
-               } else {
 
-                 this.$message.error(res.msg);
 
-               }
 
-             });
 
-           })
 
-           .catch(() => { });
 
-       } else if (type == "pause") {
 
-         this.$confirm("是否确定暂停乐团?", "提示", {
 
-           confirmButtonText: "确定",
 
-           cancelButtonText: "取消",
 
-           type: "warning",
 
-         })
 
-           .then(() => {
 
-             pauseMusicGroup({ musicGroupId: row.id }).then((res) => {
 
-               if (res.code == 200) {
 
-                 this.$message.success("暂停成功");
 
-                 this.getList();
 
-               } else {
 
-                 this.$message.error(res.msg);
 
-               }
 
-             });
 
-           })
 
-           .catch(() => { });
 
-       }
 
-     },
 
-     gotoSearch() {
 
-       this.$refs["topForm"].resetFields();
 
-       this.searchLsit = [];
 
-     },
 
-     lookTeamCourse(row) {
 
-       // 查看课表
 
-       this.$router.push({
 
-         path: "/teamListCourse",
 
-         query: { id: row.id, name: row.name },
 
-       });
 
-     },
 
-     lookTeamDetail(row) {
 
-       localStorage.removeItem(`${row.id}base`);
 
-       localStorage.removeItem(`${row.id}sound`);
 
-       localStorage.removeItem("newTeambase");
 
-       switch (row.status) {
 
-         case "DRAFT": {
 
-           // 编辑中
 
-           this.$store.dispatch("draftIndex", 0);
 
-           // teamBaseInfo
 
-           // this.$router.push(
 
-           //   {
 
-           //     path: "/business/teamDraft",
 
-           //     query: { type: "teamDraft", id: row.id ,clear:'true'},
 
-           //   },
 
-           //   (router) => {
 
-           //     router.meta.title = "编辑乐团";
 
-           //   }
 
-           // );
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: { type: "teamDraft", id: row.id, team_status: row.status },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团编辑中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "AUDIT": {
 
-           // 审核中
 
-           this.$store.dispatch("draftIndex", 0);
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "teamAudit",
 
-                 id: row.id,
 
-                 clear: "true",
 
-                 team_status: row.status,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团审核中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "DRAFT": {
 
-           // 创建缴费中
 
-           // this.$router.push({
 
-           //   path: "/business/createPayment",
 
-           //   query: { type: "DRAFT", id: row.id, name: row.name },
 
-           // });
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "look",
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 team_status: "DRAFT",
 
-                 tabrouter: 3,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "创建缴费中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "FEE_AUDIT": {
 
-           // 费用审核中
 
-           this.$store.dispatch("draftIndex", 0);
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "feeAudit",
 
-                 id: row.id,
 
-                 clear: "true",
 
-                 team_status: row.status,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团费用审核中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "AUDIT_FAILED": {
 
-           // 审核失败
 
-           this.$store.dispatch("draftIndex", 0);
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "teamDraft",
 
-                 id: row.id,
 
-                 clear: "true",
 
-                 team_status: row.status,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团审核失败";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "FEE_AUDIT_FAILED": {
 
-           // 审核失败
 
-           this.$store.dispatch("draftIndex", 3);
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "FEE_AUDIT_FAILED",
 
-                 id: row.id,
 
-                 clear: "true",
 
-                 team_status: row.status,
 
-                 tabrouter: 3,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "费用审核失败";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "PRE_APPLY": {
 
-           // 预报名
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "look",
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 team_status: "PRE_APPLY",
 
-                 tabrouter: 9,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团预报名";
 
-             }
 
-           );
 
-           // this.$router.push({
 
-           //   path: "/business/forecastName",
 
-           //   query: { id: row.id, name: row.name },
 
-           // });
 
-           break;
 
-         }
 
-         case "APPLY": {
 
-           // 报名中
 
-           this.$router.push(
 
-             {
 
-               path: `/business/resetTeaming`,
 
-               query: {
 
-                 status: row.status,
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 team_status: "APPLY",
 
-                 type: "look",
 
-                 tabrouter: 11,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团报名中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "PAY": {
 
-           // 缴费中
 
-           this.$router.push(
 
-             {
 
-               path: `/business/resetTeaming`,
 
-               query: {
 
-                 status: row.status,
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 team_status: "PAY",
 
-                 type: "look",
 
-                 tabrouter: 11,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团缴费中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "PREPARE": {
 
-           // 筹备中 跳转到乐团设置界面
 
-           this.$router.push(
 
-             {
 
-               path: `/business/resetTeaming`,
 
-               query: {
 
-                 type: "look",
 
-                 status: row.status,
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 team_status: row.status,
 
-                 tabrouter: 10,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团筹备中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "PROGRESS": {
 
-           // 进行中
 
-           // 调到乐团详情 teamDetails
 
-           this.$router.push(
 
-             {
 
-               path: `/business/resetTeaming`,
 
-               query: {
 
-                 status: row.status,
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 organId: row.organId,
 
-                 type: "resetTeam",
 
-                 team_status: row.status,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团进行中";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "CANCELED": {
 
-           // 取消
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: {
 
-                 type: "teamCanceled",
 
-                 id: row.id,
 
-                 team_status: row.status,
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "取消乐团";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "PAUSE": {
 
-           // 暂停
 
-           // this.$router.push({
 
-           //   path: `/teamLists`,
 
-           //   query: { status: row.status, id: row.id, name: row.name },
 
-           // });
 
-           this.$router.push(
 
-             {
 
-               path: "/business/resetTeaming",
 
-               query: { type: "resetTeam", id: row.id, team_status: row.status },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团暂停";
 
-             }
 
-           );
 
-           break;
 
-         }
 
-         case "CLOSE": {
 
-           this.$router.push(
 
-             {
 
-               path: `/business/resetTeaming`,
 
-               query: {
 
-                 status: row.status,
 
-                 id: row.id,
 
-                 name: row.name,
 
-                 team_status: "CLOSE",
 
-                 type: "look",
 
-               },
 
-             },
 
-             (router) => {
 
-               router.meta.title = "乐团关闭";
 
-             }
 
-           );
 
-         }
 
-       }
 
-     },
 
-     checkSelectable(row) {
 
-       return row.status == "PROGRESS";
 
-     },
 
-     handleSelectionChange(arr) {
 
-       this.passed = [];
 
-       for (let i in arr) {
 
-         let obj = {};
 
-         obj.id = arr[i].id;
 
-         obj.name = arr[i].name;
 
-         this.passed.push(obj);
 
-       }
 
-     },
 
-     gotodetailList(row) {
 
-       this.$router.push({
 
-         path: "/teamListedList",
 
-         query: { id: row.id },
 
-       });
 
-     },
 
-     //
 
-     lookTeamInfo(row) {
 
-       localStorage.removeItem(`${row.id}base`);
 
-       localStorage.removeItem(`${row.id}sound`);
 
-       this.$router.push({
 
-         path: "/business/teamLookBase",
 
-         query: {
 
-           type: "look",
 
-           id: row.id,
 
-           name: row.name,
 
-           team_status: row.status,
 
-         },
 
-       });
 
-     },
 
-     // setImprovement 设置基础技能班
 
-     gotoImprovement(row) {
 
-       let search = JSON.stringify(this.topForm);
 
-       let rules = JSON.stringify(this.rules);
 
-       this.$router.push({
 
-         path: "/business/setImprovement",
 
-         query: { id: row.id },
 
-       });
 
-     },
 
-     // 停止乐团
 
-     stopTeam(row) {
 
-       this.$confirm("您确定取消申请乐团?", "提示", {
 
-         confirmButtonText: "确定",
 
-         cancelButtonText: "取消",
 
-         type: "warning",
 
-       })
 
-         .then(() => {
 
-           cancelMusicGroup({
 
-             musicGroupId: row.id,
 
-           }).then((res) => {
 
-             if (res.code == 200) {
 
-               this.$message.success("停止成功");
 
-               this.getList();
 
-             }
 
-           });
 
-         })
 
-         .catch(() => { });
 
-     },
 
-     // 确认成团
 
-     startTeam(row) {
 
-       this.$confirm("是否确定成团?", "提示", {
 
-         confirmButtonText: "确定",
 
-         cancelButtonText: "取消",
 
-         type: "warning",
 
-       })
 
-         .then(() => {
 
-           startTeam({ musicGroupId: row.id }).then((res) => {
 
-             if (res.code == 200) {
 
-               this.$message.success("开启乐团成功");
 
-               this.getList();
 
-             }
 
-           });
 
-         })
 
-         .catch(() => { });
 
-     },
 
-     deteleTeaming(row) {
 
-       this.$confirm("您确定删除该乐团?", "提示", {
 
-         confirmButtonText: "确定",
 
-         cancelButtonText: "取消",
 
-         type: "warning",
 
-       })
 
-         .then(() => {
 
-           deleteMusicGroup({
 
-             musicGroupId: row.id,
 
-           }).then((res) => {
 
-             if (res.code == 200) {
 
-               this.$message.success("删除成功");
 
-               this.getList();
 
-             }
 
-           });
 
-         })
 
-         .catch(() => { });
 
-     },
 
-     lookSteam(row) {
 
-       this.activeId = row.id;
 
-       this.showSteam = true;
 
-     },
 
-     gotoSigin(row) {
 
-       this.$router.push(
 
-         {
 
-           path: `/business/remedy`,
 
-           query: { status: row.status, id: row.id, name: row.name },
 
-         },
 
-         (router) => {
 
-           router.meta.title = "报名详情";
 
-         }
 
-       );
 
-     },
 
-     async onExport() {
 
-       let { createTimer, billTimer, ...reset } = this.topForm;
 
-       let obj = {
 
-         ...reset,
 
-         organId: this.topForm.orgin.join(",") || null,
 
-         ...getTimes(createTimer, ["createStartDate", "createEndDate"], "YYYY-MM-DD"),
 
-         searchType: this.$route.query.searchType,
 
-         ...getTimes(billTimer, ["billStartDate", "billEndDate"], "YYYY-MM-DD"),
 
-       };
 
-       await Export(
 
-         this,
 
-         {
 
-           url: "/api-web/export/musicGroup",
 
-           fileName: "乐团列表.xls",
 
-           method: "post",
 
-           params: qs.stringify(cleanDeep(obj)),
 
-         },
 
-         "您确定导出乐团列表?"
 
-       );
 
-     },
 
-     async onBranchChange(value) {
 
-       if (!value) {
 
-         this.cooperationList = [];
 
-         this.topForm.cooperationOrganId = null;
 
-         return;
 
-       }
 
-       // 合作单位
 
-       await queryByOrganId({ organId: value.join(",") }).then((res) => {
 
-         if (res.code == 200) {
 
-           this.cooperationList = res.data;
 
-           this.topForm.cooperationOrganId = null;
 
-         }
 
-       });
 
-     },
 
-   },
 
-   watch: {
 
-     showSteam(val) {
 
-       if (!val) {
 
-         this.activeId = null;
 
-       }
 
-     },
 
-   },
 
- };
 
- </script>
 
- <style lang="scss" scoped>
 
- ::v-deep .el-button+.el-button {
 
-   margin-left: 0px;
 
- }
 
- .select {
 
-   font-size: 14px;
 
- }
 
- .btnList {
 
-   display: flex;
 
-   flex-direction: row;
 
-   justify-content: flex-start;
 
-   align-items: center;
 
-   .exportBtn {
 
-     margin-left: 15px;
 
-   }
 
- }
 
- </style>
 
 
  |