diff --git a/awardBE/src/main/java/edu/ncst/award/model/system/Resource.java b/awardBE/src/main/java/edu/ncst/award/model/system/Resource.java
index 8256d82..f829607 100644
--- a/awardBE/src/main/java/edu/ncst/award/model/system/Resource.java
+++ b/awardBE/src/main/java/edu/ncst/award/model/system/Resource.java
@@ -4,55 +4,91 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.io.Serializable;
-import java.util.List;
-
-@ApiModel(value="Resource", description="资源")
-@Data
-@EqualsAndHashCode(callSuper = false)
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+
+/**
+ *
+ *
+ *
+ *
+ * @author Erwin Feng
+ * @since 2022-03-16
+ */
+@Getter
+@Setter
+@Accessors(chain = true)
@TableName("sys_resource")
+@ApiModel(value = "SysResourceEntity对象")
public class Resource implements Serializable {
private static final long serialVersionUID = 1L;
- @ApiModelProperty(value = "资源ID")
+ @ApiModelProperty("资源ID")
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
- @ApiModelProperty(value = "显示文本")
- private String label;
-
- @ApiModelProperty(value = "资源名称(方法签名)")
+ @ApiModelProperty("资源名称")
+ @TableField("name")
private String name;
- @ApiModelProperty(value = "请求方法类型")
+ @ApiModelProperty("显示文本")
+ @TableField("label")
+ private String label;
+
+ @ApiModelProperty("请求方法")
+ @TableField("method")
private String method;
- @ApiModelProperty(value = "链接")
- private String url;
+ @ApiModelProperty("允许所有访问")
+ @TableField("permit_all")
+ private Boolean permitAll;
- @ApiModelProperty(value = "允许所有访问", notes = "不需要用户登录")
- private Boolean permitAll = false;
+ @ApiModelProperty("路径")
+ @TableField("url")
+ private String url;
- @ApiModelProperty(value = "用户作用域")
- private Boolean userScope = false;
+ @ApiModelProperty("排序")
+ @TableField("sort")
+ private Integer sort;
- @ApiModelProperty(value = "上级菜单ID")
+ @ApiModelProperty("上级资源ID")
+ @TableField("parent_id")
private Integer parentId;
- @ApiModelProperty(value = "上级菜单ID")
- @TableField(exist = false)
- private List children;
+ @ApiModelProperty("启用与否")
+ @TableField("enable")
+ private Boolean enable;
- @ApiModelProperty(value = "排序")
- private Integer sort;
+ @ApiModelProperty("创建者")
+ @TableField("create_user_id")
+ private Integer createUserId;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("最后修改者")
+ @TableField("last_modify_user_id")
+ private Integer lastModifyUserId;
+
+ @ApiModelProperty("最后修改时间")
+ @TableField("last_modify_time")
+ private LocalDateTime lastModifyTime;
+
+ @ApiModelProperty("删除者")
+ @TableField("delete_user_id")
+ private Integer deleteUserId;
+
+ @ApiModelProperty("删除时间")
+ @TableField("delete_time")
+ private LocalDate deleteTime;
- @ApiModelProperty(value = "是否對所有角色開放")
- private Boolean isForAll = true;
}
diff --git a/awardBE/src/main/java/edu/ncst/award/service/IProjectService.java b/awardBE/src/main/java/edu/ncst/award/service/IProjectService.java
index ce13ef9..409afbd 100644
--- a/awardBE/src/main/java/edu/ncst/award/service/IProjectService.java
+++ b/awardBE/src/main/java/edu/ncst/award/service/IProjectService.java
@@ -1,2 +1,7 @@
-package edu.ncst.award.service.impl;public interface IProjectService {
+package edu.ncst.award.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import edu.ncst.award.model.project.Project;
+
+public interface IProjectService extends IService {
}
diff --git a/awardBE/src/main/java/edu/ncst/award/service/IResourceService.java b/awardBE/src/main/java/edu/ncst/award/service/IResourceService.java
index 6125fb6..1649fc8 100644
--- a/awardBE/src/main/java/edu/ncst/award/service/IResourceService.java
+++ b/awardBE/src/main/java/edu/ncst/award/service/IResourceService.java
@@ -1,5 +1,7 @@
package edu.ncst.award.service;
+import com.baomidou.mybatisplus.extension.service.IService;
+import edu.ncst.award.mapper.system.ResourceMapper;
import edu.ncst.award.model.system.Resource;
import edu.ncst.award.vo.ListResultVO;
import edu.ncst.award.vo.Query;
@@ -7,7 +9,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
-public interface IResourceService {
+public interface IResourceService extends IService {
void reimportInterfaceMeta();
ListResultVO getResourceList(Query query);
diff --git a/awardBE/src/main/java/edu/ncst/award/service/impl/system/ResourceServiceImpl.java b/awardBE/src/main/java/edu/ncst/award/service/impl/system/ResourceServiceImpl.java
index 82efb47..3cbff3e 100644
--- a/awardBE/src/main/java/edu/ncst/award/service/impl/system/ResourceServiceImpl.java
+++ b/awardBE/src/main/java/edu/ncst/award/service/impl/system/ResourceServiceImpl.java
@@ -2,6 +2,7 @@ package edu.ncst.award.service.impl.system;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import edu.ncst.award.exception.BusinessException;
import edu.ncst.award.exception.CodeMsg;
import edu.ncst.award.mapper.system.ResourceMapper;
@@ -11,6 +12,7 @@ import edu.ncst.award.vo.ListResultVO;
import edu.ncst.award.vo.Query;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import lombok.val;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict;
@@ -28,12 +30,16 @@ import java.lang.reflect.Modifier;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.*;
+import java.util.function.Consumer;
@Service
-public class ResourceServiceImpl implements IResourceService {
+public class ResourceServiceImpl extends ServiceImpl implements IResourceService {
@Autowired
private ResourceMapper resourceMapper;
+// @Autowired
+// private IResourceService iResourceService;
+
// 欲扫描的包路径
private static final String SCAN_PACKAGE = "edu.ncst.equmanager.controller";
@@ -42,12 +48,12 @@ public class ResourceServiceImpl implements IResourceService {
* 重新导入接口元信息
*/
@Caching(
- evict = {
- @CacheEvict(cacheNames = "permitAllResourceList"),
- @CacheEvict(cacheNames = "userScopeResourceList"),
- @CacheEvict(cacheNames = "permitAllResourceURLs"),
- @CacheEvict(cacheNames = "userScopeResourceURLs")
- }
+ evict = {
+ @CacheEvict(cacheNames = "permitAllResourceList"),
+ @CacheEvict(cacheNames = "userScopeResourceList"),
+ @CacheEvict(cacheNames = "permitAllResourceURLs"),
+ @CacheEvict(cacheNames = "userScopeResourceURLs")
+ }
)
@Transactional
@Override
@@ -159,7 +165,7 @@ public class ResourceServiceImpl implements IResourceService {
}
ApiOperation operationAnnotation = method.getAnnotation(ApiOperation.class);
- // LoginUserScope scopeAnnotation = method.getAnnotation(LoginUserScope.class);
+ // LoginUserScope scopeAnnotation = method.getAnnotation(LoginUserScope.class);
PermitAll permitAllAnnotation = method.getAnnotation(PermitAll.class);
if (operationAnnotation == null || operationAnnotation.hidden()) {
@@ -213,8 +219,8 @@ public class ResourceServiceImpl implements IResourceService {
!Objects.equals(newResource.getLabel(), oldResource.getLabel()) ||
!Objects.equals(newResource.getMethod(), oldResource.getMethod()) ||
!Objects.equals(newResource.getPermitAll(), oldResource.getPermitAll()) ||
- !Objects.equals(newResource.getUrl(), oldResource.getUrl()) ||
- !Objects.equals(newResource.getUserScope(), oldResource.getUserScope());
+ !Objects.equals(newResource.getUrl(), oldResource.getUrl());
+// || !Objects.equals(newResource.getUserScope(), oldResource.getUserScope());
}
/**
@@ -274,6 +280,7 @@ public class ResourceServiceImpl implements IResourceService {
/**
* 扫描指定包下的所有类
+ *
* @return 类对象列表
*/
private List> findClassLocal() {
@@ -354,11 +361,15 @@ public class ResourceServiceImpl implements IResourceService {
/**
* 获取多个角色能够访问的资源列表
+ *
+ * @return 返回一组路径 {”/api“,"/api/project"}
*/
@Override
public List getRolesResourceList(List roleNames) {
- //resourceMapper.getRolesResourceUrls(roleNames);
- return null;
+ val strings = new ArrayList();
+ roleNames.forEach(roleName -> list(new QueryWrapper().eq("name", roleName)).forEach(Resource -> strings.add(Resource.getUrl())));
+ System.out.println("hello");
+ return strings;
}
/**
diff --git a/awardBE/src/main/java/edu/ncst/award/service/impl/system/SystemService.java b/awardBE/src/main/java/edu/ncst/award/service/impl/system/SystemService.java
index d78ee17..a848a79 100644
--- a/awardBE/src/main/java/edu/ncst/award/service/impl/system/SystemService.java
+++ b/awardBE/src/main/java/edu/ncst/award/service/impl/system/SystemService.java
@@ -9,7 +9,4 @@ import org.springframework.stereotype.Service;
@Service
public class SystemService implements ISystemService {
-
-
-
}