feat:获取学员列表 批量删除 单个删除 勾选效果 查询 重置 清空

This commit is contained in:
songwc
2022-11-08 17:22:44 +08:00
48 changed files with 22348 additions and 5322 deletions

View File

@@ -259,11 +259,11 @@
<a-collapse-panel
v-for="(value, index) in taskSyllabus"
:key="index"
:header="value.text"
:header="value.name"
>
<div
class="course"
v-for="(item, key) in value.children"
v-for="(item, key) in value.taskList"
:key="key"
>
<!-- :style="{width:item.course==='在线'?'28px':
@@ -281,29 +281,29 @@
>
<img
:src="
item.course === '在线'
item.type == '1'
? require('../../assets/images/leveladd/zai.png')
: item.course === '面授'
: item.type == '2'
? require('../../assets/images/leveladd/mian.png')
: item.course === '案例'
: item.type == '3'
? require('../../assets/images/leveladd/an.png')
: item.course === '作业'
: item.type == '4'
? require('../../assets/images/leveladd/zuo.png')
: item.course === '考试'
: item.type == '5'
? require('../../assets/images/leveladd/kao.png')
: item.course === '直播'
: item.type == '6'
? require('../../assets/images/leveladd/zhi.png')
: item.course === '外链'
: item.type == '7'
? require('../../assets/images/leveladd/wai.png')
: item.course === '讨论'
: item.type == '8'
? require('../../assets/images/leveladd/tao.png')
: item.course === '活动'
: item.type == '9'
? require('../../assets/images/leveladd/huo.png')
: item.course === '测评'
: item.type == '10'
? require('../../assets/images/leveladd/ce.png')
: item.course === '调研'
: item.type == '11'
? require('../../assets/images/leveladd/diao.png')
: item.course === '投票'
: item.type == '12'
? require('../../assets/images/leveladd/tou.png')
: null
"
@@ -311,26 +311,26 @@
</div>
</div>
<div>
<div class="iconame">{{ item.course }}</div>
<div class="iconame">{{ item.name }}</div>
<div class="icontext">{{ item.name }}</div>
</div>
</div>
<div class="type">
<div
:class="
item.classify == '必修' ? 'typename1' : 'typename'
"
:class="item.flag == true ? 'typename1' : 'typename'"
>
{{ item.classify }}
<!-- {{ item.classify }} -->
<span v-if="item.flag">必修</span>
<span v-else>选修</span>
</div>
</div>
<div class="time">
<div class="timetext">开始时间</div>
<div class="timetext">{{ item.beginTime }}</div>
<div class="timetext">{{ item.createTime }}</div>
</div>
<div class="progress">
<div class="progresstext">
{{ item.complete }}/{{ item.total }}
{{ item.finishStuCnt }}/{{ item.totalStuCnt }}
</div>
<div style="display: flex">
<a-progress
@@ -340,7 +340,9 @@
trailColor="rgba(253, 209, 98, 0.2)"
/>
<span class="progresstext" style="margin-left: 10px"
>{{ item.percent }}%</span
>{{
(item.finishStuCnt / item.totalStuCnt) * 100
}}%</span
>
</div>
</div>
@@ -349,7 +351,7 @@
class="operation"
style="cursor: pointer"
:style="{
display: item.course === '面授' ? 'flex' : 'none',
display: item.type == '2' ? 'flex' : 'none',
}"
@click="showFS"
>
@@ -358,10 +360,10 @@
<div
class="operation"
style="cursor: pointer"
@click="showAA(item.course)"
@click="showAA(item.type)"
:style="{
display:
item.course === '直播' || item.course === '活动'
item.type == '6' || item.type == '9'
? 'flex'
: 'none',
}"
@@ -373,19 +375,19 @@
style="cursor: pointer"
:style="{
display:
item.course === '直播' ||
item.course === '活动' ||
item.course === '面授'
item.type == '6' ||
item.type == '9' ||
item.type == '2'
? 'flex'
: 'none',
}"
@click="
item.course === '面授'
? showCopyModal(item.course)
: item.course === '直播'
? showzhibModal(item.course)
: item.course === '活动'
? showhuodModal(item.course)
item.type == '2'
? showCopyModal(item.type)
: item.type == '6'
? showzhibModal(item.type)
: item.type == '9'
? showhuodModal(item.type)
: null
"
>
@@ -395,20 +397,20 @@
class="operation"
style="cursor: pointer; margin-right: 35px"
@click="
item.course === '在线' ||
item.course === '案例' ||
item.course === '外链' ||
item.course === '讨论' ||
item.course === '直播' ||
item.course === '调研' ||
item.course === '投票' ||
item.course === '活动'
item.type == '1' ||
item.type == '3' ||
item.type == '7' ||
item.type == '8' ||
item.type == '6' ||
item.type == '11' ||
item.type == '12' ||
item.type == '9'
? showTime(item.course, item.name)
: item.course === '考试' || item.course === '测评'
: item.type == '5' || item.type == '10'
? showTest(item.course, item.name)
: item.course === '面授'
: item.type == '面授'
? showFace(item.course)
: item.course === '作业'
: item.type == '作业'
? showWork(item.course)
: null
"
@@ -1703,6 +1705,7 @@ import { storage } from "../../api/storage";
import * as api from "../../api/index1";
import { getProjStu, deleteStu } from "../../api/indexProjStu";
import { message } from "ant-design-vue";
import * as apitl from "../../api/index";
export default {
name: "taskPage",
components: {
@@ -2189,125 +2192,126 @@ export default {
//任务大纲列表
taskSyllabus: [
{
text: "阶段1腾飞班阶段1",
children: [
{
course: "在线",
name: "时间管理",
classify: "选修",
beginTime: "2022-09-10 14:03",
total: 50, //总人数
complete: 20, //完成人数
percent: 40,
},
{
course: "直播",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-12 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
{
course: "面授",
name: "管理面授课",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 80, //总人数
complete: 0, //完成人数
percent: 0,
},
{
course: "活动",
name: "管理活动",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 40, //完成人数
percent: 80,
},
{
course: "作业",
name: "管理者作业",
classify: "选修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 30, //完成人数
percent: 60,
},
{
course: "考试",
name: "管理者考试",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 50, //完成人数
percent: 100,
},
{
course: "案例",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
{
course: "外链",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
],
},
{
text: "阶段2腾飞班阶段2",
children: [
{
course: "讨论",
name: "时间管理",
classify: "选修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 20, //完成人数
percent: 40,
},
{
course: "测评",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
{
course: "调研",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
{
course: "投票",
name: "管理直播间",
classify: "必修",
beginTime: "2022-09-16 14:03",
total: 50, //总人数
complete: 10, //完成人数
percent: 20,
},
],
},
// {
// text: "阶段1腾飞班阶段1",
// children: [
// {
// course: "在线",
// name: "时间管理",
// classify: "选修",
// beginTime: "2022-09-10 14:03",
// total: 50, //总人数
// complete: 20, //完成人数
// percent: 40,
// },
// {
// course: "直播",
// name: "管理直播间",
// classify: "必修",
// beginTime: "2022-09-12 14:03",
// total: 50, //总人数
// complete: 10, //完成人数
// percent: 20,
// },
// {
// course: "面授",
// name: "管理面授课",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 80, //总人数
// complete: 0, //完成人数
// percent: 0,
// },
// {
// course: "活动",
// name: "管理活动",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 40, //完成人数
// percent: 80,
// },
// {
// course: "作业",
// name: "管理者作业",
// classify: "选修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 30, //完成人数
// percent: 60,
// },
// {
// course: "考试",
// name: "管理者考试",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 50, //完成人数
// percent: 100,
// },
// {
// course: "案例",
// name: "管理直播间",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 10, //完成人数
// percent: 20,
// },
// {
// course: "外链",
// name: "管理直播间",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 10, //完成人数
// percent: 20,
// },
// ],
// },
// {
// text: "阶段2腾飞班阶段2",
// children: [
// {
// course: "讨论",
// name: "时间管理",
// classify: "选修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 20, //完成人数
// percent: 40,
// },
// {
// course: "测评",
// name: "管理直播间",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 10, //完成人数
// percent: 20,
// },
// {
// course: "调研",
// name: "管理直播间",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 10, //完成人数
// percent: 20,
// },
// {
// course: "投票",
// name: "管理直播间",
// classify: "必修",
// beginTime: "2022-09-16 14:03",
// total: 50, //总人数
// complete: 10, //完成人数
// percent: 20,
// },
// ],
// },
],
taskSyllabusActive: 0,
//在线管理等页面传递参数
showTimeText: "",
@@ -2329,6 +2333,31 @@ export default {
// 输入接入 -- start --
//任务大纲渲染
const getTaskList = () => {
let objtl = {
projectId: 27,
};
apitl
.getProjectDetail(objtl)
.then((res) => {
if (res.status == 200) {
console.log("res", res);
console.log("阶段列表", res.data.data.stageList);
let leng = res.data.data.stageList.length;
if (leng > 0) {
//获取任务列表 阶段
let taskarr = res.data.data.stageList;
state.taskSyllabus = taskarr;
console.log(res.data.data.stageList[0].taskList[0].type, "ggg");
}
}
})
.catch((err) => {
console.log("获取任务列表失败", err);
});
};
//学员学员管理渲染
const getTableDate = () => {
let datas = state.tabledata;
@@ -2962,6 +2991,7 @@ export default {
//end---------学员------
onMounted(() => {
getStu();
getTaskList();
});
return {
...toRefs(state),
@@ -3007,6 +3037,8 @@ export default {
tabsChange,
getTaskList,
rankTimeChange,
getbillboard,
rankSearch,