refactor(dict): 重构字典数据管理模块,优化代码结构和可维护性

- 将字典类型和字典数据的获取、存储逻辑统一管理,减少重复代码
- 使用 `pinia-plugin-persistedstate` 实现字典数据的持久化存储
- 优化字典数据的展示逻辑,统一使用字典标签进行显示
- 修复字典数据查询接口的权限控制和参数传递问题
- 更新字典数据相关的测试用例,确保功能稳定
This commit is contained in:
zhangtao
2025-04-15 00:58:31 +08:00
parent 9291579197
commit 6e0e1303e1
30 changed files with 1525 additions and 574 deletions
@@ -9,7 +9,7 @@ from app.core.base_schema import BaseSchema
class NoticeCreateSchema(BaseModel):
"""公告通知创建模型"""
notice_title: str = Field(..., max_length=50, description='公告标题')
notice_type: int = Field(..., ge=1, le=2, description='公告类型(1通知 2公告)')
notice_type: str = Field(..., description='公告类型(1通知 2公告)')
notice_content: str = Field(..., description='公告内容')
available: bool = Field(True, description="是否启用(True:启用 False:禁用)")
description: Optional[str] = Field(None, max_length=255, description="公告描述")
@@ -15,7 +15,7 @@ class CurrentUserUpdateSchema(BaseModel):
name: str = Field(default=None, max_length=15, description="名称")
mobile: Optional[str] = Field(default=None, description="手机号")
email: Optional[EmailStr] = Field(default=None, description="邮箱")
gender: Optional[int] = Field(default=1, description="性别") # 1:男 2:女
gender: Optional[str] = Field(default='1', description="性别") # 1:男 2:女
avatar: Optional[str] = Field(default=None, description="头像")
@classmethod
@@ -29,7 +29,7 @@ class UserRegisterSchema(BaseModel):
name: str = Field(default=None, max_length=15, description="名称")
mobile: Optional[str] = Field(default=None, description="手机号")
email: Optional[EmailStr] = Field(default=None, description="邮箱")
gender: Optional[int] = Field(default=1, description="性别") # 1:男 2:女
gender: Optional[str] = Field(default='1', description="性别") # 1:男 2:女
username: str = Field(default=None, max_length=15, description="用户名")
password: str = Field(default=None, max_length=128, description="密码哈希值")
dept_id: Optional[int] = Field(default=1, description='部门ID')