Forráskód Böngészése

1、用户角色表

machaoyi 1 éve
szülő
commit
35d2898b27

+ 113 - 0
application/src/main/java/com/ctsi/SysUserRole/controller/SysUserRoleController.java

@@ -0,0 +1,113 @@
+package com.ctsi.SysUserRole.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ctsi.entity.FramePage;
+import com.ctsi.utils.ApiResult;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.web.bind.annotation.*;
+import com.ctsi.SysUserRole.entity.SysUserRole;
+import com.ctsi.SysUserRole.service.SysUserRoleService;
+
+import javax.annotation.Resource;
+
+ /**
+ * 用户角色表;(sys_user_role)表控制层
+ * @author : machaoyi
+ * @date : 2024-1-11
+ */
+//@Api(tags = "用户角色表对象功能接口")
+//@RestController
+//@RequestMapping("/sysUserRole")
+public class SysUserRoleController{
+    @Resource
+    private SysUserRoleService sysUserRoleService;
+    private static final Logger log = LoggerFactory.getLogger(SysUserRoleController.class);
+    
+    /** 
+     * 通过ID查询单条数据 
+     *
+     * @param id 主键
+     * @return 实例对象
+     */
+    @ApiOperation("通过ID查询单条数据")
+    @GetMapping("{id}")
+    public ApiResult<SysUserRole> queryById(Long id){
+        try {
+            return ApiResult.success(sysUserRoleService.queryById(id));
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            return ApiResult.failure("查询失败",null);
+        }
+    }
+    
+    /** 
+     * 分页查询
+     *
+     * @param sysUserRole 筛选条件
+     * @return 查询结果
+     */
+    @ApiOperation("分页查询")
+    @GetMapping
+    public ApiResult<Page<SysUserRole>> paginQuery(SysUserRole sysUserRole, FramePage framePage){
+        try {
+            return ApiResult.success(sysUserRoleService.paginQuery(sysUserRole, framePage.getPageNum(), framePage.getPageSize()));
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            return ApiResult.failure("分页查询失败",null);
+        }    
+    }
+    
+    /** 
+     * 新增数据
+     *
+     * @param sysUserRole 实例对象
+     * @return 实例对象
+     */
+    @ApiOperation("新增数据")
+    @PostMapping
+    public ApiResult<SysUserRole> add(@RequestBody SysUserRole sysUserRole){
+        try {
+            return ApiResult.success(sysUserRoleService.insert(sysUserRole));
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            return ApiResult.failure("新增数据失败",null);
+        }
+    }
+    
+    /** 
+     * 更新数据
+     *
+     * @param sysUserRole 实例对象
+     * @return 实例对象
+     */
+    @ApiOperation("更新数据")
+    @PutMapping
+    public ApiResult<SysUserRole> edit(@RequestBody SysUserRole sysUserRole){
+        try {
+            return ApiResult.success(sysUserRoleService.update(sysUserRole));
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            return ApiResult.failure("更新数据失败",null);
+        }
+    }
+    
+    /** 
+     * 通过主键删除数据
+     *
+     * @param id 主键
+     * @return 是否成功
+     */
+    @ApiOperation("通过主键删除数据")
+    @DeleteMapping
+    public ApiResult<Boolean> deleteById(Long id){
+        try {
+            return ApiResult.success(sysUserRoleService.deleteById(id));
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            return ApiResult.failure("删除数据失败",null);
+        }
+    }
+}

+ 56 - 0
application/src/main/java/com/ctsi/SysUserRole/entity/SysUserRole.java

@@ -0,0 +1,56 @@
+package com.ctsi.SysUserRole.entity;
+
+import com.ctsi.utils.LongtoStringSerialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+
+ /**
+ * 用户角色表;
+ * @author : machaoyi
+ * @date : 2024-1-11
+ */
+@ApiModel(value = "用户角色表",description = "")
+@TableName("sys_user_role")
+public class SysUserRole implements Serializable,Cloneable{
+    /** 主键id */
+    @ApiModelProperty(value = "主键id",notes = "")
+    @TableId
+    @JsonSerialize(using = LongtoStringSerialize.class)
+    private Long id ;
+    /** 用户id */
+    @ApiModelProperty(value = "用户id",notes = "")
+    private Long userId ;
+    /** 角色id */
+    @ApiModelProperty(value = "角色id",notes = "")
+    private Long roleId ;
+
+    /** 主键id */
+    public Long getId(){
+        return this.id;
+    }
+    /** 主键id */
+    public void setId(Long id){
+        this.id=id;
+    }
+    /** 用户id */
+    public Long getUserId(){
+        return this.userId;
+    }
+    /** 用户id */
+    public void setUserId(Long userId){
+        this.userId=userId;
+    }
+    /** 角色id */
+    public Long getRoleId(){
+        return this.roleId;
+    }
+    /** 角色id */
+    public void setRoleId(Long roleId){
+        this.roleId=roleId;
+    }
+}

