diff --git a/src/api/index1.js b/src/api/index1.js
index e72c8d52..db43fa13 100644
--- a/src/api/index1.js
+++ b/src/api/index1.js
@@ -222,6 +222,8 @@ export const updateStuCert = (obj) => http.post('/admin/certificate/updateStuCer
//添加外部考试
export const createExamination = (obj) => http.post('/examination/createExamination', obj)
+//催促考试
+export const batchSendMessage = (obj) => http.post('/admin/taskmanage/batchSendMessage', obj)
// 外部考试导入成绩
export const ImportExternalExamScore = (obj) => http.post('/admin/external/exam/manage/importExternalExamScore', obj, { headers: { "Content-Type": "multipart/form-data" } })
//分组
diff --git a/src/components/drawers/ActiveAttendance.vue b/src/components/drawers/ActiveAttendance.vue
index b40ab272..1fedd458 100644
--- a/src/components/drawers/ActiveAttendance.vue
+++ b/src/components/drawers/ActiveAttendance.vue
@@ -71,7 +71,7 @@
-
+
@@ -541,6 +541,15 @@ export default {
// });
}
);
+
+ // 导出数据
+ function exportGroupMember() {
+ console.log("props.datasource", props);
+ window.open(
+ `${process.env.VUE_APP_BASE_API}/admin/studentGroup/exportGroupMember/${props.projectId}/${props.chooseGroupId}`
+ );
+ }
+
function submitCall(flag) {
flag && getStu();
}
@@ -563,6 +572,7 @@ export default {
closedeleone,
yesdele,
submitCall,
+ exportGroupMember
};
},
};
diff --git a/src/components/drawers/ProjectAudit.vue b/src/components/drawers/ProjectAudit.vue
index 0f035ae4..6ceb745e 100644
--- a/src/components/drawers/ProjectAudit.vue
+++ b/src/components/drawers/ProjectAudit.vue
@@ -304,7 +304,7 @@ export default {
faceclassScene: [],
projectInfo: {},
- tableDataTotal: 20,
+ tableDataTotal: 2,
pageSize: 10,
currentPage: 1,
tableData: [],
diff --git a/src/components/drawers/ProjectScore.vue b/src/components/drawers/ProjectScore.vue
index 5122b99d..17dc5609 100644
--- a/src/components/drawers/ProjectScore.vue
+++ b/src/components/drawers/ProjectScore.vue
@@ -13,7 +13,7 @@
placeholder="请输入姓名"
/>
-
+
搜索
@@ -75,7 +75,7 @@
姓名:
diff --git a/src/components/drawers/StuScoreDetail.vue b/src/components/drawers/StuScoreDetail.vue
index a6607154..fbc4cf4d 100644
--- a/src/components/drawers/StuScoreDetail.vue
+++ b/src/components/drawers/StuScoreDetail.vue
@@ -109,8 +109,8 @@ export default {
},
{
title: "类型",
- dataIndex: "type",
- key: "type",
+ dataIndex: "typeDesc",
+ key: "typeDesc",
width: 60,
align: "center",
className: "h",
diff --git a/src/components/drawers/project/ImpoterGroupLeader.vue b/src/components/drawers/project/ImpoterGroupLeader.vue
index 213b50ea..39dc4180 100644
--- a/src/components/drawers/project/ImpoterGroupLeader.vue
+++ b/src/components/drawers/project/ImpoterGroupLeader.vue
@@ -19,12 +19,12 @@
-
请下载
-
- 模板
-
-
,按要求填写数据并导入
+
导入小组长
+
+
+
+
请先导出小组填写小组长,按要求填写数据并导入
上传:
@@ -130,10 +130,10 @@ const closeDrawer = () => {
function openDrawer() {
visible.value = true
}
-
-function downTemplate() {
- window.open(process.env.VUE_APP_BASE_API + props.templateUrl);
-}
+//
+// function downTemplate() {
+// window.open(process.env.VUE_APP_BASE_API + props.templateUrl);
+// }
function downloadErrorData(url) {
window.open(process.env.VUE_APP_FILE_PATH + url)
diff --git a/src/components/drawers/project/ProjectExamManage.vue b/src/components/drawers/project/ProjectExamManage.vue
index 2bb9e61b..4b1ff864 100644
--- a/src/components/drawers/project/ProjectExamManage.vue
+++ b/src/components/drawers/project/ProjectExamManage.vue
@@ -56,11 +56,11 @@
-
+
导出数据
@@ -126,6 +126,7 @@ import { message } from "ant-design-vue";
import EScore from "../ExportScore.vue";
import CheckAnsware from '../CheckAnsware.vue'
import * as api from '../../../api/indexTaskManage';
+import { batchSendMessage } from "@/api/index1";
// import * as api from "../../../api/index";
export default {
@@ -364,7 +365,22 @@ export default {
//催促学员学习
const godie = () => {
- message.destroy();
+ //项目催促请求报文
+ var obj = {
+ 'courseId': props.datasource.courseId,//任务的Id
+ 'courseName': props.title,//任务的名称
+ 'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
+ 'routerTaskId': props.datasource.routerId,//任务的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("成功");
+ }).catch(err => {
+ console.log(err)
+ })
message.success("催促" + props.title + "成功");
};
//导入成绩
diff --git a/src/components/drawers/project/ProjectExternalExamManage.vue b/src/components/drawers/project/ProjectExternalExamManage.vue
index 151ec439..61f62857 100644
--- a/src/components/drawers/project/ProjectExternalExamManage.vue
+++ b/src/components/drawers/project/ProjectExternalExamManage.vue
@@ -57,11 +57,11 @@
-
+
导出数据
@@ -130,6 +130,7 @@
import { message } from "ant-design-vue";
import ExportAchievement from "../ExportAchievement.vue";
import * as api from '../../../api/indexTaskManage';
+ import { batchSendMessage } from "@/api/index1";
export default {
name: "ProjectExternalExamManage",
@@ -359,7 +360,22 @@
//催促学员学习
const godie = () => {
- message.destroy();
+ //项目催促请求报文
+ var obj = {
+ 'courseId': props.datasource.courseId,//任务的Id
+ 'courseName': props.title,//任务的名称
+ 'logo': '1',//项目或径的标识 1-项目 2-路径图 3面授课
+ 'routerTaskId': props.datasource.routerId,//任务的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("成功");
+ }).catch(err => {
+ console.log(err)
+ })
message.success("催促" + props.title + "成功");
};
//导入成绩
diff --git a/src/components/drawers/router/RouterExaminationExternalManage.vue b/src/components/drawers/router/RouterExaminationExternalManage.vue
index 41006a32..84cc0c66 100644
--- a/src/components/drawers/router/RouterExaminationExternalManage.vue
+++ b/src/components/drawers/router/RouterExaminationExternalManage.vue
@@ -57,10 +57,10 @@
-
+
导出数据
@@ -129,6 +129,7 @@
import { message } from "ant-design-vue";
import ExportAchievement from "../ExportAchievement.vue";
import * as api from '../../../api/indexTaskManage';
+ import { batchSendMessage } from "@/api/index1";
// import * as api from "../../../api/index";
export default {
@@ -363,6 +364,22 @@
//催促学员学习
const godie = () => {
message.destroy();
+ //考试催促请求报文
+ var obj = {
+ 'courseId': props.datasource.courseId,//任务的Id
+ 'courseName': props.title,//任务的名称
+ 'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
+ 'routerTaskId': props.datasource.routerId,//任务的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("成功");
+ }).catch(err => {
+ console.log(err)
+ })
message.success("催促" + props.title + "成功");
};
//导入成绩
diff --git a/src/components/drawers/router/RouterExaminationManage.vue b/src/components/drawers/router/RouterExaminationManage.vue
index b8792fc8..4b1b0212 100644
--- a/src/components/drawers/router/RouterExaminationManage.vue
+++ b/src/components/drawers/router/RouterExaminationManage.vue
@@ -33,10 +33,10 @@
-
+
导出数据
@@ -88,6 +88,7 @@ import { message } from "ant-design-vue";
import EScore from "../ExportScore.vue";
import CheckAnsware from '../CheckAnsware.vue'
import * as api from '../../../api/indexTaskManage';
+import { batchSendMessage } from "@/api/index1";
// import * as api from "../../../api/index";
export default {
@@ -365,7 +366,22 @@ export default {
//催促学员学习
const godie = () => {
- message.destroy();
+ //考试催促请求报文
+ var obj = {
+ 'courseId': props.datasource.courseId,//任务的Id
+ 'courseName': props.title,//任务的名称
+ 'logo': '2',//项目或径的标识 1-项目 2-路径图 3面授课
+ 'routerTaskId': props.datasource.routerId,//任务的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("成功");
+ }).catch(err => {
+ console.log(err)
+ })
message.success("催促" + props.title + "成功");
};
//导入成绩
diff --git a/src/components/student/CommonStudent.vue b/src/components/student/CommonStudent.vue
index 9b474053..7ddcaedc 100644
--- a/src/components/student/CommonStudent.vue
+++ b/src/components/student/CommonStudent.vue
@@ -295,7 +295,7 @@ import {
AUDIENCE_LIST,
ORG_CHILD_LIST,
ORG_LIST,
- // USER_LIST,
+ // USER_LIST,
USER_LIST_PAGE,
} from "@/api/ThirdApi";
import {
@@ -700,7 +700,7 @@ function onOrgSelectChange(e, l) {
selectsData.value.deptList = l.selectedNodes;
// 获取被点击的树节点
-
+
}
function onAuditSelectChange(e, l) {
@@ -781,7 +781,7 @@ function handleStageOk() {
// 判断是否是组长,组长不能添加
const leaderArray = selectsData.value.projectMemberList.filter(item => item.isLeader === '1');
if (leaderArray.length > 0) {
- return message.warning("当前选学员"+leaderArray[0].realName+"已在其他小组为小组长,请勿重复选择。");
+ return message.warning("当前选中学员"+leaderArray[0].realName+"已是小组长,请勿重复选择。");
}
// 对选中的人员进行判断是否已经分组了
let haveGroupNum = selectsData.value.projectMemberList.filter(item => item.groupId !== null);
diff --git a/src/views/courselibrary/CoursewareManage.vue b/src/views/courselibrary/CoursewareManage.vue
index 93ffd476..5dc54a08 100644
--- a/src/views/courselibrary/CoursewareManage.vue
+++ b/src/views/courselibrary/CoursewareManage.vue
@@ -1109,7 +1109,7 @@
-
+
-->
-
+
diff --git a/src/views/examine/CourseReviewedN.vue b/src/views/examine/CourseReviewedN.vue
index 24994c86..826162fa 100644
--- a/src/views/examine/CourseReviewedN.vue
+++ b/src/views/examine/CourseReviewedN.vue
@@ -148,10 +148,10 @@
+ centered="true" style="height:400px;">
-
+
项目说明:
-
{{ remark }}
+
+ {{ remark }}
+
@@ -2356,7 +2371,7 @@ export default {
],
//小组信息列表
groupList: [],
- isBatch: false, // 批量
+ isBatch: false, // 批量
// stuName: "", //搜索的学员姓名
// stuGroup: "", //搜索的学员小组名称
// stuBum: "", //搜索的学员小组部门
@@ -2442,6 +2457,7 @@ export default {
valueaddm: "", //创建小组输入小组长
valueaddg: "", //创建小组输入名称
groupInfo: { leaderName: "", leaderId: "" }, //创建小组
+ groupMemberCountContrast: null,
groupPageList: [], //小组列表
groupNumber: 0, //组员人数
valuestun: "", //学员管理姓名
@@ -3069,21 +3085,22 @@ export default {
};
//显示学员换组弹窗
const showChangeGroupModal = (record) => {
- debugger
- console.log("单个")
+ console.log("单个");
state.changegroupV = true;
console.log("点击换组", record.id);
state.checkgroupStuId = [];
- state.checkgroupStuId.push(record.id) ;
+ state.checkgroupStuId.push(record.id);
};
const showModal2 = (item, isEdit) => {
state.isEdit = isEdit;
state.stugroup = true;
state.groupInfo = item || {};
+ state.groupMemberCountContrast = item.groupMemberCount;
};
const closeModal2 = () => {
state.stugroup = false;
state.groupInfo = {};
+ state.groupMemberCountContrast = null;
};
//点击确定创建小组
const createG = () => {
@@ -3100,7 +3117,6 @@ export default {
return message.warning("请输入组员数量");
}
createGroup();
- closeModal2();
};
const showFaceIn = () => {
state.TaskFaceImpStuvisible = true;
@@ -3151,7 +3167,6 @@ export default {
}
//考勤的抽屉
const showAA = (course, a, data) => {
- debugger
state.AAvisible = true;
state.liveData = data;
state.showKaoqinText = "直播";
@@ -3918,20 +3933,24 @@ export default {
//创建小组
const createGroup = async () => {
console.log("state.groupPageList" + state.groupPageList);
- const d = state.groupPageList.filter(
+ const id = state.groupInfo.id;
+ const d = state.groupPageList.filter(item => item.id !== id).filter(
(item) => item.leaderId === state.groupInfo.leaderId
);
- const id = state.groupInfo.id;
if (state.isEdit) {
if (d.length > 0 && d[0].id !== id) {
return message.warn(d[0].leaderName + "已是小组长,请重新选择");
}
+ // 小组人数只能由小改大,不能由大改小
+ if (state.groupMemberCountContrast > state.groupInfo.groupMemberCount) {
+ return message.warn("当前不支持修改组员人数小于原组员数量。");
+ }
} else {
if (d.length > 0) {
- return message.warn(d[0].leaderName + "已是小组长,请重新选择");
+ return message.warn(d[0].leaderName + "已是小组长,请重新选择");
}
}
- // 过滤掉编辑时候,只修改了组员最大值时候
+
state.isEdit = false;
await editGroup({ ...state.groupInfo, projectId: state.projectId });
@@ -3939,6 +3958,7 @@ export default {
getGroup();
console.log("state.groupPageList:");
getStu();
+ closeModal2();
};
//搜索小组重置
const resetGroupName = () => {
diff --git a/vue.config.js b/vue.config.js
index 26253a7e..6723a260 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -15,8 +15,8 @@ module.exports = defineConfig({
port: 8070,
proxy: {
"/manageApi": {
- //target: 'http:' + process.env.VUE_APP_PROXY_URL,
- target: 'http://localhost:30001',
+ target: 'http:' + process.env.VUE_APP_PROXY_URL,
+ //target: 'http://localhost:30001',
changeOrigin: true, //表示是否改变原域名
pathRewrite: {
"^/manageApi": "",