代码优化

This commit is contained in:
cjw 2024-05-28 15:13:59 +08:00
parent afed932070
commit 3ff9fef182
23 changed files with 306 additions and 357 deletions

View File

@ -347,6 +347,12 @@
<artifactId>ruoyi-generator</artifactId>
<version>${revision}</version>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-file</artifactId>
<version>${revision}</version>
</dependency>
</dependencies>
</dependencyManagement>
@ -355,7 +361,6 @@
<module>ruoyi-common</module>
<module>ruoyi-extend</module>
<module>ruoyi-modules</module>
<module>ruoyi-modules/ruoyi-file</module>
</modules>
<packaging>pom</packaging>

View File

@ -23,20 +23,20 @@
<artifactId>mysql-connector-j</artifactId>
</dependency>
<!-- Oracle -->
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.oracle.database.jdbc</groupId>-->
<!-- <artifactId>ojdbc8</artifactId>-->
<!-- </dependency>-->
<!-- PostgreSql -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.postgresql</groupId>-->
<!-- <artifactId>postgresql</artifactId>-->
<!-- </dependency>-->
<!-- SqlServer -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.microsoft.sqlserver</groupId>-->
<!-- <artifactId>mssql-jdbc</artifactId>-->
<!-- </dependency>-->
<dependency>
<groupId>org.dromara</groupId>
@ -61,7 +61,6 @@
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-file</artifactId>
<version>5.2.0-BETA</version>
</dependency>
<dependency>

View File

@ -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

View File

@ -10,56 +10,58 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-file</artifactId>
<description>
校本资源模块
</description>
<dependencies>
<!-- 通用工具-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- OSS功能模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-oss</artifactId>
</dependency>
<dependencies>
<!-- 通用工具-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- OSS功能模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-oss</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-idempotent</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-idempotent</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-encrypt</artifactId>
</dependency>
</dependencies>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-encrypt</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -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<SysCatalogResourceVo>> list(SysCatalogResourceBo bo) {
List<SysCatalogResourceVo> list = sysCatalogResourceService.queryList(bo);
List<SysCatalogResourceVo> 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<SysCatalogResourceVo> list = sysCatalogResourceService.queryList(bo);
// ExcelUtil.exportExcel(list, "目录-专题资源", SysCatalogResourceVo.class, response);
// }
/**
* 获取目录-专题资源详细信息
*
* @param catalogId 主键
*/
@SaCheckPermission("resource:catalogResource:query")
@SaCheckPermission("catalog:resource:query")
@GetMapping("/{catalogId}")
public R<SysCatalogResourceVo> 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<Void> 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<Void> 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<Void> 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));
}
}

View File

@ -37,30 +37,20 @@ public class SysCatalogTextbookController extends BaseController {
/**
* 查询目录-同步教材列表
*/
@SaCheckPermission("resource:catalogTextbook:list")
@SaCheckPermission("catalog:textbook:list")
@GetMapping("/list")
public R<List<SysCatalogTextbookVo>> list(SysCatalogTextbookBo bo) {
List<SysCatalogTextbookVo> 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<SysCatalogTextbookVo> list = sysCatalogTextbookService.queryList(bo);
// ExcelUtil.exportExcel(list, "目录-同步教材", SysCatalogTextbookVo.class, response);
// }
/**
* 获取目录-同步教材详细信息
*
* @param catalogId 主键
*/
@SaCheckPermission("resource:catalogTextbook:query")
@SaCheckPermission("catalog:textbook:query")
@GetMapping("/{catalogId}")
public R<SysCatalogTextbookVo> 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<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] catalogIds) {
return toAjax(sysCatalogTextbookService.deleteWithValidByIds(List.of(catalogIds), true));
@PathVariable Long catalogId) {
return toAjax(sysCatalogTextbookService.deleteById(catalogId));
}
}

View File

