This commit is contained in:
Pengxiansen
2025-02-27 13:57:58 +08:00
parent baec2692f7
commit ee08d2dab2
5 changed files with 47 additions and 40 deletions

View File

@@ -44,11 +44,12 @@ export const TASK_TYPES = {
}, },
path: { path: {
// 增加异步防止ios阻止弹窗弹出
1: ({ courseId }) => setTimeout(() => { window.open(window.location.protocol + import.meta.env.VITE_BOE_ONLINE_CLASS_URL + courseId) }), //在线 1: ({ courseId }) => setTimeout(() => { window.open(window.location.protocol + import.meta.env.VITE_BOE_ONLINE_CLASS_URL + courseId) }), //在线
2: ({ targetId }) => setTimeout(() => { window.open(`${location.protocol}//${location.host}${import.meta.env.VITE_BASE_API}/stu/project/redirectDetail?courseId=${targetId}`, '_top')}), 2: ({ targetId }) => setTimeout(() => { window.open(`${location.protocol}//${location.host}${import.meta.env.VITE_BASE_API}/stu/project/redirectDetail?courseId=${targetId}`, '_top') }),
3: ({ courseId }) => setTimeout(() => { window.open(window.location.protocol + import.meta.env.VITE_BOE_CASS_DETAIL_URL + courseId) }), //案例 3: ({ courseId }) => setTimeout(() => { window.open(window.location.protocol + import.meta.env.VITE_BOE_CASS_DETAIL_URL + courseId) }), //案例
4: "/homeworkpage", 4: "/homeworkpage",
5: ({ examType }) => examType === 2 ? '/externalexam' : setTimeout(() => {(window.location.protocol + import.meta.env.VITE_BOE_EXAM_DETAIL_URL)}), //考试 5: ({ examType }) => examType === 2 ? '/externalexam' : (window.location.protocol + import.meta.env.VITE_BOE_EXAM_DETAIL_URL), //考试
6: "/liveboradcast", 6: "/liveboradcast",
7: '/outerchain', //外联 7: '/outerchain', //外联
8: "/discusspage", 8: "/discusspage",

View File

@@ -97,7 +97,7 @@ const props = defineProps({
const point = [ const point = [
{ {
top: 0, top: 0,
right: -24, right: -40,
}, },
{ {
top: 51, top: 51,
@@ -148,11 +148,11 @@ const widthConfig = [
"20px", "20px",
"64px", "64px",
"40px", "40px",
"80px", "67px",
"40px", "40px",
"64px", "47px",
"80px", "80px",
"45px", "34px",
"65px", "65px",
]; ];
@@ -229,13 +229,14 @@ const toFinish = (item) => {
} }
.gowth-path2 { .gowth-path2 {
position: relative; position: relative;
margin: 50px 45px 31px 63px; width: 310px;
margin: 20px auto 31px auto;
box-sizing: border-box; box-sizing: border-box;
background-image: url(@/assets/image/growth/path2.png); background-image: url(@/assets/image/growth/path2.png);
background-size: 100%; background-size: 100%;
:deep(.el-progress-bar__outer){ :deep(.el-progress-bar__outer) {
background-color: #AEB3B8; background-color: #aeb3b8;
} }
.path-item { .path-item {
position: absolute; position: absolute;

View File

@@ -7,24 +7,24 @@
<div class="nav-title">{{ data.growthName }}</div> <div class="nav-title">{{ data.growthName }}</div>
</div> </div>
<!-- <template v-if="data.electiveTaskNum !== 0"> --> <!-- <template v-if="data.electiveTaskNum !== 0"> -->
<div class="tabs"> <div class="tabs">
<div <div
class="tabs-item" class="tabs-item"
:class="queryParams.type == 1 ? 'active' : ''" :class="queryParams.type == 1 ? 'active' : ''"
@click="tabClick(1)" @click="tabClick(1)"
> >
<div class="tabs-text">必修</div> <div class="tabs-text">必修</div>
<div class="tabs-line"></div> <div class="tabs-line"></div>
</div>
<div
class="tabs-item"
:class="queryParams.type == 2 ? 'active' : ''"
@click="tabClick(2)"
>
<div class="tabs-text">选修</div>
<div class="tabs-line"></div>
</div>
</div> </div>
<div
class="tabs-item"
:class="queryParams.type == 2 ? 'active' : ''"
@click="tabClick(2)"
>
<div class="tabs-text">选修</div>
<div class="tabs-line"></div>
</div>
</div>
<!-- </template> --> <!-- </template> -->
<div class="search"> <div class="search">
@@ -73,26 +73,28 @@
height: stageProcessList.length ? '' : ':400px', height: stageProcessList.length ? '' : ':400px',
}" }"
> >
<!-- :style="{ <!-- :style="{
top: data.electiveTaskNum !== 0 ? '165px' : '103px', top: data.electiveTaskNum !== 0 ? '165px' : '103px',
height: stageProcessList.length ? '' : ':400px', height: stageProcessList.length ? '' : ':400px',
}" --> }" -->
<template v-if="stageProcessList && stageProcessList.length"> <template v-if="stageProcessList && stageProcessList.length">
<div <div
:id="item.id" :id="item.id"
v-for="(item, key) in stageProcessList" v-for="(item, key) in stageProcessList"
:key="key" :key="key"
class="task-item" class="task-item"
> >
<div class="task-img" @click.native="toFinish(item)"> <div class="task-img" @click.native="toFinish(item)">
<img <img
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
:src="getAssetsFile(item.courseType)" :src="getAssetsFile(item.courseType)"
/> />
<div class="task-img-icon">{{ key + 1 }}</div> <div class="task-img-icon">{{ key + 1 }}</div>
</div> </div>
<div style="margin-left: 11px; width: 58%" @click.native="toFinish(item)"> <div
style="margin-left: 11px; width: 58%"
@click.native="toFinish(item)"
>
<div style="display: flex; align-items: center"> <div style="display: flex; align-items: center">
<div class="task-type"> <div class="task-type">
{{ TASK_TYPES.typeName[item.courseType] }} {{ TASK_TYPES.typeName[item.courseType] }}
@@ -507,7 +509,6 @@ async function toFinish(d) {
} }
console.log("TASK_TYPES.path[d.type]", TASK_TYPES.path[d.courseType]); console.log("TASK_TYPES.path[d.type]", TASK_TYPES.path[d.courseType]);
if (typeof TASK_TYPES.path[d.courseType] === "string") { if (typeof TASK_TYPES.path[d.courseType] === "string") {
TASK_TYPES.path[d.courseType] && TASK_TYPES.path[d.courseType] &&
TASK_TYPES.path[d.courseType].startsWith("http") && TASK_TYPES.path[d.courseType].startsWith("http") &&
window.open(TASK_TYPES.path[d.type] + d.targetId, "_top"); window.open(TASK_TYPES.path[d.type] + d.targetId, "_top");
@@ -545,10 +546,12 @@ async function toFinish(d) {
let params = { let params = {
examType: d.info.examType, examType: d.info.examType,
}; };
window.open( const path =
TASK_TYPES.path[d.courseType](params) + d.info.examinationPaperId, TASK_TYPES.path[d.courseType](params) + d.info.examinationPaperId;
"_top" // 增加异步防止ios阻止弹窗弹出
); setTimeout(() => {
window.open(path, "_top");
});
} else { } else {
let params = { let params = {
courseId: d.courseId ? d.courseId : d.info.id, courseId: d.courseId ? d.courseId : d.info.id,

View File

@@ -783,10 +783,12 @@ async function toFinish(d) {
let params = { let params = {
examType: d.info.examType, examType: d.info.examType,
}; };
window.open( const path =
TASK_TYPES.path[d.courseType](params) + d.info.examinationPaperId, TASK_TYPES.path[d.courseType](params) + d.info.examinationPaperId;
"_top" // 增加异步防止ios阻止弹窗弹出
); setTimeout(() => {
window.open(path, "_top");
});
} else { } else {
let params = { let params = {
courseId: d.courseId ? d.courseId : d.info.id, courseId: d.courseId ? d.courseId : d.info.id,

View File

@@ -41,7 +41,7 @@ export default defineConfig(({ command, mode }) =>
] ]
}, },
server: { server: {
// host: "192.168.3.51", // host: "0.0.0.0",
proxy: { proxy: {
// "/professional": { // "/professional": {
// // target: 'http://192.168.237.141:32002', // // target: 'http://192.168.237.141:32002',