From f4d4d98470861e23a1365ed2a55cb26b57b2af1f Mon Sep 17 00:00:00 2001 From: Yan Nan <255809923@qq.com> Date: Tue, 23 Apr 2024 22:32:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E6=AC=A1=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/clazz/TClazzController.java | 8 ++ .../controller/clazz/TGroupController.java | 111 ++++++++++++++++++ .../java/com/ruoyi/clazz/domain/TGroup.java | 96 +++++++++++++++ .../ruoyi/clazz/domain/req/TGroupEditReq.java | 45 +++++++ .../clazz/domain/req/TGroupQueryReq.java | 45 +++++++ .../ruoyi/clazz/domain/req/TGroupSaveReq.java | 54 +++++++++ .../com/ruoyi/clazz/mapper/TGroupMapper.java | 16 +++ .../ruoyi/clazz/service/TGroupService.java | 22 ++++ .../clazz/service/impl/TGroupServiceImpl.java | 40 +++++++ .../resources/mapper/clazz/TGroupMapper.xml | 19 +++ 10 files changed, 456 insertions(+) create mode 100644 ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TGroupController.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/TGroup.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupEditReq.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupQueryReq.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupSaveReq.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/mapper/TGroupMapper.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/TGroupService.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/impl/TGroupServiceImpl.java create mode 100644 ruoyi-basic/ruoyi-clazz/src/main/resources/mapper/clazz/TGroupMapper.xml diff --git a/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TClazzController.java b/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TClazzController.java index fec1943..f339715 100644 --- a/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TClazzController.java +++ b/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TClazzController.java @@ -103,4 +103,12 @@ public class TClazzController extends BaseController { public Result remove(@PathVariable List clazzIds) { return toAjax(tClazzService.removeBatchByIds(clazzIds)); } + + /** + * 无条件差查询班级管理 + */ + @GetMapping("/findUnconditional") + public Result findUnconditional(){ + return getDataTable(tClazzService.list()); + } } diff --git a/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TGroupController.java b/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TGroupController.java new file mode 100644 index 0000000..0e51998 --- /dev/null +++ b/ruoyi-application/src/main/java/com/ruoyi/web/controller/clazz/TGroupController.java @@ -0,0 +1,111 @@ +package com.ruoyi.web.controller.clazz; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.ruoyi.clazz.domain.TGroup; +import com.ruoyi.clazz.domain.req.TGroupEditReq; +import com.ruoyi.clazz.domain.req.TGroupQueryReq; +import com.ruoyi.clazz.domain.req.TGroupSaveReq; +import com.ruoyi.clazz.service.TGroupService; +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.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 小组Controller + * + * @author ruoyi + * @date 2024-04-23 + */ +@Api(tags = "小组") +@RestController +@RequestMapping("/group/group") +public class TGroupController extends BaseController { + @Autowired + private TGroupService tGroupService; + + /** + * 查询小组列表 + */ + @ApiOperation("获取小组列表") + @PreAuthorize("@ss.hasPermi('group:group:list')") + @GetMapping("/list") + public Result> list(TGroupQueryReq tGroupQueryReq) { + startPage(); + List list = tGroupService.list(TGroup.queryBuild(tGroupQueryReq)); + return getDataTable(list); + } + + /** + * 导出小组列表 + */ + @ApiOperation("导出小组列表") + @PreAuthorize("@ss.hasPermi('group:group:export')") + @Log(title = "小组", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, TGroup tGroup) { + List list = tGroupService.list(tGroup); + ExcelUtil util = new ExcelUtil(TGroup.class); + util.exportExcel(response, list, "小组数据"); + } + + /** + * 获取小组详细信息 + */ + @ApiOperation("获取小组详细信息") + @PreAuthorize("@ss.hasPermi('group:group:query')") + @GetMapping(value = "/{groupId}") + @ApiImplicitParam(name = "groupId", value = "groupId", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("groupId") Long groupId) { + return Result.success(tGroupService.getById(groupId)); + } + + /** + * 新增小组 + */ + @PreAuthorize("@ss.hasPermi('group:group:add')") + @Log(title = "小组", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增小组") + public Result add(@RequestBody TGroupSaveReq tGroupSaveReq) { + return toAjax(tGroupService.save(TGroup.saveBuild(tGroupSaveReq))); + } + + /** + * 修改小组 + */ + @PreAuthorize("@ss.hasPermi('group:group:edit')") + @Log(title = "小组", businessType = BusinessType.UPDATE) + @PutMapping("/{groupId}") + @ApiOperation("修改小组") + public Result edit(@PathVariable Long groupId, @RequestBody TGroupEditReq tGroupEditReq) { + return toAjax(tGroupService.updateById(TGroup.editBuild(groupId,tGroupEditReq))); + } + + /** + * 删除小组 + */ + @PreAuthorize("@ss.hasPermi('group:group:remove')") + @Log(title = "小组", businessType = BusinessType.DELETE) + @DeleteMapping("/{groupIds}") + @ApiOperation("删除小组") + @ApiImplicitParam(name = "groupId", value = "groupId", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List groupIds) { + return toAjax(tGroupService.removeBatchByIds(groupIds)); + } +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/TGroup.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/TGroup.java new file mode 100644 index 0000000..2ae048c --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/TGroup.java @@ -0,0 +1,96 @@ +package com.ruoyi.clazz.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.ruoyi.clazz.domain.req.TGroupEditReq; +import com.ruoyi.clazz.domain.req.TGroupQueryReq; +import com.ruoyi.clazz.domain.req.TGroupSaveReq; +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; + +/** + * 小组对象 t_group + * + * @author ruoyi + * @date 2024-04-23 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("t_group") +@ApiModel(value = "TGroup", description = "小组") +public class TGroup{ + + private static final long serialVersionUID = 1L; + + /** 小组ID */ + @TableId(value = "group_id",type = IdType.AUTO) + @ApiModelProperty(name = "小组ID", value = "小组ID") + private Long groupId; + + /** 小组名称 */ + @Excel(name = "小组名称") + @ApiModelProperty(name = "小组名称", value = "小组名称") + private String groupName; + + /** 小组人数 */ + @Excel(name = "小组人数") + @ApiModelProperty(name = "小组人数", value = "小组人数") + private Long groupPeople; + + /** 小组人员 */ + @Excel(name = "小组人员") + @ApiModelProperty(name = "小组人员", value = "小组人员") + private String groupPersonnel; + + /** 班级ID */ + @Excel(name = "班级ID") + @ApiModelProperty(name = "班级ID", value = "班级ID") + private Long clazzId; + + /** + * 查询构造器 + */ + public static TGroup queryBuild( TGroupQueryReq tGroupQueryReq){ + return TGroup.builder() + .groupName(tGroupQueryReq.getGroupName()) + .groupPeople(tGroupQueryReq.getGroupPeople()) + .groupPersonnel(tGroupQueryReq.getGroupPersonnel()) + .clazzId(tGroupQueryReq.getClazzId()) + .build(); + } + + /** + * 添加构造器 + */ + public static TGroup saveBuild(TGroupSaveReq tGroupSaveReq){ + return TGroup.builder() + .groupName(tGroupSaveReq.getGroupName()) + .groupPeople(tGroupSaveReq.getGroupPeople()) + .groupPersonnel(tGroupSaveReq.getGroupPersonnel()) + .clazzId(tGroupSaveReq.getClazzId()) + .build(); + } + + /** + * 修改构造器 + */ + public static TGroup editBuild(Long groupId, TGroupEditReq tGroupEditReq){ + return TGroup.builder() + .groupId(groupId) + .groupName(tGroupEditReq.getGroupName()) + .groupPeople(tGroupEditReq.getGroupPeople()) + .groupPersonnel(tGroupEditReq.getGroupPersonnel()) + .clazzId(tGroupEditReq.getClazzId()) + .build(); + } + +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupEditReq.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupEditReq.java new file mode 100644 index 0000000..6e0bee7 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupEditReq.java @@ -0,0 +1,45 @@ +package com.ruoyi.clazz.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; + +/** + * 小组对象 t_group + * + * @author ruoyi + * @date 2024-04-23 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "TGroupEditReq", description = "小组") +public class TGroupEditReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 小组名称 */ + @ApiModelProperty(name = "小组名称", value = "小组名称") + private String groupName; + + /** 小组人数 */ + @ApiModelProperty(name = "小组人数", value = "小组人数") + private Long groupPeople; + + /** 小组人员 */ + @ApiModelProperty(name = "小组人员", value = "小组人员") + private String groupPersonnel; + + /** 班级ID */ + @ApiModelProperty(name = "班级ID", value = "班级ID") + private Long clazzId; + +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupQueryReq.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupQueryReq.java new file mode 100644 index 0000000..70c9441 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupQueryReq.java @@ -0,0 +1,45 @@ +package com.ruoyi.clazz.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; + +/** + * 小组对象 t_group + * + * @author ruoyi + * @date 2024-04-23 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "TGroupQueryReq", description = "小组") +public class TGroupQueryReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 小组名称 */ + @ApiModelProperty(name = "小组名称", value = "小组名称") + private String groupName; + + /** 小组人数 */ + @ApiModelProperty(name = "小组人数", value = "小组人数") + private Long groupPeople; + + /** 小组人员 */ + @ApiModelProperty(name = "小组人员", value = "小组人员") + private String groupPersonnel; + + /** 班级ID */ + @ApiModelProperty(name = "班级ID", value = "班级ID") + private Long clazzId; + +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupSaveReq.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupSaveReq.java new file mode 100644 index 0000000..8db32d5 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/domain/req/TGroupSaveReq.java @@ -0,0 +1,54 @@ +package com.ruoyi.clazz.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; + +/** + * 小组对象 t_group + * + * @author ruoyi + * @date 2024-04-23 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "TGroupSaveReq", description = "小组") +public class TGroupSaveReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 小组ID */ + + @ApiModelProperty(name = "小组ID", value = "小组ID") + private Long groupId; + + /** 小组名称 */ + + @ApiModelProperty(name = "小组名称", value = "小组名称") + private String groupName; + + /** 小组人数 */ + + @ApiModelProperty(name = "小组人数", value = "小组人数") + private Long groupPeople; + + /** 小组人员 */ + + @ApiModelProperty(name = "小组人员", value = "小组人员") + private String groupPersonnel; + + /** 班级ID */ + + @ApiModelProperty(name = "班级ID", value = "班级ID") + private Long clazzId; + +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/mapper/TGroupMapper.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/mapper/TGroupMapper.java new file mode 100644 index 0000000..ba8a286 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/mapper/TGroupMapper.java @@ -0,0 +1,16 @@ +package com.ruoyi.clazz.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.clazz.domain.TGroup; + + +/** + * 小组Mapper接口 + * + * @author ruoyi + * @date 2024-04-23 + */ +public interface TGroupMapper extends BaseMapper { + +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/TGroupService.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/TGroupService.java new file mode 100644 index 0000000..f9fc334 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/TGroupService.java @@ -0,0 +1,22 @@ +package com.ruoyi.clazz.service; + +import java.util.List; +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.clazz.domain.TGroup; + +/** + * 小组Service接口 + * + * @author ruoyi + * @date 2024-04-23 + */ +public interface TGroupService extends IService { + /** + * 查询小组列表 + * + * @param tGroup 小组 + * @return 小组集合 + */ + public List list(TGroup tGroup); + +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/impl/TGroupServiceImpl.java b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/impl/TGroupServiceImpl.java new file mode 100644 index 0000000..9bafcf5 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/java/com/ruoyi/clazz/service/impl/TGroupServiceImpl.java @@ -0,0 +1,40 @@ +package com.ruoyi.clazz.service.impl; + +import java.util.List; + +import com.ruoyi.clazz.domain.TGroup; +import com.ruoyi.clazz.mapper.TGroupMapper; +import com.ruoyi.clazz.service.TGroupService; +import com.ruoyi.common.utils.ObjUtils; +import com.ruoyi.common.utils.StringUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; + +/** + * 小组Service业务层处理 + * + * @author ruoyi + * @date 2024-04-23 + */ +@Slf4j +@Service +public class TGroupServiceImpl extends ServiceImpl implements TGroupService { + + /** + * 查询小组列表 + * + * @param tGroup 小组 + * @return 小组 + */ + @Override + public List list(TGroup tGroup) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + if (ObjUtils.notNull(tGroup.getClazzId())){ + queryWrapper.eq(TGroup::getClazzId, tGroup.getClazzId()); + } + return list(queryWrapper); + } +} diff --git a/ruoyi-basic/ruoyi-clazz/src/main/resources/mapper/clazz/TGroupMapper.xml b/ruoyi-basic/ruoyi-clazz/src/main/resources/mapper/clazz/TGroupMapper.xml new file mode 100644 index 0000000..a004660 --- /dev/null +++ b/ruoyi-basic/ruoyi-clazz/src/main/resources/mapper/clazz/TGroupMapper.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + select group_id, group_name, group_people, group_personnel, clazz_id from t_group + +