mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-13 04:46:46 +08:00
feat:显示项目及学习路径任务大纲操作
This commit is contained in:
@@ -425,24 +425,30 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="progress">
|
<div class="progress">
|
||||||
<div class="progresstext">
|
<div class="progresstext">
|
||||||
{{ item.finishStuNum }}/{{
|
{{ item.finishStuNum }}/{{ item.totalStuNum }}人
|
||||||
item.totalStuNum
|
|
||||||
}}人
|
|
||||||
</div>
|
</div>
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<a-progress
|
<a-progress
|
||||||
:showInfo="false"
|
:showInfo="false"
|
||||||
:percent="parseInt(item.finishStuNum / item.totalStuNum * 100)"
|
:percent="
|
||||||
|
parseInt(
|
||||||
|
(item.finishStuNum / item.totalStuNum) * 100
|
||||||
|
)
|
||||||
|
"
|
||||||
strokeColor="#FFC067"
|
strokeColor="#FFC067"
|
||||||
trailColor="rgba(253, 209, 98, 0.2)"
|
trailColor="rgba(253, 209, 98, 0.2)"
|
||||||
/>
|
/>
|
||||||
<span class="progresstext" style="margin-left: 10px"
|
<span class="progresstext" style="margin-left: 10px"
|
||||||
>{{ parseInt(item.finishStuNum / item.totalStuNum * 100) }}%</span
|
>{{
|
||||||
|
parseInt(
|
||||||
|
(item.finishStuNum / item.totalStuNum) * 100
|
||||||
|
)
|
||||||
|
}}%</span
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="operations">
|
<div class="operations">
|
||||||
<!-- <div
|
<div
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
:style="{
|
:style="{
|
||||||
@@ -451,8 +457,8 @@
|
|||||||
@click="showFS"
|
@click="showFS"
|
||||||
>
|
>
|
||||||
学员
|
学员
|
||||||
</div> -->
|
</div>
|
||||||
<!-- <div
|
<div
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
@click="showAA(item.type, item.name)"
|
@click="showAA(item.type, item.name)"
|
||||||
@@ -471,8 +477,8 @@
|
|||||||
@click="showCodeModel(item)"
|
@click="showCodeModel(item)"
|
||||||
>
|
>
|
||||||
二维码
|
二维码
|
||||||
</div>-->
|
</div>
|
||||||
<!-- <div
|
<div
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer; margin-right: 35px"
|
style="cursor: pointer; margin-right: 35px"
|
||||||
@click="
|
@click="
|
||||||
@@ -495,7 +501,7 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
管理
|
管理
|
||||||
</div> -->
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-collapse-panel>
|
</a-collapse-panel>
|
||||||
@@ -1396,9 +1402,9 @@ export default {
|
|||||||
align: "center",
|
align: "center",
|
||||||
className: "h",
|
className: "h",
|
||||||
customRender: ({ record }) => (
|
customRender: ({ record }) => (
|
||||||
<div>
|
<div>
|
||||||
{record.finishTaskNum}/{record.totalTaskNum}
|
{record.finishTaskNum}/{record.totalTaskNum}
|
||||||
</div>
|
</div>
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
// {
|
// {
|
||||||
@@ -1796,7 +1802,7 @@ export default {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
const reget = () => {
|
const reget = () => {
|
||||||
GetRouterDetail(state.routerId,"N").then((res) => {
|
GetRouterDetail(state.routerId, "N").then((res) => {
|
||||||
// console.log("获取路径图详情", res);
|
// console.log("获取路径图详情", res);
|
||||||
state.styTitle = res.data.data.routerInfo.name;
|
state.styTitle = res.data.data.routerInfo.name;
|
||||||
state.cretime = res.data.data.routerInfo.createTime;
|
state.cretime = res.data.data.routerInfo.createTime;
|
||||||
@@ -1868,7 +1874,7 @@ export default {
|
|||||||
|
|
||||||
// 获取路径列表
|
// 获取路径列表
|
||||||
const myGetRouterDetail = () => {
|
const myGetRouterDetail = () => {
|
||||||
console.log('执行-------myGetRouterDetail')
|
console.log("执行-------myGetRouterDetail");
|
||||||
GetRouterDetail(state.routerId)
|
GetRouterDetail(state.routerId)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log("router-list", res);
|
console.log("router-list", res);
|
||||||
|
|||||||
@@ -570,8 +570,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="operations">
|
<div class="operations">
|
||||||
<!-- 2022-11-30注释 后面放开 -->
|
<div
|
||||||
<!-- <div
|
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
:style="{
|
:style="{
|
||||||
@@ -580,8 +579,8 @@
|
|||||||
@click="showFS"
|
@click="showFS"
|
||||||
>
|
>
|
||||||
学员
|
学员
|
||||||
</div> -->
|
</div>
|
||||||
<!-- <div
|
<div
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
@click="showAA(item.name)"
|
@click="showAA(item.name)"
|
||||||
@@ -593,17 +592,15 @@
|
|||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
考勤
|
考勤
|
||||||
</div> -->
|
</div>
|
||||||
<!-- 2022-12-10注释 后面放开 -->
|
<div
|
||||||
<!-- <div
|
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
@click="showCodeModel(item)"
|
@click="showCodeModel(item)"
|
||||||
>
|
>
|
||||||
二维码
|
二维码
|
||||||
</div> -->
|
</div>
|
||||||
<!-- 2022-11-30注释 后面放开 -->
|
<div
|
||||||
<!-- <div
|
|
||||||
class="operation"
|
class="operation"
|
||||||
style="cursor: pointer; margin-right: 35px"
|
style="cursor: pointer; margin-right: 35px"
|
||||||
@click="
|
@click="
|
||||||
@@ -614,9 +611,17 @@
|
|||||||
item.type == '9' ||
|
item.type == '9' ||
|
||||||
item.type == '11' ||
|
item.type == '11' ||
|
||||||
item.type == '12'
|
item.type == '12'
|
||||||
? showTime(item.name, item.projectTaskId, item.type)
|
? showTime(
|
||||||
|
item.name,
|
||||||
|
item.projectTaskId,
|
||||||
|
item.type
|
||||||
|
)
|
||||||
: item.type == '5' || item.type == '10'
|
: item.type == '5' || item.type == '10'
|
||||||
? showTest(item.name, item.projectTaskId, item.type)
|
? showTest(
|
||||||
|
item.name,
|
||||||
|
item.projectTaskId,
|
||||||
|
item.type
|
||||||
|
)
|
||||||
: item.type == '2' || item.type == '6'
|
: item.type == '2' || item.type == '6'
|
||||||
? showFace(item.name, item.projectTaskId)
|
? showFace(item.name, item.projectTaskId)
|
||||||
: item.type == '4'
|
: item.type == '4'
|
||||||
@@ -625,7 +630,7 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
管理
|
管理
|
||||||
</div> -->
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-collapse-panel>
|
</a-collapse-panel>
|
||||||
@@ -693,27 +698,39 @@
|
|||||||
<div class="split"></div>
|
<div class="split"></div>
|
||||||
<div class="content3">
|
<div class="content3">
|
||||||
<a-tabs v-model:activeKey="activeKey1">
|
<a-tabs v-model:activeKey="activeKey1">
|
||||||
<a-tab-pane key="8" tab="学员管理" >
|
<a-tab-pane key="8" tab="学员管理">
|
||||||
<TableStudent
|
<TableStudent
|
||||||
:type="1"
|
:type="1"
|
||||||
:id="projectId"
|
:id="projectId"
|
||||||
:columns="stuColumns"
|
:columns="stuColumns"
|
||||||
:stage="stage"
|
:stage="stage"
|
||||||
:visable ="tabFlag"
|
:visable="tabFlag"
|
||||||
>
|
>
|
||||||
<template #extension="{data:{record}}">
|
<template #extension="{ data: { record } }">
|
||||||
<div style="display:flex">
|
<div style="display: flex">
|
||||||
<div
|
<div
|
||||||
@click="showStudent(record)"
|
@click="showStudent(record)"
|
||||||
style="color: #4ea6ff; font-size: 14px; text-align: center;margin-left: 20px;cursor: pointer;"
|
style="
|
||||||
|
color: #4ea6ff;
|
||||||
|
font-size: 14px;
|
||||||
|
text-align: center;
|
||||||
|
margin-left: 20px;
|
||||||
|
cursor: pointer;
|
||||||
|
"
|
||||||
>
|
>
|
||||||
查看
|
查看
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
@click="settingTopFlag(record)"
|
@click="settingTopFlag(record)"
|
||||||
style="color: #4ea6ff; font-size: 14px; text-align: center;margin-left: 20px;cursor: pointer;"
|
style="
|
||||||
|
color: #4ea6ff;
|
||||||
|
font-size: 14px;
|
||||||
|
text-align: center;
|
||||||
|
margin-left: 20px;
|
||||||
|
cursor: pointer;
|
||||||
|
"
|
||||||
>
|
>
|
||||||
{{record.topFlag?'取消优秀':'优秀学员'}}
|
{{ record.topFlag ? "取消优秀" : "优秀学员" }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -872,7 +889,7 @@
|
|||||||
<div class="img"></div>
|
<div class="img"></div>
|
||||||
<div class="ed">编辑</div>
|
<div class="ed">编辑</div>
|
||||||
</div> -->
|
</div> -->
|
||||||
<div class="edit" v-if="status!=3" @click="toEdit">
|
<div class="edit" v-if="status != 3" @click="toEdit">
|
||||||
<div class="img"></div>
|
<div class="img"></div>
|
||||||
<div class="ed">编辑</div>
|
<div class="ed">编辑</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -952,7 +969,7 @@
|
|||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="set_content" v-if="remark ">
|
<div class="set_content" v-if="remark">
|
||||||
<div class="setc_name"><span>项目说明:</span></div>
|
<div class="setc_name"><span>项目说明:</span></div>
|
||||||
<div class="setc_main">
|
<div class="setc_main">
|
||||||
<span style="color: #999999">{{ remark }}</span>
|
<span style="color: #999999">{{ remark }}</span>
|
||||||
@@ -1308,7 +1325,7 @@
|
|||||||
<div class="del_btn btn1" @click="cancelyou">
|
<div class="del_btn btn1" @click="cancelyou">
|
||||||
<div class="btnText">取消</div>
|
<div class="btnText">取消</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="del_btn btn2" @click="closeModal1">
|
<div class="del_btn btn2" @click="closeModal1">
|
||||||
<div class="btnText">确定</div>
|
<div class="btnText">确定</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1463,7 +1480,14 @@
|
|||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
class="modalHeader"
|
class="modalHeader"
|
||||||
style="width: 100%;height: 68px;display: flex;align-items: center; justify-content: space-between; ">
|
style="
|
||||||
|
width: 100%;
|
||||||
|
height: 68px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
"
|
||||||
|
>
|
||||||
<div class="headerLeft" style="margin-left: 32px">
|
<div class="headerLeft" style="margin-left: 32px">
|
||||||
<span style="width: 15px; height: 15px"
|
<span style="width: 15px; height: 15px"
|
||||||
><img src="../../assets/images/taskpage/pub.png"
|
><img src="../../assets/images/taskpage/pub.png"
|
||||||
@@ -1742,8 +1766,8 @@ export default {
|
|||||||
const store = useStore();
|
const store = useStore();
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
editRecord:{},
|
editRecord: {},
|
||||||
tabFlag:true,
|
tabFlag: true,
|
||||||
stage: [],
|
stage: [],
|
||||||
stuColumns: [
|
stuColumns: [
|
||||||
{
|
{
|
||||||
@@ -2577,8 +2601,8 @@ export default {
|
|||||||
};
|
};
|
||||||
//点击确定授予优秀学员后
|
//点击确定授予优秀学员后
|
||||||
const closeModal1 = () => {
|
const closeModal1 = () => {
|
||||||
state.editRecord.topFlag = 1
|
state.editRecord.topFlag = 1;
|
||||||
updateStudent(state.editRecord)
|
updateStudent(state.editRecord);
|
||||||
state.canclestu = false;
|
state.canclestu = false;
|
||||||
message.success("优秀学员称号授予成功");
|
message.success("优秀学员称号授予成功");
|
||||||
};
|
};
|
||||||
@@ -2593,8 +2617,8 @@ export default {
|
|||||||
};
|
};
|
||||||
//点击确定取消优秀学员称号
|
//点击确定取消优秀学员称号
|
||||||
const closeModal3 = () => {
|
const closeModal3 = () => {
|
||||||
state.editRecord.topFlag = 0
|
state.editRecord.topFlag = 0;
|
||||||
updateStudent(state.editRecord)
|
updateStudent(state.editRecord);
|
||||||
state.canclestu1 = false;
|
state.canclestu1 = false;
|
||||||
message.success("优秀学员称号取消成功");
|
message.success("优秀学员称号取消成功");
|
||||||
};
|
};
|
||||||
@@ -3061,8 +3085,6 @@ export default {
|
|||||||
|
|
||||||
//tabs切换
|
//tabs切换
|
||||||
const tabsChange = (e) => {
|
const tabsChange = (e) => {
|
||||||
|
|
||||||
|
|
||||||
//排行榜
|
//排行榜
|
||||||
if (e == 6) {
|
if (e == 6) {
|
||||||
//获取进度榜
|
//获取进度榜
|
||||||
@@ -3071,13 +3093,13 @@ export default {
|
|||||||
getbillboard(2, 1);
|
getbillboard(2, 1);
|
||||||
//获取学时榜
|
//获取学时榜
|
||||||
getbillboard(3, 1);
|
getbillboard(3, 1);
|
||||||
} else if(e == 3){
|
} else if (e == 3) {
|
||||||
state.tabFlag =true;
|
state.tabFlag = true;
|
||||||
}else{
|
} else {
|
||||||
rankReset();
|
rankReset();
|
||||||
state.tabFlag =false;
|
state.tabFlag = false;
|
||||||
}
|
}
|
||||||
console.log("切换了",state.tabFlag);
|
console.log("切换了", state.tabFlag);
|
||||||
};
|
};
|
||||||
|
|
||||||
// start -------排行榜---------------排行榜------------排行榜------------------排行榜---------
|
// start -------排行榜---------------排行榜------------排行榜------------------排行榜---------
|
||||||
@@ -3347,12 +3369,15 @@ export default {
|
|||||||
const getTaskInfo = () => {
|
const getTaskInfo = () => {
|
||||||
getTask({
|
getTask({
|
||||||
projectId: state.projectId,
|
projectId: state.projectId,
|
||||||
useTask:'N'
|
useTask: "N",
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
console.log("get task", res.data.data);
|
console.log("get task", res.data.data);
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
// 判断当前审核是否通过
|
// 判断当前审核是否通过
|
||||||
if (res.data.data.projectAuditLogDtoList && res.data.data.projectAuditLogDtoList.length) {
|
if (
|
||||||
|
res.data.data.projectAuditLogDtoList &&
|
||||||
|
res.data.data.projectAuditLogDtoList.length
|
||||||
|
) {
|
||||||
console.log("审核信息是什么", res.data.data.projectAuditLogDtoList);
|
console.log("审核信息是什么", res.data.data.projectAuditLogDtoList);
|
||||||
let dataset = res.data.data.projectAuditLogDtoList;
|
let dataset = res.data.data.projectAuditLogDtoList;
|
||||||
state.passInfo = dataset[dataset.length - 1].description;
|
state.passInfo = dataset[dataset.length - 1].description;
|
||||||
@@ -3378,7 +3403,8 @@ export default {
|
|||||||
let end = info.endTime;
|
let end = info.endTime;
|
||||||
state.tstartTime = info.beginTime;
|
state.tstartTime = info.beginTime;
|
||||||
state.tendTime = info.endTime;
|
state.tendTime = info.endTime;
|
||||||
state.tsourceBelong = (info.sourceBelongFullName || '')+info.sourceBelongName;
|
state.tsourceBelong =
|
||||||
|
(info.sourceBelongFullName || "") + info.sourceBelongName;
|
||||||
state.parentId = info.parentId;
|
state.parentId = info.parentId;
|
||||||
state.name = info.name;
|
state.name = info.name;
|
||||||
state.startTime = start;
|
state.startTime = start;
|
||||||
@@ -3405,7 +3431,8 @@ export default {
|
|||||||
|
|
||||||
// state.attach = info.attach;
|
// state.attach = info.attach;
|
||||||
// state.templateId = info.templateId;
|
// state.templateId = info.templateId;
|
||||||
state.sourceBelong = (info.sourceBelongFullName || '')+info.sourceBelongName;
|
state.sourceBelong =
|
||||||
|
(info.sourceBelongFullName || "") + info.sourceBelongName;
|
||||||
// state.fileList=info.attach.split(",")
|
// state.fileList=info.attach.split(",")
|
||||||
let d = info.attach.indexOf(",");
|
let d = info.attach.indexOf(",");
|
||||||
// console.log(info.attach, "xgo", info.attach.length);
|
// console.log(info.attach, "xgo", info.attach.length);
|
||||||
@@ -3702,7 +3729,7 @@ export default {
|
|||||||
console.log("state.projectId", state.projectId);
|
console.log("state.projectId", state.projectId);
|
||||||
getTask({
|
getTask({
|
||||||
projectId: state.projectId,
|
projectId: state.projectId,
|
||||||
useTask:'N'
|
useTask: "N",
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
console.log("获取项目状态", res);
|
console.log("获取项目状态", res);
|
||||||
state.action = res.data.data.projectInfo.status;
|
state.action = res.data.data.projectInfo.status;
|
||||||
@@ -4013,13 +4040,13 @@ export default {
|
|||||||
};
|
};
|
||||||
state.codeInfo = obj;
|
state.codeInfo = obj;
|
||||||
};
|
};
|
||||||
function settingTopFlag(record){
|
function settingTopFlag(record) {
|
||||||
record.topFlag?(state.canclestu1 = true):(state.canclestu=true)
|
record.topFlag ? (state.canclestu1 = true) : (state.canclestu = true);
|
||||||
state.editRecord = record
|
state.editRecord = record;
|
||||||
}
|
}
|
||||||
function showStudent(record){
|
function showStudent(record) {
|
||||||
state.Seevisible = true
|
state.Seevisible = true;
|
||||||
state.checkStuId = record.studentId
|
state.checkStuId = record.studentId;
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
|
|||||||
Reference in New Issue
Block a user