refactor(component): 优化部门、岗位和用户创建功能的参数校验

- 在 DepartmentOperatorTool、PositionOperatorTool 和 UserRolePermissionOperatorTool 中添加了 @Size 注解- 用于限制部门名称、岗位名称和用户名的长度
- 更新了前端 UserUpsertModal 组件中用户名的校验规则
This commit is contained in:
Chuck1sn
2025-06-16 11:44:51 +08:00
parent 621170b347
commit 5306e24aa2
4 changed files with 8 additions and 4 deletions

View File

@@ -6,6 +6,7 @@ import com.zl.mjga.service.DepartmentService;
import dev.langchain4j.agent.tool.P;
import dev.langchain4j.agent.tool.Tool;
import dev.langchain4j.model.output.structured.Description;
import jakarta.validation.constraints.Size;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.jooq.generated.mjga.tables.pojos.Department;
@@ -21,7 +22,8 @@ public class DepartmentOperatorTool {
@Tool(value = "创建部门")
void createDepartment(
@P(value = "部门名称") String name, @P(value = "上级部门名称", required = false) String parentName) {
@P(value = "部门名称") @Size(min = 2, max = 15) String name,
@P(value = "上级部门名称", required = false) @Size(min = 2, max = 15) String parentName) {
Department exist = departmentRepository.fetchOneByName(name);
Department department = new Department(null, name, null);
if (exist != null) {

View File

@@ -5,6 +5,7 @@ import com.zl.mjga.repository.PositionRepository;
import dev.langchain4j.agent.tool.P;
import dev.langchain4j.agent.tool.Tool;
import dev.langchain4j.model.output.structured.Description;
import jakarta.validation.constraints.Size;
import lombok.RequiredArgsConstructor;
import org.jooq.generated.mjga.tables.pojos.Position;
import org.springframework.stereotype.Component;
@@ -17,7 +18,7 @@ public class PositionOperatorTool {
private final PositionRepository positionRepository;
@Tool(value = "创建岗位")
void createPosition(@P("岗位名称") String name) {
void createPosition(@P("岗位名称") @Size(min = 2, max = 15) String name) {
Position position = positionRepository.fetchOneByName(name);
if (position != null) {
throw new BusinessException("岗位已存在");

View File

@@ -11,6 +11,7 @@ import com.zl.mjga.service.IdentityAccessService;
import dev.langchain4j.agent.tool.P;
import dev.langchain4j.agent.tool.Tool;
import dev.langchain4j.model.output.structured.Description;
import jakarta.validation.constraints.Size;
import java.util.List;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils;
@@ -31,7 +32,7 @@ public class UserRolePermissionOperatorTool {
private final PositionRepository positionRepository;
@Tool(value = {"创建用户", "入职申请", "开通账号"})
void createUser(@P(value = "用户名") String name) {
void createUser(@P(value = "用户名") @Size(min = 1, max = 15) String name) {
User user = userRepository.fetchOneByUsername(name);
if (user != null) {
throw new BusinessException("用户已存在");