mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-10 19:36:46 +08:00
feat:增加项目-排行榜-进度排行榜-列表/搜索
This commit is contained in:
@@ -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 = (obj) => http.post("/admin/project/scoreRank", obj);
|
||||||
export const scoreRank = (params) => http.get('/points/top/list', { params })
|
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);
|
export const billboard = (obj) => http.post("/admin/project/billboard", obj);
|
||||||
//项目基础信息-----------------------------------
|
//项目基础信息-----------------------------------
|
||||||
|
|||||||
@@ -896,12 +896,14 @@
|
|||||||
<div class="right">
|
<div class="right">
|
||||||
<a-select
|
<a-select
|
||||||
v-model:value="valuestu1"
|
v-model:value="valuestu1"
|
||||||
|
@change="jdSelectChange"
|
||||||
style="width: 80px; margin-right: 16px"
|
style="width: 80px; margin-right: 16px"
|
||||||
:options="rankjindu"
|
:options="rankjindu"
|
||||||
>
|
>
|
||||||
</a-select>
|
</a-select>
|
||||||
<a-select
|
<a-select
|
||||||
v-model:value="valuestu2"
|
v-model:value="valuestu2"
|
||||||
|
@change="jdSelectChange1"
|
||||||
style="width: 112px"
|
style="width: 112px"
|
||||||
:options="rankjieduan"
|
:options="rankjieduan"
|
||||||
></a-select>
|
></a-select>
|
||||||
@@ -912,7 +914,7 @@
|
|||||||
<a-table
|
<a-table
|
||||||
:columns="jindutablecolumns"
|
:columns="jindutablecolumns"
|
||||||
:data-source="jindutabledata"
|
:data-source="jindutabledata"
|
||||||
:loading="tableDataTotal === -1 ? true : false"
|
:loading="processRankLoading"
|
||||||
expandRowByClick="true"
|
expandRowByClick="true"
|
||||||
:scroll="{ y: 330 }"
|
:scroll="{ y: 330 }"
|
||||||
@expand="expandTable"
|
@expand="expandTable"
|
||||||
@@ -2300,13 +2302,13 @@ export default {
|
|||||||
projectTaskId: "", //项目任务任务id
|
projectTaskId: "", //项目任务任务id
|
||||||
//进度排行学员
|
//进度排行学员
|
||||||
rankjindu: [
|
rankjindu: [
|
||||||
{ value: "学员", label: "学员" },
|
{ value: 0, label: "学员" },
|
||||||
{ value: "小组", label: "小组" },
|
{ value: 1, label: "小组" },
|
||||||
],
|
],
|
||||||
valuestu1: "学员",
|
valuestu1: 0,
|
||||||
//进度排行阶段
|
//进度排行阶段
|
||||||
rankjieduan: [{ value: "第一阶段", label: "第一阶段" }],
|
rankjieduan: [],
|
||||||
valuestu2: "第一阶段",
|
valuestu2: "",
|
||||||
//积分排行
|
//积分排行
|
||||||
rankxuefen: [
|
rankxuefen: [
|
||||||
{ value: 0, label: "学员" },
|
{ value: 0, label: "学员" },
|
||||||
@@ -2409,83 +2411,31 @@ export default {
|
|||||||
ChangeGroupId: null, //要换组的学生的小组id
|
ChangeGroupId: null, //要换组的学生的小组id
|
||||||
fileList: [], //文件列表
|
fileList: [], //文件列表
|
||||||
//进度排行表
|
//进度排行表
|
||||||
jindutabledata: [
|
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%",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
jindutablecolumns: [
|
jindutablecolumns: [
|
||||||
{
|
{
|
||||||
title: "排名",
|
title: "排名",
|
||||||
dataIndex: "rank",
|
dataIndex: "index",
|
||||||
key: "rank",
|
key: "index",
|
||||||
width: 50,
|
width: 50,
|
||||||
align: "center",
|
align: "center",
|
||||||
className: "h",
|
className: "h",
|
||||||
customRender: (text) => {
|
customRender: (text) => {
|
||||||
if (text.record.rank == "1") {
|
if (text.record.index == "1") {
|
||||||
return (
|
return (
|
||||||
<img
|
<img
|
||||||
style={{ width: 24, height: 24 }}
|
style={{ width: 24, height: 24 }}
|
||||||
src={require("../../assets/images/taskpage/one.png")}
|
src={require("../../assets/images/taskpage/one.png")}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
} else if (text.record.rank == "2") {
|
} else if (text.record.index == "2") {
|
||||||
return (
|
return (
|
||||||
<img
|
<img
|
||||||
style={{ width: 24, height: 24 }}
|
style={{ width: 24, height: 24 }}
|
||||||
src={require("../../assets/images/taskpage/two.png")}
|
src={require("../../assets/images/taskpage/two.png")}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
} else if (text.record.rank == "3") {
|
} else if (text.record.index == "3") {
|
||||||
return (
|
return (
|
||||||
<img
|
<img
|
||||||
style={{ width: 24, height: 24 }}
|
style={{ width: 24, height: 24 }}
|
||||||
@@ -2493,7 +2443,7 @@ export default {
|
|||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
return <div>{text.record.rank}</div>;
|
return <div>{text.record.index}</div>;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -2508,14 +2458,15 @@ export default {
|
|||||||
|
|
||||||
{
|
{
|
||||||
title: "进度",
|
title: "进度",
|
||||||
dataIndex: "jd",
|
dataIndex: "rateStr",
|
||||||
key: "jd",
|
key: "rateStr",
|
||||||
width: 50,
|
width: 50,
|
||||||
align: "center",
|
align: "center",
|
||||||
className: "h",
|
className: "h",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
scoreRankLoading:true,
|
scoreRankLoading:true,
|
||||||
|
processRankLoading:true,
|
||||||
//学分排行表
|
//学分排行表
|
||||||
xuefentabledata: [
|
xuefentabledata: [
|
||||||
|
|
||||||
@@ -2847,6 +2798,14 @@ export default {
|
|||||||
console.log(e)
|
console.log(e)
|
||||||
scoreRank();
|
scoreRank();
|
||||||
}
|
}
|
||||||
|
const jdSelectChange = (e) => {
|
||||||
|
console.log(e)
|
||||||
|
completionRank();
|
||||||
|
}
|
||||||
|
const jdSelectChange1 = (e) => {
|
||||||
|
console.log(e)
|
||||||
|
completionRank();
|
||||||
|
}
|
||||||
//项目积分榜单
|
//项目积分榜单
|
||||||
const scoreRank = (period, type) => {
|
const scoreRank = (period, type) => {
|
||||||
state.scoreRankLoading = true;
|
state.scoreRankLoading = true;
|
||||||
@@ -2862,7 +2821,7 @@ export default {
|
|||||||
type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜
|
type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜
|
||||||
})
|
})
|
||||||
let obj = {
|
let obj = {
|
||||||
projectId: state.projectId, // 项目id
|
projectId: 290, // 项目id
|
||||||
name: "", // 名字,没有则传空字符串
|
name: "", // 名字,没有则传空字符串
|
||||||
startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳
|
startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳
|
||||||
endTime: state.rankEndTime?state.rankEndTime:0,
|
endTime: state.rankEndTime?state.rankEndTime:0,
|
||||||
@@ -2877,10 +2836,12 @@ export default {
|
|||||||
if(res.data.code==200){
|
if(res.data.code==200){
|
||||||
state.datascore = res.data.data;
|
state.datascore = res.data.data;
|
||||||
state.datascoreg = res.data.data;
|
state.datascoreg = res.data.data;
|
||||||
|
state.xuefentabledata = res.data.data;
|
||||||
state.scoreRankLoading = false;
|
state.scoreRankLoading = false;
|
||||||
}else{
|
}else{
|
||||||
state.datascore = [];
|
state.datascore = [];
|
||||||
state.datascoreg = [];
|
state.datascoreg = [];
|
||||||
|
state.xuefentabledata = [];
|
||||||
state.scoreRankLoading = false;
|
state.scoreRankLoading = false;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -2890,10 +2851,40 @@ export default {
|
|||||||
message.error('榜单获取失败');
|
message.error('榜单获取失败');
|
||||||
state.datascore = [];
|
state.datascore = [];
|
||||||
state.datascoreg = [];
|
state.datascoreg = [];
|
||||||
|
state.xuefentabledata = [];
|
||||||
state.scoreRankLoading = false;
|
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
|
// 排行榜 - end
|
||||||
|
|
||||||
const levelList = reactive({
|
const levelList = reactive({
|
||||||
@@ -2957,6 +2948,28 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
levelList.stageList = res.data.data.stageList;
|
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用 到时候看数据里面是否有在更换
|
//暂时传个固定的id用 到时候看数据里面是否有在更换
|
||||||
// state.projectTaskId = res.data.data.stageList[0].taskList[0].projectTaskId
|
// state.projectTaskId = res.data.data.stageList[0].taskList[0].projectTaskId
|
||||||
let leng = res.data.data.stageList.length;
|
let leng = res.data.data.stageList.length;
|
||||||
@@ -3618,6 +3631,8 @@ export default {
|
|||||||
|
|
||||||
// 获取积分排行榜
|
// 获取积分排行榜
|
||||||
scoreRank();
|
scoreRank();
|
||||||
|
// 获取项目进度排行榜
|
||||||
|
completionRank();
|
||||||
|
|
||||||
} else if (e == 3) {
|
} else if (e == 3) {
|
||||||
state.tabFlag = true;
|
state.tabFlag = true;
|
||||||
@@ -3673,6 +3688,8 @@ state.ischeckCertificate=false
|
|||||||
|
|
||||||
// 获取积分排行
|
// 获取积分排行
|
||||||
scoreRank();
|
scoreRank();
|
||||||
|
// 获取项目进度排行榜
|
||||||
|
completionRank();
|
||||||
};
|
};
|
||||||
//重置
|
//重置
|
||||||
const rankReset = () => {
|
const rankReset = () => {
|
||||||
@@ -3682,7 +3699,9 @@ state.ischeckCertificate=false
|
|||||||
state.valueName = null;
|
state.valueName = null;
|
||||||
|
|
||||||
// 获取积分排行
|
// 获取积分排行
|
||||||
scoreRank()
|
scoreRank();
|
||||||
|
// 获取项目进度排行榜
|
||||||
|
completionRank();
|
||||||
};
|
};
|
||||||
|
|
||||||
// end -----排行榜----------------排行榜----------------------排行榜-----------排行榜----------
|
// end -----排行榜----------------排行榜----------------------排行榜-----------排行榜----------
|
||||||
@@ -4799,6 +4818,10 @@ state.ischeckCertificate=false
|
|||||||
scoreRank,
|
scoreRank,
|
||||||
jfSelectChange,
|
jfSelectChange,
|
||||||
|
|
||||||
|
completionRank,
|
||||||
|
jdSelectChange,
|
||||||
|
jdSelectChange1,
|
||||||
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user