编写开放接口,组/用户,移动组等功能
ci-userbase-service / build-and-push (push) Successful in 2m17s

This commit is contained in:
chenxing
2026-08-18 21:46:06 +08:00
parent 7a1dc29ff7
commit 52b29c5082
10 changed files with 388 additions and 61 deletions
@@ -1,10 +1,17 @@
package com.yunhai.userbase.controller.oapi;
import com.yunhai.platform.utils.model.BoaGroup;
import com.yunhai.userbase.common.validation.ValidationGroups;
import com.yunhai.userbase.config.Config;
import com.yunhai.userbase.model.sysgroup.SysGroupBatchRequest;
import com.yunhai.userbase.model.sysgroup.SysGroupRequest;
import com.yunhai.userbase.service.ISysGroupService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@@ -60,4 +67,38 @@ public class GroupController {
@RequestParam(value = "withSub", required = false) Boolean withSub) {
return sysGroupService.getGroupList(ids, withSub);
}
/**
* 新增组:返回创建后的组节点(含 id)。<br>
* 层级类型约束、根节点保护等复用后台逻辑;鉴权由 OpenApiAuthEnforceConfiguration 在过滤器层强制签名。
*/
@PostMapping("add")
public BoaGroup add(@RequestBody @Validated(ValidationGroups.Create.class) SysGroupRequest request) {
return sysGroupService.add(request);
}
/**
* 编辑组(不含移动,移动请走 group/move 后台接口):返回更新后的组节点(含 id)。
*/
@PostMapping("edit/{id}")
public BoaGroup edit(@PathVariable Integer id,
@RequestBody @Validated(ValidationGroups.Update.class) SysGroupRequest request) {
return sysGroupService.edit(id, request);
}
/**
* 删除组:组下存在子组或用户时拒绝删除(根节点不可删)。无返回值。
*/
@PostMapping("delete/{id}")
public void delete(@PathVariable Integer id) {
sysGroupService.delete(id);
}
/**
* 批量新增子组:请求体 { pid, type, items:[{name},...] },返回创建后的组节点列表(均含 id)。
*/
@PostMapping("batchAdd")
public List<BoaGroup> batchAdd(@RequestBody @Validated SysGroupBatchRequest request) {
return sysGroupService.batchAdd(request);
}
}