| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-tabs v-model="activeName" @tab-click="handleClick"> |
| | | <el-tab-pane label="全部" name="first"> |
| | | <div style="display: flex; flex-direction: row-reverse"> |
| | | <div style="width: 300px"> |
| | | <el-input |
| | | placeholder="按标题搜索" |
| | | v-model="input3" |
| | | class="input-with-select" |
| | | size="small" |
| | | > |
| | | <el-button slot="append" icon="el-icon-search"></el-button> |
| | | </el-input> |
| | | </div> |
| | | <div class="app-container"> |
| | | <el-tabs v-model="activeName" @tab-click="fetchData"> |
| | | <el-tab-pane label="全部" name="all"> |
| | | <div style="display: flex; flex-direction: row-reverse"> |
| | | <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> |
| | | </div> |
| | | </div> |
| | | <div style="height: calc(100vh - 248px)"> |
| | | <el-table |
| | | v-loading="listLoading" |
| | | :data="list" |
| | | element-loading-text="Loading" |
| | | fit |
| | | height="100%" |
| | | > |
| | | <el-table-column label="标题"> |
| | | <template slot-scope=""> xxxxx </template> |
| | | <template slot-scope="scope"> |
| | | <el-link type="primary" :underline="false">{{ |
| | | scope.row.name |
| | | }}</el-link> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="分类" width="80"> |
| | | <template slot-scope=""> 男 </template> |
| | | </el-table-column> |
| | | <el-table-column label="谁否公开" width="200"> |
| | | <template slot-scope=""> 10086 </template> |
| | | </el-table-column> |
| | | <el-table-column label="班级" width="200"> |
| | | <template slot-scope=""> asfiaf </template> |
| | | </el-table-column> |
| | | <el-table-column label="学员" width=""> |
| | | <template slot-scope=""> asfiaf </template> |
| | | <el-table-column label="分类" width="" prop="category"> |
| | | </el-table-column> |
| | | <el-table-column label="教师" width=""> |
| | | <template slot-scope=""> 点评 </template> |
| | | <template slot-scope="scope">{{ |
| | | scope.row.publisher.name |
| | | }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="内容" width=""> |
| | | <template slot-scope=""> 点评 </template> |
| | | </el-table-column> |
| | | <el-table-column label="操作" width=""> |
| | | <template slot-scope=""> 修改 </template> |
| | | <el-table-column label="点评时间" width="" prop="createTime"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="课程" name="fourth"> |
| | | <div style="display: flex; flex-direction: row-reverse"> |
| | | <div style="width: 300px"> |
| | | <el-input |
| | | placeholder="按学员名称搜索" |
| | | v-model="input3" |
| | | class="input-with-select" |
| | | size="small" |
| | | > |
| | | <el-button slot="append" icon="el-icon-search"></el-button> |
| | | </el-input> |
| | | </div> |
| | | </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> |
| | | </div> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="课程" name="other"> |
| | | <div style="display: flex; flex-direction: row-reverse"> |
| | | <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> |
| | | </div> |
| | | </div> |
| | | <div style="height: calc(100vh - 248px)"> |
| | | <el-table |
| | | v-loading="listLoading" |
| | | :data="list" |
| | | element-loading-text="Loading" |
| | | fit |
| | | height="100%" |
| | | > |
| | | <el-table-column label="学员"> |
| | | <template slot-scope=""> xxxxx </template> |
| | | <el-table-column label="课程"> |
| | | <template slot-scope="scope"> |
| | | <el-link type="primary" :underline="false">{{ |
| | | scope.row.courseName |
| | | }}</el-link> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="时间" width="80"> |
| | | <template slot-scope=""> 男 </template> |
| | | <el-table-column label="开始时间" width="" prop="beginTime"> |
| | | </el-table-column> |
| | | <el-table-column label="标题" width="200"> |
| | | <template slot-scope=""> 10086 </template> |
| | | <el-table-column label="结束时间" width="" prop="endTime"> |
| | | </el-table-column> |
| | | <el-table-column label="点评老师" width="200"> |
| | | <template slot-scope=""> asfiaf </template> |
| | | <el-table-column label="学员数" width="" prop="playerCount"> |
| | | </el-table-column> |
| | | <el-table-column label="操作" width=""> |
| | | <template slot-scope=""> 查看 </template> |
| | | <el-table-column label="已记录数" width="" prop="commentCount"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getList } from "@/api/table"; |
| | | |
| | | export default { |
| | | filters: { |
| | | statusFilter(status) { |
| | | const statusMap = { |
| | | published: "success", |
| | | draft: "gray", |
| | | deleted: "danger", |
| | | }; |
| | | return statusMap[status]; |
| | | }, |
| | | }, |
| | | data() { |
| | | return { |
| | | list: null, |
| | | listLoading: true, |
| | | activeName: "first", |
| | | </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> |
| | | </div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getHomeworkByType, getSessionHomeworkDto } from "@/api/development"; |
| | | |
| | | export default { |
| | | filters: { |
| | | statusFilter(status) { |
| | | const statusMap = { |
| | | published: "success", |
| | | draft: "gray", |
| | | deleted: "danger", |
| | | }; |
| | | return statusMap[status]; |
| | | }, |
| | | created() { |
| | | this.fetchData(); |
| | | }, |
| | | data() { |
| | | return { |
| | | list: null, |
| | | listLoading: true, |
| | | activeName: "all", |
| | | total: 0, |
| | | data: { |
| | | staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, |
| | | keyword: "", |
| | | pageIn: { |
| | | //可选,如果是分页查询,需要加上。 |
| | | index: 0, //必选 |
| | | size: 10, //每页的大小。默认20 |
| | | sorts: [ |
| | | { |
| | | name: "name", //排序字段名称 |
| | | direction: "ASC", //排序方向 |
| | | }, |
| | | { |
| | | name: "createTime", |
| | | direction: "DESC", |
| | | }, |
| | | ], |
| | | }, |
| | | homeworkType: "GROWTH", |
| | | }, |
| | | }; |
| | | }, |
| | | created() { |
| | | this.fetchData(); |
| | | }, |
| | | methods: { |
| | | handleSizeChange(val) { |
| | | this.data.pageIn.size = val; |
| | | this.fetchData("pageIn"); |
| | | }, |
| | | methods: { |
| | | fetchData() { |
| | | handleCurrentChange(val) { |
| | | this.data.pageIn.index = val - 1; |
| | | this.fetchData("pageIn"); |
| | | }, |
| | | fetchData(_val) { |
| | | if (_val !== "pageIn") { |
| | | this.data.pageIn.index = 0; |
| | | this.data.pageIn.size = 10; |
| | | } |
| | | this.listLoading = true; |
| | | if (this.activeName == "all") { |
| | | this.listLoading = true; |
| | | getList().then((response) => { |
| | | this.list = response.data.items; |
| | | getHomeworkByType(this.data).then((response) => { |
| | | this.list = response.data.findHomeworkByType.ls; |
| | | this.total = response.data.findHomeworkByType.pageOut.total; |
| | | this.listLoading = false; |
| | | }); |
| | | }, |
| | | } else if (this.activeName == "other") { |
| | | this.listLoading = true; |
| | | let data = { |
| | | staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, |
| | | keyword: this.data.keyword, |
| | | pageIn: { ...this.data.pageIn }, |
| | | }; |
| | | data.pageIn.sorts = { |
| | | direction: "DESC", |
| | | name: "beginTime", |
| | | }; |
| | | getSessionHomeworkDto(data).then((response) => { |
| | | this.list = response.data.findSessionHomeworkDto.ls; |
| | | this.total = response.data.findSessionHomeworkDto.pageOut.total; |
| | | this.listLoading = false; |
| | | }); |
| | | } |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | }, |
| | | }; |
| | | </script> |