feat:增加项目-排行榜-进度排行榜-列表/搜索

This commit is contained in:
wyx
2023-02-08 18:44:12 +08:00
parent e32ec87fd3
commit fbe511c358
2 changed files with 94 additions and 69 deletions

View File

@@ -89,6 +89,8 @@ export const editLearnInfo = (obj) => http.post('/admin/router/editInfo', obj)
//项目积分榜单
// export const scoreRank = (obj) => http.post("/admin/project/scoreRank", obj);
export const scoreRank = (params) => http.get('/points/top/list', { params })
// 项目进度排行
export const completionRank = (params) => http.get('/stu/project/rank_list/completion_list', { params })
//排行榜
export const billboard = (obj) => http.post("/admin/project/billboard", obj);
//项目基础信息-----------------------------------

View File

@@ -896,12 +896,14 @@
<div class="right">
<a-select
v-model:value="valuestu1"
@change="jdSelectChange"
style="width: 80px; margin-right: 16px"
:options="rankjindu"
>
</a-select>
<a-select
v-model:value="valuestu2"
@change="jdSelectChange1"
style="width: 112px"
:options="rankjieduan"
></a-select>
@@ -912,7 +914,7 @@
<a-table
:columns="jindutablecolumns"
:data-source="jindutabledata"
:loading="tableDataTotal === -1 ? true : false"
:loading="processRankLoading"
expandRowByClick="true"
:scroll="{ y: 330 }"
@expand="expandTable"
@@ -2300,13 +2302,13 @@ export default {
projectTaskId: "", //项目任务任务id
//进度排行学员
rankjindu: [
{ value: "学员", label: "学员" },
{ value: "小组", label: "小组" },
{ value: 0, label: "学员" },
{ value: 1, label: "小组" },
],
valuestu1: "学员",
valuestu1: 0,
//进度排行阶段
rankjieduan: [{ value: "第一阶段", label: "第一阶段" }],
valuestu2: "第一阶段",
rankjieduan: [],
valuestu2: "",
//积分排行
rankxuefen: [
{ value: 0, label: "学员" },
@@ -2409,83 +2411,31 @@ export default {
ChangeGroupId: null, //要换组的学生的小组id
fileList: [], //文件列表
//进度排行表
jindutabledata: [
{
rank: "1",
name: "哈哈",
jd: "80%",
},
{
rank: "2",
name: "哈哈",
jd: "70%",
},
{
rank: "3",
name: "哈哈",
jd: "70%",
},
{
rank: "4",
name: "哈哈",
jd: "70%",
},
{
rank: "5",
name: "哈哈",
jd: "70%",
},
{
rank: "6",
name: "哈哈",
jd: "70%",
},
{
rank: "7",
name: "哈哈",
jd: "70%",
},
{
rank: "8",
name: "哈哈",
jd: "70%",
},
{
rank: "9",
name: "哈哈",
jd: "70%",
},
{
rank: "10",
name: "哈哈",
jd: "70%",
},
],
jindutabledata: [],
jindutablecolumns: [
{
title: "排名",
dataIndex: "rank",
key: "rank",
dataIndex: "index",
key: "index",
width: 50,
align: "center",
className: "h",
customRender: (text) => {
if (text.record.rank == "1") {
if (text.record.index == "1") {
return (
<img
style={{ width: 24, height: 24 }}
src={require("../../assets/images/taskpage/one.png")}
/>
);
} else if (text.record.rank == "2") {
} else if (text.record.index == "2") {
return (
<img
style={{ width: 24, height: 24 }}
src={require("../../assets/images/taskpage/two.png")}
/>
);
} else if (text.record.rank == "3") {
} else if (text.record.index == "3") {
return (
<img
style={{ width: 24, height: 24 }}
@@ -2493,7 +2443,7 @@ export default {
/>
);
} else {
return <div>{text.record.rank}</div>;
return <div>{text.record.index}</div>;
}
},
},
@@ -2508,14 +2458,15 @@ export default {
{
title: "进度",
dataIndex: "jd",
key: "jd",
dataIndex: "rateStr",
key: "rateStr",
width: 50,
align: "center",
className: "h",
},
],
scoreRankLoading:true,
processRankLoading:true,
//学分排行表
xuefentabledata: [
@@ -2847,6 +2798,14 @@ export default {
console.log(e)
scoreRank();
}
const jdSelectChange = (e) => {
console.log(e)
completionRank();
}
const jdSelectChange1 = (e) => {
console.log(e)
completionRank();
}
//项目积分榜单
const scoreRank = (period, type) => {
state.scoreRankLoading = true;
@@ -2862,7 +2821,7 @@ export default {
type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜
})
let obj = {
projectId: state.projectId, // 项目id
projectId: 290, // 项目id
name: "", // 名字,没有则传空字符串
startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳
endTime: state.rankEndTime?state.rankEndTime:0,
@@ -2877,10 +2836,12 @@ export default {
if(res.data.code==200){
state.datascore = res.data.data;
state.datascoreg = res.data.data;
state.xuefentabledata = res.data.data;
state.scoreRankLoading = false;
}else{
state.datascore = [];
state.datascoreg = [];
state.xuefentabledata = [];
state.scoreRankLoading = false;
}
})
@@ -2890,10 +2851,40 @@ export default {
message.error('榜单获取失败');
state.datascore = [];
state.datascoreg = [];
state.xuefentabledata = [];
state.scoreRankLoading = false;
});
};
// 项目进度榜单
const completionRank = () => {
state.processRankLoading = true;
let obj = {
projectId: 290, // 项目id
startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳
endTime: state.rankEndTime?state.rankEndTime:0,
stageId: state.valuestu2, // 阶段ID
type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜
}
console.log('我是获取得项目进度排行榜--》', obj)
api.completionRank(obj).then(res=>{
console.log('项目进度榜单获取',res)
if(res.data.datas){
state.jindutabledata = res.data.datas;
state.processRankLoading = false;
}else{
state.jindutabledata = [];
state.processRankLoading = false;
}
}).catch(err=>{
console.log(err)
state.jindutabledata = [];
state.processRankLoading = false;
})
}
// 排行榜 - end
const levelList = reactive({
@@ -2957,6 +2948,28 @@ export default {
}
}
levelList.stageList = res.data.data.stageList;
if(levelList.stageList.length==1){
// 无解段任务
state.rankjieduan = [{value:0, label:'无阶段'}];
state.valuestu2 = 0;
}else{
// 有阶段任务
let arrStage = []
for(let i=0; i<levelList.stageList.length;i++){
if(levelList.stageList[i].stageId!=='0'){
let obj = {
value:levelList.stageList[i].stageId,
label:levelList.stageList[i].name
}
arrStage.push(obj)
}
}
state.rankjieduan = arrStage;
state.valuestu2 = arrStage[0].value;
}
console.log('----------------------------------->', res.data.data.stageList)
//暂时传个固定的id用 到时候看数据里面是否有在更换
// state.projectTaskId = res.data.data.stageList[0].taskList[0].projectTaskId
let leng = res.data.data.stageList.length;
@@ -3618,6 +3631,8 @@ export default {
// 获取积分排行榜
scoreRank();
// 获取项目进度排行榜
completionRank();
} else if (e == 3) {
state.tabFlag = true;
@@ -3673,6 +3688,8 @@ state.ischeckCertificate=false
// 获取积分排行
scoreRank();
// 获取项目进度排行榜
completionRank();
};
//重置
const rankReset = () => {
@@ -3682,7 +3699,9 @@ state.ischeckCertificate=false
state.valueName = null;
// 获取积分排行
scoreRank()
scoreRank();
// 获取项目进度排行榜
completionRank();
};
// end -----排行榜----------------排行榜----------------------排行榜-----------排行榜----------
@@ -4799,6 +4818,10 @@ state.ischeckCertificate=false
scoreRank,
jfSelectChange,
completionRank,
jdSelectChange,
jdSelectChange1,
};
},
};