| | |
| | | <el-tab-pane label="全部" name="all" /> |
| | | <el-tab-pane label="已停用" name="deactivated" /> |
| | | </el-tabs> |
| | | <div style="display: flex; flex-direction: row-reverse"> |
| | | <div style="display: flex;"> |
| | | <div style="width: 300px"> |
| | | <el-input placeholder="按班级名称搜索" v-model="data.keyword" class="input-with-select" size="small"> |
| | | <el-button slot="append" icon="el-icon-search" @click="fetchData"></el-button> |
| | | <el-input |
| | | placeholder="按班级名称搜索" |
| | | v-model="data.keyword" |
| | | class="input-with-select" |
| | | size="small" |
| | | > |
| | | <el-button |
| | | slot="append" |
| | | icon="el-icon-search" |
| | | @click="fetchData" |
| | | ></el-button> |
| | | </el-input> |
| | | </div> |
| | | </div> |
| | | <div style="height: calc(100vh - 248px)"> |
| | | <el-table v-loading="listLoading" :data="list" element-loading-text="Loading" fit v-if="activeName == 'all'" |
| | | height="100%"> |
| | | <el-table-column label="班级名称"> |
| | | <template slot-scope="scope"> |
| | | <el-link type="primary" :underline="false">{{ |
| | | scope.row.team.name |
| | | }}</el-link> |
| | | </template> |
| | | <div style="height: calc(100vh - 208px)"> |
| | | <el-table |
| | | v-loading="listLoading" |
| | | :data="list" |
| | | element-loading-text="Loading" |
| | | fit |
| | | v-if="activeName == 'all'" |
| | | height="100%" |
| | | > |
| | | <el-table-column label="班级名称" prop="team.name"> </el-table-column> |
| | | <el-table-column label="班级人数" width="200" prop="playerCount"> |
| | | </el-table-column> |
| | | <el-table-column label="班级人数" width="200"> |
| | | <template slot-scope="scope">{{ scope.row.playerCount }} 人</template> |
| | | <el-table-column label="课包" width="200" prop="voucher.name"> |
| | | </el-table-column> |
| | | <el-table-column label="课包/会员卡" width="200"> |
| | | <template slot-scope="scope">{{ |
| | | scope.row.team.voucher.name |
| | | }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="教师" width=""> |
| | | <template slot-scope="scope">{{ |
| | | concatenateArray(scope.row.team.sessionStaffs) |
| | | }}</template> |
| | | <el-table-column label="教师" width="" prop="sessionStaffs"> |
| | | </el-table-column> |
| | | <el-table-column label="操作" width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" @click="handleExport(scope.row)"> |
| | | <el-link |
| | | @click="handleExport(scope.row)" |
| | | type="primary" |
| | | :underline="false" |
| | | >导出</el-link |
| | | > |
| | | <!-- <el-button type="text" @click="handleExport(scope.row)"> |
| | | 导出 |
| | | </el-button> |
| | | </el-button> --> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <el-table v-loading="listLoading" :data="list" element-loading-text="Loading" fit height="100%" v-else> |
| | | <el-table-column label="班级名称"> |
| | | <template slot-scope="scope">{{ scope.row.name }} </template> |
| | | </el-table-column> |
| | | <el-table-column label="停用时间"> |
| | | <template slot-scope="scope">{{ scope.row.modifyTime }} </template> |
| | | </el-table-column> |
| | | <el-table |
| | | v-loading="listLoading" |
| | | :data="list" |
| | | element-loading-text="Loading" |
| | | fit |
| | | height="100%" |
| | | v-else |
| | | > |
| | | <el-table-column label="班级名称" prop="name"> </el-table-column> |
| | | <el-table-column label="停用时间" prop="modifyTime"> </el-table-column> |
| | | <el-table-column label="操作" width="200"> |
| | | <template slot-scope=""> |
| | | <el-link type="primary" :underline="false">恢复</el-link> |
| | |
| | | </el-table> |
| | | </div> |
| | | <div> |
| | | <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" |
| | | :current-page="data.pageIn.index + 1" :page-sizes="[10, 20, 30, 40]" :page-size="data.pageIn.size" |
| | | layout="total, sizes, prev, pager, next, jumper" :total="total"> |
| | | <el-pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="data.pageIn.index + 1" |
| | | :page-sizes="[10, 20, 30, 40]" |
| | | :page-size="data.pageIn.size" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="total" |
| | | > |
| | | </el-pagination> |
| | | </div> |
| | | <el-dialog title="导出" :visible.sync="dialogVisible" width="50%"> |
| | | <el-form ref="form" :model="form" label-width="180px"> |
| | | <el-form-item label="日期范围"> |
| | | <el-date-picker v-model="form.dateRange" type="daterange" range-separator="至" start-placeholder="开始日期" |
| | | end-placeholder="结束日期" value-format="yyyy-MM-dd"></el-date-picker> |
| | | <el-date-picker |
| | | v-model="form.dateRange" |
| | | type="daterange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | value-format="yyyy-MM-dd" |
| | | ></el-date-picker> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | |
| | | activeName: "all", |
| | | total: 0, |
| | | data: { |
| | | staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, |
| | | staffId: JSON.parse(localStorage.getItem("selectStaff")).id, |
| | | keyword: "", |
| | | pageIn: { |
| | | //可选,如果是分页查询,需要加上。 |
| | |
| | | this.dialogVisible = true; |
| | | }, |
| | | confirmExport() { |
| | | this.download('exportSignIn?teamId=' + this.form.teamId + '&startTime=' + this.form.dateRange[0] + '&endTime=' + this.form.dateRange[1], { |
| | | }, `${this.form.name}上课签到表.xlsx`) |
| | | this.download( |
| | | "exportSignIn?teamId=" + |
| | | this.form.teamId + |
| | | "&startTime=" + |
| | | this.form.dateRange[0] + |
| | | "&endTime=" + |
| | | this.form.dateRange[1], |
| | | {}, |
| | | `${this.form.name}上课签到表.xlsx` |
| | | ); |
| | | }, |
| | | handleSizeChange(val) { |
| | | this.data.pageIn.size = val; |
| | |
| | | this.listLoading = true; |
| | | let data = { |
| | | itemType: "TEAM", |
| | | staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, |
| | | staffId: JSON.parse(localStorage.getItem("selectStaff")).id, |
| | | keyword: this.data.keyword, |
| | | pageIn: { ...this.data.pageIn }, |
| | | }; |