+ 44 - 0
application/src/main/java/com/ctsi/SysUserRole/entity/SysUserRoleAddVO.java

@@ -0,0 +1,44 @@
+package com.ctsi.SysUserRole.entity;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ctsi.utils.LongtoStringSerialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+* 用户角色表;
+* @author : machaoyi
+* @date : 2024-1-11
+*/
+@ApiModel(value = "用户角色表新增VO",description = "")
+@TableName("sys_user_role")
+public class SysUserRoleAddVO implements Serializable,Cloneable{
+   /** 用户id */
+   @ApiModelProperty(value = "用户id",notes = "")
+   private Long userId ;
+   /** 角色id */
+   @ApiModelProperty(value = "角色id",notes = "")
+   private List<Long> roleId ;
+
+   /** 用户id */
+   public Long getUserId(){
+       return this.userId;
+   }
+   /** 用户id */
+   public void setUserId(Long userId){
+       this.userId=userId;
+   }
+
+   public List<Long> getRoleId() {
+      return roleId;
+   }
+
+   public void setRoleId(List<Long> roleId) {
+      this.roleId = roleId;
+   }
+}

+ 26 - 0
application/src/main/java/com/ctsi/SysUserRole/mapper/SysUserRoleMapper.java

@@ -0,0 +1,26 @@
+package com.ctsi.SysUserRole.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import com.ctsi.SysUserRole.entity.SysUserRole;
+
+ /**
+ * 用户角色表;(sys_user_role)表数据库访问层
+ * @author : machaoyi
+ * @date : 2024-1-11
+ */
+@Mapper
+public interface SysUserRoleMapper  extends BaseMapper<SysUserRole>{
+    /** 
+     * 分页查询指定行数据
+     *
+     * @param page 分页参数
+     * @param wrapper 动态查询条件
+     * @return 分页对象列表
+     */
+    IPage<SysUserRole> selectByPage(IPage<SysUserRole> page , @Param(Constants.WRAPPER) Wrapper<SysUserRole> wrapper);
+}

+ 8 - 0
application/src/main/java/com/ctsi/SysUserRole/mapper/SysUserRoleMapper.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.ctsi.SysUserRole.mapper.SysUserRoleMapper">
+     <select id="selectByPage" resultType="com.ctsi.SysUserRole.entity.SysUserRole">
+        select * from sys_user_role ${ew.customSqlSegment}
+    </select>
+</mapper>

+ 54 - 0
application/src/main/java/com/ctsi/SysUserRole/service/SysUserRoleService.java

@@ -0,0 +1,54 @@
+package com.ctsi.SysUserRole.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ctsi.SysUserRole.entity.SysUserRole;
+import com.ctsi.SysUserRole.entity.SysUserRoleAddVO;
+
+/**
+ * 用户角色表;(sys_user_role)表服务接口
+ * @author : machaoyi
+ * @date : 2024-1-11
+ */
+public interface SysUserRoleService{
+    
+    /** 
+     * 通过ID查询单条数据 
+     *
+     * @param id 主键
+     * @return 实例对象
+     */
+    SysUserRole queryById(Long id);
+    
+    /**
+     * 分页查询
+     *
+     * @param sysUserRole 筛选条件
+     * @param current 当前页码
+     * @param size  每页大小
+     * @return
+     */
+    Page<SysUserRole> paginQuery(SysUserRole sysUserRole, long current, long size);
+    /** 
+     * 新增数据
+     *
+     * @param sysUserRole 实例对象
+     * @return 实例对象
+     */
+    SysUserRole insert(SysUserRole sysUserRole);
+    /** 
+     * 更新数据
+     *
+     * @param sysUserRole 实例对象
+     * @return 实例对象
+     */
+    SysUserRole update(SysUserRole sysUserRole);
+    /** 
+     * 通过主键删除数据
+     *
+     * @param id 主键
+     * @return 是否成功
+     */
+    boolean deleteById(Long id);
+
+    SysUserRoleAddVO save(SysUserRoleAddVO sysUserRoleAddVO);
+}

