diff --git a/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataPermission.java b/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataPermission.java index f5b42cb..fe053b5 100644 --- a/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataPermission.java +++ b/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataPermission.java @@ -2,6 +2,9 @@ package com.zsc.edu.gateway.framework.mybatisplus; import java.lang.annotation.*; +/** + * @author vertoryao + */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) @Documented diff --git a/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeHandler.java b/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeHandler.java index 67adb71..7139aa2 100644 --- a/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeHandler.java +++ b/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeHandler.java @@ -7,7 +7,6 @@ import com.zsc.edu.gateway.framework.security.UserDetailsImpl; import lombok.extern.slf4j.Slf4j; import net.sf.jsqlparser.expression.Expression; import net.sf.jsqlparser.expression.LongValue; -import net.sf.jsqlparser.expression.Parenthesis; import net.sf.jsqlparser.expression.operators.relational.EqualsTo; import net.sf.jsqlparser.expression.operators.relational.ExpressionList; import net.sf.jsqlparser.expression.operators.relational.InExpression; diff --git a/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeType.java b/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeType.java index 6673eed..20a95fa 100644 --- a/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeType.java +++ b/src/main/java/com/zsc/edu/gateway/framework/mybatisplus/DataScopeType.java @@ -2,7 +2,6 @@ package com.zsc.edu.gateway.framework.mybatisplus; import com.baomidou.mybatisplus.annotation.IEnum; import lombok.AllArgsConstructor; -import lombok.Getter; @AllArgsConstructor public enum DataScopeType implements IEnum { diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/device/controller/DeviceController.java b/src/main/java/com/zsc/edu/gateway/modules/iot/device/controller/DeviceController.java index cd5150b..e7e1259 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/device/controller/DeviceController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/device/controller/DeviceController.java @@ -1,6 +1,7 @@ package com.zsc.edu.gateway.modules.iot.device.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.modules.iot.device.dto.BatchDeviceDto; import com.zsc.edu.gateway.modules.iot.device.dto.DeviceDto; import com.zsc.edu.gateway.modules.iot.device.dto.DeviceServeDto; @@ -63,6 +64,7 @@ public class DeviceController { /** * 分页查询设备 */ + @DataPermission @GetMapping @PreAuthorize("hasAuthority('iot:device:query')") public Page query(Page page, DeviceQuery query) { diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java b/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java index 1304af4..9a48215 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java @@ -90,6 +90,7 @@ public class Device extends BaseEntity { @TableField(exist = false) public Product product; + public enum Status implements IEnum, IState { UNACTIVATED(0, "未激活"), LOCKED(1, "已锁定"), diff --git a/src/main/java/com/zsc/edu/gateway/modules/message/controller/BulletinController.java b/src/main/java/com/zsc/edu/gateway/modules/message/controller/BulletinController.java index f72ff2b..9207c22 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/message/controller/BulletinController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/message/controller/BulletinController.java @@ -1,6 +1,7 @@ package com.zsc.edu.gateway.modules.message.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.framework.security.UserDetailsImpl; import com.zsc.edu.gateway.modules.message.dto.BulletinDto; import com.zsc.edu.gateway.modules.message.entity.Bulletin; @@ -42,6 +43,7 @@ public class BulletinController { * @param query 查询表单 * @return 分页数据 */ + @DataPermission @GetMapping("/self") public Page getBulletins(Page page, BulletinQuery query) { query.setState(Bulletin.State.publish); @@ -66,7 +68,8 @@ public class BulletinController { * @param query 查询参数 * @return 分页数据 */ - @GetMapping() + @DataPermission + @GetMapping @PreAuthorize("hasAuthority('message:bulletin:query')") public Page query(Page page, BulletinQuery query) { return service.page(page, query.wrapper()); diff --git a/src/main/java/com/zsc/edu/gateway/modules/message/controller/UserNoticeController.java b/src/main/java/com/zsc/edu/gateway/modules/message/controller/UserNoticeController.java index 1667c7d..44c2c77 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/message/controller/UserNoticeController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/message/controller/UserNoticeController.java @@ -2,6 +2,7 @@ package com.zsc.edu.gateway.modules.message.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.framework.security.UserDetailsImpl; import com.zsc.edu.gateway.modules.message.dto.UserNoticeDto; import com.zsc.edu.gateway.modules.message.query.AdminNoticeQuery; @@ -47,6 +48,7 @@ public class UserNoticeController { * @param query 查询参数 * @return 分页数据 */ + @DataPermission(tableAlias = "su") @GetMapping("/self") public IPage selfPage(Page pageParam, @AuthenticationPrincipal UserDetailsImpl userDetails, UserNoticeQuery query) { query.userId = userDetails.id; @@ -106,6 +108,7 @@ public class UserNoticeController { * @param query 查询参数 * @return 分页数据 */ + @DataPermission(tableAlias = "su") @GetMapping @PreAuthorize("hasAuthority('message:notice:query')") public IPage page(Page page, AdminNoticeQuery query) { diff --git a/src/main/java/com/zsc/edu/gateway/modules/message/query/AdminNoticeQuery.java b/src/main/java/com/zsc/edu/gateway/modules/message/query/AdminNoticeQuery.java index 8b0c552..ae01c52 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/message/query/AdminNoticeQuery.java +++ b/src/main/java/com/zsc/edu/gateway/modules/message/query/AdminNoticeQuery.java @@ -1,11 +1,15 @@ package com.zsc.edu.gateway.modules.message.query; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zsc.edu.gateway.modules.message.entity.Bulletin; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.util.StringUtils; import java.time.LocalDateTime; +import java.util.Objects; /** * @author zhuang @@ -35,4 +39,5 @@ public class AdminNoticeQuery { */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") public LocalDateTime createAtEnd; + } diff --git a/src/main/java/com/zsc/edu/gateway/modules/system/controller/DeptController.java b/src/main/java/com/zsc/edu/gateway/modules/system/controller/DeptController.java index ec63c4b..791fd51 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/system/controller/DeptController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/system/controller/DeptController.java @@ -3,6 +3,7 @@ package com.zsc.edu.gateway.modules.system.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zsc.edu.gateway.exception.ConstraintException; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.modules.system.dto.DeptDto; import com.zsc.edu.gateway.modules.system.entity.Dept; import com.zsc.edu.gateway.modules.system.entity.User; @@ -29,11 +30,12 @@ public class DeptController { private final UserService userService; /** - * 返回管理部门列表 hasAuthority('SYSTEM:DEPT:QUERY') + * 返回管理部门分页 hasAuthority('SYSTEM:DEPT:QUERY') * * @param query 查询表单 * @return 部门列表 */ + @DataPermission @GetMapping @PreAuthorize("hasAuthority('system:dept:query')") public Page query(DeptQuery query, Page page) { diff --git a/src/main/java/com/zsc/edu/gateway/modules/system/controller/MenuController.java b/src/main/java/com/zsc/edu/gateway/modules/system/controller/MenuController.java index 5020bcc..7c62452 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/system/controller/MenuController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/system/controller/MenuController.java @@ -1,5 +1,6 @@ package com.zsc.edu.gateway.modules.system.controller; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.framework.security.UserDetailsImpl; import com.zsc.edu.gateway.modules.system.dto.MenuDto; import com.zsc.edu.gateway.modules.system.entity.Menu; @@ -52,6 +53,7 @@ public class MenuController { /** * 根据名字返回树 */ + @DataPermission @GetMapping("/tree") @PreAuthorize("hasAuthority('system:menu:query')") public List tree(@AuthenticationPrincipal UserDetailsImpl userDetails, @RequestParam String name) { diff --git a/src/main/java/com/zsc/edu/gateway/modules/system/controller/RoleController.java b/src/main/java/com/zsc/edu/gateway/modules/system/controller/RoleController.java index 086aa79..0fcf47d 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/system/controller/RoleController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/system/controller/RoleController.java @@ -1,6 +1,7 @@ package com.zsc.edu.gateway.modules.system.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.modules.system.dto.AuthorityCreateDto; //import com.zsc.edu.gateway.modules.system.dto.RoleAuthCreateDto; import com.zsc.edu.gateway.modules.system.dto.RoleDto; @@ -33,6 +34,7 @@ public class RoleController { * * @return 所有角色列表 */ + @DataPermission @GetMapping @PreAuthorize("hasAuthority('system:role:query')") public Page query(RoleQuery query, Page page) { diff --git a/src/main/java/com/zsc/edu/gateway/modules/system/controller/UserController.java b/src/main/java/com/zsc/edu/gateway/modules/system/controller/UserController.java index 161e231..acde2a3 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/system/controller/UserController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/system/controller/UserController.java @@ -3,6 +3,7 @@ package com.zsc.edu.gateway.modules.system.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zsc.edu.gateway.framework.mybatisplus.DataPermission; import com.zsc.edu.gateway.framework.security.UserDetailsImpl; import com.zsc.edu.gateway.modules.system.dto.UserCreateDto; import com.zsc.edu.gateway.modules.system.dto.UserSelfUpdateDto; @@ -110,6 +111,7 @@ public class UserController { * @param page 分页 * @return 分页用户信息 */ + @DataPermission @GetMapping @PreAuthorize("hasAuthority('system:user:query')") public Page query(UserQuery query, Page page) { diff --git a/src/main/java/com/zsc/edu/gateway/modules/system/entity/BaseEntity.java b/src/main/java/com/zsc/edu/gateway/modules/system/entity/BaseEntity.java index 8130d31..44748cc 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/system/entity/BaseEntity.java +++ b/src/main/java/com/zsc/edu/gateway/modules/system/entity/BaseEntity.java @@ -28,6 +28,11 @@ public class BaseEntity implements Serializable { */ public String remark; + /** + * 创建者ID + */ + public Long createId; + /** * 创建时间 */ diff --git a/src/main/resources/mappers/iot/ProductMapper.xml b/src/main/resources/mappers/iot/ProductMapper.xml index 592fc9f..35a1355 100644 --- a/src/main/resources/mappers/iot/ProductMapper.xml +++ b/src/main/resources/mappers/iot/ProductMapper.xml @@ -15,6 +15,7 @@ + diff --git a/src/main/resources/mappers/notice/UserNoticeMapper.xml b/src/main/resources/mappers/notice/UserNoticeMapper.xml index f6b34d5..a8e00fe 100644 --- a/src/main/resources/mappers/notice/UserNoticeMapper.xml +++ b/src/main/resources/mappers/notice/UserNoticeMapper.xml @@ -49,9 +49,12 @@