mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/student-h5.git
synced 2025-12-06 17:36:45 +08:00
feat:判断任务是否有学员
This commit is contained in:
@@ -27,7 +27,7 @@ import { GET_USER_INFO } from "@/api/ThirdApi";
|
|||||||
import { getCookie } from "@/api/utils";
|
import { getCookie } from "@/api/utils";
|
||||||
|
|
||||||
import { USER_INFO } from "@/api/api";
|
import { USER_INFO } from "@/api/api";
|
||||||
console.log("版本1.2.13------------");
|
console.log("版本1.3.1------------");
|
||||||
const store = useStore();
|
const store = useStore();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
|
|
||||||
|
|||||||
@@ -162,4 +162,5 @@ export const fileUp = (data) => httpupload.post("/file/upload", data, {
|
|||||||
});
|
});
|
||||||
export const videoUp = (data) => httpupload.post("/file/uploadunlimit", data, {
|
export const videoUp = (data) => httpupload.post("/file/uploadunlimit", data, {
|
||||||
headers: { "Content-Type": "multipart/form-data" },
|
headers: { "Content-Type": "multipart/form-data" },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
BIN
src/assets/image/pathDetails/path2.png
Normal file
BIN
src/assets/image/pathDetails/path2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 902 KiB |
BIN
src/assets/image/pathDetails/path3.png
Normal file
BIN
src/assets/image/pathDetails/path3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 MiB |
BIN
src/assets/image/pathDetails/pathnoselect2.png
Normal file
BIN
src/assets/image/pathDetails/pathnoselect2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
BIN
src/assets/image/pathDetails/pathnoselect3.png
Normal file
BIN
src/assets/image/pathDetails/pathnoselect3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/image/pathDetails/pathselect2.png
Normal file
BIN
src/assets/image/pathDetails/pathselect2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
BIN
src/assets/image/pathDetails/pathselect3.png
Normal file
BIN
src/assets/image/pathDetails/pathselect3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
@@ -1,5 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="pathDetail pathDetailback" v-if="data?.list">
|
<div
|
||||||
|
:class="
|
||||||
|
imgAttrindex === 1
|
||||||
|
? 'pathDetail pathDetailback'
|
||||||
|
: imgAttrindex === 2
|
||||||
|
? 'pathDetail path3'
|
||||||
|
: 'pathDetail path2'
|
||||||
|
"
|
||||||
|
v-if="data?.list"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
v-for="(item, i) in data?.list"
|
v-for="(item, i) in data?.list"
|
||||||
:key="i"
|
:key="i"
|
||||||
@@ -11,17 +20,75 @@
|
|||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
@click="toDetail(i)"
|
@click="toDetail(i)"
|
||||||
:class="current === i ? 'nameClass currentBack' : 'nameClass nameBack'"
|
:class="
|
||||||
|
imgAttrindex === 1
|
||||||
|
? current === i
|
||||||
|
? 'nameClass currentBack'
|
||||||
|
: 'nameClass nameBack'
|
||||||
|
: imgAttrindex === 2
|
||||||
|
? current === i
|
||||||
|
? 'nameClass pathselect3'
|
||||||
|
: 'nameClass pathnoselect3'
|
||||||
|
: current === i
|
||||||
|
? 'nameClass pathselect2'
|
||||||
|
: 'nameClass pathnoselect2'
|
||||||
|
"
|
||||||
:title="item.name"
|
:title="item.name"
|
||||||
:style="{
|
:style="{
|
||||||
backgroundSize: '100%',
|
backgroundSize: '100%',
|
||||||
width: `${current === i ? 100 : 100}px`,
|
width: `${
|
||||||
height: `${current === i ? 75 : 75}px`,
|
imgAttrindex === 1
|
||||||
|
? current === i
|
||||||
|
? 100
|
||||||
|
: 100
|
||||||
|
: imgAttrindex === 2
|
||||||
|
? current === i
|
||||||
|
? 100
|
||||||
|
: 100
|
||||||
|
: current === i
|
||||||
|
? 100
|
||||||
|
: 100
|
||||||
|
}px`,
|
||||||
|
height: `${
|
||||||
|
imgAttrindex === 1
|
||||||
|
? current === i
|
||||||
|
? 75
|
||||||
|
: 75
|
||||||
|
: imgAttrindex === 2
|
||||||
|
? current === i
|
||||||
|
? 100
|
||||||
|
: 100
|
||||||
|
: current === i
|
||||||
|
? 75
|
||||||
|
: 75
|
||||||
|
}px`,
|
||||||
lineHeight: '50px',
|
lineHeight: '50px',
|
||||||
color: '#FFF',
|
color:
|
||||||
|
imgAttrindex === 1
|
||||||
|
? '#FFF'
|
||||||
|
: imgAttrindex === 2
|
||||||
|
? '#FFF'
|
||||||
|
: imgAttrindex === 3 && current === i
|
||||||
|
? '#FFF'
|
||||||
|
: '#000',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
{{ item.name }}
|
<div
|
||||||
|
:style="{
|
||||||
|
'margin-left':
|
||||||
|
imgAttrindex === 1 ? '0px' : imgAttrindex === 2 ? '13px' : '17px',
|
||||||
|
'margin-top':
|
||||||
|
imgAttrindex === 1
|
||||||
|
? '0px'
|
||||||
|
: imgAttrindex === 2
|
||||||
|
? '5px'
|
||||||
|
: imgAttrindex === 3 && current === i
|
||||||
|
? '0px'
|
||||||
|
: '-5px',
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
{{ item.name }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -59,12 +126,45 @@ const imageAttrs = {
|
|||||||
{ left: 297, top: -63 },
|
{ left: 297, top: -63 },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
路径图2: {
|
||||||
|
width: 1437,
|
||||||
|
height: 594,
|
||||||
|
positions: [
|
||||||
|
{ left: -26, top: 379 },
|
||||||
|
{ left: 91, top: 319 },
|
||||||
|
{ left: 28, top: 218 },
|
||||||
|
{ left: 114, top: 153 },
|
||||||
|
{ left: 40, top: 46 },
|
||||||
|
{ left: 184, top: -28 },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
路径图3: {
|
||||||
|
width: 1437,
|
||||||
|
height: 594,
|
||||||
|
positions: [
|
||||||
|
{ left: -21, top: 398 },
|
||||||
|
{ left: 145, top: 324 },
|
||||||
|
{ left: 44, top: 252 },
|
||||||
|
{ left: 144, top: 165 },
|
||||||
|
{ left: 53, top: 63 },
|
||||||
|
{ left: 180, top: -15 },
|
||||||
|
],
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const imgAttr = computed(
|
const imgAttr = computed(
|
||||||
() =>
|
() =>
|
||||||
imageAttrs[Object.keys(imageAttrs).find((e) => props.img.includes(e))] || {}
|
imageAttrs[Object.keys(imageAttrs).find((e) => props.img.includes(e))] || {}
|
||||||
);
|
);
|
||||||
|
const imgAttrindex = computed(() =>
|
||||||
|
Object.keys(imageAttrs).find((e) => props.img.includes(e)) === "路径图背景"
|
||||||
|
? 1
|
||||||
|
: Object.keys(imageAttrs).find((e) => props.img.includes(e)) === "路径图2"
|
||||||
|
? 2
|
||||||
|
: 3
|
||||||
|
);
|
||||||
|
console.log("imgAttrindex", imgAttrindex);
|
||||||
|
|
||||||
// 使用
|
// 使用
|
||||||
const loading = ref(false); // loading
|
const loading = ref(false); // loading
|
||||||
const openLoading = () => {
|
const openLoading = () => {
|
||||||
@@ -78,32 +178,40 @@ openLoading();
|
|||||||
const closeLoading = () => {
|
const closeLoading = () => {
|
||||||
loading.value.close();
|
loading.value.close();
|
||||||
};
|
};
|
||||||
// const data = ref([
|
// const data = ref({
|
||||||
// {
|
// list: [
|
||||||
// name: "关卡一",
|
// {
|
||||||
// },
|
// name: "关卡一",
|
||||||
// {
|
// },
|
||||||
// name: "关卡二",
|
// {
|
||||||
// },
|
// name: "关卡二",
|
||||||
// {
|
// },
|
||||||
// name: "关卡三",
|
// {
|
||||||
// },
|
// name: "关卡三",
|
||||||
// {
|
// },
|
||||||
// name: "关卡四",
|
// {
|
||||||
// },
|
// name: "关卡四",
|
||||||
// {
|
// },
|
||||||
// name: "关卡五",
|
// {
|
||||||
// },
|
// name: "关卡五",
|
||||||
// {
|
// },
|
||||||
// name: "关卡六",
|
// {
|
||||||
// },
|
// name: "关卡六",
|
||||||
// ]);
|
// },
|
||||||
|
// ],
|
||||||
|
// });
|
||||||
// closeLoading();
|
// closeLoading();
|
||||||
const { data } = useRequest(
|
const { data } = useRequest(
|
||||||
ROUTERTASK_LIST,
|
ROUTERTASK_LIST,
|
||||||
{ routerId: props.routerId },
|
{ routerId: props.routerId },
|
||||||
() => {
|
(e) => {
|
||||||
closeLoading();
|
closeLoading();
|
||||||
|
console.log("获取路径图", e);
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
console.log("data", data);
|
console.log("data", data);
|
||||||
@@ -152,6 +260,12 @@ function toIndex() {
|
|||||||
.pathDetailback {
|
.pathDetailback {
|
||||||
background-image: url("../assets/image/pathDetails/pathDetailBack.png");
|
background-image: url("../assets/image/pathDetails/pathDetailBack.png");
|
||||||
}
|
}
|
||||||
|
.path2 {
|
||||||
|
background-image: url("../assets/image/pathDetails/path2.png");
|
||||||
|
}
|
||||||
|
.path3 {
|
||||||
|
background-image: url("../assets/image/pathDetails/path3.png");
|
||||||
|
}
|
||||||
.pathDetail {
|
.pathDetail {
|
||||||
width: 410px;
|
width: 410px;
|
||||||
height: 500px;
|
height: 500px;
|
||||||
@@ -181,5 +295,19 @@ function toIndex() {
|
|||||||
.currentBack {
|
.currentBack {
|
||||||
background-image: url("../assets/image/pathDetails/pathDetailImgSelect.png");
|
background-image: url("../assets/image/pathDetails/pathDetailImgSelect.png");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.pathselect2 {
|
||||||
|
background-image: url("../assets/image/pathDetails/pathselect2.png");
|
||||||
|
}
|
||||||
|
.pathnoselect2 {
|
||||||
|
background-image: url("../assets/image/pathDetails/pathnoselect2.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
.pathselect3 {
|
||||||
|
background-image: url("../assets/image/pathDetails/pathselect3.png");
|
||||||
|
}
|
||||||
|
.pathnoselect3 {
|
||||||
|
background-image: url("../assets/image/pathDetails/pathnoselect3.png");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -151,7 +151,7 @@ import { request, useRequest } from "@/api/request";
|
|||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
import { useRoute } from "vue-router/dist/vue-router";
|
import { useRoute } from "vue-router/dist/vue-router";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import { reactive, onUnmounted, toRefs } from "vue";
|
import { reactive, onUnmounted, toRefs, watch } from "vue";
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const returnclick = () => {
|
const returnclick = () => {
|
||||||
@@ -168,7 +168,14 @@ const state = reactive({
|
|||||||
|
|
||||||
const { isAllowSign, closeBtn } = toRefs(state);
|
const { isAllowSign, closeBtn } = toRefs(state);
|
||||||
|
|
||||||
const { data } = useRequest(ACTIVITY, { activityId });
|
const { data } = useRequest(ACTIVITY, { activityId }, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
console.log("data", data);
|
console.log("data", data);
|
||||||
const signClick = (tab, event) => {
|
const signClick = (tab, event) => {
|
||||||
if (data.value.signFlag) {
|
if (data.value.signFlag) {
|
||||||
|
|||||||
@@ -173,7 +173,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { reactive, toRefs, computed, onUnmounted, ref } from "vue";
|
import { reactive, toRefs, computed, onUnmounted, ref, watch } from "vue";
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
// import TitleHead from "@/components/TitleHead.vue";
|
// import TitleHead from "@/components/TitleHead.vue";
|
||||||
import { useRequest, request } from "@/api/request";
|
import { useRequest, request } from "@/api/request";
|
||||||
@@ -187,7 +187,14 @@ const {
|
|||||||
query: { courseId, chapterOrStageId, infoId, id, btype },
|
query: { courseId, chapterOrStageId, infoId, id, btype },
|
||||||
} = useRoute();
|
} = useRoute();
|
||||||
const userInfo = computed(() => store.state.userInfo);
|
const userInfo = computed(() => store.state.userInfo);
|
||||||
const { data } = useRequest(VOTE_DETAIL3(courseId), {});
|
const { data } = useRequest(VOTE_DETAIL3(courseId), {}, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
console.log("投票基本信息", data);
|
console.log("投票基本信息", data);
|
||||||
//投票倒计时
|
//投票倒计时
|
||||||
let hour = ref(0);
|
let hour = ref(0);
|
||||||
|
|||||||
@@ -108,7 +108,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { reactive, toRefs } from "vue";
|
import { reactive, toRefs, watch } from "vue";
|
||||||
// import TitleHead from "@/components/TitleHead.vue";
|
// import TitleHead from "@/components/TitleHead.vue";
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
import { request, useRequest } from "@/api/request";
|
import { request, useRequest } from "@/api/request";
|
||||||
@@ -165,6 +165,11 @@ request(DISCUSS_LIST, {
|
|||||||
console.log("讨论详情", state.info);
|
console.log("讨论详情", state.info);
|
||||||
state.discussId = e.data.discussDtoList[0].id;
|
state.discussId = e.data.discussDtoList[0].id;
|
||||||
getPostList(e.data.discussDtoList[0].id);
|
getPostList(e.data.discussDtoList[0].id);
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
|||||||
@@ -68,7 +68,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
import { computed, reactive, toRefs, onUnmounted, ref } from "vue";
|
import { computed, reactive, toRefs, onUnmounted, ref, watch } from "vue";
|
||||||
import img from "@/assets/image/uploadimg.png";
|
import img from "@/assets/image/uploadimg.png";
|
||||||
import { request, useRequest } from "@/api/request";
|
import { request, useRequest } from "@/api/request";
|
||||||
import { EVALUATION_DETAIL, STUDY_RECORD, EvaluationToLearn } from "@/api/api";
|
import { EVALUATION_DETAIL, STUDY_RECORD, EvaluationToLearn } from "@/api/api";
|
||||||
@@ -89,8 +89,15 @@ const {
|
|||||||
},
|
},
|
||||||
} = useRoute();
|
} = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { data } = useRequest(EVALUATION_DETAIL(evaluationId));
|
const { data } = useRequest(EVALUATION_DETAIL(evaluationId), {}, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
console.log("测评信息222", data);
|
console.log("测评信息222", data);
|
||||||
|
|
||||||
const userInfo = computed(() => store.state.userInfo);
|
const userInfo = computed(() => store.state.userInfo);
|
||||||
//作业倒计时
|
//作业倒计时
|
||||||
let hour = ref(0);
|
let hour = ref(0);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
* @Author: lixg lixg@dongwu-inc.com
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
* @Date: 2023-02-06 18:26:23
|
* @Date: 2023-02-06 18:26:23
|
||||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
* @LastEditTime: 2023-03-01 18:27:31
|
* @LastEditTime: 2023-03-02 01:57:28
|
||||||
* @FilePath: /stu_h5/src/views/examination/ExternalExam.vue
|
* @FilePath: /stu_h5/src/views/examination/ExternalExam.vue
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
-->
|
-->
|
||||||
@@ -47,6 +47,7 @@ import { useRoute, useRouter } from "vue-router/dist/vue-router";
|
|||||||
const {
|
const {
|
||||||
query: { courseId },
|
query: { courseId },
|
||||||
} = useRoute();
|
} = useRoute();
|
||||||
|
const router = useRouter();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
datainfo: {},
|
datainfo: {},
|
||||||
});
|
});
|
||||||
@@ -55,6 +56,11 @@ request(EXTERNALEXAM, { externalId: courseId })
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log("获取考试", res);
|
console.log("获取考试", res);
|
||||||
state.datainfo = res.data;
|
state.datainfo = res.data;
|
||||||
|
if (res.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
|||||||
@@ -83,7 +83,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { computed, onUnmounted, reactive, ref, toRefs } from "vue";
|
import { computed, onUnmounted, reactive, ref, toRefs, watch } from "vue";
|
||||||
import { request, useRequest } from "@/api/request";
|
import { request, useRequest } from "@/api/request";
|
||||||
import {
|
import {
|
||||||
TASK_WORK_COMMIT,
|
TASK_WORK_COMMIT,
|
||||||
@@ -117,8 +117,20 @@ const {
|
|||||||
// console.log("type", type);
|
// console.log("type", type);
|
||||||
const { data } =
|
const { data } =
|
||||||
taskId && taskId !== "undefined"
|
taskId && taskId !== "undefined"
|
||||||
? useRequest(TASK_WORK_DETAIL, { workId, taskId })
|
? useRequest(TASK_WORK_DETAIL, { workId, taskId }, (e) => {
|
||||||
: useRequest(TASK_WORK_DETAIL, { workId });
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
: useRequest(TASK_WORK_DETAIL, { workId }, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
console.log("data==----->", data);
|
console.log("data==----->", data);
|
||||||
//作业倒计时
|
//作业倒计时
|
||||||
|
|||||||
@@ -217,7 +217,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, reactive, toRefs } from "vue";
|
import { ref, reactive, toRefs, watch } from "vue";
|
||||||
import checkbox from "@/assets/image/checkbox.png";
|
import checkbox from "@/assets/image/checkbox.png";
|
||||||
import checkbox2 from "@/assets/image/checkbox2.png";
|
import checkbox2 from "@/assets/image/checkbox2.png";
|
||||||
import { useRoute, useRouter } from "vue-router/dist/vue-router";
|
import { useRoute, useRouter } from "vue-router/dist/vue-router";
|
||||||
@@ -246,12 +246,23 @@ const returnclick = () => {
|
|||||||
router.back();
|
router.back();
|
||||||
};
|
};
|
||||||
|
|
||||||
const { data } = useRequest(ASSESSMENT_QUERY(courseId), {
|
const { data } = useRequest(
|
||||||
id: courseId,
|
ASSESSMENT_QUERY(courseId),
|
||||||
type,
|
{
|
||||||
chapterOrStageId,
|
id: courseId,
|
||||||
targetId: infoId ? infoId : 0,
|
type,
|
||||||
});
|
chapterOrStageId,
|
||||||
|
targetId: infoId ? infoId : 0,
|
||||||
|
},
|
||||||
|
(e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
console.log("我是查询评估的参数", {
|
console.log("我是查询评估的参数", {
|
||||||
id: courseId,
|
id: courseId,
|
||||||
type,
|
type,
|
||||||
|
|||||||
@@ -196,7 +196,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
import { computed, reactive, toRefs, onUnmounted, ref } from "vue";
|
import { computed, reactive, toRefs, onUnmounted, ref, watch } from "vue";
|
||||||
import img from "@/assets/image/uploadimg.png";
|
import img from "@/assets/image/uploadimg.png";
|
||||||
import { request, useRequest } from "@/api/request";
|
import { request, useRequest } from "@/api/request";
|
||||||
import { TASK_BROADCAST_DETAIL, TASK_BROADCAST_SIGN } from "@/api/api";
|
import { TASK_BROADCAST_DETAIL, TASK_BROADCAST_SIGN } from "@/api/api";
|
||||||
@@ -222,8 +222,15 @@ const returnclick = () => {
|
|||||||
router.back();
|
router.back();
|
||||||
};
|
};
|
||||||
|
|
||||||
const { data } = useRequest(TASK_BROADCAST_DETAIL, { liveId });
|
const { data } = useRequest(TASK_BROADCAST_DETAIL, { liveId }, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
console.log("直播信息", data);
|
console.log("直播信息", data);
|
||||||
|
|
||||||
const teacherInfo = useUserInfo(computed(() => data.value.userInfoBo?.userId));
|
const teacherInfo = useUserInfo(computed(() => data.value.userInfoBo?.userId));
|
||||||
|
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
|
|||||||
24
src/views/nottask/NotPath.vue
Normal file
24
src/views/nottask/NotPath.vue
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
|
* @Date: 2023-03-01 20:41:06
|
||||||
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
|
* @LastEditTime: 2023-03-01 21:32:29
|
||||||
|
* @FilePath: /stu_h5/src/views/nottask/NotTask.vue
|
||||||
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<el-result
|
||||||
|
icon="success"
|
||||||
|
title="您不是此学习路径/项目学员"
|
||||||
|
sub-title="请联系管理员"
|
||||||
|
>
|
||||||
|
<template #extra>
|
||||||
|
<el-button type="primary" @click="toIndex">返回首页</el-button>
|
||||||
|
</template>
|
||||||
|
</el-result>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
function toIndex() {
|
||||||
|
window.location.href = import.meta.env.VITE_BOE_API_URL;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
20
src/views/nottask/NotProject.vue
Normal file
20
src/views/nottask/NotProject.vue
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
|
* @Date: 2023-03-01 20:41:06
|
||||||
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
|
* @LastEditTime: 2023-03-01 20:43:40
|
||||||
|
* @FilePath: /stu_h5/src/views/nottask/NotTask.vue
|
||||||
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<el-result icon="success" title="您不是此项目学员" sub-title="请联系管理员">
|
||||||
|
<template #extra>
|
||||||
|
<el-button type="primary" @click="toIndex">返回首页</el-button>
|
||||||
|
</template>
|
||||||
|
</el-result>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
function toIndex() {
|
||||||
|
window.location.href = import.meta.env.VITE_BOE_API_URL;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@@ -54,7 +54,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
import { computed, reactive, toRefs, onUnmounted, ref } from "vue";
|
import { computed, reactive, toRefs, onUnmounted, ref, watch } from "vue";
|
||||||
import img from "@/assets/image/uploadimg.png";
|
import img from "@/assets/image/uploadimg.png";
|
||||||
import { request, useRequest } from "@/api/request";
|
import { request, useRequest } from "@/api/request";
|
||||||
import { LINK_DETAILS, STUDY_RECORD } from "@/api/api";
|
import { LINK_DETAILS, STUDY_RECORD } from "@/api/api";
|
||||||
@@ -76,7 +76,15 @@ const {
|
|||||||
} = useRoute();
|
} = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
console.log("外链信息", linkId);
|
console.log("外链信息", linkId);
|
||||||
const { data } = useRequest(LINK_DETAILS(linkId));
|
|
||||||
|
const { data } = useRequest(LINK_DETAILS(linkId), {}, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
console.log("外链信息", data);
|
console.log("外链信息", data);
|
||||||
const userInfo = computed(() => store.state.userInfo);
|
const userInfo = computed(() => store.state.userInfo);
|
||||||
const goOuterChain = () => {
|
const goOuterChain = () => {
|
||||||
|
|||||||
@@ -2,12 +2,12 @@
|
|||||||
* @Author: lixg lixg@dongwu-inc.com
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
* @Date: 2023-01-19 14:59:34
|
* @Date: 2023-01-19 14:59:34
|
||||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
* @LastEditTime: 2023-03-01 18:03:05
|
* @LastEditTime: 2023-03-02 01:59:54
|
||||||
* @FilePath: /stu_h5/src/views/pathmap/LevelList.vue
|
* @FilePath: /stu_h5/src/views/pathmap/LevelList.vue
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="pathdetails" v-if="data">
|
<div class="pathdetails">
|
||||||
<ReturnHead
|
<ReturnHead
|
||||||
text="路径详情"
|
text="路径详情"
|
||||||
:showfile="true"
|
:showfile="true"
|
||||||
@@ -35,21 +35,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 关卡列表 -->
|
<!-- 关卡列表 -->
|
||||||
</div>
|
</div>
|
||||||
<div v-else class="pathdetails">
|
|
||||||
<el-result
|
|
||||||
icon="success"
|
|
||||||
title="您不是此学习路径学员"
|
|
||||||
sub-title="请联系管理员"
|
|
||||||
>
|
|
||||||
<template #extra>
|
|
||||||
<el-button type="primary" @click="toIndex">返回首页</el-button>
|
|
||||||
</template>
|
|
||||||
</el-result>
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { computed, reactive, toRefs, onUnmounted, ref } from "vue";
|
import { computed, reactive, toRefs, onUnmounted, ref, watch } from "vue";
|
||||||
import ReturnHead from "@/components/ReturnHead.vue";
|
import ReturnHead from "@/components/ReturnHead.vue";
|
||||||
import PathDetailImage from "@/components/PathDetailImage.vue";
|
import PathDetailImage from "@/components/PathDetailImage.vue";
|
||||||
import { useRequest, request, usePage } from "@/api/request";
|
import { useRequest, request, usePage } from "@/api/request";
|
||||||
@@ -60,12 +49,13 @@ import {
|
|||||||
TASK_LIST,
|
TASK_LIST,
|
||||||
} from "@/api/api";
|
} from "@/api/api";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
|
const router = useRouter();
|
||||||
const listheight = document.body.clientHeight - 310 + "px";
|
const listheight = document.body.clientHeight - 310 + "px";
|
||||||
const {
|
const {
|
||||||
query: { routerId },
|
query: { routerId },
|
||||||
} = useRoute();
|
} = useRoute();
|
||||||
const { data } = useRequest(ROUTER_PROCESS, { routerId: routerId });
|
const { data } = useRequest(ROUTER_PROCESS, { routerId: routerId });
|
||||||
console.log("获取路径图", data);
|
|
||||||
function toIndex() {
|
function toIndex() {
|
||||||
window.location.href = import.meta.env.VITE_BOE_API_URL;
|
window.location.href = import.meta.env.VITE_BOE_API_URL;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="projectdetails" v-if="data?.projectId">
|
<div class="projectdetails">
|
||||||
<ReturnHead
|
<ReturnHead
|
||||||
text="项目详情"
|
text="项目详情"
|
||||||
:showfile="true"
|
:showfile="true"
|
||||||
@@ -200,13 +200,6 @@
|
|||||||
</div> -->
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
|
||||||
<el-result icon="success" title="您不是此项目学员" sub-title="请联系管理员">
|
|
||||||
<template #extra>
|
|
||||||
<el-button type="primary" @click="toIndex">返回首页</el-button>
|
|
||||||
</template>
|
|
||||||
</el-result>
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
@@ -233,7 +226,21 @@ const {
|
|||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { commit, dispatch, state } = useStore();
|
const { commit, dispatch, state } = useStore();
|
||||||
const data = computed(() => state.projectInfo);
|
const data = computed(() => state.projectInfo);
|
||||||
|
useRequest(PROJECT_PROCESS, { projectId: projectId }, (e) => {
|
||||||
|
if (e.code === 6) {
|
||||||
|
console.log("eee", e);
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
watch(data, () => {
|
||||||
|
if (data.value.code === 6) {
|
||||||
|
router.push({
|
||||||
|
path: "/notpath",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
dispatch("getProjectInfo", { projectId });
|
dispatch("getProjectInfo", { projectId });
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user