+ 115 - 0
application/src/main/java/com/ctsi/SysUserRole/service/impl/SysUserRoleServiceImpl.java

@@ -0,0 +1,115 @@
+package com.ctsi.SysUserRole.service.impl;
+
+import cn.hutool.core.util.StrUtil;
+import com.ctsi.SysUserRole.entity.SysUserRoleAddVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
+import com.ctsi.SysUserRole.entity.SysUserRole;
+import com.ctsi.SysUserRole.mapper.SysUserRoleMapper;
+import com.ctsi.SysUserRole.service.SysUserRoleService;
+ /**
+ * 用户角色表;(sys_user_role)表服务实现类
+ * @author : machaoyi
+ * @date : 2024-1-11
+ */
+@Service
+public class SysUserRoleServiceImpl implements SysUserRoleService{
+    @Autowired
+    private SysUserRoleMapper sysUserRoleMapper;
+    
+    /** 
+     * 通过ID查询单条数据 
+     *
+     * @param id 主键
+     * @return 实例对象
+     */
+    public SysUserRole queryById(Long id){
+        return sysUserRoleMapper.selectById(id);
+    }
+    
+    /**
+     * 分页查询
+     *
+     * @param sysUserRole 筛选条件
+     * @param current 当前页码
+     * @param size  每页大小
+     * @return
+     */
+    public Page<SysUserRole> paginQuery(SysUserRole sysUserRole, long current, long size){
+        //1. 构建动态查询条件
+        LambdaQueryWrapper<SysUserRole> queryWrapper = new LambdaQueryWrapper<>();
+        //2. 执行分页查询
+        Page<SysUserRole> pagin = new Page<>(current , size , true);
+        IPage<SysUserRole> selectResult = sysUserRoleMapper.selectPage(pagin , queryWrapper);
+        pagin.setPages(selectResult.getPages());
+        pagin.setTotal(selectResult.getTotal());
+        pagin.setRecords(selectResult.getRecords());
+        //3. 返回结果
+        return pagin;
+    }
+    
+    /** 
+     * 新增数据
+     *
+     * @param sysUserRole 实例对象
+     * @return 实例对象
+     */
+    public SysUserRole insert(SysUserRole sysUserRole){
+        sysUserRoleMapper.insert(sysUserRole);
+        return sysUserRole;
+    }
+    
+    /** 
+     * 更新数据
+     *
+     * @param sysUserRole 实例对象
+     * @return 实例对象
+     */
+    public SysUserRole update(SysUserRole sysUserRole){
+        //1. 根据条件动态更新
+        LambdaUpdateChainWrapper<SysUserRole> chainWrapper = new LambdaUpdateChainWrapper<SysUserRole>(sysUserRoleMapper);
+        //2. 设置主键,并更新
+        chainWrapper.eq(SysUserRole::getId, sysUserRole.getId());
+        boolean ret = chainWrapper.update();
+        //3. 更新成功了,查询最最对象返回
+        if(ret){
+            return queryById(sysUserRole.getId());
+        }else{
+            return sysUserRole;
+        }
+    }
+    
+    /** 
+     * 通过主键删除数据
+     *
+     * @param id 主键
+     * @return 是否成功
+     */
+    public boolean deleteById(Long id){
+        int total = sysUserRoleMapper.deleteById(id);
+        return total > 0;
+    }
+
+     /**
+      * 保存用户角色
+      *
+      * @param sysUserRoleAddVO 实例对象
+      * @return 实例对象
+      */
+     public SysUserRoleAddVO save(SysUserRoleAddVO sysUserRoleAddVO){
+         LambdaQueryWrapper<SysUserRole> queryWrapper = new LambdaQueryWrapper<>();
+         queryWrapper.eq(SysUserRole::getUserId,sysUserRoleAddVO.getUserId());
+         sysUserRoleMapper.delete(queryWrapper);
+         for (Long roleId : sysUserRoleAddVO.getRoleId()) {
+             SysUserRole sysUserRole = new SysUserRole();
+             sysUserRole.setUserId(sysUserRoleAddVO.getUserId());
+             sysUserRole.setRoleId(roleId);
+             sysUserRoleMapper.insert(sysUserRole);
+         }
+         return sysUserRoleAddVO;
+     }
+}