Browse Source

INode支持泛型,优化业务代码

test
smallchill 5 years ago
parent
commit
83d255f0eb
  1. 6
      blade-service-api/blade-dict-api/src/main/java/org/springblade/system/vo/DictBizVO.java
  2. 6
      blade-service-api/blade-dict-api/src/main/java/org/springblade/system/vo/DictVO.java
  3. 6
      blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java
  4. 6
      blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/MenuVO.java
  5. 6
      blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/RoleVO.java
  6. 5
      blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java
  7. 3
      blade-service/blade-system/src/main/java/org/springblade/system/controller/DictBizController.java
  8. 3
      blade-service/blade-system/src/main/java/org/springblade/system/controller/DictController.java
  9. 3
      blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java
  10. 9
      blade-service/blade-system/src/main/java/org/springblade/system/wrapper/DeptWrapper.java
  11. 5
      blade-service/blade-system/src/main/java/org/springblade/system/wrapper/DictBizWrapper.java
  12. 5
      blade-service/blade-system/src/main/java/org/springblade/system/wrapper/DictWrapper.java
  13. 5
      blade-service/blade-system/src/main/java/org/springblade/system/wrapper/RoleWrapper.java

6
blade-service-api/blade-dict-api/src/main/java/org/springblade/system/vo/DictBizVO.java

