From e3437adf0a03045c36888005fd1cc183a771942d Mon Sep 17 00:00:00 2001 From: lixg Date: Sat, 25 Feb 2023 22:28:45 +0800 Subject: [PATCH 01/17] =?UTF-8?q?feat:=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/projectcenter/templateAdd.vue | 209 ++++++++++++------------ 1 file changed, 106 insertions(+), 103 deletions(-) diff --git a/src/views/projectcenter/templateAdd.vue b/src/views/projectcenter/templateAdd.vue index 67b90b61..8f5884e2 100644 --- a/src/views/projectcenter/templateAdd.vue +++ b/src/views/projectcenter/templateAdd.vue @@ -4,10 +4,10 @@
创建/编辑单层模板
返回
@@ -17,32 +17,32 @@
模板名称
封面图
avatar
@@ -70,64 +70,65 @@
项目时间
项目经理
资源归属
项目级别
@@ -138,8 +139,8 @@
培训体系
@@ -150,8 +151,8 @@
是否BOEU实施
@@ -166,34 +167,30 @@
同步学习记录
-
+
- 同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)
-
+
- 同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)同步课程学习记录(如学员在课程库中拥有课程的学习记录,自动免修该课程)
@@ -203,11 +200,11 @@
@@ -216,7 +213,7 @@ diff --git a/src/views/courselibrary/courseModal.vue b/src/views/courselibrary/courseModal.vue index e1b08b74..1b500710 100644 --- a/src/views/courselibrary/courseModal.vue +++ b/src/views/courselibrary/courseModal.vue @@ -593,9 +593,9 @@ export default defineComponent({ selectBandName: [], selectBandId: [], //资源归属 - sourceBelongId: [], - sourceBelongName: [], - sourceBelongFullName: [], + sourceBelongId: null, + sourceBelongName: null, + sourceBelongFullName: null, }); const store = useStore(); console.log(store, 666); @@ -606,7 +606,12 @@ export default defineComponent({ const jobType = computed(() => store.state.job_type); //获取band const bandList = computed(() => store.state.band); + const userInfo = computed(() => store.state.userInfo); console.log("jobTypebandList", jobType, bandList); + if (userInfo.value.departId && userInfo.value.departName) { + state.sourceBelongName = userInfo.value.departName; + state.sourceBelongId = userInfo.value.departId; + } watch( () => state.fen_lei, () => { @@ -718,9 +723,9 @@ export default defineComponent({ state.selectBandName = []; state.selectBandId = []; //资源归属 - state.sourceBelongId = []; - state.sourceBelongName = []; - state.sourceBelongFullName = []; + state.sourceBelongId = null; + state.sourceBelongName = null; + state.sourceBelongFullName = null; // valueHtml.value = ""; console.log("清空"); }; @@ -754,7 +759,15 @@ export default defineComponent({ fileUp(formData).then((res) => { if (res.data.code === 200) { // 最后插入图片 url alt href - insertFn(res.data.data, file.name, res.data.data); + console.log( + "上传图片结果", + process.env.VUE_APP_FILE_PATH + res.data.data + ); + insertFn( + process.env.VUE_APP_FILE_PATH + res.data.data, + file.name, + res.data.data + ); } }); }, diff --git a/src/views/research/components/ResearchAddItem.vue b/src/views/research/components/ResearchAddItem.vue index 84b25443..8e9443a3 100644 --- a/src/views/research/components/ResearchAddItem.vue +++ b/src/views/research/components/ResearchAddItem.vue @@ -64,7 +64,11 @@ export default { setup(props, { emit }) { const curItem = ref(props.item); console.log("选项信息", curItem.value, process.env.VUE_APP_FILE_PATH); - curItem.value.imgVal = process.env.VUE_APP_FILE_PATH + curItem.value.imgVal; + if (curItem.value.imgVal) { + curItem.value.imgVal = + process.env.VUE_APP_FILE_PATH + curItem.value.imgVal; + } + const state = reactive({ hasImgName: "", }); From 8f43e199380796271f2ce0406e463011b9de140c Mon Sep 17 00:00:00 2001 From: lpq Date: Sun, 26 Feb 2023 16:01:25 +0800 Subject: [PATCH 10/17] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=AD=A6=E5=91=98=E6=8F=90=E4=BA=A4=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/drawers/ProjCheckPower.vue | 4 +- src/components/student/CommonStudent.vue | 52 +++++++++++--------- src/components/student/TableStudent.vue | 6 +++ src/views/courselibrary/CoursewareManage.vue | 2 + src/views/projectcenter/TaskPage.vue | 1 + 5 files changed, 41 insertions(+), 24 deletions(-) diff --git a/src/components/drawers/ProjCheckPower.vue b/src/components/drawers/ProjCheckPower.vue index e93999f4..55f11b95 100644 --- a/src/components/drawers/ProjCheckPower.vue +++ b/src/components/drawers/ProjCheckPower.vue @@ -118,7 +118,7 @@ preserveSelectedRowKeys: true, }" /> - +
\ No newline at end of file + diff --git a/src/components/student/CommonStudent.vue b/src/components/student/CommonStudent.vue index de01dd4d..ebec28a4 100644 --- a/src/components/student/CommonStudent.vue +++ b/src/components/student/CommonStudent.vue @@ -352,7 +352,12 @@ const props = defineProps({ type: Number, default: null, }, + activeKey1: { + type: String, + default: null, + }, }); +console.log("props.activeKey1" + props.activeKey1) // 获取项目学员; const procurrentPage = ref(1); const projectList = ref([]); @@ -775,30 +780,33 @@ const submitAuth = () => { }; function handleStageOk() { + debugger // 判断添加人数是否已超过限制人数 限制 = 本次添加的人 + 原有的人 if (props.type === 1) { - let selectMember = 0; - if (activeKey.value === 4) { // 项目内选人 - selectMember = selectsData.value.projectMemberList.length - } else if (activeKey.value === 1) { - selectMember = selectsData.value.studentList.length - } else if (activeKey.value === 2) { - selectMember = selectsData.value.groupList.length - } else if (activeKey.value === 3) { - selectMember = selectsData.value.deptList.length - } - if (props.groupMemberCount < selectMember + Number(props.groupMemberNumber)) { - return message.warning("添加小组学员超过最大值"); - } - // 判断是否是组长,组长不能添加 - const leaderArray = selectsData.value.projectMemberList.filter(item => item.isLeader === '1'); - if (leaderArray.length > 0) { - return message.warning("当前选中学员"+leaderArray[0].realName+"已是小组长,请勿重复选择。"); - } - // 对选中的人员进行判断是否已经分组了 - let haveGroupNum = selectsData.value.projectMemberList.filter(item => item.groupId !== null); - if (haveGroupNum.length > 0) { - message.warning("部分学员已经有小组,再次添加会被添加到当前小组."); + if (props.groupMemberCount !== null) { // 只有添加组员的时候判断 + let selectMember = 0; + if (activeKey.value === 4) { // 项目内选人 + selectMember = selectsData.value.projectMemberList.length + } else if (activeKey.value === 1) { + selectMember = selectsData.value.studentList.length + } else if (activeKey.value === 2) { + selectMember = selectsData.value.groupList.length + } else if (activeKey.value === 3) { + selectMember = selectsData.value.deptList.length + } + if (props.groupMemberCount < selectMember + Number(props.groupMemberNumber)) { + return message.warning("添加小组学员超过最大值"); + } + // 判断是否是组长,组长不能添加 + const leaderArray = selectsData.value.projectMemberList.filter(item => item.isLeader === '1'); + if (leaderArray.length > 0) { + return message.warning("当前选中学员"+leaderArray[0].realName+"已是小组长,请勿重复选择。"); + } + // 对选中的人员进行判断是否已经分组了 + let haveGroupNum = selectsData.value.projectMemberList.filter(item => item.groupId !== null); + if (haveGroupNum.length > 0) { + message.warning("部分学员已经有小组,再次添加会被添加到当前小组."); + } } } stageVisible.value = false; diff --git a/src/components/student/TableStudent.vue b/src/components/student/TableStudent.vue index bd9e004a..7864c026 100644 --- a/src/components/student/TableStudent.vue +++ b/src/components/student/TableStudent.vue @@ -256,6 +256,10 @@ const props = defineProps({ type: String, default: "", }, + activeKey:{ + type: String, + default: "", + }, id: String, columns: { type: Array, @@ -453,6 +457,8 @@ function exportTaskStuRouter() { } onMounted(() => { + debugger + console.log("props.activeKey1" + props.activeKey1) getStuList(); }); watch(props.isgetStudent, () => { diff --git a/src/views/courselibrary/CoursewareManage.vue b/src/views/courselibrary/CoursewareManage.vue index 54925c96..7fe7965a 100644 --- a/src/views/courselibrary/CoursewareManage.vue +++ b/src/views/courselibrary/CoursewareManage.vue @@ -3437,6 +3437,7 @@ export default defineComponent({ ]); // 删除文件返回参数 const changevalue = (e) => { + debugger let arr = state.attach.split(","); let newarr = []; for (let i = 0; i < arr.length; i++) { @@ -4430,6 +4431,7 @@ export default defineComponent({ state.lookCourseModal = false; }; const handleLook = async (itm, type) => { + debugger if (type === "1") { return; } diff --git a/src/views/projectcenter/TaskPage.vue b/src/views/projectcenter/TaskPage.vue index d1953a6f..69812ff7 100644 --- a/src/views/projectcenter/TaskPage.vue +++ b/src/views/projectcenter/TaskPage.vue @@ -757,6 +757,7 @@ :permissions="permissions" :type="1" :id="projectId" + :activeKey1="activeKey1" :columns="stuColumns" :stage="stage" :visable="tabFlag" From ff8798de54a1b7a42fce6f3cfc12317a2d43f1c1 Mon Sep 17 00:00:00 2001 From: wyx Date: Sun, 26 Feb 2023 17:05:29 +0800 Subject: [PATCH 11/17] =?UTF-8?q?fix:=E8=80=83=E5=8B=A4=E7=AD=BE=E5=88=B0?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E5=8F=82=E6=95=B0=E4=BC=A0=E9=80=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/drawers/ActiveAttendance.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/drawers/ActiveAttendance.vue b/src/components/drawers/ActiveAttendance.vue index 185ef73b..8ad99129 100644 --- a/src/components/drawers/ActiveAttendance.vue +++ b/src/components/drawers/ActiveAttendance.vue @@ -826,7 +826,7 @@ export default { name: props.datasource?.name, url: process.env.VUE_APP_BASE_API + - `/admin/student/studentSign?taskId=${props.datasource.routerTaskId + `/admin/student/studentSign?taskId=${props.datasource.id }&taskType=${props.datasource.type}&type=${2}`, }; console.log("codeInfo", state.codeInfo); From 2a08720d4b72482a5d4c0c72063a39ad0c1ed732 Mon Sep 17 00:00:00 2001 From: yuping <82253452@qq.com> Date: Sun, 26 Feb 2023 17:15:07 +0800 Subject: [PATCH 12/17] -- fix bug --- src/utils/utils.js | 7 ++++++- src/views/learningpath/LearningPath.vue | 2 +- src/views/projectcenter/ProjectManage.vue | 7 ++++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/utils/utils.js b/src/utils/utils.js index ad837a57..c8a0d54a 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -29,7 +29,7 @@ export function traverseArr(arr, traverseObj, saveOld = false) { } const admin = [5, 6, 8, 9, 11, 12] - +//检查 管理权和归属权 export function checkPer(per) { if (store?.state?.userInfo?.roleList.some(t => t.code === 'learning-admin')) { return true @@ -39,6 +39,11 @@ export function checkPer(per) { } return (per + "").split(',').some(t => admin.some(s => s == t)) } +const adminOwner = [6,9,12] +//单独检查是否有归属权 +export function checkOwner(per) { + return (per + "").split(',').some(t => adminOwner.some(s => s == t)) +} export function checkMenu(path='') { return store?.state?.menus.some(t => path.split(',').some(s=>'/'+s===t)); } diff --git a/src/views/learningpath/LearningPath.vue b/src/views/learningpath/LearningPath.vue index 958b336f..a754d0ab 100644 --- a/src/views/learningpath/LearningPath.vue +++ b/src/views/learningpath/LearningPath.vue @@ -119,7 +119,7 @@ type="link" >编辑 - 管理 + 管理 撤回发布 管理 - + Date: Sun, 26 Feb 2023 17:15:10 +0800 Subject: [PATCH 13/17] =?UTF-8?q?fix:=E5=8E=BB=E9=99=A4debugger?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/drawers/ActiveAttendance.vue | 1 - src/components/drawers/CheckWork.vue | 2 +- src/components/student/CommonStudent.vue | 2 +- src/components/student/TableStudent.vue | 2 +- src/views/courselibrary/CoursewareManage.vue | 2 -- src/views/projectcenter/TaskPage.vue | 1 - 6 files changed, 3 insertions(+), 7 deletions(-) diff --git a/src/components/drawers/ActiveAttendance.vue b/src/components/drawers/ActiveAttendance.vue index 8ad99129..27282fde 100644 --- a/src/components/drawers/ActiveAttendance.vue +++ b/src/components/drawers/ActiveAttendance.vue @@ -855,7 +855,6 @@ export default { // 导出数据 function exportTaskStu() { - debugger {/* debugger */ } console.log("props.datasource此处的taskId 应该是router_task 表中主键", props.datasource); console.log("props.datasource", props.datasource); diff --git a/src/components/drawers/CheckWork.vue b/src/components/drawers/CheckWork.vue index 83cd35d8..00200b2d 100644 --- a/src/components/drawers/CheckWork.vue +++ b/src/components/drawers/CheckWork.vue @@ -183,7 +183,7 @@ export default { }; //获取作业详情 const getWorkDetail = () => { - debugger + // debugger console.log("props.workId, props.stuId", props.workId, props.stuId); getWorkSubmitInfo(props.workId, props.stuId) .then((res) => { diff --git a/src/components/student/CommonStudent.vue b/src/components/student/CommonStudent.vue index ebec28a4..0220971b 100644 --- a/src/components/student/CommonStudent.vue +++ b/src/components/student/CommonStudent.vue @@ -780,7 +780,7 @@ const submitAuth = () => { }; function handleStageOk() { - debugger + // debugger // 判断添加人数是否已超过限制人数 限制 = 本次添加的人 + 原有的人 if (props.type === 1) { if (props.groupMemberCount !== null) { // 只有添加组员的时候判断 diff --git a/src/components/student/TableStudent.vue b/src/components/student/TableStudent.vue index 8f1e219a..c0956c54 100644 --- a/src/components/student/TableStudent.vue +++ b/src/components/student/TableStudent.vue @@ -580,7 +580,7 @@ function exportTaskStuRouter() { } onMounted(() => { - debugger + // debugger console.log("props.activeKey1" + props.activeKey1) getStuList(); }); diff --git a/src/views/courselibrary/CoursewareManage.vue b/src/views/courselibrary/CoursewareManage.vue index e13d95fd..2c6e7daf 100644 --- a/src/views/courselibrary/CoursewareManage.vue +++ b/src/views/courselibrary/CoursewareManage.vue @@ -3436,7 +3436,6 @@ export default defineComponent({ ]); // 删除文件返回参数 const changevalue = (e) => { - debugger let arr = state.attach.split(","); let newarr = []; for (let i = 0; i < arr.length; i++) { @@ -4434,7 +4433,6 @@ export default defineComponent({ state.lookCourseModal = false; }; const handleLook = async (itm, type) => { - debugger if (type === "1") { return; } diff --git a/src/views/projectcenter/TaskPage.vue b/src/views/projectcenter/TaskPage.vue index 69812ff7..893e353d 100644 --- a/src/views/projectcenter/TaskPage.vue +++ b/src/views/projectcenter/TaskPage.vue @@ -3939,7 +3939,6 @@ export default { }; //创建小组 const createGroup = async () => { - debugger console.log("state.groupPageList" + state.groupPageList); const id = state.groupInfo.id; const d = state.groupPageList From b1447629fdf7058dd6d898998755997eb57d33ae Mon Sep 17 00:00:00 2001 From: yuping <82253452@qq.com> Date: Sun, 26 Feb 2023 17:36:19 +0800 Subject: [PATCH 14/17] -- fix bug --- src/views/courselibrary/CoursewareManage.vue | 5 +++-- src/views/learningpath/LearningPath.vue | 2 +- src/views/learningpath/LevelAdd.vue | 2 +- src/views/projectcenter/ProjectManage.vue | 7 +------ src/views/projectcenter/TaskPage.vue | 5 +++-- 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/views/courselibrary/CoursewareManage.vue b/src/views/courselibrary/CoursewareManage.vue index 2c6e7daf..bab011ec 100644 --- a/src/views/courselibrary/CoursewareManage.vue +++ b/src/views/courselibrary/CoursewareManage.vue @@ -366,7 +366,7 @@ type="link" >管理 - + 权限名单 @@ -1731,7 +1731,7 @@ import FJUpload from "@/components/common/FJUpload"; import { updateStudent } from "@/api/indexProjStu"; import { useStore } from "vuex"; import DropDown from "@/components/common/DropDown"; -import { checkPer } from "@/utils/utils"; +import { checkPer,checkOwner } from "@/utils/utils"; import dayjs from "dayjs"; //列表表格 @@ -4990,6 +4990,7 @@ export default defineComponent({ beforeUpload2, handleDel, checkPer, + checkOwner, handleSucessStu, handleRejectStu, handleDeleteStu, diff --git a/src/views/learningpath/LearningPath.vue b/src/views/learningpath/LearningPath.vue index a754d0ab..958b336f 100644 --- a/src/views/learningpath/LearningPath.vue +++ b/src/views/learningpath/LearningPath.vue @@ -119,7 +119,7 @@ type="link" >编辑 - 管理 + 管理 - +
diff --git a/src/views/projectcenter/ProjectManage.vue b/src/views/projectcenter/ProjectManage.vue index bb43ee23..0b3ac2f4 100644 --- a/src/views/projectcenter/ProjectManage.vue +++ b/src/views/projectcenter/ProjectManage.vue @@ -160,12 +160,7 @@ type="link" >撤回发布 - 管理 + 管理 查看 - {{ record.topFlag ? "取消优秀" : "优秀学员" }} 换组 @@ -1073,7 +1074,7 @@
-
+
+添加证书
Date: Sun, 26 Feb 2023 17:53:36 +0800 Subject: [PATCH 15/17] -- fix bug --- src/components/drawers/project/ProjectOnlineManage.vue | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/components/drawers/project/ProjectOnlineManage.vue b/src/components/drawers/project/ProjectOnlineManage.vue index 8217e1f7..cb46129f 100644 --- a/src/components/drawers/project/ProjectOnlineManage.vue +++ b/src/components/drawers/project/ProjectOnlineManage.vue @@ -496,6 +496,9 @@ export default { if(props.datasource.type==1){ {/* 在线课导出 */} window.open(`${process.env.VUE_APP_BASE_API}/admin/online/manage/exportOnline?chapterId=${props.datasource.chapterId}&type=${1}&targetId=${props.datasource.routerId}&taskId=${props.datasource.courseId}`) + }else if(props.datasource.type==11){ + {/* 评估导出 */} + window.open(`${process.env.VUE_APP_BASE_API}admin/assessment/manage/exportAssessmentMessage?chapterId=${props.datasource.stageId}&type=${1}&pid=${props.datasource.projectId}&courseId=${props.datasource.courseId}&taskId=${props.datasource.id}&taskType=${props.datasource.type}`) }else{ window.open(`${process.env.VUE_APP_BASE_API}/admin/student/exportTaskStudent?currentStageId=${props.datasource.stageId}&type=${1}&pid=${props.datasource.projectId}&taskId=${props.datasource.id}&taskType=${props.datasource.type}`) } From 5d4b0a74938b94694c7250c975c8cae0c01668e6 Mon Sep 17 00:00:00 2001 From: yuping <82253452@qq.com> Date: Sun, 26 Feb 2023 18:04:31 +0800 Subject: [PATCH 16/17] -- fix bug --- src/views/learningpath/LevelAddDetail.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/learningpath/LevelAddDetail.vue b/src/views/learningpath/LevelAddDetail.vue index ab2a13b2..4dbf10dd 100644 --- a/src/views/learningpath/LevelAddDetail.vue +++ b/src/views/learningpath/LevelAddDetail.vue @@ -261,7 +261,7 @@ size="small" active-color="red"/>
必修
From 9ec18c6487168dee8caa9bcdd56bf417bf29b9de Mon Sep 17 00:00:00 2001 From: wyx Date: Sun, 26 Feb 2023 18:14:01 +0800 Subject: [PATCH 17/17] =?UTF-8?q?fix:=E4=BD=9C=E4=B8=9A=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E6=88=90=E7=BB=A9id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/drawers/ExportScore.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/drawers/ExportScore.vue b/src/components/drawers/ExportScore.vue index b3ee5147..eadbe8d2 100644 --- a/src/components/drawers/ExportScore.vue +++ b/src/components/drawers/ExportScore.vue @@ -24,7 +24,7 @@ @change="handleChange" :showUploadList="false" :data="{ type: type, taskId: Number(id), - workId: datesource.info.id, + workId: datesource.info?datesource.info.id:id, targetId: Number(id), }">