@ -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<SysHomeBannerVo> 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<SysHomeBannerVo> 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<SysHomeBannerVo> 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<Void> remove(@NotEmpty(message = "主键不能为空")

View File

@ -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<SysHomeShowVo> 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<SysHomeShowVo> list = sysHomeShowService.queryList(bo);
ExcelUtil.exportExcel(list, "学校名师", SysHomeShowVo.class, response);
}
/**
* 获取学校名师详细信息
*
* @param showId 主键
*/
@SaCheckPermission("home:homeShow:query")
@SaCheckPermission("home:show:query")
@GetMapping("/{showId}")
public R<SysHomeShowVo> 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<Void> remove(@NotEmpty(message = "主键不能为空")

View File

@ -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<SysHomeTrendVo> 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<SysHomeTrendVo> list = sysHomeTrendService.queryList(bo);
ExcelUtil.exportExcel(list, "学校动态", SysHomeTrendVo.class, response);
}
/**
* 获取学校动态详细信息
*
* @param trendId 主键
*/
@SaCheckPermission("home:homeTrend:query")
@SaCheckPermission("home:trend:query")
@GetMapping("/{trendId}")
public R<SysHomeTrendVo> 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<Void> remove(@NotEmpty(message = "主键不能为空")

View File

@ -38,29 +38,18 @@ public class SysOssResourceController extends BaseController {
/**
* 查询请填写功能名称列表
*/
@SaCheckPermission("system:ossResource:list")
@SaCheckPermission("file:resource:list")
@GetMapping("/list")
public TableDataInfo<SysOssResourceVo> 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<SysOssResourceVo> list = sysOssResourceService.queryList(bo);
// ExcelUtil.exportExcel(list, "【请填写功能名称】", SysOssResourceVo.class, response);
// }
/**
* 获取请填写功能名称详细信息
*
* @param ossId 主键
*/
@SaCheckPermission("system:ossResource:query")
@SaCheckPermission("file:resource:query")
@GetMapping("/{ossId}")
public R<SysOssResourceVo> 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<Void> remove(@NotEmpty(message = "主键不能为空")

View File

@ -38,29 +38,19 @@ public class SysOssTextbookController extends BaseController {
/**
* 查询请填写功能名称列表
*/
@SaCheckPermission("system:ossTextbook:list")
@SaCheckPermission("file:textbook:list")
@GetMapping("/list")
public TableDataInfo<SysOssTextbookVo> 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<SysOssTextbookVo> list = sysOssTextbookService.queryList(bo);
// ExcelUtil.exportExcel(list, "【请填写功能名称】", SysOssTextbookVo.class, response);
// }
/**
* 获取请填写功能名称详细信息
*
* @param ossId 主键
*/
@SaCheckPermission("system:ossTextbook:query")
@SaCheckPermission("file:textbook:query")
@GetMapping("/{ossId}")
public R<SysOssTextbookVo> 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<Void> remove(@NotEmpty(message = "主键不能为空")

View File

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

View File

@ -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;
/**
* 教师名称
*/

View File

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

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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<Long> 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);
}

View File

@ -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<Long> 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);
}

View File

@ -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<Long> 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<SysCatalogResource>()
.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<SysCatalogResource>()
.eq(SysCatalogResource::getParentId, catalogId));
}
@Override
public boolean checkCatalogExistFile(Long catalogId) {
return ossResourceMapper.exists(new LambdaQueryWrapper<SysOssResource>()
.eq(SysOssResource::getCatalogId, catalogId));
}
}

View File

@ -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<Long> 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<SysCatalogTextbook>()
.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<SysCatalogTextbook>()
.eq(SysCatalogTextbook::getParentId, catalogId));
}
@Override
public boolean checkCatalogExistFile(Long catalogId) {
return ossTextbookMapper.exists(new LambdaQueryWrapper<SysOssTextbook>()
.eq(SysOssTextbook::getCatalogId, catalogId));
}
}

View File

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

View File

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