From 1d05647a73d482931dd1f40b4d843e0c34d6a099 Mon Sep 17 00:00:00 2001 From: lijiayao <13831655+xiao-yao-charge-forward@user.noreply.gitee.com> Date: Mon, 22 Apr 2024 17:29:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/system/SysClazzController.java | 111 ++++++++++++++++++ .../ruoyi/common/core/domain/BaseEntity.java | 8 +- .../com/ruoyi/system/domain/SysClazz.java | 81 +++++++++++++ .../system/domain/req/SysClazzEditReq.java | 37 ++++++ .../system/domain/req/SysClazzQueryReq.java | 37 ++++++ .../system/domain/req/SysClazzSaveReq.java | 44 +++++++ .../ruoyi/system/mapper/SysClazzMapper.java | 15 +++ .../ruoyi/system/service/SysClazzService.java | 22 ++++ .../service/impl/SysClazzServiceImpl.java | 44 +++++++ 9 files changed, 395 insertions(+), 4 deletions(-) create mode 100644 ruoyi-application/src/main/java/com/ruoyi/web/controller/system/SysClazzController.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysClazz.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzEditReq.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzQueryReq.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzSaveReq.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysClazzMapper.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/SysClazzService.java create mode 100644 ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysClazzServiceImpl.java diff --git a/ruoyi-application/src/main/java/com/ruoyi/web/controller/system/SysClazzController.java b/ruoyi-application/src/main/java/com/ruoyi/web/controller/system/SysClazzController.java new file mode 100644 index 0000000..73982aa --- /dev/null +++ b/ruoyi-application/src/main/java/com/ruoyi/web/controller/system/SysClazzController.java @@ -0,0 +1,111 @@ +package com.ruoyi.web.controller.system; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import io.swagger.annotations.*; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.Result; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.system.domain.SysClazz; +import com.ruoyi.system.domain.req.SysClazzQueryReq; +import com.ruoyi.system.domain.req.SysClazzSaveReq; +import com.ruoyi.system.domain.req.SysClazzEditReq; +import com.ruoyi.system.service.SysClazzService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 班级Controller + * + * @author ruoyi + * @date 2024-04-22 + */ +@Api(tags = "班级") +@RestController +@RequestMapping("/system/clazz") +public class SysClazzController extends BaseController { + @Autowired + private SysClazzService sysClazzService; + + /** + * 查询班级列表 + */ + @ApiOperation("获取班级列表") + @PreAuthorize("@ss.hasPermi('system:clazz:list')") + @GetMapping("/list") + public Result> list(SysClazzQueryReq sysClazzQueryReq) { + startPage(); + List list = sysClazzService.list(SysClazz.queryBuild(sysClazzQueryReq)); + return getDataTable(list); + } + + /** + * 导出班级列表 + */ + @ApiOperation("导出班级列表") + @PreAuthorize("@ss.hasPermi('system:clazz:export')") + @Log(title = "班级", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SysClazz sysClazz) { + List list = sysClazzService.list(sysClazz); + ExcelUtil util = new ExcelUtil(SysClazz.class); + util.exportExcel(response, list, "班级数据"); + } + + /** + * 获取班级详细信息 + */ + @ApiOperation("获取班级详细信息") + @PreAuthorize("@ss.hasPermi('system:clazz:query')") + @GetMapping(value = "/{clazzId}") + @ApiImplicitParam(name = "clazzId", value = "clazzId", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("clazzId") Long clazzId) { + return Result.success(sysClazzService.getById(clazzId)); + } + + /** + * 新增班级 + */ + @PreAuthorize("@ss.hasPermi('system:clazz:add')") + @Log(title = "班级", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增班级") + public Result add(@RequestBody SysClazzSaveReq sysClazzSaveReq) { + return toAjax(sysClazzService.save(SysClazz.saveBuild(sysClazzSaveReq))); + } + + /** + * 修改班级 + */ + @PreAuthorize("@ss.hasPermi('system:clazz:edit')") + @Log(title = "班级", businessType = BusinessType.UPDATE) + @PutMapping("/{clazzId}") + @ApiOperation("修改班级") + public Result edit(@PathVariable Long clazzId, @RequestBody SysClazzEditReq sysClazzEditReq) { + return toAjax(sysClazzService.updateById(SysClazz.editBuild(clazzId,sysClazzEditReq))); + } + + /** + * 删除班级 + */ + @PreAuthorize("@ss.hasPermi('system:clazz:remove')") + @Log(title = "班级", businessType = BusinessType.DELETE) + @DeleteMapping("/{clazzIds}") + @ApiOperation("删除班级") + @ApiImplicitParam(name = "clazzId", value = "clazzId", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List clazzIds) { + return toAjax(sysClazzService.removeBatchByIds(clazzIds)); + } +} diff --git a/ruoyi-basic/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java b/ruoyi-basic/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java index f24180a..8540726 100644 --- a/ruoyi-basic/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java +++ b/ruoyi-basic/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java @@ -40,7 +40,7 @@ public class BaseEntity implements Serializable { /** * 创建者 */ - @TableField(value = "create_by" , fill = FieldFill.INSERT) + @TableField(value = "create_by" , fill = FieldFill.INSERT,exist = false) @ApiModelProperty(hidden=true) private Long createBy; @@ -48,14 +48,14 @@ public class BaseEntity implements Serializable { * 创建时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @TableField(value = "create_time" , fill = FieldFill.INSERT) + @TableField(value = "create_time" , fill = FieldFill.INSERT,exist = false) @ApiModelProperty(hidden=true) private Date createTime; /** * 更新者 */ - @TableField(value = "update_by" , fill = FieldFill.UPDATE) + @TableField(value = "update_by" , fill = FieldFill.UPDATE ,exist = false) @ApiModelProperty(hidden=true) private Long updateBy; @@ -63,7 +63,7 @@ public class BaseEntity implements Serializable { * 更新时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @TableField(value = "update_time" , fill = FieldFill.UPDATE) + @TableField(value = "update_time" , fill = FieldFill.UPDATE,exist = false) @ApiModelProperty(hidden=true) private Date updateTime; diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysClazz.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysClazz.java new file mode 100644 index 0000000..5415ca3 --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysClazz.java @@ -0,0 +1,81 @@ +package com.ruoyi.system.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.system.domain.req.SysClazzQueryReq; +import com.ruoyi.system.domain.req.SysClazzSaveReq; +import com.ruoyi.system.domain.req.SysClazzEditReq; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 班级对象 sys_clazz + * + * @author ruoyi + * @date 2024-04-22 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("sys_clazz") +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "SysClazz", description = "班级") +public class SysClazz extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + @TableId(value = "clazz_id",type = IdType.AUTO) + @ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}") + private Long clazzId; + + /** 班级名称 */ + @Excel(name = "班级名称") + @ApiModelProperty(name = "班级名称", value = "班级名称") + private String clazzName; + + /** 班级状态 */ + @Excel(name = "班级状态") + @ApiModelProperty(name = "班级状态", value = "班级状态") + private Long clazzState; + + /** + * 查询构造器 + */ + public static SysClazz queryBuild( SysClazzQueryReq sysClazzQueryReq){ + return SysClazz.builder() + .clazzName(sysClazzQueryReq.getClazzName()) + .clazzState(sysClazzQueryReq.getClazzState()) + .build(); + } + + /** + * 添加构造器 + */ + public static SysClazz saveBuild(SysClazzSaveReq sysClazzSaveReq){ + return SysClazz.builder() + .clazzName(sysClazzSaveReq.getClazzName()) + .clazzState(sysClazzSaveReq.getClazzState()) + .build(); + } + + /** + * 修改构造器 + */ + public static SysClazz editBuild(Long clazzId, SysClazzEditReq sysClazzEditReq){ + return SysClazz.builder() + .clazzId(clazzId) + .clazzName(sysClazzEditReq.getClazzName()) + .clazzState(sysClazzEditReq.getClazzState()) + .build(); + } + +} diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzEditReq.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzEditReq.java new file mode 100644 index 0000000..73d98da --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzEditReq.java @@ -0,0 +1,37 @@ +package com.ruoyi.system.domain.req; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 班级对象 sys_clazz + * + * @author ruoyi + * @date 2024-04-22 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "SysClazzEditReq", description = "班级") +public class SysClazzEditReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 班级名称 */ + @ApiModelProperty(name = "班级名称", value = "班级名称") + private String clazzName; + + /** 班级状态 */ + @ApiModelProperty(name = "班级状态", value = "班级状态") + private Long clazzState; + +} diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzQueryReq.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzQueryReq.java new file mode 100644 index 0000000..8bdc54b --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzQueryReq.java @@ -0,0 +1,37 @@ +package com.ruoyi.system.domain.req; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 班级对象 sys_clazz + * + * @author ruoyi + * @date 2024-04-22 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "SysClazzQueryReq", description = "班级") +public class SysClazzQueryReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 班级名称 */ + @ApiModelProperty(name = "班级名称", value = "班级名称") + private String clazzName; + + /** 班级状态 */ + @ApiModelProperty(name = "班级状态", value = "班级状态") + private Long clazzState; + +} diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzSaveReq.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzSaveReq.java new file mode 100644 index 0000000..5873c07 --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/domain/req/SysClazzSaveReq.java @@ -0,0 +1,44 @@ +package com.ruoyi.system.domain.req; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 班级对象 sys_clazz + * + * @author ruoyi + * @date 2024-04-22 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "SysClazzSaveReq", description = "班级") +public class SysClazzSaveReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + + @ApiModelProperty(name = "${column.columnComment}", value = "${column.columnComment}") + private Long clazzId; + + /** 班级名称 */ + + @ApiModelProperty(name = "班级名称", value = "班级名称") + private String clazzName; + + /** 班级状态 */ + + @ApiModelProperty(name = "班级状态", value = "班级状态") + private Long clazzState; + +} diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysClazzMapper.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysClazzMapper.java new file mode 100644 index 0000000..3e24e8a --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysClazzMapper.java @@ -0,0 +1,15 @@ +package com.ruoyi.system.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.system.domain.SysClazz; + +/** + * 班级Mapper接口 + * + * @author ruoyi + * @date 2024-04-22 + */ +public interface SysClazzMapper extends BaseMapper { + +} diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/SysClazzService.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/SysClazzService.java new file mode 100644 index 0000000..c684dfd --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/SysClazzService.java @@ -0,0 +1,22 @@ +package com.ruoyi.system.service; + +import java.util.List; +import com.ruoyi.system.domain.SysClazz; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 班级Service接口 + * + * @author ruoyi + * @date 2024-04-22 + */ +public interface SysClazzService extends IService { + /** + * 查询班级列表 + * + * @param sysClazz 班级 + * @return 班级集合 + */ + public List list(SysClazz sysClazz); + +} diff --git a/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysClazzServiceImpl.java b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysClazzServiceImpl.java new file mode 100644 index 0000000..245b147 --- /dev/null +++ b/ruoyi-basic/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysClazzServiceImpl.java @@ -0,0 +1,44 @@ +package com.ruoyi.system.service.impl; + +import java.util.List; + +import com.ruoyi.common.utils.ObjUtils; +import com.ruoyi.system.mapper.SysClazzMapper; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import com.ruoyi.system.domain.SysClazz; +import com.ruoyi.system.service.SysClazzService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; + +/** + * 班级Service业务层处理 + * + * @author ruoyi + * @date 2024-04-22 + */ +@Slf4j +@Service +public class SysClazzServiceImpl extends ServiceImpl implements SysClazzService { + + /** + * 查询班级列表 + * + * @param sysClazz 班级 + * @return 班级 + */ + @Override + public List list(SysClazz sysClazz) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + + if (ObjUtils.notNull(sysClazz.getClazzName())){ + queryWrapper.like(SysClazz::getClazzName, sysClazz.getClazzName()); + } + + if (ObjUtils.notNull(sysClazz.getClazzState())){ + queryWrapper.eq(SysClazz::getClazzState, sysClazz.getClazzState()); + } + return list(queryWrapper); + } +}