| | |
| | | </el-tabs> |
| | | <div style="display: flex; justify-content: space-between"> |
| | | <!-- <el-button type="primary" size="small" @click="showCreate">新建学员</el-button> --> |
| | | <el-button type="primary" size="small">导出学员</el-button> |
| | | <div> |
| | | <el-button type="primary" size="small" @click="handleExport" |
| | | >导出学员</el-button |
| | | > |
| | | <el-button type="primary" size="small" @click="handleImport" |
| | | >导入学员</el-button |
| | | > |
| | | </div> |
| | | <div style="width: 500px"> |
| | | <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="至" start-placeholder="开始日期" |
| | | end-placeholder="结束日期" value-format="yyyy-MM-dd" style="margin-right: 10px"> |
| | | </el-date-picker> |
| | | <el-button type="primary" @click="handleExport2">导出课包</el-button> --> |
| | | </div> |
| | | <div style="width: 300px"> |
| | | <el-input |
| | | placeholder="按姓名搜索" |
| | |
| | | <el-table-column label="姓名" prop=""> |
| | | <template slot-scope="scope"> |
| | | <el-link |
| | | type="primary" |
| | | :underline="false" |
| | | @click="goDetails(scope.row)" |
| | | >{{ scope.row.name }}</el-link |
| | | > |
| | | type="primary" |
| | | :underline="false" |
| | | @click="goDetails(scope.row)" |
| | | >{{ scope.row.name }}</el-link |
| | | > |
| | | <!-- <el-link type="primary" :underline="false">{{ |
| | | scope.row.name |
| | | }}</el-link> --> |
| | |
| | | > |
| | | </el-pagination> |
| | | </div> |
| | | <StudentCreate ref="studentCreate" /> |
| | | <el-dialog :visible.sync="dialogVisible" width="560px" title="导入学员"> |
| | | <UploadStudent |
| | | v-if="dialogVisible" |
| | | @load-success="reloadData" |
| | | ></UploadStudent> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getData, getRenew, getExpire, getDeleted } from "@/api/student"; |
| | | import StudentCreate from "./components/create.vue"; |
| | | import UploadStudent from "./components/upload-student.vue"; |
| | | |
| | | export default { |
| | | filters: { |
| | |
| | | }, |
| | | }, |
| | | components: { |
| | | StudentCreate, |
| | | UploadStudent, |
| | | }, |
| | | data() { |
| | | return { |
| | | dateRange: [], |
| | | list: null, |
| | | listLoading: true, |
| | | activeName: "all", |
| | | total: 0, |
| | | data: { |
| | | staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, |
| | | staffId: JSON.parse(localStorage.getItem("selectStaff")).id, |
| | | keyword: "", |
| | | pageIn: { |
| | | //可选,如果是分页查询,需要加上。 |
| | |
| | | }, |
| | | }, |
| | | }, |
| | | dialogVisible: false, |
| | | }; |
| | | }, |
| | | created() { |
| | | this.fetchData(); |
| | | // 获取地址栏code |
| | | // let code = this.$route.query.code; |
| | | // if (code) { |
| | | // if (localStorage.getItem("code")) { |
| | | // if (code !== localStorage.getItem("code")) { |
| | | // this.getUserDate(code); |
| | | // } |
| | | // } else { |
| | | // this.getUserDate(code); |
| | | // } |
| | | // } else { |
| | | // if (!localStorage.getItem("user")) { |
| | | // this.$router.push("/login"); |
| | | // } |
| | | // } |
| | | if (localStorage.getItem("user")) { |
| | | this.fetchData(); |
| | | } else { |
| | | this.$router.push("/login"); |
| | | } |
| | | }, |
| | | methods: { |
| | | handleExport() { |
| | | this.download( |
| | | "exportPlayer?orgId=" + |
| | | JSON.parse(localStorage.getItem("selectStaff")).org.id, |
| | | {}, |
| | | `导出_${new Date().getTime()}.xlsx` |
| | | ); |
| | | }, |
| | | handleExport2() { |
| | | if (this.dateRange.length == 0) { |
| | | this.$message.warning("请选择日期范围"); |
| | | return; |
| | | } |
| | | this.download( |
| | | "exportReport?startDate=" + |
| | | this.dateRange[0] + |
| | | "&endDate=" + |
| | | this.dateRange[1], |
| | | {}, |
| | | `导出_${new Date().getTime()}.xlsx` |
| | | ); |
| | | }, |
| | | handleImport() { |
| | | this.dialogVisible = true; |
| | | }, |
| | | reloadData() { |
| | | this.dialogVisible = false; |
| | | this.fetchData(); |
| | | }, |
| | | fetchData() { |
| | | this.listLoading = true; |
| | | getData(this.data).then((response) => { |
| | |
| | | this.handleClick(); |
| | | }, |
| | | handleClick(tab, event) { |
| | | this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id; |
| | | if (this.activeName == "pendingFees") { |
| | | this.listLoading = true; |
| | | getRenew(this.data).then((response) => { |
| | |
| | | this.listLoading = true; |
| | | let data = { |
| | | itemType: "PLAYER", |
| | | staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, |
| | | staffId: JSON.parse(localStorage.getItem("selectStaff")).id, |
| | | keyword: this.data.keyword, |
| | | pageIn: { ...this.data.pageIn }, |
| | | }; |