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;
/**