Переглянути джерело

Merge remote-tracking branch 'origin/master'

李进 2 роки тому
батько
коміт
8281d05e48

+ 17 - 12
authorize-api-service/src/main/java/com/xy/service/impl/SysRoleServiceImpl.java

@@ -1,6 +1,8 @@
 package com.xy.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -18,7 +20,7 @@ import com.xy.service.SysDeptRoleService;
 import com.xy.service.SysRoleMenuService;
 import com.xy.service.SysRoleService;
 import com.xy.service.SysUserRoleService;
-import com.xy.utils.MybatisPlusQuery;
+import com.xy.utils.Beans;
 import com.xy.utils.PageBean;
 import com.xy.utils.R;
 import com.xy.vo.SysRoleVo;
@@ -34,7 +36,6 @@ import org.springframework.web.bind.annotation.RequestBody;
 import javax.validation.Valid;
 import java.util.List;
 
-import static com.xy.utils.Beans.copy;
 import static com.xy.utils.PlusBeans.toIPage;
 import static com.xy.utils.PlusBeans.toPageBean;
 
@@ -66,7 +67,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         if (count > 0) {
             return R.fail("此角色标识已存在");
         }
-        SysRole sysRole = copy(SysRole.class, sysRoleDto).saveOrUpdate(RedisCache.getLoginId(Long.class), sysRoleDto.getSysId());
+        SysRole sysRole = Beans.copy(SysRole.class, sysRoleDto).saveOrUpdate(RedisCache.getLoginId(Long.class), sysRoleDto.getSysId());
         saveOrUpdate(sysRole);
         return R.ok(sysRole.getId());
     }
@@ -99,26 +100,30 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         return R.ok(Boolean.TRUE);
     }
 
- 
+
     @ApiOperation(value = "分页获取角色信息", notes = "分页获取角色信息")
     @PostMapping("page")
     public R<PageBean<SysRoleVo>> getRolePage(@RequestBody SysRoleDto.Page sysRoleDto) {
         PageBean pageBean = sysRoleDto.getPage();
-        LambdaQueryWrapper<SysRole> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(sysRoleDto, SysRole.class)
-                .like(SysRole::getName)
-                .like(SysRole::getDescription)
-                .build()
-                .orderByDesc(pageBean.getOrders().size() == 0, SysRole::getCreateTime);
+        LambdaQueryWrapper<SysRole> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(sysRoleDto.getSysId() != null, SysRole::getSysId, sysRoleDto.getSysId());
+        lqw.likeRight(StrUtil.isNotEmpty(sysRoleDto.getName()), SysRole::getName, sysRoleDto.getName());
+        lqw.likeRight(StrUtil.isNotEmpty(sysRoleDto.getCode()), SysRole::getCode, sysRoleDto.getCode());
+        lqw.eq(sysRoleDto.getStatus() != null, SysRole::getStatus, sysRoleDto.getStatus());
+        lqw.ge(ObjectUtil.isNotEmpty(sysRoleDto.getBeginCreateTime()), SysRole::getCreateTime, sysRoleDto.getBeginCreateTime());
+        lqw.le(ObjectUtil.isNotEmpty(sysRoleDto.getEndCreateTime()), SysRole::getCreateTime, sysRoleDto.getEndCreateTime());
+        lqw.orderByDesc(pageBean.getOrders().size() == 0, SysRole::getCreateTime);
+
         boolean b = RedisCache.getDataAuth(sysRoleDto.getSysId());
         //管理员查询权限查询所有,普通查询权限查询预留和自创建
         if (!b) {
-            lambdaQueryWrapper.and(sysRoleLambdaQueryWrapper -> sysRoleLambdaQueryWrapper
-                    .eq(SysRole::getCreateTime, RedisCache.getLoginId(Long.class))
+            lqw.and(sysRoleLambdaQueryWrapper -> sysRoleLambdaQueryWrapper
+                    .eq(SysRole::getCreateUser, RedisCache.getLoginId(Long.class))
                     .or()
                     .eq(SysRole::getIsLeave, true)
             );
         }
-        IPage<SysRole> page = page(toIPage(pageBean), lambdaQueryWrapper);
+        IPage<SysRole> page = page(toIPage(pageBean), lqw);
         return R.ok(toPageBean(SysRoleVo.class, page));
     }
 }

+ 45 - 4
authorize-api/src/main/java/com/xy/dto/SysRoleDto.java

@@ -1,5 +1,6 @@
 package com.xy.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.xy.utils.PageBean;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -8,6 +9,8 @@ import lombok.experimental.Accessors;
 
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Size;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
 
 @Data
 @ApiModel("角色表DTO")
@@ -49,13 +52,51 @@ public class SysRoleDto {
     @Data
     @ApiModel
     @Accessors(chain = true)
-    public static class Page extends SaveOrUpdate {
-        @NotNull(message = "所属系统不可为空")
-        @ApiModelProperty(value = "系统ID", required = true)
-        private Long sysId;
+    public static class Page extends PageDto {
 
         @ApiModelProperty(value = "分页对象")
         private PageBean page;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "创建时间-起")
+        private LocalDate beginCreateTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "创建时间-始")
+        private LocalDate endCreateTime;
+
+        public LocalDateTime getBeginCreateTime() {
+            return beginCreateTime == null ? null : beginCreateTime.atTime(0, 0, 0);
+        }
+
+        public LocalDateTime getEndCreateTime() {
+            return endCreateTime == null ? null : endCreateTime.atTime(23, 59, 59);
+        }
+
+
+    }
+
+    @Data
+    @ApiModel
+    @Accessors(chain = true)
+    public static class PageDto {
+
+        @NotNull(message = "所属系统不可为空")
+        @ApiModelProperty(value = "系统")
+        private Long sysId;
+
+        @ApiModelProperty(value = "角色标识")
+        private String code;
+
+        @ApiModelProperty(value = "角色名称")
+        private String name;
+
+
+        @ApiModelProperty("状态;true=启用(默认) false=禁用")
+        private Boolean status;
+
+        @ApiModelProperty("是否预留角色;true=是 false=否(默认)")
+        private Boolean isLeave;
     }