【8.3.3】【role】更新新增角色分类的接口

pull/62/head
stylefeng 2025-01-22 18:16:41 +08:00
parent 88184a5ca0
commit d77a6752d0
3 changed files with 46 additions and 23 deletions

View File

@ -2,6 +2,7 @@ package cn.stylefeng.roses.kernel.sys.modular.role.entity;
import cn.stylefeng.roses.kernel.db.api.pojo.entity.BaseEntity; import cn.stylefeng.roses.kernel.db.api.pojo.entity.BaseEntity;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription; import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import cn.stylefeng.roses.kernel.rule.pidset.callback.PidSettable;
import cn.stylefeng.roses.kernel.rule.tree.factory.base.AbstractTreeNode; import cn.stylefeng.roses.kernel.rule.tree.factory.base.AbstractTreeNode;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; import lombok.Data;
@ -19,7 +20,7 @@ import java.util.List;
@TableName("sys_role_category") @TableName("sys_role_category")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
public class RoleCategory extends BaseEntity implements AbstractTreeNode<RoleCategory> { public class RoleCategory extends BaseEntity implements AbstractTreeNode<RoleCategory>, PidSettable {
/** /**
* id * id
@ -105,4 +106,25 @@ public class RoleCategory extends BaseEntity implements AbstractTreeNode<RoleCat
public void setChildrenNodes(List<RoleCategory> childrenNodes) { public void setChildrenNodes(List<RoleCategory> childrenNodes) {
this.children = childrenNodes; this.children = childrenNodes;
} }
@Override
public Long getCurrentId() {
return id;
}
@Override
public Long getParentId() {
return categoryParentId;
}
@Override
public void setParentIdListString(String parentIdListString) {
this.categoryPids = parentIdListString;
}
@Override
public String getParentIdListString() {
return this.categoryPids;
}
} }

View File

@ -8,7 +8,6 @@ import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
/** /**
* *
@ -34,13 +33,6 @@ public class RoleCategoryRequest extends BaseRequest {
@ChineseDescription("父级角色分类id") @ChineseDescription("父级角色分类id")
private Long categoryParentId; private Long categoryParentId;
/**
* id
*/
@NotBlank(message = "父级角色分类id集合不能为空", groups = {add.class, edit.class})
@ChineseDescription("父级角色分类id集合")
private String categoryPids;
/** /**
* *
*/ */
@ -61,17 +53,4 @@ public class RoleCategoryRequest extends BaseRequest {
@ChineseDescription("角色分类排序") @ChineseDescription("角色分类排序")
private BigDecimal fldSort; private BigDecimal fldSort;
/**
*
*/
@ChineseDescription("租户号")
private Long tenantId;
/**
* id
*/
@NotNull(message = "批量删除id集合不能为空", groups = batchDelete.class)
@ChineseDescription("批量删除用的id集合")
private List<Long> batchDeleteIdList;
} }

View File

@ -3,6 +3,9 @@ package cn.stylefeng.roses.kernel.sys.modular.role.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException; import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException;
import cn.stylefeng.roses.kernel.rule.pidset.CalcParentIdListUtil;
import cn.stylefeng.roses.kernel.rule.pidset.callback.PidGetterService;
import cn.stylefeng.roses.kernel.rule.pidset.pojo.ParentIdInfoPojo;
import cn.stylefeng.roses.kernel.rule.tree.factory.DefaultTreeBuildFactory; import cn.stylefeng.roses.kernel.rule.tree.factory.DefaultTreeBuildFactory;
import cn.stylefeng.roses.kernel.sys.modular.role.entity.RoleCategory; import cn.stylefeng.roses.kernel.sys.modular.role.entity.RoleCategory;
import cn.stylefeng.roses.kernel.sys.modular.role.enums.RoleCategoryExceptionEnum; import cn.stylefeng.roses.kernel.sys.modular.role.enums.RoleCategoryExceptionEnum;
@ -23,7 +26,7 @@ import java.util.List;
* @since 2025/01/22 17:40 * @since 2025/01/22 17:40
*/ */
@Service @Service
public class RoleCategoryServiceImpl extends ServiceImpl<RoleCategoryMapper, RoleCategory> implements RoleCategoryService { public class RoleCategoryServiceImpl extends ServiceImpl<RoleCategoryMapper, RoleCategory> implements RoleCategoryService, PidGetterService {
@Override @Override
public List<RoleCategory> treeList(RoleCategoryRequest roleCategoryRequest) { public List<RoleCategory> treeList(RoleCategoryRequest roleCategoryRequest) {
@ -41,6 +44,10 @@ public class RoleCategoryServiceImpl extends ServiceImpl<RoleCategoryMapper, Rol
public void add(RoleCategoryRequest roleCategoryRequest) { public void add(RoleCategoryRequest roleCategoryRequest) {
RoleCategory roleCategory = new RoleCategory(); RoleCategory roleCategory = new RoleCategory();
BeanUtil.copyProperties(roleCategoryRequest, roleCategory); BeanUtil.copyProperties(roleCategoryRequest, roleCategory);
// 设置pids
CalcParentIdListUtil.fillParentIds(roleCategory, this);
this.save(roleCategory); this.save(roleCategory);
} }
@ -98,4 +105,19 @@ public class RoleCategoryServiceImpl extends ServiceImpl<RoleCategoryMapper, Rol
return queryWrapper; return queryWrapper;
} }
@Override
public ParentIdInfoPojo getPointNodePidInfo(Long itemId) {
if (ObjectUtil.isEmpty(itemId)) {
return null;
}
LambdaQueryWrapper<RoleCategory> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(RoleCategory::getId, itemId);
queryWrapper.select(RoleCategory::getId, RoleCategory::getCategoryPids);
RoleCategory roleCategory = this.getOne(queryWrapper, false);
if (roleCategory == null) {
return null;
}
return new ParentIdInfoPojo(roleCategory.getId(), roleCategory.getCategoryPids());
}
} }