@ -36,7 +36,7 @@ import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "DictBizVO对象", description = "DictBizVO对象")
public class DictBizVO extends DictBiz implements INode {
public class DictBizVO extends DictBiz implements INode<DictBizVO> {
private static final long serialVersionUID = 1L;
/**
* 主键ID
@ -54,10 +54,10 @@ public class DictBizVO extends DictBiz implements INode {
* 子孙节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<INode> children;
private List<DictBizVO> children;
@Override
public List<INode> getChildren() {
public List<DictBizVO> getChildren() {
if (this.children == null) {
this.children = new ArrayList<>();
}

6
blade-service-api/blade-dict-api/src/main/java/org/springblade/system/vo/DictVO.java

@ -36,7 +36,7 @@ import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "DictVO对象", description = "DictVO对象")
public class DictVO extends Dict implements INode {
public class DictVO extends Dict implements INode<DictVO> {
private static final long serialVersionUID = 1L;
/**
* 主键ID
@ -54,10 +54,10 @@ public class DictVO extends Dict implements INode {
* 子孙节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<INode> children;
private List<DictVO> children;
@Override
public List<INode> getChildren() {
public List<DictVO> getChildren() {
if (this.children == null) {
this.children = new ArrayList<>();
}

6
blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java

@ -36,7 +36,7 @@ import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "DeptVO对象", description = "DeptVO对象")
public class DeptVO extends Dept implements INode {
public class DeptVO extends Dept implements INode<DeptVO> {
private static final long serialVersionUID = 1L;
/**
@ -55,7 +55,7 @@ public class DeptVO extends Dept implements INode {
* 子孙节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<INode> children;
private List<DeptVO> children;
/**
* 是否有子孙节点
@ -64,7 +64,7 @@ public class DeptVO extends Dept implements INode {
private Boolean hasChildren;
@Override
public List<INode> getChildren() {
public List<DeptVO> getChildren() {
if (this.children == null) {
this.children = new ArrayList<>();
}

6
blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/MenuVO.java

@ -36,7 +36,7 @@ import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "MenuVO对象", description = "MenuVO对象")
public class MenuVO extends Menu implements INode {
public class MenuVO extends Menu implements INode<MenuVO> {
private static final long serialVersionUID = 1L;
/**
@ -55,7 +55,7 @@ public class MenuVO extends Menu implements INode {
* 子孙节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<INode> children;
private List<MenuVO> children;
/**
* 是否有子孙节点
@ -64,7 +64,7 @@ public class MenuVO extends Menu implements INode {
private Boolean hasChildren;
@Override
public List<INode> getChildren() {
public List<MenuVO> getChildren() {
if (this.children == null) {
this.children = new ArrayList<>();
}

6
blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/RoleVO.java

@ -36,7 +36,7 @@ import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "RoleVO对象", description = "RoleVO对象")
public class RoleVO extends Role implements INode {
public class RoleVO extends Role implements INode<RoleVO> {
private static final long serialVersionUID = 1L;
/**
@ -55,10 +55,10 @@ public class RoleVO extends Role implements INode {
* 子孙节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<INode> children;
private List<RoleVO> children;
@Override
public List<INode> getChildren() {
public List<RoleVO> getChildren() {
if (this.children == null) {
this.children = new ArrayList<>();
}

5
blade-service/blade-system/src/main/java/org/springblade/system/controller/DeptController.java

@ -28,7 +28,6 @@ import org.springblade.core.secure.annotation.PreAuth;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.node.INode;
import org.springblade.core.tool.support.Kv;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.cache.DictCache;
@ -80,7 +79,7 @@ public class DeptController extends BladeController {
})
@ApiOperationSupport(order = 2)
@ApiOperation(value = "列表", notes = "传入dept")
public R<List<INode>> list(@ApiIgnore @RequestParam Map<String, Object> dept, BladeUser bladeUser) {
public R<List<DeptVO>> list(@ApiIgnore @RequestParam Map<String, Object> dept, BladeUser bladeUser) {
QueryWrapper<Dept> queryWrapper = Condition.getQueryWrapper(dept, Dept.class);
List<Dept> list = deptService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Dept::getTenantId, bladeUser.getTenantId()) : queryWrapper);
return R.data(DeptWrapper.build().listNodeVO(list));
@ -96,7 +95,7 @@ public class DeptController extends BladeController {
})
@ApiOperationSupport(order = 3)
@ApiOperation(value = "懒加载列表", notes = "传入dept")
public R<List<INode>> lazyList(@ApiIgnore @RequestParam Map<String, Object> dept, Long parentId, BladeUser bladeUser) {
public R<List<DeptVO>> lazyList(@ApiIgnore @RequestParam Map<String, Object> dept, Long parentId, BladeUser bladeUser) {
List<DeptVO> list = deptService.lazyList(bladeUser.getTenantId(), parentId, dept);
return R.data(DeptWrapper.build().listNodeLazyVO(list));
}

3
blade-service/blade-system/src/main/java/org/springblade/system/controller/DictBizController.java

@ -25,7 +25,6 @@ import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.node.INode;
import org.springblade.system.entity.DictBiz;
import org.springblade.system.service.IDictBizService;
import org.springblade.system.vo.DictBizVO;
@ -73,7 +72,7 @@ public class DictBizController extends BladeController {
})
@ApiOperationSupport(order = 2)
@ApiOperation(value = "列表", notes = "传入dict")
public R<List<INode>> list(@ApiIgnore @RequestParam Map<String, Object> dict) {
public R<List<DictBizVO>> list(@ApiIgnore @RequestParam Map<String, Object> dict) {
List<DictBiz> list = dictService.list(Condition.getQueryWrapper(dict, DictBiz.class).lambda().orderByAsc(DictBiz::getSort));
return R.data(DictBizWrapper.build().listNodeVO(list));
}

3
blade-service/blade-system/src/main/java/org/springblade/system/controller/DictController.java

@ -25,7 +25,6 @@ import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.node.INode;
import org.springblade.system.entity.Dict;
import org.springblade.system.service.IDictService;
import org.springblade.system.vo.DictVO;
@ -74,7 +73,7 @@ public class DictController extends BladeController {
})
@ApiOperationSupport(order = 2)
@ApiOperation(value = "列表", notes = "传入dict")
public R<List<INode>> list(@ApiIgnore @RequestParam Map<String, Object> dict) {
public R<List<DictVO>> list(@ApiIgnore @RequestParam Map<String, Object> dict) {
List<Dict> list = dictService.list(Condition.getQueryWrapper(dict, Dict.class).lambda().orderByAsc(Dict::getSort));
DictWrapper dictWrapper = new DictWrapper();
return R.data(dictWrapper.listNodeVO(list));

3
blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java

@ -28,7 +28,6 @@ import org.springblade.core.secure.annotation.PreAuth;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.node.INode;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.entity.Role;
import org.springblade.system.service.IRoleService;
@ -79,7 +78,7 @@ public class RoleController extends BladeController {
})
@ApiOperationSupport(order = 2)
@ApiOperation(value = "列表", notes = "传入role")
public R<List<INode>> list(@ApiIgnore @RequestParam Map<String, Object> role, BladeUser bladeUser) {
public R<List<RoleVO>> list(@ApiIgnore @RequestParam Map<String, Object> role, BladeUser bladeUser) {
QueryWrapper<Role> queryWrapper = Condition.getQueryWrapper(role, Role.class);
List<Role> list = roleService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper);
return R.data(RoleWrapper.build().listNodeVO(list));

9
blade-service/blade-system/src/main/java/org/springblade/system/wrapper/DeptWrapper.java

@ -19,7 +19,6 @@ package org.springblade.system.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.node.INode;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.cache.DictCache;
@ -57,8 +56,8 @@ public class DeptWrapper extends BaseEntityWrapper<Dept, DeptVO> {
}
public List<INode> listNodeVO(List<Dept> list) {
List<INode> collect = list.stream().map(dept -> {
public List<DeptVO> listNodeVO(List<Dept> list) {
List<DeptVO> collect = list.stream().map(dept -> {
DeptVO deptVO = BeanUtil.copy(dept, DeptVO.class);
String category = DictCache.getValue("org_category", dept.getDeptCategory());
Objects.requireNonNull(deptVO).setDeptCategoryName(category);
@ -67,8 +66,8 @@ public class DeptWrapper extends BaseEntityWrapper<Dept, DeptVO> {
return ForestNodeMerger.merge(collect);
}
public List<INode> listNodeLazyVO(List<DeptVO> list) {
List<INode> collect = list.stream().peek(dept -> {
public List<DeptVO> listNodeLazyVO(List<DeptVO> list) {
List<DeptVO> collect = list.stream().peek(dept -> {
String category = DictCache.getValue("org_category", dept.getDeptCategory());
Objects.requireNonNull(dept).setDeptCategoryName(category);
}).collect(Collectors.toList());

5
blade-service/blade-system/src/main/java/org/springblade/system/wrapper/DictBizWrapper.java

@ -19,7 +19,6 @@ package org.springblade.system.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.node.INode;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.cache.DictBizCache;
@ -54,8 +53,8 @@ public class DictBizWrapper extends BaseEntityWrapper<DictBiz, DictBizVO> {
return dictVO;
}
public List<INode> listNodeVO(List<DictBiz> list) {
List<INode> collect = list.stream().map(dict -> BeanUtil.copy(dict, DictBizVO.class)).collect(Collectors.toList());
public List<DictBizVO> listNodeVO(List<DictBiz> list) {
List<DictBizVO> collect = list.stream().map(dict -> BeanUtil.copy(dict, DictBizVO.class)).collect(Collectors.toList());
return ForestNodeMerger.merge(collect);
}

5
blade-service/blade-system/src/main/java/org/springblade/system/wrapper/DictWrapper.java

@ -19,7 +19,6 @@ package org.springblade.system.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.node.INode;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.cache.DictCache;
@ -53,8 +52,8 @@ public class DictWrapper extends BaseEntityWrapper<Dict, DictVO> {
return dictVO;
}
public List<INode> listNodeVO(List<Dict> list) {
List<INode> collect = list.stream().map(dict -> BeanUtil.copy(dict, DictVO.class)).collect(Collectors.toList());
public List<DictVO> listNodeVO(List<Dict> list) {
List<DictVO> collect = list.stream().map(dict -> BeanUtil.copy(dict, DictVO.class)).collect(Collectors.toList());
return ForestNodeMerger.merge(collect);
}

5
blade-service/blade-system/src/main/java/org/springblade/system/wrapper/RoleWrapper.java

@ -19,7 +19,6 @@ package org.springblade.system.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.node.INode;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.cache.SysCache;
@ -54,8 +53,8 @@ public class RoleWrapper extends BaseEntityWrapper<Role, RoleVO> {
}
public List<INode> listNodeVO(List<Role> list) {
List<INode> collect = list.stream().map(this::entityVO).collect(Collectors.toList());
public List<RoleVO> listNodeVO(List<Role> list) {
List<RoleVO> collect = list.stream().map(this::entityVO).collect(Collectors.toList());
return ForestNodeMerger.merge(collect);
}

Loading…
Cancel
Save