From 675485fa8ed260a234003a246f535242472de1fa Mon Sep 17 00:00:00 2001 From: zhangyue Date: Wed, 11 Feb 2026 16:20:32 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E5=9F=B9=E8=AE=AD=E6=95=99=E6=9D=90=E6=88=96=E8=AF=BE=E7=A8=8B?= =?UTF-8?q?=E8=AE=B2=E4=B9=89=E4=B8=8B=E8=BD=BD=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edu/web/archives/ArchivesController.java | 6 +++ .../query/archives/ArchivesQueryExe.java | 51 +++++++++++++++++++ .../command/query/study/StudentQueryExe.java | 2 +- .../service/archives/ArchivesServiceImpl.java | 7 +++ .../edu/api/archives/ArchivesServiceI.java | 1 + .../zcloud/edu/dto/archives/ArchivesQry.java | 1 + .../mapper/study/ClassCurriculumMapper.xml | 3 +- 7 files changed, 69 insertions(+), 2 deletions(-) diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/archives/ArchivesController.java b/web-adapter/src/main/java/com/zcloud/edu/web/archives/ArchivesController.java index 05ef29c..64f804c 100644 --- a/web-adapter/src/main/java/com/zcloud/edu/web/archives/ArchivesController.java +++ b/web-adapter/src/main/java/com/zcloud/edu/web/archives/ArchivesController.java @@ -89,6 +89,12 @@ public class ArchivesController { archivesService.downloadReviewRevision(qry); return Response.buildSuccess(); } + @ApiOperation("单独下载安全培训教材或课程讲义") + @PostMapping("/downloadClassCur") + public Response downloadClassCur(@RequestBody ArchivesQry qry) { + archivesService.downloadClassCur(qry); + return Response.buildSuccess(); + } } diff --git a/web-app/src/main/java/com/zcloud/edu/command/query/archives/ArchivesQueryExe.java b/web-app/src/main/java/com/zcloud/edu/command/query/archives/ArchivesQueryExe.java index 8d1a5da..6d17d3b 100644 --- a/web-app/src/main/java/com/zcloud/edu/command/query/archives/ArchivesQueryExe.java +++ b/web-app/src/main/java/com/zcloud/edu/command/query/archives/ArchivesQueryExe.java @@ -889,5 +889,56 @@ public class ArchivesQueryExe { throw new RuntimeException(e); } } + + + + + public ClassArchivesDTO downloadClassCurById(ArchivesQry qry){ + HashMap params = new HashMap(); + // 班级信息 + ClassDO classDO = classRepository.getByClassId(qry.getClassId()); + // 班级课程 + ClassCurriculumDO classCurriculumDO = classCurriculumRepository.getInfoById(qry.getClassCurriculumIdLong()); + List classCurriculumChapterDOList = classCurriculumChapterRepository.listByClassCurriculumId(classCurriculumDO.getClassCurriculumId()); + ClassCurriculumCO classCurriculumCO = new ClassCurriculumCO(); + BeanUtils.copyProperties(classCurriculumDO, classCurriculumCO); + List classCurriculumChapterCOList = classCurriculumChapterCoConvertor.converDOsToCOs(classCurriculumChapterDOList); + List resultList = Tools.buildEntityTree(classCurriculumChapterCOList, "classCurriculumChapterId", "parentId", "childCurriculumChapterCOList", "0"); + classCurriculumCO.setCurriculumChapterCOList(resultList); + List curList = new ArrayList<>(); + curList.add(classCurriculumCO); + + ClassArchivesDTO classArchivesDTO = new ClassArchivesDTO(); + classArchivesDTO.setClassName(classDO.getName()); + SSOUser ssoUser = AuthContext.getCurrentUser(); + classArchivesDTO.setCorpinfoId(ssoUser.getTenantId()); + classArchivesDTO.setClassCurriculumList(curList); + // 新增档案下载记录 + ArchivesPdfFileE archivesPdfFileE = new ArchivesPdfFileE(); + archivesPdfFileE.init("class_curriculum", classCurriculumDO.getClassCurriculumId(), 2, ssoUser.getTenantId(), classDO.getName()+"-"+classCurriculumDO.getCurriculumName()+"安全培训教材"); + ArchivesPdfFileDO archivesPdfFileDO = new ArchivesPdfFileDO(); + BeanUtils.copyProperties(archivesPdfFileE, archivesPdfFileDO); + archivesPdfFileRepository.save(archivesPdfFileDO); + classArchivesDTO.setArchivesPdfFileId(archivesPdfFileDO.getId()); + return classArchivesDTO; + } + @Async("archivesAsyncExecutor") + public void execteDownloadClassCur(ClassArchivesDTO params){ + try { + byte[] word = execteClassCurriculumInfo(params.getClassCurriculumList().get(0)); + List byteArrayList = new ArrayList<>(); + byteArrayList.add(word); + byte[] pdf = WordToPdfUtil.mergeWordToPdf(byteArrayList); + String filepath = zcloudImgFilesFacade.saveFile(pdf, params.getClassName()+"-"+params.getClassCurriculumList().get(0).getCurriculumName()+"-安全培训教材或课程讲义-"+ DateUtil.getSdfTimes()+".pdf","classArchives", params.getCorpinfoId()); + ArchivesPdfFileE archivesPdfFileE = new ArchivesPdfFileE(); + archivesPdfFileE.initEdit(params.getArchivesPdfFileId(), filepath, 1, null); + ArchivesPdfFileDO archivesPdfFileDO = new ArchivesPdfFileDO(); + BeanUtils.copyProperties(archivesPdfFileE, archivesPdfFileDO); + archivesPdfFileRepository.updateById(archivesPdfFileDO); + } catch (Exception e){ + e.printStackTrace(); +// throw new RuntimeException(e); + } + } } diff --git a/web-app/src/main/java/com/zcloud/edu/command/query/study/StudentQueryExe.java b/web-app/src/main/java/com/zcloud/edu/command/query/study/StudentQueryExe.java index 7f0e4ee..b03a982 100644 --- a/web-app/src/main/java/com/zcloud/edu/command/query/study/StudentQueryExe.java +++ b/web-app/src/main/java/com/zcloud/edu/command/query/study/StudentQueryExe.java @@ -101,7 +101,7 @@ public class StudentQueryExe { ClassE classE = new ClassE(); BeanUtils.copyProperties(classDO, classE); HashMap params = new HashMap(); - params.put("classId", studentDO.getClassId()); + params.put("eqClassId", studentDO.getClassId()); // 课程信息 List curEList = classCurriculumRepository.listAll(params); List classCurList = BeanUtil.copyToList(curEList, ClassCurriculumE.class); diff --git a/web-app/src/main/java/com/zcloud/edu/service/archives/ArchivesServiceImpl.java b/web-app/src/main/java/com/zcloud/edu/service/archives/ArchivesServiceImpl.java index 2602805..5915e9e 100644 --- a/web-app/src/main/java/com/zcloud/edu/service/archives/ArchivesServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/edu/service/archives/ArchivesServiceImpl.java @@ -68,5 +68,12 @@ public class ArchivesServiceImpl implements ArchivesServiceI { archivesQueryExe.execteDownloadReviewInfo(classArchivesDTO); System.out.println("下载成功"); } + + @Override + public void downloadClassCur(ArchivesQry qry) { + ClassArchivesDTO classArchivesDTO = archivesQueryExe.downloadClassCurById(qry); + archivesQueryExe.execteDownloadClassCur(classArchivesDTO); + System.out.println("下载成功"); + } } diff --git a/web-client/src/main/java/com/zcloud/edu/api/archives/ArchivesServiceI.java b/web-client/src/main/java/com/zcloud/edu/api/archives/ArchivesServiceI.java index 3a2fced..2691c8a 100644 --- a/web-client/src/main/java/com/zcloud/edu/api/archives/ArchivesServiceI.java +++ b/web-client/src/main/java/com/zcloud/edu/api/archives/ArchivesServiceI.java @@ -18,5 +18,6 @@ public interface ArchivesServiceI { void downloadPersonArchives(ArchivesQry qry); void downloadClassArchives(ArchivesQry qry); void downloadReviewRevision(ArchivesQry qry); + void downloadClassCur(ArchivesQry qry); } diff --git a/web-client/src/main/java/com/zcloud/edu/dto/archives/ArchivesQry.java b/web-client/src/main/java/com/zcloud/edu/dto/archives/ArchivesQry.java index 80044ae..30df783 100644 --- a/web-client/src/main/java/com/zcloud/edu/dto/archives/ArchivesQry.java +++ b/web-client/src/main/java/com/zcloud/edu/dto/archives/ArchivesQry.java @@ -30,6 +30,7 @@ public class ArchivesQry { private Long stuId; private String classId; private String classCurriculumId; + private Long classCurriculumIdLong; } diff --git a/web-infrastructure/src/main/resources/mapper/study/ClassCurriculumMapper.xml b/web-infrastructure/src/main/resources/mapper/study/ClassCurriculumMapper.xml index 10a819f..d9cfcf0 100644 --- a/web-infrastructure/src/main/resources/mapper/study/ClassCurriculumMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/study/ClassCurriculumMapper.xml @@ -16,7 +16,8 @@ co.corp_name, c.video_total_time curriculumVideoTotalTime, c.curriculum_introduce, - c.cover_path + c.cover_path, + cc.catalogue_level from class_curriculum cc From 38cb6ff57686f01571e5ae830439f654068bc2ac Mon Sep 17 00:00:00 2001 From: zhaokai Date: Tue, 24 Feb 2026 14:47:07 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=95=99=E8=82=B2=E8=B5=84=E6=BA=90?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/resource/CurriculumController.java | 2 + .../edu/web/resource/ExamPaperController.java | 2 + .../edu/web/resource/TeacherController.java | 2 + .../resource/VideoCoursewareController.java | 2 + .../edu/dto/resource/TeacherPageQry.java | 2 +- .../dto/resource/VideoCoursewarePageQry.java | 2 + .../com/zcloud/edu/domain/enums/MenuEnum.java | 80 +++++++++++++++++++ .../persistence/mapper/CurriculumMapper.java | 8 +- .../persistence/mapper/ExamPaperMapper.java | 7 +- .../edu/persistence/mapper/TeacherMapper.java | 8 +- .../mapper/VideoCoursewareMapper.java | 8 +- .../resource/CurriculumRepositoryImpl.java | 7 +- .../resource/ExamPaperRepositoryImpl.java | 7 +- .../impl/resource/TeacherRepositoryImpl.java | 7 +- .../VideoCoursewareRepositoryImpl.java | 7 +- 15 files changed, 139 insertions(+), 12 deletions(-) create mode 100644 web-domain/src/main/java/com/zcloud/edu/domain/enums/MenuEnum.java diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/resource/CurriculumController.java b/web-adapter/src/main/java/com/zcloud/edu/web/resource/CurriculumController.java index be64a24..fdb48b0 100644 --- a/web-adapter/src/main/java/com/zcloud/edu/web/resource/CurriculumController.java +++ b/web-adapter/src/main/java/com/zcloud/edu/web/resource/CurriculumController.java @@ -13,6 +13,7 @@ import com.zcloud.edu.dto.resource.CurriculumUpdateStateCmd; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -37,6 +38,7 @@ public class CurriculumController { @ApiOperation("分页") @PostMapping("/list") + @PreAuthorize("@pms.hasAnyPermission('gfd-kcgl','qyd-kcgl')") public PageResponse page(@RequestBody CurriculumPageQry qry) { return curriculumService.listPage(qry); } diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/resource/ExamPaperController.java b/web-adapter/src/main/java/com/zcloud/edu/web/resource/ExamPaperController.java index 118fea3..2e2aecc 100644 --- a/web-adapter/src/main/java/com/zcloud/edu/web/resource/ExamPaperController.java +++ b/web-adapter/src/main/java/com/zcloud/edu/web/resource/ExamPaperController.java @@ -10,6 +10,7 @@ import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -40,6 +41,7 @@ public class ExamPaperController { @ApiOperation("试卷分页") @PostMapping("/list") + @PreAuthorize("@pms.hasAnyPermission('gfd-sjgl','qyd-sjgl')") public PageResponse page(@RequestBody ExamPaperPageQry qry) { return examPaperService.listPage(qry); } diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/resource/TeacherController.java b/web-adapter/src/main/java/com/zcloud/edu/web/resource/TeacherController.java index 8a4751c..156212c 100644 --- a/web-adapter/src/main/java/com/zcloud/edu/web/resource/TeacherController.java +++ b/web-adapter/src/main/java/com/zcloud/edu/web/resource/TeacherController.java @@ -11,6 +11,7 @@ import com.zcloud.edu.dto.resource.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -49,6 +50,7 @@ public class TeacherController { @ApiOperation("分页") @PostMapping("/list") + @PreAuthorize("@pms.hasAnyPermission('gfd-jsgl')") public PageResponse page(@RequestBody TeacherPageQry qry) { return teacherService.listPage(qry); } diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/resource/VideoCoursewareController.java b/web-adapter/src/main/java/com/zcloud/edu/web/resource/VideoCoursewareController.java index 6e26f6b..d7d8a67 100644 --- a/web-adapter/src/main/java/com/zcloud/edu/web/resource/VideoCoursewareController.java +++ b/web-adapter/src/main/java/com/zcloud/edu/web/resource/VideoCoursewareController.java @@ -11,6 +11,7 @@ import com.zcloud.edu.dto.resource.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -49,6 +50,7 @@ public class VideoCoursewareController { @ApiOperation("分页") @PostMapping("/list") + @PreAuthorize("@pms.hasAnyPermission('gfd-kjgl','qyd-kjgl')") public PageResponse page(@RequestBody VideoCoursewarePageQry qry) { return videoCoursewareService.listPage(qry); } diff --git a/web-client/src/main/java/com/zcloud/edu/dto/resource/TeacherPageQry.java b/web-client/src/main/java/com/zcloud/edu/dto/resource/TeacherPageQry.java index 3d2c3b9..ecea07a 100644 --- a/web-client/src/main/java/com/zcloud/edu/dto/resource/TeacherPageQry.java +++ b/web-client/src/main/java/com/zcloud/edu/dto/resource/TeacherPageQry.java @@ -30,6 +30,6 @@ public class TeacherPageQry extends PageQuery { @ApiModelProperty(name = "eqCorpinfoId", value = "企业ID") private Long corpinfoId; - + private String menuPath; } diff --git a/web-client/src/main/java/com/zcloud/edu/dto/resource/VideoCoursewarePageQry.java b/web-client/src/main/java/com/zcloud/edu/dto/resource/VideoCoursewarePageQry.java index 5242999..8c61ca6 100644 --- a/web-client/src/main/java/com/zcloud/edu/dto/resource/VideoCoursewarePageQry.java +++ b/web-client/src/main/java/com/zcloud/edu/dto/resource/VideoCoursewarePageQry.java @@ -40,6 +40,8 @@ public class VideoCoursewarePageQry extends PageQuery { @ApiModelProperty(name = "questionNum", value = "习题数量") private String questionNum; + private String menuPath; + } diff --git a/web-domain/src/main/java/com/zcloud/edu/domain/enums/MenuEnum.java b/web-domain/src/main/java/com/zcloud/edu/domain/enums/MenuEnum.java new file mode 100644 index 0000000..1c41820 --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/edu/domain/enums/MenuEnum.java @@ -0,0 +1,80 @@ +package com.zcloud.edu.domain.enums; + +import lombok.Getter; + +import java.util.Arrays; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; + +/** + * 菜单枚举 + */ +@Getter +public enum MenuEnum { + //股份端 + //教师管理 + GFDJSGL("/edu/container/supervision/resourceManage/teacherManage/list", "gfd-jsgl"), + //课件管理 + GFDKJGL("/edu/container/supervision/resourceManage/courseware/list", "gfd-kjgl"), + //课程管理 + GFDKCGL("/edu/container/supervision/resourceManage/courseManage/list", "gfd-kcgl"), + //试卷管理 + GFDSJGL("/edu/container/supervision/resourceManage/testPaperManage/list", "gfd-sjgl"), + + + //企业端 + //课件管理 + QYDKJGL("/edu/container/branchCompany/resourceManage/courseware/list", "qyd-kjgl"), + //课程管理 + QYDKCGL("/edu/container/branchCompany/resourceManage/courseManage/list", "qyd-kcgl"), + //试卷管理 + QYDSJGL("/edu/container/branchCompany/resourceManage/testPaperManage/list", "qyd-sjgl"), + + ; + ; + + private final String path; + private final String menuKey; + + private static final Map PATH_MAP = + Arrays.stream(values()) + .collect(Collectors.toMap(MenuEnum::getPath, Function.identity())); + + MenuEnum(String path, String menuKey) { + this.path = path; + this.menuKey = menuKey; + } + + public String getPath() { + return path; + } + + public String getMenuKey() { + return menuKey; + } + + // 通过name获取枚举 + public static MenuEnum getByPath(String path) { + return PATH_MAP.get(path); + } + + // 通过path获取age + public static String getMenuKeyByPath(String path) { + MenuEnum entry = PATH_MAP.get(path); + return entry != null ? entry.getMenuKey() : null; + } + +// 使用示例 + public static void main(String[] args) { + // 获取整个枚举 + MenuEnum entry = MenuEnum.getByPath("张三"); + if (entry != null) { + System.out.println("MenuKey: " + entry.getMenuKey()); // 输出: MenuKey: 25 + } + + // 直接获取值 + String age = MenuEnum.getMenuKeyByPath("李四"); + System.out.println("李四的年龄: " + age); // 输出: 李四的年龄: 30 + } +} diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/CurriculumMapper.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/CurriculumMapper.java index 077ce90..327e239 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/CurriculumMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/CurriculumMapper.java @@ -1,8 +1,9 @@ package com.zcloud.edu.persistence.mapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.datascope.annotation.DataScope; +import com.jjb.saas.framework.datascope.annotation.DataScopes; import com.zcloud.edu.persistence.dataobject.CurriculumDO; import org.apache.ibatis.annotations.Mapper; @@ -15,9 +16,12 @@ import java.util.Map; * @Date 2026-01-09 13:45:38 */ @Mapper +@DataScopes({ + @DataScope(method = "getListPage", menuPerms = ""), +}) public interface CurriculumMapper extends BaseMapper { - IPage getListPage(IPage iPage, Map params); + IPage getListPage(IPage iPage, Map params, String menuPerms); CurriculumDO getInfoById(Long id); } diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/ExamPaperMapper.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/ExamPaperMapper.java index 3d2ef96..7294c7c 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/ExamPaperMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/ExamPaperMapper.java @@ -2,6 +2,8 @@ package com.zcloud.edu.persistence.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.datascope.annotation.DataScope; +import com.jjb.saas.framework.datascope.annotation.DataScopes; import com.zcloud.edu.persistence.dataobject.ExamPaperDO; import org.apache.ibatis.annotations.Mapper; @@ -15,9 +17,12 @@ import java.util.Map; * @Date 2026-01-09 17:04:42 */ @Mapper +@DataScopes({ + @DataScope(method = "listPage", menuPerms = ""), +}) public interface ExamPaperMapper extends BaseMapper { - IPage listPage(IPage iPage, Map params); + IPage listPage(IPage iPage, Map params, String menuPerms); ExamPaperDO getInfoById(Long id); diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java index 3e334d4..94e3a34 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java @@ -1,7 +1,8 @@ package com.zcloud.edu.persistence.mapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.datascope.annotation.DataScope; +import com.jjb.saas.framework.datascope.annotation.DataScopes; import com.zcloud.edu.persistence.dataobject.TeacherDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -17,9 +18,12 @@ import java.util.Map; * @Date 2025-11-26 17:04:44 */ @Mapper +@DataScopes({ + @DataScope(method = "getTeacherPage", menuPerms = ""), +}) public interface TeacherMapper extends BaseMapper { - IPage getTeacherPage(IPage page, Map params); + IPage getTeacherPage(IPage page, Map params, String menuPerms); List getTeacherList(@Param("params")Map params); diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/VideoCoursewareMapper.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/VideoCoursewareMapper.java index 8163a27..1cdf070 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/VideoCoursewareMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/VideoCoursewareMapper.java @@ -1,7 +1,8 @@ package com.zcloud.edu.persistence.mapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.datascope.annotation.DataScope; +import com.jjb.saas.framework.datascope.annotation.DataScopes; import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -17,11 +18,14 @@ import java.util.Map; * @Date 2025-11-27 14:05:32 */ @Mapper +@DataScopes({ + @DataScope(method = "getVideoCoursewarePage", menuPerms = ""), +}) public interface VideoCoursewareMapper extends BaseMapper { VideoCoursewareDO getInfoById(@Param("id") Long id); - IPage getVideoCoursewarePage(IPage page,@Param("params")Map params); + IPage getVideoCoursewarePage(IPage page, @Param("params")Map params,@Param("menuPerms")String menuPerms); List getVideoCoursewareList(@Param("params")Map params); diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/CurriculumRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/CurriculumRepositoryImpl.java index ad6e54c..28fd3f6 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/CurriculumRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/CurriculumRepositoryImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.jjb.saas.framework.repository.common.PageHelper; import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import com.zcloud.edu.domain.enums.MenuEnum; import com.zcloud.edu.persistence.dataobject.CurriculumDO; import com.zcloud.edu.persistence.mapper.CurriculumMapper; import com.zcloud.edu.persistence.repository.resource.CurriculumRepository; @@ -29,7 +30,11 @@ public class CurriculumRepositoryImpl extends BaseRepositoryImpl listPage(Map params) { IPage iPage = new Query().getPage(params); - IPage result = curriculumMapper.getListPage(iPage, params); + String menuPerms = ""; + if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){ + menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString()); + } + IPage result = curriculumMapper.getListPage(iPage, params,menuPerms); return PageHelper.pageToResponse(result, result.getRecords()); } diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/ExamPaperRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/ExamPaperRepositoryImpl.java index 53b471c..3871900 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/ExamPaperRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/ExamPaperRepositoryImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.jjb.saas.framework.repository.common.PageHelper; import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import com.zcloud.edu.domain.enums.MenuEnum; import com.zcloud.edu.persistence.dataobject.ExamPaperDO; import com.zcloud.edu.persistence.mapper.ExamPaperMapper; import com.zcloud.edu.persistence.repository.resource.ExamPaperRepository; @@ -30,7 +31,11 @@ public class ExamPaperRepositoryImpl extends BaseRepositoryImpl listPage(Map params) { IPage iPage = new Query().getPage(params); - IPage result = examPaperMapper.listPage(iPage, params); + String menuPerms = ""; + if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){ + menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString()); + } + IPage result = examPaperMapper.listPage(iPage, params,menuPerms); return PageHelper.pageToResponse(result, result.getRecords()); } diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/TeacherRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/TeacherRepositoryImpl.java index 803ac16..14c0141 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/TeacherRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/TeacherRepositoryImpl.java @@ -1,6 +1,7 @@ package com.zcloud.edu.persistence.repository.impl.resource; import com.jjb.saas.framework.repository.common.PageHelper; +import com.zcloud.edu.domain.enums.MenuEnum; import com.zcloud.edu.persistence.dataobject.TeacherDO; import com.zcloud.edu.persistence.mapper.TeacherMapper; import com.zcloud.edu.persistence.repository.resource.TeacherRepository; @@ -30,7 +31,11 @@ public class TeacherRepositoryImpl extends BaseRepositoryImpl listPage(Map params) { IPage iPage = new Query().getPage(params); - IPage result = teacherMapper.getTeacherPage(iPage, params); + String menuPerms = ""; + if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){ + menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString()); + } + IPage result = teacherMapper.getTeacherPage(iPage, params,menuPerms); return PageHelper.pageToResponse(result, result.getRecords()); } diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/VideoCoursewareRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/VideoCoursewareRepositoryImpl.java index b5f5716..7550b20 100644 --- a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/VideoCoursewareRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/resource/VideoCoursewareRepositoryImpl.java @@ -1,6 +1,7 @@ package com.zcloud.edu.persistence.repository.impl.resource; import com.jjb.saas.framework.repository.common.PageHelper; +import com.zcloud.edu.domain.enums.MenuEnum; import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO; import com.zcloud.edu.persistence.mapper.VideoCoursewareMapper; import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository; @@ -31,7 +32,11 @@ public class VideoCoursewareRepositoryImpl extends BaseRepositoryImpl listPage(Map params) { IPage iPage = new Query().getPage(params); - IPage result = videoCoursewareMapper.getVideoCoursewarePage(iPage, params); + String menuPerms = ""; + if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){ + menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString()); + } + IPage result = videoCoursewareMapper.getVideoCoursewarePage(iPage, params,menuPerms); return PageHelper.pageToResponse(result, result.getRecords()); }