Merge branch 'dongwu_develop' into develop

This commit is contained in:
BOE\10867418
2023-03-22 09:46:20 +08:00
16 changed files with 200 additions and 58 deletions

View File

@@ -33,7 +33,7 @@ import {USER_PERMISSION} from "@/api/ThirdApi";
const store = useStore();
const isLogin = ref(false);
console.log("版本2.2.1------------");
console.log("版本2.2.2------------");
// 监听关闭浏览器
let time1 = ref(0);

View File

@@ -217,7 +217,7 @@ export function useRowsPage(_url, params, init = true) {
};
}
export function usePage(_url, params, init = true) {
export function usePage(_url, params, init = true,listing = false) {
const state = reactive({
data: [],
@@ -227,7 +227,7 @@ export function usePage(_url, params, init = true) {
loading: false
});
if (isRef(params)) {
if (isRef(params) && listing) {
watch(params.value, () => {
fetch();
});

View File

@@ -69,11 +69,11 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px">
<!--
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>-->
</div>
<div class="btn btn2" @click="exportTaskStu" v-if="checkPer(permissions,createId)">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -120,6 +120,7 @@ import { message } from "ant-design-vue";
// import * as api from "../../../api/index";
import * as api from "../../../api/indexTaskManage";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "ProjectEvalManage",
@@ -343,8 +344,22 @@ export default {
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//项目催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.projectId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.stageId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -379,7 +379,7 @@ export default {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.projectId,//任务的routerTaskld或projectTaskld
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.projectId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.stageId,//阶段或关卡Id

View File

@@ -366,7 +366,7 @@
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.projectId,//任务的routerTaskld或projectTaskld
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.projectId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.stageId,//阶段或关卡Id

View File

@@ -68,6 +68,10 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px" v-if="checkPer(permissions,createId)">
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>
<div class="btn btn2" @click="exportTaskStu">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -165,6 +169,7 @@ import EScore from "../ExportScore.vue";
import * as api from "../../../api/index1";
import ExportHomeWork from "../../Modals/ExportHomeWork.vue";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "ProjectHomeWorkManage",
components: {
@@ -503,8 +508,22 @@ export default {
};
//催促学员学习
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//项目催促请求报文
var obj = {
'courseId': props.projectTaskInfo.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.projectTaskInfo.id,//任务的routerTaskld或projectTaskld
'targetId': props.projectTaskInfo.projectId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.projectTaskInfo.type,//催促的任务的类型
'chapterId': props.projectTaskInfo.stageId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
//表头清空
const clearLine = () => {

View File

@@ -85,11 +85,11 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px">
<!-- <div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>
-->
<div class="btn btn2" @click="exportTaskStu" v-if="checkPer(permissions,createId)">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -139,6 +139,7 @@ import { message } from "ant-design-vue";
import * as api from "../../../api/indexTaskManage";
import ViewAssess from "../ViewAssess";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "ProjectOnlineManage",
@@ -379,8 +380,21 @@ export default {
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.projectId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.stageId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -69,11 +69,11 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px">
<!--
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>-->
</div>
<div class="btn btn2" @click="exportTaskStu" v-if="checkPer(permissions,createId)">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -126,6 +126,7 @@
import * as api from "../../../api/indexTaskManage";
import CVote from "../CheckVote.vue"
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "ProjectVoteManage",
@@ -351,8 +352,22 @@
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//项目催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.projectId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.stageId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -85,11 +85,11 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px" v-if="checkPer(permissions,createId)">
<!--
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>-->
</div>
<div class="btn btn2" @click="exportTaskStu">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -139,6 +139,7 @@ import ViewAssess from "../ViewAssess";
// import * as api from "../../../api/index";
import * as api from "../../../api/indexTaskManage";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "RouterCommonManage",
components: { ViewAssess },
@@ -386,8 +387,22 @@ export default {
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//考试催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -68,10 +68,10 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px" v-if="checkPer(permissions,createId)">
<!-- <div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div> -->
</div>
<div class="btn btn2" @click="exportTaskStu">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -118,6 +118,7 @@ import { message } from "ant-design-vue";
// import * as api from "../../../api/index";
import * as api from "../../../api/indexTaskManage";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "RouterEvaluationManage",
@@ -341,8 +342,22 @@ export default {
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//考试催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -379,7 +379,7 @@
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.routerId,//任务的routerTaskld或projectTaskld
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id

View File

@@ -380,7 +380,7 @@ export default {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.routerId,//任务的routerTaskld或projectTaskld
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id

View File

@@ -39,6 +39,10 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px" v-if="checkPer(permissions,createId)">
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>
<div class="btn btn2" @click="exportTaskStu">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -108,6 +112,7 @@ import EScore from "../ExportScore.vue";
import * as api from "../../../api/index1";
import ExportHomeWork from "../../Modals/ExportHomeWork.vue";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "RouterCommonManage",
components: {
@@ -445,8 +450,22 @@ export default {
};
//催促学员学习
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//考试催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
//表头清空
const clearLine = () => {

View File

@@ -69,11 +69,11 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px" v-if="checkPer(permissions,createId)">
<!--
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>-->
</div>
<div class="btn btn2" @click="exportTaskStu">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -127,6 +127,7 @@
import * as api from "../../../api/indexTaskManage";
import CheckStu from "../CheckStu";
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "RouterProjectManage",
@@ -420,8 +421,22 @@
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//考试催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -69,11 +69,11 @@
</div>
</div>
<div class="btnss" style="margin-top: 20px" v-if="checkPer(permissions,createId)">
<!--
<div class="btn btn1" @click="godie" style="margin-right: 20px">
<div class="img1"></div>
<div class="wz">催促学习</div>
</div>-->
</div>
<div class="btn btn2" @click="exportTaskStu">
<div class="img2"></div>
<div class="wz">导出数据</div>
@@ -126,6 +126,7 @@
import * as api from "../../../api/indexTaskManage";
import CVote from "../CheckVote.vue"
import {checkPer} from "@/utils/utils";
import { batchSendMessage } from "@/api/index1";
export default {
name: "RouterVoteManage",
@@ -372,8 +373,22 @@
};
//催促
const godie = () => {
message.destroy();
message.success("催促" + props.title + "成功");
//考试催促请求报文
var obj = {
'courseId': props.datasource.courseId,//任务的Id
'courseName': props.title,//任务的名称
'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
'routerTaskId': props.datasource.id,//任务的routerTaskld或projectTaskld
'targetId': props.datasource.routerId,//路径图的就是routerId,项目的是projectId;根据这张图来看的话
'taskType': props.datasource.type,//催促的任务的类型
'chapterId': props.datasource.chapterId,//阶段或关卡Id
};
batchSendMessage(obj).then(res => {
console.log(res)
message.success("催促" + props.title + "成功");
}).catch(err => {
console.log(err)
})
};
const onChange = (pageNumber) => {
console.log("Page: ", pageNumber);

View File

@@ -17,10 +17,17 @@
}}
</div>
<div>
<span style="color:#999">授课教师</span>{{ formData.teacherName || ''}}
<span style="color:#999">授课教师</span>{{ formData.teacherName || "" }}
</div>
<div>
<span style="color:#999">审核状态</span>{{ {1:'草稿',2:'待审核',3:'审核不通过',5:'审核通过'}[formData.status] || '' }}
<span style="color:#999">审核状态</span>{{
{
1: "草稿",
2: "待审核",
3: "审核不通过",
5: "审核通过"
}[formData.status] || ""
}}
</div>
</div>
<div class="TableStudent">
@@ -106,13 +113,14 @@
</template>
<script setup>
import {computed, defineExpose, defineProps, ref, watch} from "vue";
import {boeRequest,request, usePage} from "@/api/request";
import {boeRequest, request, usePage} from "@/api/request";
import {ONLINE_COURSE_TEACHER, STUDENT_LIST} from "@/api/apis";
import CommonStudent from "@/components/student/CommonStudent";
import {checkPer} from "@/utils/utils";
import dialog from "@/utils/dialog";
import {ONLINE_COURSE_DEL} from "@/api/ThirdApi";
import {useStore} from "vuex";
import {useResetRef} from "@/utils/useCommon";
const props = defineProps({
permissions: {
@@ -133,17 +141,14 @@ const props = defineProps({
const visiable = ref(false);
const store = useStore();
const initParams = {
const searchParams = useResetRef({
studentName: "",
pageNo: 1,
pageSize: 10,
type: props.type || "",
types: props.types,
pid: props.id || "",
};
const searchParams = ref(initParams);
const searchName = ref("");
});
const columns = ref([
{
@@ -253,9 +258,9 @@ const columns = ref([
const formData = ref({});
watch(formData, () => {
request(ONLINE_COURSE_TEACHER, { courseId: formData.value.id }).then(res=>{
formData.value.teacherName = res.data
})
request(ONLINE_COURSE_TEACHER, { courseId: formData.value.id }).then(res => {
formData.value.teacherName = res.data;
});
});
const sysTypeOption1 = computed(() => store.state.content_type.find(({ code }) => code == formData.value.sysType1));
@@ -305,16 +310,11 @@ const closeDrawer = () => {
};
function reset() {
searchParams.value = initParams;
searchName.value = "";
searchParams.reset({ pid: searchParams.value.pid });
searchStu();
}
watch(visiable, () => {
visiable.value && searchStu();
searchParams.value = initParams;
});
function exportStu(){
function exportStu() {
window.open(`${process.env.VUE_APP_BASE_API}/admin/student/exportOnlineStudent?type=3&&thirdType=8&pid=${props.id}`);
}