From 3ff9fef182644609ef8369fea9b36b93e6af888b Mon Sep 17 00:00:00 2001 From: cjw Date: Tue, 28 May 2024 15:13:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 7 +- ruoyi-admin/pom.xml | 25 +++-- ruoyi-modules/ruoyi-file/.gitignore | 38 -------- ruoyi-modules/ruoyi-file/pom.xml | 92 ++++++++++--------- .../SysCatalogResourceController.java | 55 ++++++----- .../SysCatalogTextbookController.java | 28 ++---- .../controller/SysHomeBannerController.java | 51 ++++------ .../controller/SysHomeShowController.java | 52 +++++------ .../controller/SysHomeTrendController.java | 51 ++++------ .../controller/SysOssResourceController.java | 21 +---- .../controller/SysOssTextbookController.java | 20 +--- .../dromara/file/domain/SysHomeBanner.java | 4 +- .../org/dromara/file/domain/SysHomeShow.java | 9 +- .../org/dromara/file/domain/SysHomeTrend.java | 4 +- .../file/domain/vo/SysHomeBannerVo.java | 17 +--- .../dromara/file/domain/vo/SysHomeShowVo.java | 23 +---- .../file/domain/vo/SysHomeTrendVo.java | 18 +--- .../service/ISysCatalogResourceService.java | 30 +++++- .../service/ISysCatalogTextbookService.java | 30 +++++- .../impl/SysCatalogResourceServiceImpl.java | 41 +++++++-- .../impl/SysCatalogTextbookServiceImpl.java | 41 +++++++-- .../org/dromara/system/domain/SysDept.java | 3 +- .../org/dromara/system/domain/SysNotice.java | 3 +- 23 files changed, 306 insertions(+), 357 deletions(-) delete mode 100644 ruoyi-modules/ruoyi-file/.gitignore diff --git a/pom.xml b/pom.xml index 6a4ac18..62f0beb 100644 --- a/pom.xml +++ b/pom.xml @@ -347,6 +347,12 @@ ruoyi-generator ${revision} + + + org.dromara + ruoyi-file + ${revision} + @@ -355,7 +361,6 @@ ruoyi-common ruoyi-extend ruoyi-modules - ruoyi-modules/ruoyi-file pom diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index fb1098a..4e8ed3d 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -23,20 +23,20 @@ mysql-connector-j - - com.oracle.database.jdbc - ojdbc8 - + + + + - - org.postgresql - postgresql - + + + + - - com.microsoft.sqlserver - mssql-jdbc - + + + + org.dromara @@ -61,7 +61,6 @@ org.dromara ruoyi-file - 5.2.0-BETA diff --git a/ruoyi-modules/ruoyi-file/.gitignore b/ruoyi-modules/ruoyi-file/.gitignore deleted file mode 100644 index 5ff6309..0000000 --- a/ruoyi-modules/ruoyi-file/.gitignore +++ /dev/null @@ -1,38 +0,0 @@ -target/ -!.mvn/wrapper/maven-wrapper.jar -!**/src/main/**/target/ -!**/src/test/**/target/ - -### IntelliJ IDEA ### -.idea/modules.xml -.idea/jarRepositories.xml -.idea/compiler.xml -.idea/libraries/ -*.iws -*.iml -*.ipr - -### Eclipse ### -.apt_generated -.classpath -.factorypath -.project -.settings -.springBeans -.sts4-cache - -### NetBeans ### -/nbproject/private/ -/nbbuild/ -/dist/ -/nbdist/ -/.nb-gradle/ -build/ -!**/src/main/**/build/ -!**/src/test/**/build/ - -### VS Code ### -.vscode/ - -### Mac OS ### -.DS_Store \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-file/pom.xml b/ruoyi-modules/ruoyi-file/pom.xml index 9706c9c..7a86e7b 100644 --- a/ruoyi-modules/ruoyi-file/pom.xml +++ b/ruoyi-modules/ruoyi-file/pom.xml @@ -10,56 +10,58 @@ 4.0.0 ruoyi-file + + 校本资源模块 + + + + + org.dromara + ruoyi-common-core + + + org.dromara + ruoyi-common-mybatis + + + + org.dromara + ruoyi-common-oss + - - - - org.dromara - ruoyi-common-core - - - org.dromara - ruoyi-common-mybatis - - - - org.dromara - ruoyi-common-oss - + + org.dromara + ruoyi-common-log + - - org.dromara - ruoyi-common-log - + + org.dromara + ruoyi-common-tenant + - - org.dromara - ruoyi-common-tenant - + + org.dromara + ruoyi-common-security + - - org.dromara - ruoyi-common-security - + + org.dromara + ruoyi-common-web + + + org.dromara + ruoyi-common-idempotent + - - org.dromara - ruoyi-common-web - - - org.dromara - ruoyi-common-idempotent - + + org.dromara + ruoyi-common-sensitive + - - org.dromara - ruoyi-common-sensitive - - - - org.dromara - ruoyi-common-encrypt - - + + org.dromara + ruoyi-common-encrypt + + diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogResourceController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogResourceController.java index bd8fc36..c5e7134 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogResourceController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogResourceController.java @@ -32,73 +32,78 @@ import java.util.List; @RequestMapping("/catalog/resource") public class SysCatalogResourceController extends BaseController { - private final ISysCatalogResourceService sysCatalogResourceService; + private final ISysCatalogResourceService resourceService; /** * 查询目录-专题资源列表 */ - @SaCheckPermission("resource:catalogResource:list") + @SaCheckPermission("catalog:resource:list") @GetMapping("/list") public R> list(SysCatalogResourceBo bo) { - List list = sysCatalogResourceService.queryList(bo); + List list = resourceService.queryList(bo); return R.ok(list); } - /** - * 导出目录-专题资源列表 - */ -// @SaCheckPermission("resource:catalogResource:export") -// @Log(title = "目录-专题资源", businessType = BusinessType.EXPORT) -// @PostMapping("/export") -// public void export(SysCatalogResourceBo bo, HttpServletResponse response) { -// List list = sysCatalogResourceService.queryList(bo); -// ExcelUtil.exportExcel(list, "目录-专题资源", SysCatalogResourceVo.class, response); -// } /** * 获取目录-专题资源详细信息 * * @param catalogId 主键 */ - @SaCheckPermission("resource:catalogResource:query") + @SaCheckPermission("catalog:resource:query") @GetMapping("/{catalogId}") public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable Long catalogId) { - return R.ok(sysCatalogResourceService.queryById(catalogId)); + @PathVariable Long catalogId) { + return R.ok(resourceService.queryById(catalogId)); } /** * 新增目录-专题资源 */ - @SaCheckPermission("resource:catalogResource:add") + @SaCheckPermission("catalog:resource:add") @Log(title = "目录-专题资源", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() public R add(@Validated(AddGroup.class) @RequestBody SysCatalogResourceBo bo) { - return toAjax(sysCatalogResourceService.insertByBo(bo)); + if (!resourceService.checkNameUnique(bo)) { + return R.fail("新增'" + bo.getCatalogName() + "'失败,名称已存在"); + } + return toAjax(resourceService.insertByBo(bo)); } /** * 修改目录-专题资源 */ - @SaCheckPermission("resource:catalogResource:edit") + @SaCheckPermission("catalog:resource:edit") @Log(title = "目录-专题资源", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody SysCatalogResourceBo bo) { - return toAjax(sysCatalogResourceService.updateByBo(bo)); + Long catalogId = bo.getCatalogId(); + if (!resourceService.checkNameUnique(bo)) { + return R.fail("修改'" + bo.getCatalogName() + "'失败,名称已存在"); + } else if (bo.getParentId().equals(catalogId)) { + return R.fail("修改'" + bo.getCatalogName() + "'失败,上级不能是自己"); + } + return toAjax(resourceService.updateByBo(bo)); } /** * 删除目录-专题资源 * - * @param catalogIds 主键串 + * @param catalogId 主键 */ - @SaCheckPermission("resource:catalogResource:remove") + @SaCheckPermission("catalog:resource:remove") @Log(title = "目录-专题资源", businessType = BusinessType.DELETE) - @DeleteMapping("/{catalogIds}") + @DeleteMapping("/{catalogId}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] catalogIds) { - return toAjax(sysCatalogResourceService.deleteWithValidByIds(List.of(catalogIds), true)); + @PathVariable Long catalogId) { + if (resourceService.hasChildByCatalogId(catalogId)) { + return R.warn("存在下级,不允许删除"); + } + if (resourceService.checkCatalogExistFile(catalogId)) { + return R.warn("存在文件,不允许删除"); + } + return toAjax(resourceService.deleteById(catalogId)); } } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogTextbookController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogTextbookController.java index 6de3fa0..9b51826 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogTextbookController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysCatalogTextbookController.java @@ -37,30 +37,20 @@ public class SysCatalogTextbookController extends BaseController { /** * 查询目录-同步教材列表 */ - @SaCheckPermission("resource:catalogTextbook:list") + @SaCheckPermission("catalog:textbook:list") @GetMapping("/list") public R> list(SysCatalogTextbookBo bo) { List list = sysCatalogTextbookService.queryList(bo); return R.ok(list); } - /** - * 导出目录-同步教材列表 - */ -// @SaCheckPermission("resource:catalogTextbook:export") -// @Log(title = "目录-同步教材", businessType = BusinessType.EXPORT) -// @PostMapping("/export") -// public void export(SysCatalogTextbookBo bo, HttpServletResponse response) { -// List list = sysCatalogTextbookService.queryList(bo); -// ExcelUtil.exportExcel(list, "目录-同步教材", SysCatalogTextbookVo.class, response); -// } /** * 获取目录-同步教材详细信息 * * @param catalogId 主键 */ - @SaCheckPermission("resource:catalogTextbook:query") + @SaCheckPermission("catalog:textbook:query") @GetMapping("/{catalogId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long catalogId) { @@ -70,7 +60,7 @@ public class SysCatalogTextbookController extends BaseController { /** * 新增目录-同步教材 */ - @SaCheckPermission("resource:catalogTextbook:add") + @SaCheckPermission("catalog:textbook:add") @Log(title = "目录-同步教材", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() @@ -81,7 +71,7 @@ public class SysCatalogTextbookController extends BaseController { /** * 修改目录-同步教材 */ - @SaCheckPermission("resource:catalogTextbook:edit") + @SaCheckPermission("catalog:textbook:edit") @Log(title = "目录-同步教材", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() @@ -92,13 +82,13 @@ public class SysCatalogTextbookController extends BaseController { /** * 删除目录-同步教材 * - * @param catalogIds 主键串 + * @param catalogId 主键串 */ - @SaCheckPermission("resource:catalogTextbook:remove") + @SaCheckPermission("catalog:textbook:remove") @Log(title = "目录-同步教材", businessType = BusinessType.DELETE) - @DeleteMapping("/{catalogIds}") + @DeleteMapping("/{catalogId}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] catalogIds) { - return toAjax(sysCatalogTextbookService.deleteWithValidByIds(List.of(catalogIds), true)); + @PathVariable Long catalogId) { + return toAjax(sysCatalogTextbookService.deleteById(catalogId)); } } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeBannerController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeBannerController.java index 03f6b1f..b20ae77 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeBannerController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeBannerController.java @@ -1,26 +1,25 @@ package org.dromara.file.controller; -import java.util.List; - -import lombok.RequiredArgsConstructor; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; -import org.springframework.web.bind.annotation.*; -import org.springframework.validation.annotation.Validated; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.web.core.BaseController; -import org.dromara.common.mybatis.core.page.PageQuery; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.excel.utils.ExcelUtil; -import org.dromara.file.domain.vo.SysHomeBannerVo; -import org.dromara.file.domain.bo.SysHomeBannerBo; -import org.dromara.file.service.ISysHomeBannerService; +import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.file.domain.bo.SysHomeBannerBo; +import org.dromara.file.domain.vo.SysHomeBannerVo; +import org.dromara.file.service.ISysHomeBannerService; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 门户Banner @@ -31,7 +30,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/home/homeBanner") +@RequestMapping("/home/banner") public class SysHomeBannerController extends BaseController { private final ISysHomeBannerService sysHomeBannerService; @@ -39,29 +38,19 @@ public class SysHomeBannerController extends BaseController { /** * 查询门户Banner列表 */ - @SaCheckPermission("home:homeBanner:list") + @SaCheckPermission("home:banner:list") @GetMapping("/list") public TableDataInfo list(SysHomeBannerBo bo, PageQuery pageQuery) { return sysHomeBannerService.queryPageList(bo, pageQuery); } - /** - * 导出门户Banner列表 - */ - @SaCheckPermission("home:homeBanner:export") - @Log(title = "门户Banner", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(SysHomeBannerBo bo, HttpServletResponse response) { - List list = sysHomeBannerService.queryList(bo); - ExcelUtil.exportExcel(list, "门户Banner", SysHomeBannerVo.class, response); - } /** * 获取门户Banner详细信息 * * @param bannerId 主键 */ - @SaCheckPermission("home:homeBanner:query") + @SaCheckPermission("home:banner:query") @GetMapping("/{bannerId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long bannerId) { @@ -71,7 +60,7 @@ public class SysHomeBannerController extends BaseController { /** * 新增门户Banner */ - @SaCheckPermission("home:homeBanner:add") + @SaCheckPermission("home:banner:add") @Log(title = "门户Banner", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() @@ -82,7 +71,7 @@ public class SysHomeBannerController extends BaseController { /** * 修改门户Banner */ - @SaCheckPermission("home:homeBanner:edit") + @SaCheckPermission("home:banner:edit") @Log(title = "门户Banner", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() @@ -95,7 +84,7 @@ public class SysHomeBannerController extends BaseController { * * @param bannerIds 主键串 */ - @SaCheckPermission("home:homeBanner:remove") + @SaCheckPermission("home:banner:remove") @Log(title = "门户Banner", businessType = BusinessType.DELETE) @DeleteMapping("/{bannerIds}") public R remove(@NotEmpty(message = "主键不能为空") diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeShowController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeShowController.java index e3e9ece..aed7a38 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeShowController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeShowController.java @@ -1,26 +1,25 @@ package org.dromara.file.controller; -import java.util.List; - -import lombok.RequiredArgsConstructor; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; -import org.springframework.web.bind.annotation.*; -import org.springframework.validation.annotation.Validated; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.web.core.BaseController; -import org.dromara.common.mybatis.core.page.PageQuery; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.excel.utils.ExcelUtil; -import org.dromara.file.domain.vo.SysHomeShowVo; -import org.dromara.file.domain.bo.SysHomeShowBo; -import org.dromara.file.service.ISysHomeShowService; +import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.file.domain.bo.SysHomeShowBo; +import org.dromara.file.domain.vo.SysHomeShowVo; +import org.dromara.file.service.ISysHomeShowService; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 学校名师 @@ -31,7 +30,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/home/homeShow") +@RequestMapping("/home/show") public class SysHomeShowController extends BaseController { private final ISysHomeShowService sysHomeShowService; @@ -39,29 +38,20 @@ public class SysHomeShowController extends BaseController { /** * 查询学校名师列表 */ - @SaCheckPermission("home:homeShow:list") + @SaCheckPermission("home:show:list") @GetMapping("/list") public TableDataInfo list(SysHomeShowBo bo, PageQuery pageQuery) { return sysHomeShowService.queryPageList(bo, pageQuery); } - /** - * 导出学校名师列表 - */ - @SaCheckPermission("home:homeShow:export") - @Log(title = "学校名师", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(SysHomeShowBo bo, HttpServletResponse response) { - List list = sysHomeShowService.queryList(bo); - ExcelUtil.exportExcel(list, "学校名师", SysHomeShowVo.class, response); - } + /** * 获取学校名师详细信息 * * @param showId 主键 */ - @SaCheckPermission("home:homeShow:query") + @SaCheckPermission("home:show:query") @GetMapping("/{showId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long showId) { @@ -71,7 +61,7 @@ public class SysHomeShowController extends BaseController { /** * 新增学校名师 */ - @SaCheckPermission("home:homeShow:add") + @SaCheckPermission("home:show:add") @Log(title = "学校名师", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() @@ -82,7 +72,7 @@ public class SysHomeShowController extends BaseController { /** * 修改学校名师 */ - @SaCheckPermission("home:homeShow:edit") + @SaCheckPermission("home:show:edit") @Log(title = "学校名师", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() @@ -95,7 +85,7 @@ public class SysHomeShowController extends BaseController { * * @param showIds 主键串 */ - @SaCheckPermission("home:homeShow:remove") + @SaCheckPermission("home:show:remove") @Log(title = "学校名师", businessType = BusinessType.DELETE) @DeleteMapping("/{showIds}") public R remove(@NotEmpty(message = "主键不能为空") diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeTrendController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeTrendController.java index 61899d6..ec524ae 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeTrendController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysHomeTrendController.java @@ -1,26 +1,25 @@ package org.dromara.file.controller; -import java.util.List; - -import lombok.RequiredArgsConstructor; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; -import org.springframework.web.bind.annotation.*; -import org.springframework.validation.annotation.Validated; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.web.core.BaseController; -import org.dromara.common.mybatis.core.page.PageQuery; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.excel.utils.ExcelUtil; -import org.dromara.file.domain.vo.SysHomeTrendVo; -import org.dromara.file.domain.bo.SysHomeTrendBo; -import org.dromara.file.service.ISysHomeTrendService; +import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.file.domain.bo.SysHomeTrendBo; +import org.dromara.file.domain.vo.SysHomeTrendVo; +import org.dromara.file.service.ISysHomeTrendService; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 学校动态 @@ -31,7 +30,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/home/homeTrend") +@RequestMapping("/home/trend") public class SysHomeTrendController extends BaseController { private final ISysHomeTrendService sysHomeTrendService; @@ -39,29 +38,19 @@ public class SysHomeTrendController extends BaseController { /** * 查询学校动态列表 */ - @SaCheckPermission("home:homeTrend:list") + @SaCheckPermission("home:trend:list") @GetMapping("/list") public TableDataInfo list(SysHomeTrendBo bo, PageQuery pageQuery) { return sysHomeTrendService.queryPageList(bo, pageQuery); } - /** - * 导出学校动态列表 - */ - @SaCheckPermission("home:homeTrend:export") - @Log(title = "学校动态", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(SysHomeTrendBo bo, HttpServletResponse response) { - List list = sysHomeTrendService.queryList(bo); - ExcelUtil.exportExcel(list, "学校动态", SysHomeTrendVo.class, response); - } /** * 获取学校动态详细信息 * * @param trendId 主键 */ - @SaCheckPermission("home:homeTrend:query") + @SaCheckPermission("home:trend:query") @GetMapping("/{trendId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long trendId) { @@ -71,7 +60,7 @@ public class SysHomeTrendController extends BaseController { /** * 新增学校动态 */ - @SaCheckPermission("home:homeTrend:add") + @SaCheckPermission("home:trend:add") @Log(title = "学校动态", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() @@ -82,7 +71,7 @@ public class SysHomeTrendController extends BaseController { /** * 修改学校动态 */ - @SaCheckPermission("home:homeTrend:edit") + @SaCheckPermission("home:trend:edit") @Log(title = "学校动态", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() @@ -95,7 +84,7 @@ public class SysHomeTrendController extends BaseController { * * @param trendIds 主键串 */ - @SaCheckPermission("home:homeTrend:remove") + @SaCheckPermission("home:trend:remove") @Log(title = "学校动态", businessType = BusinessType.DELETE) @DeleteMapping("/{trendIds}") public R remove(@NotEmpty(message = "主键不能为空") diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssResourceController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssResourceController.java index 41ac39f..15c9199 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssResourceController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssResourceController.java @@ -38,29 +38,18 @@ public class SysOssResourceController extends BaseController { /** * 查询【请填写功能名称】列表 */ - @SaCheckPermission("system:ossResource:list") + @SaCheckPermission("file:resource:list") @GetMapping("/list") public TableDataInfo list(SysOssResourceBo bo, PageQuery pageQuery) { return sysOssResourceService.queryPageList(bo, pageQuery); } - /** - * 导出【请填写功能名称】列表 - */ -// @SaCheckPermission("system:ossResource:export") -// @Log(title = "【请填写功能名称】", businessType = BusinessType.EXPORT) -// @PostMapping("/export") -// public void export(SysOssResourceBo bo, HttpServletResponse response) { -// List list = sysOssResourceService.queryList(bo); -// ExcelUtil.exportExcel(list, "【请填写功能名称】", SysOssResourceVo.class, response); -// } - /** * 获取【请填写功能名称】详细信息 * * @param ossId 主键 */ - @SaCheckPermission("system:ossResource:query") + @SaCheckPermission("file:resource:query") @GetMapping("/{ossId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long ossId) { @@ -70,7 +59,7 @@ public class SysOssResourceController extends BaseController { /** * 新增【请填写功能名称】 */ - @SaCheckPermission("system:ossResource:add") + @SaCheckPermission("file:resource:add") @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() @@ -81,7 +70,7 @@ public class SysOssResourceController extends BaseController { /** * 修改【请填写功能名称】 */ - @SaCheckPermission("system:ossResource:edit") + @SaCheckPermission("file:resource:edit") @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() @@ -94,7 +83,7 @@ public class SysOssResourceController extends BaseController { * * @param ossIds 主键串 */ - @SaCheckPermission("system:ossResource:remove") + @SaCheckPermission("file:resource:remove") @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE) @DeleteMapping("/{ossIds}") public R remove(@NotEmpty(message = "主键不能为空") diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssTextbookController.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssTextbookController.java index d442aee..6e71bb6 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssTextbookController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/controller/SysOssTextbookController.java @@ -38,29 +38,19 @@ public class SysOssTextbookController extends BaseController { /** * 查询【请填写功能名称】列表 */ - @SaCheckPermission("system:ossTextbook:list") + @SaCheckPermission("file:textbook:list") @GetMapping("/list") public TableDataInfo list(SysOssTextbookBo bo, PageQuery pageQuery) { return sysOssTextbookService.queryPageList(bo, pageQuery); } -// /** -// * 导出【请填写功能名称】列表 -// */ -// @SaCheckPermission("system:ossTextbook:export") -// @Log(title = "【请填写功能名称】", businessType = BusinessType.EXPORT) -// @PostMapping("/export") -// public void export(SysOssTextbookBo bo, HttpServletResponse response) { -// List list = sysOssTextbookService.queryList(bo); -// ExcelUtil.exportExcel(list, "【请填写功能名称】", SysOssTextbookVo.class, response); -// } /** * 获取【请填写功能名称】详细信息 * * @param ossId 主键 */ - @SaCheckPermission("system:ossTextbook:query") + @SaCheckPermission("file:textbook:query") @GetMapping("/{ossId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long ossId) { @@ -70,7 +60,7 @@ public class SysOssTextbookController extends BaseController { /** * 新增【请填写功能名称】 */ - @SaCheckPermission("system:ossTextbook:add") + @SaCheckPermission("file:textbook:add") @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() @@ -81,7 +71,7 @@ public class SysOssTextbookController extends BaseController { /** * 修改【请填写功能名称】 */ - @SaCheckPermission("system:ossTextbook:edit") + @SaCheckPermission("file:textbook:edit") @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() @@ -94,7 +84,7 @@ public class SysOssTextbookController extends BaseController { * * @param ossIds 主键串 */ - @SaCheckPermission("system:ossTextbook:remove") + @SaCheckPermission("file:textbook:remove") @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE) @DeleteMapping("/{ossIds}") public R remove(@NotEmpty(message = "主键不能为空") diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeBanner.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeBanner.java index a515ad1..4ba3e1a 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeBanner.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeBanner.java @@ -22,9 +22,9 @@ public class SysHomeBanner extends TenantEntity { private static final long serialVersionUID = 1L; /** - * + * */ - @TableId(value = "banner_id") + @TableId(value = "banner_id",type = IdType.AUTO) private Long bannerId; /** diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeShow.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeShow.java index a6b163e..b48ec53 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeShow.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeShow.java @@ -22,16 +22,11 @@ public class SysHomeShow extends TenantEntity { private static final long serialVersionUID = 1L; /** - * + * */ - @TableId(value = "show_id") + @TableId(value = "show_id",type = IdType.AUTO) private Long showId; - /** - * 是否外链0:否,1:是 - */ - private Integer type; - /** * 教师名称 */ diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeTrend.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeTrend.java index 5c18c47..9e03e99 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeTrend.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/SysHomeTrend.java @@ -22,9 +22,9 @@ public class SysHomeTrend extends TenantEntity { private static final long serialVersionUID = 1L; /** - * + * */ - @TableId(value = "trend_id") + @TableId(value = "trend_id",type = IdType.AUTO) private Long trendId; /** diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeBannerVo.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeBannerVo.java index 126c068..803d281 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeBannerVo.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeBannerVo.java @@ -1,16 +1,11 @@ package org.dromara.file.domain.vo; -import org.dromara.file.domain.SysHomeBanner; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; +import org.dromara.file.domain.SysHomeBanner; import java.io.Serial; import java.io.Serializable; -import java.util.Date; @@ -21,7 +16,6 @@ import java.util.Date; * @date 2024-05-28 */ @Data -@ExcelIgnoreUnannotated @AutoMapper(target = SysHomeBanner.class) public class SysHomeBannerVo implements Serializable { @@ -29,45 +23,38 @@ public class SysHomeBannerVo implements Serializable { private static final long serialVersionUID = 1L; /** - * + * 主键 */ - @ExcelProperty(value = "") private Long bannerId; /** * 0:pc端轮播,1:移动端轮播 */ - @ExcelProperty(value = "0:pc端轮播,1:移动端轮播") private Integer type; /** * 标题 */ - @ExcelProperty(value = "标题") private String title; /** * 跳转链接 */ - @ExcelProperty(value = "跳转链接") private String url; /** * 排序 */ - @ExcelProperty(value = "排序") private Long sort; /** * 封面 */ - @ExcelProperty(value = "封面") private Long cover; /** * 0-下架,1-上架 */ - @ExcelProperty(value = "0-下架,1-上架") private Integer status; diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeShowVo.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeShowVo.java index 11ffd5a..8e3cea6 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeShowVo.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeShowVo.java @@ -1,16 +1,11 @@ package org.dromara.file.domain.vo; -import org.dromara.file.domain.SysHomeShow; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; +import org.dromara.file.domain.SysHomeShow; import java.io.Serial; import java.io.Serializable; -import java.util.Date; @@ -21,7 +16,6 @@ import java.util.Date; * @date 2024-05-28 */ @Data -@ExcelIgnoreUnannotated @AutoMapper(target = SysHomeShow.class) public class SysHomeShowVo implements Serializable { @@ -29,51 +23,38 @@ public class SysHomeShowVo implements Serializable { private static final long serialVersionUID = 1L; /** - * + * 主键 */ - @ExcelProperty(value = "") private Long showId; - /** - * 是否外链0:否,1:是 - */ - @ExcelProperty(value = "是否外链0:否,1:是") - private Integer type; - /** * 教师名称 */ - @ExcelProperty(value = "教师名称") private String teacherName; /** * 年级名称 */ - @ExcelProperty(value = "年级名称") private String gradeName; /** * 学科名称 */ - @ExcelProperty(value = "学科名称") private String subjectName; /** * 排序 */ - @ExcelProperty(value = "排序") private Long sort; /** * 教师介绍 */ - @ExcelProperty(value = "教师介绍") private String content; /** * 0-下架,1-上架 */ - @ExcelProperty(value = "0-下架,1-上架") private Integer status; diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeTrendVo.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeTrendVo.java index 99e5d32..0e3be0b 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeTrendVo.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/domain/vo/SysHomeTrendVo.java @@ -1,16 +1,11 @@ package org.dromara.file.domain.vo; -import org.dromara.file.domain.SysHomeTrend; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; +import org.dromara.file.domain.SysHomeTrend; import java.io.Serial; import java.io.Serializable; -import java.util.Date; @@ -21,7 +16,7 @@ import java.util.Date; * @date 2024-05-28 */ @Data -@ExcelIgnoreUnannotated + @AutoMapper(target = SysHomeTrend.class) public class SysHomeTrendVo implements Serializable { @@ -29,45 +24,38 @@ public class SysHomeTrendVo implements Serializable { private static final long serialVersionUID = 1L; /** - * + * 主键 */ - @ExcelProperty(value = "") private Long trendId; /** * 是否外链0:否,1:是 */ - @ExcelProperty(value = "是否外链0:否,1:是") private Integer type; /** * 标题 */ - @ExcelProperty(value = "标题") private String title; /** * 跳转链接 */ - @ExcelProperty(value = "跳转链接") private String url; /** * 排序 */ - @ExcelProperty(value = "排序") private Long sort; /** * 内容 */ - @ExcelProperty(value = "内容") private String content; /** * 0-下架,1-上架 */ - @ExcelProperty(value = "0-下架,1-上架") private Integer status; diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogResourceService.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogResourceService.java index 95fbc46..9c279b6 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogResourceService.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogResourceService.java @@ -4,7 +4,6 @@ package org.dromara.file.service; import org.dromara.file.domain.bo.SysCatalogResourceBo; import org.dromara.file.domain.vo.SysCatalogResourceVo; -import java.util.Collection; import java.util.List; /** @@ -51,9 +50,32 @@ public interface ISysCatalogResourceService { /** * 校验并批量删除目录-专题资源信息 * - * @param ids 待删除的主键集合 - * @param isValid 是否进行有效性校验 + * @param catalogId 待删除的主键 * @return 是否删除成功 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + int deleteById(Long catalogId); + + /** + * 校验目录名称是否唯一 + * + * @param resource 目录信息 + * @return 结果 + */ + boolean checkNameUnique(SysCatalogResourceBo resource); + + /** + * 是否存在子节点 + * + * @param catalogId 目录ID + * @return 结果 + */ + boolean hasChildByCatalogId(Long catalogId); + + /** + * 查询目录是否存在文件 + * + * @param catalogId 部门ID + * @return 结果 true 存在 false 不存在 + */ + boolean checkCatalogExistFile(Long catalogId); } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogTextbookService.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogTextbookService.java index b8ff61f..c29cd74 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogTextbookService.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/ISysCatalogTextbookService.java @@ -1,10 +1,10 @@ package org.dromara.file.service; + import org.dromara.file.domain.bo.SysCatalogTextbookBo; import org.dromara.file.domain.vo.SysCatalogTextbookVo; -import java.util.Collection; import java.util.List; /** @@ -51,9 +51,31 @@ public interface ISysCatalogTextbookService { /** * 校验并批量删除目录-同步教材信息 * - * @param ids 待删除的主键集合 - * @param isValid 是否进行有效性校验 + * @param catalogId 待删除的主键 * @return 是否删除成功 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + int deleteById(Long catalogId); + /** + * 校验目录名称是否唯一 + * + * @param textbook 目录信息 + * @return 结果 + */ + boolean checkNameUnique(SysCatalogTextbookBo textbook); + + /** + * 是否存在子节点 + * + * @param catalogId 目录ID + * @return 结果 + */ + boolean hasChildByCatalogId(Long catalogId); + + /** + * 查询目录是否存在文件 + * + * @param catalogId 部门ID + * @return 结果 true 存在 false 不存在 + */ + boolean checkCatalogExistFile(Long catalogId); } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogResourceServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogResourceServiceImpl.java index bd78397..07142fd 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogResourceServiceImpl.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogResourceServiceImpl.java @@ -1,18 +1,20 @@ package org.dromara.file.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.file.domain.SysCatalogResource; +import org.dromara.file.domain.SysOssResource; import org.dromara.file.domain.bo.SysCatalogResourceBo; import org.dromara.file.domain.vo.SysCatalogResourceVo; import org.dromara.file.mapper.SysCatalogResourceMapper; +import org.dromara.file.mapper.SysOssResourceMapper; import org.dromara.file.service.ISysCatalogResourceService; import org.springframework.stereotype.Service; -import java.util.Collection; import java.util.List; import java.util.Map; @@ -28,6 +30,8 @@ public class SysCatalogResourceServiceImpl implements ISysCatalogResourceService private final SysCatalogResourceMapper baseMapper; + private final SysOssResourceMapper ossResourceMapper; + /** * 查询目录-专题资源 * @@ -35,7 +39,7 @@ public class SysCatalogResourceServiceImpl implements ISysCatalogResourceService * @return 目录-专题资源 */ @Override - public SysCatalogResourceVo queryById(Long catalogId){ + public SysCatalogResourceVo queryById(Long catalogId) { return baseMapper.selectVoById(catalogId); } @@ -96,22 +100,39 @@ public class SysCatalogResourceServiceImpl implements ISysCatalogResourceService /** * 保存前的数据校验 */ - private void validEntityBeforeSave(SysCatalogResource entity){ + private void validEntityBeforeSave(SysCatalogResource entity) { //TODO 做一些数据校验,如唯一约束 } /** * 校验并批量删除目录-专题资源信息 * - * @param ids 待删除的主键集合 - * @param isValid 是否进行有效性校验 + * @param catalogId 待删除的主键 * @return 是否删除成功 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteBatchIds(ids) > 0; + public int deleteById(Long catalogId) { + return baseMapper.deleteById(catalogId); + } + + @Override + public boolean checkNameUnique(SysCatalogResourceBo resource) { + boolean exist = baseMapper.exists(new LambdaQueryWrapper() + .eq(SysCatalogResource::getCatalogName, resource.getCatalogName()) + .eq(SysCatalogResource::getParentId, resource.getParentId()) + .ne(ObjectUtil.isNotNull(resource.getCatalogId()), SysCatalogResource::getCatalogId, resource.getCatalogId())); + return !exist; + } + + @Override + public boolean hasChildByCatalogId(Long catalogId) { + return baseMapper.exists(new LambdaQueryWrapper() + .eq(SysCatalogResource::getParentId, catalogId)); + } + + @Override + public boolean checkCatalogExistFile(Long catalogId) { + return ossResourceMapper.exists(new LambdaQueryWrapper() + .eq(SysOssResource::getCatalogId, catalogId)); } } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogTextbookServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogTextbookServiceImpl.java index 8d9c4cf..1e4111a 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogTextbookServiceImpl.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/org/dromara/file/service/impl/SysCatalogTextbookServiceImpl.java @@ -1,18 +1,20 @@ package org.dromara.file.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.file.domain.SysCatalogTextbook; +import org.dromara.file.domain.SysOssTextbook; import org.dromara.file.domain.bo.SysCatalogTextbookBo; import org.dromara.file.domain.vo.SysCatalogTextbookVo; import org.dromara.file.mapper.SysCatalogTextbookMapper; +import org.dromara.file.mapper.SysOssTextbookMapper; import org.dromara.file.service.ISysCatalogTextbookService; import org.springframework.stereotype.Service; -import java.util.Collection; import java.util.List; import java.util.Map; @@ -28,6 +30,8 @@ public class SysCatalogTextbookServiceImpl implements ISysCatalogTextbookService private final SysCatalogTextbookMapper baseMapper; + private final SysOssTextbookMapper ossTextbookMapper; + /** * 查询目录-同步教材 * @@ -35,7 +39,7 @@ public class SysCatalogTextbookServiceImpl implements ISysCatalogTextbookService * @return 目录-同步教材 */ @Override - public SysCatalogTextbookVo queryById(Long catalogId){ + public SysCatalogTextbookVo queryById(Long catalogId) { return baseMapper.selectVoById(catalogId); } @@ -96,22 +100,39 @@ public class SysCatalogTextbookServiceImpl implements ISysCatalogTextbookService /** * 保存前的数据校验 */ - private void validEntityBeforeSave(SysCatalogTextbook entity){ + private void validEntityBeforeSave(SysCatalogTextbook entity) { //TODO 做一些数据校验,如唯一约束 } /** * 校验并批量删除目录-同步教材信息 * - * @param ids 待删除的主键集合 - * @param isValid 是否进行有效性校验 + * @param catalogId 待删除的主键 * @return 是否删除成功 */ @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteBatchIds(ids) > 0; + public int deleteById(Long catalogId) { + return baseMapper.deleteById(catalogId); + } + + @Override + public boolean checkNameUnique(SysCatalogTextbookBo textbook) { + boolean exist = baseMapper.exists(new LambdaQueryWrapper() + .eq(SysCatalogTextbook::getCatalogName, textbook.getCatalogName()) + .eq(SysCatalogTextbook::getParentId, textbook.getParentId()) + .ne(ObjectUtil.isNotNull(textbook.getCatalogId()), SysCatalogTextbook::getCatalogId, textbook.getCatalogId())); + return !exist; + } + + @Override + public boolean hasChildByCatalogId(Long catalogId) { + return baseMapper.exists(new LambdaQueryWrapper() + .eq(SysCatalogTextbook::getParentId, catalogId)); + } + + @Override + public boolean checkCatalogExistFile(Long catalogId) { + return ossTextbookMapper.exists(new LambdaQueryWrapper() + .eq(SysOssTextbook::getCatalogId, catalogId)); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java index 48ca682..61d49ec 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java @@ -1,5 +1,6 @@ package org.dromara.system.domain; +import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; @@ -26,7 +27,7 @@ public class SysDept extends TenantEntity { /** * 部门ID */ - @TableId(value = "dept_id") + @TableId(value = "dept_id",type = IdType.AUTO) private Long deptId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysNotice.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysNotice.java index bfcc2bc..48374a7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysNotice.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysNotice.java @@ -1,5 +1,6 @@ package org.dromara.system.domain; +import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import org.dromara.common.tenant.core.TenantEntity; @@ -20,7 +21,7 @@ public class SysNotice extends TenantEntity { /** * 公告ID */ - @TableId(value = "notice_id") + @TableId(value = "notice_id",type = IdType.AUTO) private Long noticeId; /**