This commit is contained in:
2025-12-02 13:36:09 +08:00
parent ee6dd64f98
commit 94718edd6b
97 changed files with 570 additions and 579 deletions

View File

@@ -180,7 +180,7 @@ ORDER BY create_time;
### 配置类型
- `config_type`: String / Integer / Boolean / Float / Double
- `config_type`: String / INTEGER / BOOLEAN / Float / Double
- `render_type`: select / input / textarea / checkbox / radio / switch
### 常用查询
@@ -481,14 +481,14 @@ GROUP BY a.agent_id, a.agent_name;
| `dept_path` | VARCHAR(255) | 部门全路径(多租户隔离) |
| `creator` | VARCHAR(50) | 创建者ID |
| `updater` | VARCHAR(50) | 更新者ID |
| `create_time` | timestamptz | 创建时间(带时区) |
| `update_time` | timestamptz | 更新时间(触发器自动更新) |
| `delete_time` | timestamptz | 删除时间 |
| `create_time` | TIMESTAMPTZ | 创建时间(带时区) |
| `update_time` | TIMESTAMPTZ | 更新时间(触发器自动更新) |
| `delete_time` | TIMESTAMPTZ | 删除时间 |
| `deleted` | BOOLEAN | 软删除标记 |
### 时间戳说明
- 使用 `timestamptz` 类型(带时区的时间戳)
- 使用 `TIMESTAMPTZ` 类型(带时区的时间戳)
- 自动记录创建时间
- 更新时间由触发器自动维护
- 支持软删除(保留 delete_time

View File

@@ -183,7 +183,7 @@ agent ← 智能体管理和平台基础设施
### 1. 数据类型使用
- **timestamptz**:全部时间字段(带时区支持)
- **TIMESTAMPTZ**:全部时间字段(带时区支持)
- **JSONB**:配置、元数据、扩展字段
- **数组TEXT[]**标签、关键词、ID列表
- **DECIMAL**:金额、评分(精确计算)

View File

@@ -59,7 +59,7 @@ tb_sys_user:
- 支持多种登录方式(emailphonewechat_id
- 密码加密存储(建议bcrypt/argon2
- 软删除机制(deleted + delete_time
- 时区感知时间戳(timestamptz
- 时区感知时间戳(TIMESTAMPTZ
```
### 3.2 知识库管理模块 (knowledge)
@@ -419,8 +419,8 @@ CREATE TABLE sys.tb_sys_user_dept (
is_primary BOOLEAN DEFAULT false, -- 是否主部门
position VARCHAR(100), -- 职位
creator VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
update_time timestamptz DEFAULT NULL,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
update_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (user_id, dept_id),
UNIQUE (optsn)
@@ -475,7 +475,7 @@ CREATE TABLE file.tb_file_relation (
relation_type VARCHAR(30) DEFAULT 'attachment', -- 关联类型attachment-附件/avatar-头像/banner-横幅
order_num INTEGER DEFAULT 0,
creator VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (relation_id),
UNIQUE (optsn),
@@ -504,8 +504,8 @@ CREATE TABLE message.tb_message_template (
dept_path VARCHAR(255) DEFAULT NULL,
creator VARCHAR(50) DEFAULT NULL,
updater VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
update_time timestamptz DEFAULT NULL,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
update_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (template_id),
UNIQUE (optsn),
@@ -688,7 +688,7 @@ pg_restore -d urbanlifeline -c backup_20240101.dump
- **Schema数**9 个业务Schema
- **索引类型**B-Tree、GIN、部分索引、表达式索引
- **数据类型**:标准类型 + JSONB + 数组 + 向量(可选)
- **时区支持**:全部使用timestamptz
- **时区支持**:全部使用TIMESTAMPTZ
- **软删除**全表支持deleted标记
---

View File

@@ -37,9 +37,9 @@ CREATE TABLE agent.tb_agent (
status VARCHAR(20) DEFAULT 'active', -- 状态active-激活/inactive-停用/under_maintenance-维护中
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (agent_id),
UNIQUE (optsn),
@@ -64,15 +64,15 @@ CREATE TABLE agent.tb_agent_session (
session_name VARCHAR(255), -- 会话名称
context JSONB, -- 会话上下文
session_status VARCHAR(20) DEFAULT 'active', -- 会话状态active-活跃/paused-暂停/ended-结束
start_time timestamptz DEFAULT now(), -- 开始时间
end_time timestamptz, -- 结束时间
start_time TIMESTAMPTZ DEFAULT now(), -- 开始时间
end_time TIMESTAMPTZ, -- 结束时间
message_count INTEGER DEFAULT 0, -- 消息数量
token_usage INTEGER DEFAULT 0, -- Token使用量
cost DECIMAL(10,4) DEFAULT 0, -- 成本
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (session_id),
UNIQUE (optsn),
@@ -101,7 +101,7 @@ CREATE TABLE agent.tb_agent_message (
kb_references JSONB, -- 知识库引用JSON数组
metadata JSONB, -- 消息元数据
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (message_id),
UNIQUE (optsn),
@@ -138,9 +138,9 @@ CREATE TABLE agent.tb_agent_tool (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (tool_id),
UNIQUE (optsn),
@@ -169,15 +169,15 @@ CREATE TABLE agent.tb_api_integration (
retry_config JSONB, -- 重试配置
health_check_url VARCHAR(500), -- 健康检查URL
health_status VARCHAR(20) DEFAULT 'unknown', -- 健康状态healthy-健康/unhealthy-不健康/unknown-未知
last_health_check timestamptz, -- 最后健康检查时间
last_health_check TIMESTAMPTZ, -- 最后健康检查时间
documentation_url VARCHAR(500), -- 文档URL
is_enabled BOOLEAN DEFAULT true, -- 是否启用
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (integration_id),
UNIQUE (optsn)
@@ -211,7 +211,7 @@ CREATE TABLE agent.tb_api_call_log (
retry_count INTEGER DEFAULT 0, -- 重试次数
ip_address VARCHAR(45), -- IP地址
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
PRIMARY KEY (log_id),
UNIQUE (optsn)
);
@@ -242,8 +242,8 @@ CREATE TABLE agent.tb_agent_metrics (
avg_rating DECIMAL(3,2), -- 平均评分
rating_count INTEGER DEFAULT 0, -- 评分数量
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
PRIMARY KEY (metric_id),
UNIQUE (optsn),
UNIQUE (agent_id, metric_date, metric_hour),
@@ -270,8 +270,8 @@ CREATE TABLE agent.tb_agent_error_log (
is_resolved BOOLEAN DEFAULT false, -- 是否已解决
resolution_notes TEXT, -- 解决方案备注
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
resolve_time timestamptz, -- 解决时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
resolve_time TIMESTAMPTZ, -- 解决时间
PRIMARY KEY (log_id),
UNIQUE (optsn),
FOREIGN KEY (agent_id) REFERENCES agent.tb_agent(agent_id)
@@ -296,7 +296,7 @@ CREATE TABLE agent.tb_agent_rating (
tags TEXT[], -- 标签
is_anonymous BOOLEAN DEFAULT false, -- 是否匿名
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (rating_id),
UNIQUE (optsn),

View File

@@ -15,9 +15,9 @@ CREATE TABLE bidding.tb_bidding_project (
industry VARCHAR(100), -- 所属行业
source_platform VARCHAR(100), -- 来源平台(如:政府采购网、企业官网等)
source_url VARCHAR(500), -- 来源URL
publish_date timestamptz, -- 发布日期
deadline timestamptz, -- 投标截止日期
opening_date timestamptz, -- 开标日期
publish_date TIMESTAMPTZ, -- 发布日期
deadline TIMESTAMPTZ, -- 投标截止日期
opening_date TIMESTAMPTZ, -- 开标日期
budget_amount DECIMAL(18,2), -- 预算金额
currency VARCHAR(10) DEFAULT 'CNY', -- 货币单位
project_status VARCHAR(30) NOT NULL DEFAULT 'collecting', -- 项目状态collecting-收集中/analyzing-分析中/preparing-准备投标/submitted-已提交/opened-已开标/won-中标/lost-未中标/abandoned-放弃
@@ -35,9 +35,9 @@ CREATE TABLE bidding.tb_bidding_project (
team_members VARCHAR(50)[], -- 团队成员数组
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (project_id),
UNIQUE (optsn),
@@ -71,13 +71,13 @@ CREATE TABLE bidding.tb_bidding_document (
parse_result JSONB, -- 解析结果JSON格式提取的要素、表格、图纸等
extraction_data JSONB, -- 提取的结构化数据
ai_analysis TEXT, -- AI分析结果
upload_date timestamptz DEFAULT now(), -- 上传日期
upload_date TIMESTAMPTZ DEFAULT now(), -- 上传日期
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (doc_id),
UNIQUE (optsn),
@@ -113,9 +113,9 @@ CREATE TABLE bidding.tb_bidding_requirement (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (req_id),
UNIQUE (optsn),
@@ -151,9 +151,9 @@ CREATE TABLE bidding.tb_bid_response (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (response_id),
UNIQUE (optsn),
@@ -186,9 +186,9 @@ CREATE TABLE bidding.tb_bidding_scoring_rule (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (rule_id),
UNIQUE (optsn),
@@ -209,10 +209,10 @@ CREATE TABLE bidding.tb_bidding_process (
node_type VARCHAR(50) NOT NULL, -- 节点类型collection-文件收集/analysis-需求分析/preparation-文件准备/review-内部审核/submission-投标提交/opening-开标/result-结果通知
node_order INTEGER NOT NULL, -- 节点顺序
node_status VARCHAR(30) DEFAULT 'pending', -- 节点状态pending-待处理/in_progress-进行中/completed-已完成/skipped-已跳过
planned_start_time timestamptz, -- 计划开始时间
planned_end_time timestamptz, -- 计划结束时间
actual_start_time timestamptz, -- 实际开始时间
actual_end_time timestamptz, -- 实际结束时间
planned_start_time TIMESTAMPTZ, -- 计划开始时间
planned_end_time TIMESTAMPTZ, -- 计划结束时间
actual_start_time TIMESTAMPTZ, -- 实际开始时间
actual_end_time TIMESTAMPTZ, -- 实际结束时间
responsible_user VARCHAR(50), -- 负责人
participants VARCHAR(50)[], -- 参与人员数组
notes TEXT, -- 节点备注
@@ -220,9 +220,9 @@ CREATE TABLE bidding.tb_bidding_process (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (process_id),
UNIQUE (optsn),
@@ -251,9 +251,9 @@ CREATE TABLE bidding.tb_bid_template (
status VARCHAR(20) DEFAULT 'active', -- 状态active-激活/inactive-停用
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (template_id),
UNIQUE (optsn)

View File

@@ -6,7 +6,7 @@ CREATE TABLE config.tb_sys_config (
key VARCHAR(255) NOT NULL, -- 配置键
name VARCHAR(255) NOT NULL, -- 配置名称
value VARCHAR(255) NOT NULL, -- 配置值
config_type VARCHAR(50) NOT NULL, -- 数据类型(String, Integer, Boolean, Float, Double)
config_type VARCHAR(50) NOT NULL, -- 数据类型(String, INTEGER, BOOLEAN, Float, Double)
render_type VARCHAR(50) NOT NULL, -- 配置渲染类型(select, input, textarea, checkbox, radio, switch)
description VARCHAR(255) NOT NULL, -- 配置描述
re JSON DEFAULT NULL, -- 正则表达式校验规则
@@ -19,9 +19,9 @@ CREATE TABLE config.tb_sys_config (
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径支持like递归如/1/2/3/
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 配置创建时间
update_time timestamptz DEFAULT NULL, -- 配置更新时间
delete_time timestamptz DEFAULT NULL, -- 配置删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 配置创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 配置更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 配置删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (config_id),
UNIQUE (optsn)

View File

@@ -25,7 +25,7 @@ CREATE TABLE customer_service.tb_customer (
tags TEXT[], -- 客户标签数组
notes TEXT, -- 备注
crm_customer_id VARCHAR(50), -- CRM系统客户ID外部系统
last_contact_time timestamptz, -- 最后联系时间
last_contact_time TIMESTAMPTZ, -- 最后联系时间
total_consultations INTEGER DEFAULT 0, -- 咨询总次数
total_orders INTEGER DEFAULT 0, -- 订单总数
total_amount DECIMAL(18,2) DEFAULT 0, -- 总消费金额
@@ -34,9 +34,9 @@ CREATE TABLE customer_service.tb_customer (
status VARCHAR(20) DEFAULT 'active', -- 状态active-活跃/inactive-非活跃/blacklist-黑名单
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (customer_id),
UNIQUE (optsn),
@@ -62,8 +62,8 @@ CREATE TABLE customer_service.tb_conversation (
channel VARCHAR(20) DEFAULT 'wechat', -- 渠道wechat-微信/web-网页/app-应用/phone-电话
agent_id VARCHAR(50), -- 智能体ID或客服人员ID
agent_type VARCHAR(20) DEFAULT 'ai', -- 座席类型ai-AI/human-人工
session_start_time timestamptz DEFAULT now(), -- 会话开始时间
session_end_time timestamptz, -- 会话结束时间
session_start_time TIMESTAMPTZ DEFAULT now(), -- 会话开始时间
session_end_time TIMESTAMPTZ, -- 会话结束时间
duration_seconds INTEGER, -- 会话时长(秒)
message_count INTEGER DEFAULT 0, -- 消息数量
conversation_status VARCHAR(20) DEFAULT 'active', -- 会话状态active-进行中/closed-已结束/transferred-已转接/timeout-超时
@@ -75,9 +75,9 @@ CREATE TABLE customer_service.tb_conversation (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (conversation_id),
UNIQUE (optsn),
@@ -110,10 +110,10 @@ CREATE TABLE customer_service.tb_conversation_message (
intent VARCHAR(100), -- 意图识别结果
is_sensitive BOOLEAN DEFAULT false, -- 是否敏感信息
read_status BOOLEAN DEFAULT false, -- 已读状态
read_time timestamptz, -- 阅读时间
read_time TIMESTAMPTZ, -- 阅读时间
metadata JSONB, -- 消息元数据
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间(发送时间)
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间(发送时间)
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (message_id),
UNIQUE (optsn),
@@ -145,10 +145,10 @@ CREATE TABLE customer_service.tb_ticket (
assigned_dept VARCHAR(50), -- 分配部门
ticket_status VARCHAR(30) DEFAULT 'pending', -- 工单状态pending-待处理/processing-处理中/resolved-已解决/closed-已关闭/cancelled-已取消
resolution TEXT, -- 解决方案
resolution_time timestamptz, -- 解决时间
close_time timestamptz, -- 关闭时间
response_time timestamptz, -- 首次响应时间
sla_deadline timestamptz, -- SLA截止时间
resolution_time TIMESTAMPTZ, -- 解决时间
close_time TIMESTAMPTZ, -- 关闭时间
response_time TIMESTAMPTZ, -- 首次响应时间
sla_deadline TIMESTAMPTZ, -- SLA截止时间
is_overdue BOOLEAN DEFAULT false, -- 是否逾期
customer_rating INTEGER, -- 客户评分1-5星
customer_feedback TEXT, -- 客户反馈
@@ -159,9 +159,9 @@ CREATE TABLE customer_service.tb_ticket (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (ticket_id),
UNIQUE (optsn),
@@ -192,7 +192,7 @@ CREATE TABLE customer_service.tb_ticket_log (
operator_name VARCHAR(100), -- 操作人姓名
attachments VARCHAR(50)[], -- 附件ID数组
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
PRIMARY KEY (log_id),
UNIQUE (optsn),
FOREIGN KEY (ticket_id) REFERENCES customer_service.tb_ticket(ticket_id)
@@ -221,9 +221,9 @@ CREATE TABLE customer_service.tb_faq (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (faq_id),
UNIQUE (optsn)
@@ -249,7 +249,7 @@ CREATE TABLE customer_service.tb_service_evaluation (
tags TEXT[], -- 评价标签
is_anonymous BOOLEAN DEFAULT false, -- 是否匿名
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (evaluation_id),
UNIQUE (optsn),
@@ -274,13 +274,13 @@ CREATE TABLE customer_service.tb_crm_config (
sync_direction VARCHAR(30) DEFAULT 'bidirectional',-- 同步方向to_crm-单向到CRM/from_crm-单向从CRM/bidirectional-双向
field_mapping JSONB, -- 字段映射配置
sync_enabled BOOLEAN DEFAULT false, -- 是否启用同步
last_sync_time timestamptz, -- 最后同步时间
last_sync_time TIMESTAMPTZ, -- 最后同步时间
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (config_id),
UNIQUE (optsn)

View File

@@ -15,10 +15,10 @@ CREATE TABLE file.tb_sys_file (
dept_path VARCHAR(255) NOT NULL, -- 当前部门路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (file_id),
UNIQUE (optsn)
);

View File

@@ -20,9 +20,9 @@ CREATE TABLE knowledge.tb_knowledge_base (
status VARCHAR(20) NOT NULL DEFAULT 'active', -- 状态active-激活/inactive-停用/archived-归档
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (kb_id),
UNIQUE (optsn)
@@ -63,9 +63,9 @@ CREATE TABLE knowledge.tb_knowledge_document (
status VARCHAR(20) NOT NULL DEFAULT 'active', -- 状态active-激活/inactive-停用/archived-归档
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (doc_id),
UNIQUE (optsn),
@@ -96,8 +96,8 @@ CREATE TABLE knowledge.tb_knowledge_chunk (
metadata JSONB, -- 片段元数据
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (chunk_id),
UNIQUE (optsn),
@@ -127,7 +127,7 @@ CREATE TABLE knowledge.tb_knowledge_access_log (
ip_address VARCHAR(45), -- IP地址
user_agent TEXT, -- 用户代理
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
PRIMARY KEY (log_id),
UNIQUE (optsn)
);

View File

@@ -6,18 +6,18 @@ CREATE TABLE log.tb_sys_log (
type VARCHAR(50) NOT NULL, -- 日志类型
level VARCHAR(50) NOT NULL, -- 日志级别
module VARCHAR(50) NOT NULL, -- 日志模块
ip_address varchar(45), -- IP地址
ip_source varchar(100), -- IP来源
browser varchar(100), -- 浏览器
os varchar(100), -- 操作系统
ip_address VARCHAR(45), -- IP地址
ip_source VARCHAR(100), -- IP来源
browser VARCHAR(100), -- 浏览器
os VARCHAR(100), -- 操作系统
message VARCHAR(255) NOT NULL, -- 日志消息
data JSONB DEFAULT NULL, -- 日志数据
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 日志创建时间
update_time timestamptz DEFAULT NULL, -- 日志更新时间
delete_time timestamptz DEFAULT NULL, -- 日志删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 日志创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 日志更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 日志删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (log_id),
UNIQUE (optsn)

View File

@@ -11,9 +11,9 @@ CREATE TABLE message.tb_message (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径(隔离)
creator VARCHAR(50) NOT NULL DEFAULT 'system',-- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL,
delete_time timestamptz DEFAULT NULL,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL,
delete_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (message_id),
UNIQUE (optsn)
@@ -42,13 +42,13 @@ CREATE TABLE message.tb_message_range (
message_id VARCHAR(50) NOT NULL, -- 消息ID
target_type VARCHAR(20) NOT NULL, -- 目标类型user/dept/role/all
target_id VARCHAR(50) DEFAULT NULL, -- 目标ID用户、部门、角色ID等all类型时为空
channel VARCHAR(20) NOT NULL DEFAULT 'app', -- 发送渠道app/sms/email/wechat等
channel VARCHAR(20) NOT NULL DEFAULT 'app', -- 发送渠道app/sms/email/wechat_official_account/wechat_applet
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径支持like递归如/1/2/3/
creator VARCHAR(50) NOT NULL DEFAULT 'system',-- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (optsn),
UNIQUE (message_id, target_type, target_id, channel)
@@ -59,7 +59,7 @@ COMMENT ON COLUMN message.tb_message_range.optsn IS '流水号';
COMMENT ON COLUMN message.tb_message_range.message_id IS '消息ID';
COMMENT ON COLUMN message.tb_message_range.target_type IS '目标类型user-指定用户/dept-部门/role-角色/all-全员';
COMMENT ON COLUMN message.tb_message_range.target_id IS '目标ID用户、部门、角色ID等all类型时为空';
COMMENT ON COLUMN message.tb_message_range.channel IS '发送渠道app/sms/email/wechat等';
COMMENT ON COLUMN message.tb_message_range.channel IS '发送渠道app/sms/email/wechat_official_account/wechat_applet';
COMMENT ON COLUMN message.tb_message_range.dept_path IS '部门全路径';
COMMENT ON COLUMN message.tb_message_range.creator IS '创建者';
COMMENT ON COLUMN message.tb_message_range.updater IS '更新者';
@@ -77,14 +77,14 @@ CREATE TABLE message.tb_message_receiver (
user_id VARCHAR(50) NOT NULL, -- 用户ID
channel VARCHAR(20) DEFAULT 'app', -- 接收渠道app/sms/email/wechat等
status VARCHAR(20) NOT NULL DEFAULT 'unread', -- 消息状态unread-未读/read-已读/handled-已处理/deleted-已删除
read_time timestamptz DEFAULT NULL, -- 阅读时间
handle_time timestamptz DEFAULT NULL, -- 处理时间
read_time TIMESTAMPTZ DEFAULT NULL, -- 阅读时间
handle_time TIMESTAMPTZ DEFAULT NULL, -- 处理时间
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径(数据隔离)
creator VARCHAR(50) NOT NULL DEFAULT 'system',-- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间(接收时间)
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间(接收时间)
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (optsn),
UNIQUE (message_id, user_id, channel)
@@ -119,15 +119,15 @@ CREATE TABLE message.tb_message_channel (
channel_code VARCHAR(20) NOT NULL, -- 渠道编码app/sms/email/wechat/dingtalk等
channel_name VARCHAR(100) NOT NULL, -- 渠道名称
channel_desc VARCHAR(255) DEFAULT NULL, -- 渠道描述
config TEXT DEFAULT NULL, -- 渠道配置(JSON格式如API密钥、服务器地址等
config JSON DEFAULT NULL, -- 渠道配置如API密钥、服务器地址等
status VARCHAR(20) NOT NULL DEFAULT 'enabled', -- 渠道状态enabled-启用/disabled-禁用/maintenance-维护中
priority INTEGER DEFAULT 0, -- 优先级(数字越大优先级越高)
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径(数据隔离)
creator VARCHAR(50) NOT NULL DEFAULT 'system',-- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (channel_id),
UNIQUE (optsn),
@@ -150,12 +150,3 @@ COMMENT ON COLUMN message.tb_message_channel.create_time IS '创建时间';
COMMENT ON COLUMN message.tb_message_channel.update_time IS '更新时间';
COMMENT ON COLUMN message.tb_message_channel.delete_time IS '删除时间';
COMMENT ON COLUMN message.tb_message_channel.deleted IS '是否删除';
-- 插入默认渠道配置
INSERT INTO message.tb_message_channel (optsn, channel_id, channel_code, channel_name, channel_desc, status, priority)
VALUES
('CHANNEL_APP_001', 'CH_APP', 'app', '应用内消息', '系统内部消息推送', 'enabled', 100),
('CHANNEL_SMS_001', 'CH_SMS', 'sms', '短信通知', '手机短信推送', 'disabled', 80),
('CHANNEL_EMAIL_001', 'CH_EMAIL', 'email', '邮件通知', '电子邮件推送', 'disabled', 60),
('CHANNEL_WECHAT_001', 'CH_WECHAT', 'wechat', '微信通知', '微信公众号/企业微信推送', 'disabled', 70),
('CHANNEL_DINGTALK_001', 'CH_DINGTALK', 'dingtalk', '钉钉通知', '钉钉工作通知推送', 'disabled', 70);

View File

@@ -20,10 +20,10 @@ CREATE TABLE sys.tb_sys_dept (
description VARCHAR(255) DEFAULT NULL, -- 部门描述
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (dept_id),
UNIQUE (optsn)
);
@@ -54,12 +54,12 @@ CREATE TABLE sys.tb_sys_role (
owner_dept_id VARCHAR(50) DEFAULT NULL, -- 当scope=dept时所属部门ID
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL,
status boolean NOT NULL DEFAULT false, -- 部门全路径
status BOOLEAN NOT NULL DEFAULT false, -- 部门全路径
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (role_id),
UNIQUE (optsn)
);
@@ -99,10 +99,10 @@ CREATE TABLE sys.tb_sys_dept_role (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (dept_id, role_id),
UNIQUE (optsn)
);
@@ -127,10 +127,10 @@ CREATE TABLE sys.tb_sys_user_role (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (user_id, role_id),
UNIQUE (optsn)
);
@@ -156,17 +156,17 @@ CREATE TABLE sys.tb_sys_view (
url VARCHAR(255) DEFAULT NULL, -- 视图URL
component VARCHAR(255) DEFAULT NULL, -- 视图组件
icon VARCHAR(100) DEFAULT NULL, -- 视图图标
type integer DEFAULT 0, -- 视图类型
type INTEGER DEFAULT 0, -- 视图类型
layout VARCHAR(100) DEFAULT NULL, -- 布局组件路径名称
order_num integer DEFAULT 0, -- 视图排序号
order_num INTEGER DEFAULT 0, -- 视图排序号
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
description VARCHAR(255) DEFAULT NULL, -- 视图描述
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (view_id),
UNIQUE (optsn)
);
@@ -201,10 +201,10 @@ CREATE TABLE sys.tb_sys_module (
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (module_id),
UNIQUE (optsn)
);
@@ -232,12 +232,12 @@ CREATE TABLE sys.tb_sys_permission (
module_id VARCHAR(50) DEFAULT NULL, -- 所属模块ID
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL,
status boolean NOT NULL DEFAULT false, -- 部门全路径
status BOOLEAN NOT NULL DEFAULT false, -- 部门全路径
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (permission_id),
UNIQUE (optsn)
);
@@ -266,10 +266,10 @@ CREATE TABLE sys.tb_sys_role_permission (
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (role_id, permission_id),
UNIQUE (optsn)
);
@@ -294,10 +294,10 @@ CREATE TABLE sys.tb_sys_view_permission (
creator VARCHAR(50) DEFAULT NULL, -- 创建者
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (view_id, permission_id),
UNIQUE (optsn)
);
@@ -393,10 +393,10 @@ CREATE TABLE sys.tb_sys_acl (
dept_path VARCHAR(255) DEFAULT NULL, -- 部门全路径(数据隔离)
creator VARCHAR(50) DEFAULT NULL, -- 创建者
updater VARCHAR(50) DEFAULT NULL, -- 更新者
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (acl_id),
UNIQUE (object_type, object_id, principal_type, principal_id, principal_dept_id, deleted),
UNIQUE (optsn)
@@ -442,10 +442,10 @@ CREATE TABLE sys.tb_sys_acl_policy (
apply_to_children BOOLEAN DEFAULT true, -- 是否默认应用到子级
creator VARCHAR(50) DEFAULT NULL,
updater VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
update_time timestamptz DEFAULT NULL,
delete_time timestamptz DEFAULT NULL,
deleted boolean NOT NULL DEFAULT false,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
update_time TIMESTAMPTZ DEFAULT NULL,
delete_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (policy_id),
UNIQUE (object_type, deleted),
UNIQUE (optsn)

View File

@@ -5,22 +5,24 @@ CREATE SCHEMA IF NOT EXISTS sys;
-- 用户表
DROP TABLE IF EXISTS sys.tb_sys_user CASCADE;
CREATE TABLE sys.tb_sys_user (
optsn varchar(50) NOT NULL, -- 流水号
user_id varchar(50) NOT NULL, -- 用户ID
password varchar(128) NOT NULL, -- 密码(建议存储 bcrypt/argon2 哈希)
email varchar(100), -- 电子邮件
phone varchar(20), -- 电话号码
wechat_id varchar(50), -- 微信ID
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间(使用带时区时间)
update_time timestamptz DEFAULT NULL, -- 更新时间(由触发器维护
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除(使用 boolean
status integer NOT NULL DEFAULT 1, -- 状态
optsn VARCHAR(50) NOT NULL, -- 流水号
user_id VARCHAR(50) NOT NULL, -- 用户ID
usercode VARCHAR(100) DEFAULT NULL, -- 用户code。sso同步数据获取
password VARCHAR(128) NOT NULL, -- 密码(建议存储 bcrypt/argon2 哈希)
email VARCHAR(100), -- 电子邮件
phone VARCHAR(20), -- 电话号码
wechat_id VARCHAR(50), -- 微信ID
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间(使用带时区时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(由触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除(使用 BOOLEAN
status INTEGER NOT NULL DEFAULT 1, -- 状态
PRIMARY KEY (user_id),
UNIQUE (optsn),
UNIQUE (email),
UNIQUE (phone),
UNIQUE (wechat_id)
UNIQUE (wechat_id),
UNIQUE (usercode)
);
CREATE INDEX idx_tb_sys_user_phone ON sys.tb_sys_user USING btree (phone);
@@ -48,20 +50,19 @@ COMMENT ON COLUMN sys.tb_sys_user.status IS '状态';
-- 用户信息表
DROP TABLE IF EXISTS sys.tb_sys_user_info CASCADE;
CREATE TABLE sys.tb_sys_user_info (
optsn varchar(50) NOT NULL, -- 流水号
user_id varchar(50) NOT NULL, -- 用户ID
avatar varchar(255), -- 头像
gender integer DEFAULT 0, -- 性别
family_name varchar(50), --
given_name varchar(50), --
full_name varchar(100), -- 全名
level integer DEFAULT 1, -- 等级
id_card varchar(50), -- 身份证号
address varchar(255), -- 地址
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
update_time timestamptz DEFAULT NULL, -- 更新时间(触发器维护)
delete_time timestamptz DEFAULT NULL, -- 删除时间
deleted boolean NOT NULL DEFAULT false, -- 是否删除
optsn VARCHAR(50) NOT NULL, -- 流水号
user_id VARCHAR(50) NOT NULL, -- 用户ID
avatar VARCHAR(255), -- 头像
gender INTEGER DEFAULT 0, -- 性别
username VARCHAR(100) NOT NULL -- 用户名
level INTEGER DEFAULT 1, -- 等级
id_card VARCHAR(50), -- 身份证号
address VARCHAR(255), -- 地址
remark VARCHAR(500) DEFAULT NULL -- 备注
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
update_time TIMESTAMPTZ DEFAULT NULL, -- 更新时间(触发器维护)
delete_time TIMESTAMPTZ DEFAULT NULL, -- 删除时间
deleted BOOLEAN NOT NULL DEFAULT false, -- 是否删除
PRIMARY KEY (user_id),
UNIQUE (optsn)
);
@@ -70,12 +71,11 @@ COMMENT ON COLUMN sys.tb_sys_user_info.optsn IS '流水号';
COMMENT ON COLUMN sys.tb_sys_user_info.user_id IS '用户ID';
COMMENT ON COLUMN sys.tb_sys_user_info.avatar IS '头像';
COMMENT ON COLUMN sys.tb_sys_user_info.gender IS '性别';
COMMENT ON COLUMN sys.tb_sys_user_info.family_name IS '';
COMMENT ON COLUMN sys.tb_sys_user_info.given_name IS '';
COMMENT ON COLUMN sys.tb_sys_user_info.full_name IS '全名';
COMMENT ON COLUMN sys.tb_sys_user_info.username IS '用户名';
COMMENT ON COLUMN sys.tb_sys_user_info.level IS '等级';
COMMENT ON COLUMN sys.tb_sys_user_info.id_card IS '身份证号';
COMMENT ON COLUMN sys.tb_sys_user_info.address IS '地址';
COMMENT ON COLUMN sys.tb_sys_user_info.remark IS '备注';
COMMENT ON COLUMN sys.tb_sys_user_info.create_time IS '创建时间';
COMMENT ON COLUMN sys.tb_sys_user_info.update_time IS '更新时间';
COMMENT ON COLUMN sys.tb_sys_user_info.delete_time IS '删除时间';
@@ -84,19 +84,19 @@ COMMENT ON COLUMN sys.tb_sys_user_info.deleted IS '是否删除';
-- 登录日志表
DROP TABLE IF EXISTS sys.tb_sys_login_log CASCADE;
CREATE TABLE sys.tb_sys_login_log (
optsn varchar(50) NOT NULL, -- 流水号(作为主键)
user_id varchar(50) NOT NULL, -- 用户ID
username varchar(50) NOT NULL, -- 用户名
ip_address varchar(45), -- IP地址
ip_source varchar(100), -- IP来源
browser varchar(100), -- 浏览器
os varchar(100), -- 操作系统
password varchar(128), -- 密码(建议存储 bcrypt/argon2 哈希)
login_time timestamptz DEFAULT now(), -- 登录时间
status integer DEFAULT 1, -- 登录状态0失败 1成功
error_count integer DEFAULT 0, -- 错误次数
message varchar(255), -- 登录消息
create_time timestamptz NOT NULL DEFAULT now(), -- 创建时间
optsn VARCHAR(50) NOT NULL, -- 流水号(作为主键)
user_id VARCHAR(50) NOT NULL, -- 用户ID
username VARCHAR(50) NOT NULL, -- 用户名
ip_address VARCHAR(45), -- IP地址
ip_source VARCHAR(100), -- IP来源
browser VARCHAR(100), -- 浏览器
os VARCHAR(100), -- 操作系统
password VARCHAR(128), -- 密码(建议存储 bcrypt/argon2 哈希)
login_time TIMESTAMPTZ DEFAULT now(), -- 登录时间
status INTEGER DEFAULT 1, -- 登录状态0失败 1成功
error_count INTEGER DEFAULT 0, -- 错误次数
message VARCHAR(255), -- 登录消息
create_time TIMESTAMPTZ NOT NULL DEFAULT now(), -- 创建时间
PRIMARY KEY (optsn)
);
-- B-tree 索引(显式指定 USING btreePostgres 默认即为 btree

View File

@@ -30,9 +30,9 @@ CREATE TABLE IF NOT EXISTS sys.tb_sys_user_dept (
position VARCHAR(100),
creator VARCHAR(50) DEFAULT NULL,
updater VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
update_time timestamptz DEFAULT NULL,
delete_time timestamptz DEFAULT NULL,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
update_time TIMESTAMPTZ DEFAULT NULL,
delete_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (user_id, dept_id),
UNIQUE (optsn),
@@ -148,9 +148,9 @@ CREATE TABLE IF NOT EXISTS file.tb_file_relation (
order_num INTEGER DEFAULT 0,
creator VARCHAR(50) DEFAULT NULL,
updater VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
update_time timestamptz DEFAULT NULL,
delete_time timestamptz DEFAULT NULL,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
update_time TIMESTAMPTZ DEFAULT NULL,
delete_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (relation_id),
UNIQUE (optsn),
@@ -184,9 +184,9 @@ CREATE TABLE IF NOT EXISTS message.tb_message_template (
dept_path VARCHAR(255) DEFAULT NULL,
creator VARCHAR(50) DEFAULT NULL,
updater VARCHAR(50) DEFAULT NULL,
create_time timestamptz NOT NULL DEFAULT now(),
update_time timestamptz DEFAULT NULL,
delete_time timestamptz DEFAULT NULL,
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
update_time TIMESTAMPTZ DEFAULT NULL,
delete_time TIMESTAMPTZ DEFAULT NULL,
deleted BOOLEAN NOT NULL DEFAULT false,
PRIMARY KEY (template_id),
UNIQUE (optsn),

View File

@@ -22,22 +22,22 @@ USE `nacos_config`;
/******************************************/
CREATE TABLE `config_info` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`data_id` varchar(255) NOT NULL COMMENT 'data_id',
`group_id` varchar(128) DEFAULT NULL COMMENT 'group_id',
`data_id` VARCHAR(255) NOT NULL COMMENT 'data_id',
`group_id` VARCHAR(128) DEFAULT NULL COMMENT 'group_id',
`content` longtext NOT NULL COMMENT 'content',
`md5` varchar(32) DEFAULT NULL COMMENT 'md5',
`md5` VARCHAR(32) DEFAULT NULL COMMENT 'md5',
`gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`src_user` text COMMENT 'source user',
`src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
`app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
`tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
`c_desc` varchar(256) DEFAULT NULL COMMENT 'configuration description',
`c_use` varchar(64) DEFAULT NULL COMMENT 'configuration usage',
`effect` varchar(64) DEFAULT NULL COMMENT '配置生效的描述',
`type` varchar(64) DEFAULT NULL COMMENT '配置的类型',
`src_ip` VARCHAR(50) DEFAULT NULL COMMENT 'source ip',
`app_name` VARCHAR(128) DEFAULT NULL COMMENT 'app_name',
`tenant_id` VARCHAR(128) DEFAULT '' COMMENT '租户字段',
`c_desc` VARCHAR(256) DEFAULT NULL COMMENT 'configuration description',
`c_use` VARCHAR(64) DEFAULT NULL COMMENT 'configuration usage',
`effect` VARCHAR(64) DEFAULT NULL COMMENT '配置生效的描述',
`type` VARCHAR(64) DEFAULT NULL COMMENT '配置的类型',
`c_schema` text COMMENT '配置的模式',
`encrypted_data_key` varchar(1024) NOT NULL DEFAULT '' COMMENT '密钥',
`encrypted_data_key` VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '密钥',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info';
@@ -47,19 +47,19 @@ CREATE TABLE `config_info` (
/******************************************/
CREATE TABLE `config_info_gray` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
`data_id` varchar(255) NOT NULL COMMENT 'data_id',
`group_id` varchar(128) NOT NULL COMMENT 'group_id',
`data_id` VARCHAR(255) NOT NULL COMMENT 'data_id',
`group_id` VARCHAR(128) NOT NULL COMMENT 'group_id',
`content` longtext NOT NULL COMMENT 'content',
`md5` varchar(32) DEFAULT NULL COMMENT 'md5',
`md5` VARCHAR(32) DEFAULT NULL COMMENT 'md5',
`src_user` text COMMENT 'src_user',
`src_ip` varchar(100) DEFAULT NULL COMMENT 'src_ip',
`src_ip` VARCHAR(100) DEFAULT NULL COMMENT 'src_ip',
`gmt_create` datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 'gmt_create',
`gmt_modified` datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 'gmt_modified',
`app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
`tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
`gray_name` varchar(128) NOT NULL COMMENT 'gray_name',
`app_name` VARCHAR(128) DEFAULT NULL COMMENT 'app_name',
`tenant_id` VARCHAR(128) DEFAULT '' COMMENT 'tenant_id',
`gray_name` VARCHAR(128) NOT NULL COMMENT 'gray_name',
`gray_rule` text NOT NULL COMMENT 'gray_rule',
`encrypted_data_key` varchar(256) NOT NULL DEFAULT '' COMMENT 'encrypted_data_key',
`encrypted_data_key` VARCHAR(256) NOT NULL DEFAULT '' COMMENT 'encrypted_data_key',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_configinfogray_datagrouptenantgray` (`data_id`,`group_id`,`tenant_id`,`gray_name`),
KEY `idx_dataid_gmt_modified` (`data_id`,`gmt_modified`),
@@ -71,11 +71,11 @@ CREATE TABLE `config_info_gray` (
/******************************************/
CREATE TABLE `config_tags_relation` (
`id` bigint(20) NOT NULL COMMENT 'id',
`tag_name` varchar(128) NOT NULL COMMENT 'tag_name',
`tag_type` varchar(64) DEFAULT NULL COMMENT 'tag_type',
`data_id` varchar(255) NOT NULL COMMENT 'data_id',
`group_id` varchar(128) NOT NULL COMMENT 'group_id',
`tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
`tag_name` VARCHAR(128) NOT NULL COMMENT 'tag_name',
`tag_type` VARCHAR(64) DEFAULT NULL COMMENT 'tag_type',
`data_id` VARCHAR(255) NOT NULL COMMENT 'data_id',
`group_id` VARCHAR(128) NOT NULL COMMENT 'group_id',
`tenant_id` VARCHAR(128) DEFAULT '' COMMENT 'tenant_id',
`nid` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'nid, 自增长标识',
PRIMARY KEY (`nid`),
UNIQUE KEY `uk_configtagrelation_configidtag` (`id`,`tag_name`,`tag_type`),
@@ -87,7 +87,7 @@ CREATE TABLE `config_tags_relation` (
/******************************************/
CREATE TABLE `group_capacity` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`group_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Group ID空字符表示整个集群',
`group_id` VARCHAR(128) NOT NULL DEFAULT '' COMMENT 'Group ID空字符表示整个集群',
`quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额0表示使用默认值',
`usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
`max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限单位为字节0表示使用默认值',
@@ -106,20 +106,20 @@ CREATE TABLE `group_capacity` (
CREATE TABLE `his_config_info` (
`id` bigint(20) unsigned NOT NULL COMMENT 'id',
`nid` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'nid, 自增标识',
`data_id` varchar(255) NOT NULL COMMENT 'data_id',
`group_id` varchar(128) NOT NULL COMMENT 'group_id',
`app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
`data_id` VARCHAR(255) NOT NULL COMMENT 'data_id',
`group_id` VARCHAR(128) NOT NULL COMMENT 'group_id',
`app_name` VARCHAR(128) DEFAULT NULL COMMENT 'app_name',
`content` longtext NOT NULL COMMENT 'content',
`md5` varchar(32) DEFAULT NULL COMMENT 'md5',
`md5` VARCHAR(32) DEFAULT NULL COMMENT 'md5',
`gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`src_user` text COMMENT 'source user',
`src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
`src_ip` VARCHAR(50) DEFAULT NULL COMMENT 'source ip',
`op_type` char(10) DEFAULT NULL COMMENT 'operation type',
`tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
`encrypted_data_key` varchar(1024) NOT NULL DEFAULT '' COMMENT '密钥',
`publish_type` varchar(50) DEFAULT 'formal' COMMENT 'publish type gray or formal',
`gray_name` varchar(50) DEFAULT NULL COMMENT 'gray name',
`tenant_id` VARCHAR(128) DEFAULT '' COMMENT '租户字段',
`encrypted_data_key` VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '密钥',
`publish_type` VARCHAR(50) DEFAULT 'formal' COMMENT 'publish type gray or formal',
`gray_name` VARCHAR(50) DEFAULT NULL COMMENT 'gray name',
`ext_info` longtext DEFAULT NULL COMMENT 'ext info',
PRIMARY KEY (`nid`),
KEY `idx_gmt_create` (`gmt_create`),
@@ -133,7 +133,7 @@ CREATE TABLE `his_config_info` (
/******************************************/
CREATE TABLE `tenant_capacity` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`tenant_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Tenant ID',
`tenant_id` VARCHAR(128) NOT NULL DEFAULT '' COMMENT 'Tenant ID',
`quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额0表示使用默认值',
`usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
`max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限单位为字节0表示使用默认值',
@@ -149,11 +149,11 @@ CREATE TABLE `tenant_capacity` (
CREATE TABLE `tenant_info` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`kp` varchar(128) NOT NULL COMMENT 'kp',
`tenant_id` varchar(128) default '' COMMENT 'tenant_id',
`tenant_name` varchar(128) default '' COMMENT 'tenant_name',
`tenant_desc` varchar(256) DEFAULT NULL COMMENT 'tenant_desc',
`create_source` varchar(32) DEFAULT NULL COMMENT 'create_source',
`kp` VARCHAR(128) NOT NULL COMMENT 'kp',
`tenant_id` VARCHAR(128) default '' COMMENT 'tenant_id',
`tenant_name` VARCHAR(128) default '' COMMENT 'tenant_name',
`tenant_desc` VARCHAR(256) DEFAULT NULL COMMENT 'tenant_desc',
`create_source` VARCHAR(32) DEFAULT NULL COMMENT 'create_source',
`gmt_create` bigint(20) NOT NULL COMMENT '创建时间',
`gmt_modified` bigint(20) NOT NULL COMMENT '修改时间',
PRIMARY KEY (`id`),
@@ -162,21 +162,21 @@ CREATE TABLE `tenant_info` (
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='tenant_info';
CREATE TABLE `users` (
`username` varchar(50) NOT NULL PRIMARY KEY COMMENT 'username',
`password` varchar(500) NOT NULL COMMENT 'password',
`enabled` boolean NOT NULL COMMENT 'enabled'
`username` VARCHAR(50) NOT NULL PRIMARY KEY COMMENT 'username',
`password` VARCHAR(500) NOT NULL COMMENT 'password',
`enabled` BOOLEAN NOT NULL COMMENT 'enabled'
);
CREATE TABLE `roles` (
`username` varchar(50) NOT NULL COMMENT 'username',
`role` varchar(50) NOT NULL COMMENT 'role',
`username` VARCHAR(50) NOT NULL COMMENT 'username',
`role` VARCHAR(50) NOT NULL COMMENT 'role',
UNIQUE INDEX `idx_user_role` (`username` ASC, `role` ASC) USING BTREE
);
CREATE TABLE `permissions` (
`role` varchar(50) NOT NULL COMMENT 'role',
`resource` varchar(128) NOT NULL COMMENT 'resource',
`action` varchar(8) NOT NULL COMMENT 'action',
`role` VARCHAR(50) NOT NULL COMMENT 'role',
`resource` VARCHAR(128) NOT NULL COMMENT 'resource',
`action` VARCHAR(8) NOT NULL COMMENT 'action',
UNIQUE INDEX `uk_role_permission` (`role`,`resource`,`action`) USING BTREE
);

View File

@@ -116,7 +116,7 @@
" </select>",
"",
" <!-- 根据条件查询${9:实体名称}数量 -->",
" <select id=\"get${3:EntityName}CountByFilter\" resultType=\"java.lang.Integer\" parameterType=\"${4:org.xyzh.common.dto.sys.${3:EntityName}DTO}\">",
" <select id=\"get${3:EntityName}CountByFilter\" resultType=\"java.lang.INTEGER\" parameterType=\"${4:org.xyzh.common.dto.sys.${3:EntityName}DTO}\">",
" SELECT COUNT(1)",
" FROM ${10:tb_entity_name}",
" <where>",
@@ -282,7 +282,7 @@
"prefix": "mybatis-select-count",
"body": [
" <!-- 根据条件查询${1:实体名称}数量 -->",
" <select id=\"get${2:EntityName}CountByFilter\" resultType=\"java.lang.Integer\" parameterType=\"${3:org.xyzh.common.dto.sys.${2:EntityName}DTO}\">",
" <select id=\"get${2:EntityName}CountByFilter\" resultType=\"java.lang.INTEGER\" parameterType=\"${3:org.xyzh.common.dto.sys.${2:EntityName}DTO}\">",
" SELECT COUNT(1)",
" FROM ${4:tb_entity_name}",
" <where>",

View File

@@ -64,11 +64,11 @@ public interface AuthService {
/**
* @description 简单校验 token 是否有效(用于快速判断是否已登录)
* @param token 鉴权 token
* @return ResultDomain<Boolean> true 表示有效/已登录false 表示无效/未登录
* @return ResultDomain<BOOLEAN> true 表示有效/已登录false 表示无效/未登录
* @author yslg
* @since 2025-11-03
*/
ResultDomain<Boolean> isTokenValid(String token);
ResultDomain<BOOLEAN> isTokenValid(String token);
}

View File

@@ -43,7 +43,7 @@ public interface FileService {
* @author yslg
* @since 2025-11-03
*/
ResultDomain<Boolean> deleteFile(String fileId);
ResultDomain<BOOLEAN> deleteFile(String fileId);
/**
* @description 批量删除文件(逻辑删除)

View File

@@ -23,7 +23,7 @@ public class TbSysLogDTO extends BaseDTO {
private String logId;
@Schema(description = "日志类型")
private Integer type;
private INTEGER type;
@Schema(description = "日志级别")
private String level;

View File

@@ -46,10 +46,10 @@ public class TbSysLoginLogDTO extends BaseDTO {
private Date loginTime;
@Schema(description = "状态")
private Integer status;
private INTEGER status;
@Schema(description = "错误次数")
private Integer errorCount;
private INTEGER errorCount;
@Schema(description = "消息")
private String message;

View File

@@ -38,6 +38,6 @@ public class TbMessageChannelDTO extends BaseDTO {
private String status;
@Schema(description = "优先级(数字越大优先级越高)")
private Integer priority;
private INTEGER priority;
}

View File

@@ -113,7 +113,7 @@ public interface MessageService {
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteMessage(String messageId);
ResultDomain<BOOLEAN> deleteMessage(String messageId);
/**
* @description 发送消息

View File

@@ -44,5 +44,5 @@ public class MessageRangeChannelVO extends BaseVO {
private String channelStatus;
@Schema(description = "渠道优先级(数字越大优先级越高)")
private Integer channelPriority;
private INTEGER channelPriority;
}

View File

@@ -39,11 +39,11 @@ public interface DeptRoleService {
/**
* @description 根据ID删除部门
* @param deptDTO 部门DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteDept(TbSysDeptDTO deptDTO);
ResultDomain<BOOLEAN> deleteDept(TbSysDeptDTO deptDTO);
/**
* @description 根据ID查询部门
@@ -103,11 +103,11 @@ public interface DeptRoleService {
/**
* @description 根据ID删除角色
* @param roleDTO 角色DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteRole(TbSysRoleDTO roleDTO);
ResultDomain<BOOLEAN> deleteRole(TbSysRoleDTO roleDTO);
/**
* @description 根据ID查询角色
@@ -176,11 +176,11 @@ public interface DeptRoleService {
/**
* @description 根据ID删除部门角色关联
* @param deptRoleDTO 部门角色DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteDeptRole(TbSysDeptRoleDTO deptRoleDTO);
ResultDomain<BOOLEAN> deleteDeptRole(TbSysDeptRoleDTO deptRoleDTO);
/**
* @description 根据ID查询部门角色关联

View File

@@ -38,11 +38,11 @@ public interface ModulePermissionService {
/**
* @description 根据ID删除模块
* @param moduleDTO 模块DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteModule(TbSysModuleDTO moduleDTO);
ResultDomain<BOOLEAN> deleteModule(TbSysModuleDTO moduleDTO);
/**
* @description 获取模块分页数据
@@ -84,11 +84,11 @@ public interface ModulePermissionService {
/**
* @description 根据ID删除权限
* @param permissionDTO 权限DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deletePermission(TbSysPermissionDTO permissionDTO);
ResultDomain<BOOLEAN> deletePermission(TbSysPermissionDTO permissionDTO);
/**
* @description 根据模块ID获取权限列表

View File

@@ -35,11 +35,11 @@ public interface SysConfigService {
/**
* @description 根据ID删除系统配置
* @param configDTO 系统配置DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteConfig(TbSysConfigDTO configDTO);
ResultDomain<BOOLEAN> deleteConfig(TbSysConfigDTO configDTO);
/**
* @description 根据ID查询系统配置

View File

@@ -39,11 +39,11 @@ public interface SysUserService {
/**
* @description 根据ID删除用户
* @param TbSysUserDTO userDTO 用户DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteUser(TbSysUserDTO userDTO);
ResultDomain<BOOLEAN> deleteUser(TbSysUserDTO userDTO);
/**
* @description 根据ID查询用户
@@ -95,11 +95,11 @@ public interface SysUserService {
* @param userId 用户ID
* @param oldPassword 旧密码
* @param newPassword 新密码
* @return ResultDomain<Boolean> 更新结果
* @return ResultDomain<BOOLEAN> 更新结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> updateUserPassword(String userId, String oldPassword, String newPassword);
ResultDomain<BOOLEAN> updateUserPassword(String userId, String oldPassword, String newPassword);
/**
* @description 重置用户密码
@@ -114,11 +114,11 @@ public interface SysUserService {
* @description 更新用户状态
* @param userId 用户ID
* @param status 状态
* @return ResultDomain<Boolean> 更新结果
* @return ResultDomain<BOOLEAN> 更新结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> updateUserStatus(String userId, String status);
ResultDomain<BOOLEAN> updateUserStatus(String userId, String status);
// ================= 用户详细信息管理 =================
/**
@@ -152,21 +152,21 @@ public interface SysUserService {
/**
* @description 删除用户角色关联
* @param userRoleDTO 用户角色DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> removeUserRole(TbSysUserRoleDTO userRoleDTO);
ResultDomain<BOOLEAN> removeUserRole(TbSysUserRoleDTO userRoleDTO);
/**
* @description 批量设置用户角色
* @param userId 用户ID
* @param[] roleIds 角色ID数组
* @return ResultDomain<Boolean> 设置结果
* @return ResultDomain<BOOLEAN> 设置结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> setUserRoles(String userId, String[] roleIds);
ResultDomain<BOOLEAN> setUserRoles(String userId, String[] roleIds);
// ================= 用户完整信息查询 =================
/**

View File

@@ -36,11 +36,11 @@ public interface ViewService {
/**
* @description 根据ID删除视图
* @param viewDTO 视图DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-05
*/
ResultDomain<Boolean> deleteView(TbSysViewDTO viewDTO);
ResultDomain<BOOLEAN> deleteView(TbSysViewDTO viewDTO);
/**
* @description 根据ID查询视图

View File

@@ -36,13 +36,13 @@ public class AclVO extends BaseVO {
private String principalDeptId;
@Schema(description = "权限位1读 2写 4执行")
private Integer permission;
private INTEGER permission;
@Schema(description = "允许或显式拒绝", defaultValue = "true")
private Boolean allow = true;
private BOOLEAN allow = true;
@Schema(description = "是否包含子级对dept/role生效", defaultValue = "false")
private Boolean includeDescendants = false;
private BOOLEAN includeDescendants = false;
// TbSysAclPolicyDTO对应字段
@Schema(description = "策略ID")
@@ -61,11 +61,11 @@ public class AclVO extends BaseVO {
private String viewHierarchyRule;
@Schema(description = "默认权限无显式ACL时应用", defaultValue = "0")
private Integer defaultPermission = 0;
private INTEGER defaultPermission = 0;
@Schema(description = "默认是否允许", defaultValue = "true")
private boolean defaultAllow = true;
private BOOLEAN defaultAllow = true;
@Schema(description = "是否默认应用到子级", defaultValue = "true")
private boolean applyToChildren = true;
private BOOLEAN applyToChildren = true;
}

View File

@@ -51,7 +51,7 @@ public class PermissionVO extends BaseVO {
private String roleOwnerDeptId;
@Schema(description = "角色状态")
private boolean roleStatus;
private BOOLEAN roleStatus;
// TbSysModuleDTO对应字段
@Schema(description = "模块ID")
@@ -99,13 +99,13 @@ public class PermissionVO extends BaseVO {
private String viewIcon;
@Schema(description = "类型")
private Integer viewType;
private INTEGER viewType;
@Schema(description = "布局")
private String viewLayout;
@Schema(description = "排序")
private Integer viewOrderNum;
private INTEGER viewOrderNum;
@Schema(description = "视图描述")
private String viewDescription;

View File

@@ -32,7 +32,7 @@ public class SysConfigVO extends BaseVO {
@Schema(description = "配置值")
private String value;
@Schema(description = "数据类型(String, Integer, Boolean, Float, Double)")
@Schema(description = "数据类型(String, INTEGER, BOOLEAN, Float, Double)")
private String configType;
@Schema(description = "配置渲染类型(select, input, textarea, checkbox, radio, switch)")
@@ -60,10 +60,10 @@ public class SysConfigVO extends BaseVO {
private String moduleDescription;
@Schema(description = "配置顺序")
private Integer orderNum;
private INTEGER orderNum;
@Schema(description = "状态")
private Integer status;
private INTEGER status;
public static TbSysConfigDTO toDTO(SysConfigVO vo) {
if (vo == null) {

View File

@@ -51,7 +51,7 @@ public class SysUserVO extends BaseVO {
private String avatar;
@Schema(description = "性别")
private Integer gender;
private INTEGER gender;
@Schema(description = "")
private String familyName;
@@ -63,7 +63,7 @@ public class SysUserVO extends BaseVO {
private String fullName;
@Schema(description = "等级")
private Integer level;
private INTEGER level;
@Schema(description = "身份证号")
private String idCard;

View File

@@ -50,7 +50,7 @@ public class UserDeptRoleVO extends BaseVO {
private String avatar;
@Schema(description = "性别")
private Integer gender;
private INTEGER gender;
@Schema(description = "")
private String familyName;
@@ -62,7 +62,7 @@ public class UserDeptRoleVO extends BaseVO {
private String fullName;
@Schema(description = "等级")
private Integer level;
private INTEGER level;
@Schema(description = "身份证号")
private String idCard;
@@ -100,7 +100,7 @@ public class UserDeptRoleVO extends BaseVO {
private String ownerDeptId;
@Schema(description = "角色状态")
private boolean roleStatus;
private BOOLEAN roleStatus;
public static TbSysDeptDTO toDeptDTO(UserDeptRoleVO vo) {

View File

@@ -34,7 +34,7 @@ public class AuthServiceImpl implements AuthService{
}
@Override
public ResultDomain<Boolean> isTokenValid(String arg0) {
public ResultDomain<BOOLEAN> isTokenValid(String arg0) {
// TODO Auto-generated method stub
return null;
}

View File

@@ -16,11 +16,11 @@ public @interface HttpLogin {
/**
* @description 是否必需默认为true
* @return boolean
* @return BOOLEAN
* @author yslg
* @since 2025-11-02
*/
boolean required() default true;
BOOLEAN required() default true;
/**
* @description 当token无效时的错误消息

View File

@@ -42,7 +42,7 @@ public class HttpLoginArgumentResolver implements HandlerMethodArgumentResolver
private static final String REDIS_LOGIN_PREFIX = "login:token:";
@Override
public boolean supportsParameter(MethodParameter parameter) {
public BOOLEAN supportsParameter(MethodParameter parameter) {
return parameter.hasParameterAnnotation(HttpLogin.class)
&& LoginDomain.class.isAssignableFrom(parameter.getParameterType());
}

View File

@@ -21,7 +21,7 @@ public class AuthProperties {
* 是否启用认证过滤器
* 默认启用
*/
private boolean enabled = true;
private BOOLEAN enabled = true;
/**
* 登录接口路径
@@ -72,11 +72,11 @@ public class AuthProperties {
whitelist.add("/error");
}
public boolean isEnabled() {
public BOOLEAN isEnabled() {
return enabled;
}
public void setEnabled(boolean enabled) {
public void setEnabled(BOOLEAN enabled) {
this.enabled = enabled;
}

View File

@@ -178,7 +178,7 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter {
/**
* 检查路径是否在白名单中
*/
private boolean isWhitelisted(@NonNull String path) {
private BOOLEAN isWhitelisted(@NonNull String path) {
// 1. 先检查认证相关接口login / logout / captcha / refresh
if (authProperties.getAuthPaths() != null) {
for (String pattern : authProperties.getAuthPaths()) {

View File

@@ -34,12 +34,12 @@ public class JwtTokenParser implements TokenParser {
}
@Override
public boolean validateToken(String token, String userId) {
public BOOLEAN validateToken(String token, String userId) {
return jwtTokenUtil.validateToken(token, userId);
}
@Override
public boolean isTokenExpired(String token) {
public BOOLEAN isTokenExpired(String token) {
return jwtTokenUtil.isTokenExpired(token);
}
}

View File

@@ -33,19 +33,19 @@ public interface TokenParser {
* @description 验证令牌
* @param token 令牌
* @param userId 用户ID
* @return boolean 是否有效
* @return BOOLEAN 是否有效
* @author yslg
* @since 2025-11-02
*/
boolean validateToken(String token, String userId);
BOOLEAN validateToken(String token, String userId);
/**
* @description 检查令牌是否过期
* @param token 令牌
* @return boolean 是否过期
* @return BOOLEAN 是否过期
* @author yslg
* @since 2025-11-02
*/
boolean isTokenExpired(String token);
BOOLEAN isTokenExpired(String token);
}

View File

@@ -114,11 +114,11 @@ public class JwtTokenUtil {
* @description 验证令牌
* @param token JWT令牌
* @param userId 用户ID
* @return boolean 是否有效
* @return BOOLEAN 是否有效
* @author yslg
* @since 2025-11-07
*/
public boolean validateToken(String token, String userId) {
public BOOLEAN validateToken(String token, String userId) {
try {
final String tokenUserId = getUserIdFromToken(token);
return (userId.equals(tokenUserId) && !isTokenExpired(token));
@@ -130,11 +130,11 @@ public class JwtTokenUtil {
/**
* @description 检查令牌是否过期
* @param token JWT令牌
* @return boolean 是否过期
* @return BOOLEAN 是否过期
* @author yslg
* @since 2025-11-07
*/
public boolean isTokenExpired(String token) {
public BOOLEAN isTokenExpired(String token) {
final Date expiration = getExpirationDateFromToken(token);
return expiration.before(new Date());
}

View File

@@ -78,7 +78,7 @@ public class LoginParam implements Serializable {
* @author yslg
* @since 2025-11-02
*/
private Boolean rememberMe;
private BOOLEAN rememberMe;
}

View File

@@ -19,8 +19,8 @@ import lombok.Data;
public class ResultDomain<T> implements Serializable {
private static final long serialVersionUID = 1L;
private Integer code;
private boolean success;
private INTEGER code;
private BOOLEAN success;
private String message;
private T data;
private List<T> dataList;

View File

@@ -40,5 +40,5 @@ public class BaseDTO implements Serializable {
private Date deleteTime;
@Schema(description = "是否已删除", defaultValue = "false")
private Boolean deleted = false;
private BOOLEAN deleted = false;
}

View File

@@ -35,11 +35,11 @@ public class TbSysAclDTO extends BaseDTO {
private String principalDeptId;
@Schema(description = "权限位1读 2写 4执行")
private Integer permission;
private INTEGER permission;
@Schema(description = "允许或显式拒绝", defaultValue = "true")
private Boolean allow = true;
private BOOLEAN allow = true;
@Schema(description = "是否包含子级对dept/role生效", defaultValue = "false")
private Boolean includeDescendants = false;
private BOOLEAN includeDescendants = false;
}

View File

@@ -33,11 +33,11 @@ public class TbSysAclPolicyDTO extends BaseDTO {
private String viewHierarchyRule;
@Schema(description = "默认权限无显式ACL时应用", defaultValue = "0")
private Integer defaultPermission=0;
private INTEGER defaultPermission=0;
@Schema(description = "默认是否允许", defaultValue = "true")
private boolean defaultAllow=true;
private BOOLEAN defaultAllow=true;
@Schema(description = "是否默认应用到子级", defaultValue = "true")
private boolean applyToChildren=true;
private BOOLEAN applyToChildren=true;
}

View File

@@ -31,7 +31,7 @@ public class TbSysConfigDTO extends BaseDTO {
@Schema(description = "配置值")
private String value;
@Schema(description = "数据类型(String, Integer, Boolean, Float, Double)")
@Schema(description = "数据类型(String, INTEGER, BOOLEAN, Float, Double)")
private String configType;
@Schema(description = "配置渲染类型(select, input, textarea, checkbox, radio, switch)")
@@ -53,9 +53,9 @@ public class TbSysConfigDTO extends BaseDTO {
private String moduleId;
@Schema(description = "配置顺序")
private Integer orderNum;
private INTEGER orderNum;
@Schema(description = "配置状态 0:启用 1:禁用", defaultValue = "0")
private Integer status = 0;
private INTEGER status = 0;
}

View File

@@ -33,5 +33,5 @@ public class TbSysRoleDTO extends BaseDTO {
private String ownerDeptId;
@Schema(description = "角色状态 true 有效, false 无效")
private boolean status;
private BOOLEAN status;
}

View File

@@ -24,7 +24,7 @@ public class TbSysUserInfoDTO extends BaseDTO {
private String avatar;
@Schema(description = "性别")
private Integer gender;
private INTEGER gender;
@Schema(description = "")
private String familyName;
@@ -36,7 +36,7 @@ public class TbSysUserInfoDTO extends BaseDTO {
private String fullName;
@Schema(description = "等级")
private Integer level;
private INTEGER level;
@Schema(description = "身份证号")
private String idCard;

View File

@@ -37,13 +37,13 @@ public class TbSysViewDTO extends BaseDTO {
private String icon;
@Schema(description = "类型")
private Integer type;
private INTEGER type;
@Schema(description = "布局")
private String layout;
@Schema(description = "排序")
private Integer orderNum;
private INTEGER orderNum;
@Schema(description = "描述")
private String description;

View File

@@ -47,6 +47,6 @@ public class BaseVO implements Serializable {
private Date deleteTime;
@Schema(description = "是否已删除", defaultValue = "false")
private Boolean deleted = false;
private BOOLEAN deleted = false;
}

View File

@@ -79,11 +79,11 @@ public class RedisService {
/**
* @description 判断key是否存在
* @param key String 键
* @return boolean 是否存在
* @return BOOLEAN 是否存在
* @author yslg
* @since 2025-11-02
*/
public boolean hasKey(String key) {
public BOOLEAN hasKey(String key) {
return redisTemplate.hasKey(key);
}

View File

@@ -25,7 +25,7 @@ public class NonUtils {
* @param obj 待判断的对象
* @return true-对象为nullfalse-对象不为null
*/
public static boolean isNull(Object obj) {
public static BOOLEAN isNull(Object obj) {
return obj == null;
}
@@ -35,7 +35,7 @@ public class NonUtils {
* @param obj 待判断的对象
* @return true-对象不为nullfalse-对象为null
*/
public static boolean isNotNull(Object obj) {
public static BOOLEAN isNotNull(Object obj) {
return obj != null;
}
@@ -45,7 +45,7 @@ public class NonUtils {
* @param objects 待判断的对象数组
* @return true-所有对象都为nullfalse-至少有一个对象不为null
*/
public static boolean isAllNull(Object... objects) {
public static BOOLEAN isAllNull(Object... objects) {
if (objects == null || objects.length == 0) {
return true;
}
@@ -63,7 +63,7 @@ public class NonUtils {
* @param objects 待判断的对象数组
* @return true-所有对象都不为nullfalse-至少有一个对象为null
*/
public static boolean isAllNotNull(Object... objects) {
public static BOOLEAN isAllNotNull(Object... objects) {
if (objects == null || objects.length == 0) {
return false;
}
@@ -81,7 +81,7 @@ public class NonUtils {
* @param objects 待判断的对象数组
* @return true-存在null对象false-不存在null对象
*/
public static boolean hasNull(Object... objects) {
public static BOOLEAN hasNull(Object... objects) {
if (objects == null || objects.length == 0) {
return true;
}
@@ -106,7 +106,7 @@ public class NonUtils {
* @param obj 待判断的对象
* @return true-对象为空false-对象不为空
*/
public static boolean isEmpty(Object obj) {
public static BOOLEAN isEmpty(Object obj) {
if (isNull(obj)) {
return true;
}
@@ -145,7 +145,7 @@ public class NonUtils {
* @param obj 待判断的对象
* @return true-对象不为空false-对象为空
*/
public static boolean isNotEmpty(Object obj) {
public static BOOLEAN isNotEmpty(Object obj) {
return !isEmpty(obj);
}
@@ -155,7 +155,7 @@ public class NonUtils {
* @param objects 待判断的对象数组
* @return true-所有对象都为空false-至少有一个对象不为空
*/
public static boolean isAllEmpty(Object... objects) {
public static BOOLEAN isAllEmpty(Object... objects) {
if (objects == null || objects.length == 0) {
return true;
}
@@ -173,7 +173,7 @@ public class NonUtils {
* @param objects 待判断的对象数组
* @return true-所有对象都不为空false-至少有一个对象为空
*/
public static boolean isAllNotEmpty(Object... objects) {
public static BOOLEAN isAllNotEmpty(Object... objects) {
if (objects == null || objects.length == 0) {
return false;
}
@@ -191,7 +191,7 @@ public class NonUtils {
* @param objects 待判断的对象数组
* @return true-存在空值false-不存在空值
*/
public static boolean hasEmpty(Object... objects) {
public static BOOLEAN hasEmpty(Object... objects) {
if (objects == null || objects.length == 0) {
return true;
}
@@ -212,7 +212,7 @@ public class NonUtils {
* @param obj 待判断的对象
* @return true-对象为空包括递归检查false-对象不为空
*/
public static boolean isDeepEmpty(Object obj) {
public static BOOLEAN isDeepEmpty(Object obj) {
return isDeepEmpty(obj, new HashSet<>());
}
@@ -223,7 +223,7 @@ public class NonUtils {
* @param visited 已访问对象集合,用于防止循环引用
* @return true-对象为空包括递归检查false-对象不为空
*/
private static boolean isDeepEmpty(Object obj, Set<Object> visited) {
private static BOOLEAN isDeepEmpty(Object obj, Set<Object> visited) {
if (isEmpty(obj)) {
return true;
}
@@ -288,7 +288,7 @@ public class NonUtils {
* @param obj 待判断的对象
* @return true-对象不为空包括递归检查false-对象为空
*/
public static boolean isDeepNotEmpty(Object obj) {
public static BOOLEAN isDeepNotEmpty(Object obj) {
return !isDeepEmpty(obj);
}
@@ -300,7 +300,7 @@ public class NonUtils {
* @param collection 待判断的集合
* @return true-集合为null或空false-集合不为空
*/
public static boolean isEmptyCollection(Collection<?> collection) {
public static BOOLEAN isEmptyCollection(Collection<?> collection) {
return collection == null || collection.isEmpty();
}
@@ -310,7 +310,7 @@ public class NonUtils {
* @param collection 待判断的集合
* @return true-集合不为null且不为空false-集合为null或空
*/
public static boolean isNotEmptyCollection(Collection<?> collection) {
public static BOOLEAN isNotEmptyCollection(Collection<?> collection) {
return collection != null && !collection.isEmpty();
}
@@ -320,7 +320,7 @@ public class NonUtils {
* @param collection 待判断的集合
* @return true-集合包含有效元素false-集合为空或只包含null/空元素
*/
public static boolean hasValidElements(Collection<?> collection) {
public static BOOLEAN hasValidElements(Collection<?> collection) {
if (isEmptyCollection(collection)) {
return false;
}
@@ -338,7 +338,7 @@ public class NonUtils {
* @param collection 待判断的集合
* @return true-集合所有元素都有效false-集合为空或包含null/空元素
*/
public static boolean allValidElements(Collection<?> collection) {
public static BOOLEAN allValidElements(Collection<?> collection) {
if (isEmptyCollection(collection)) {
return false;
}
@@ -378,7 +378,7 @@ public class NonUtils {
* @param map 待判断的Map
* @return true-Map为null或空false-Map不为空
*/
public static boolean isEmptyMap(Map<?, ?> map) {
public static BOOLEAN isEmptyMap(Map<?, ?> map) {
return map == null || map.isEmpty();
}
@@ -388,7 +388,7 @@ public class NonUtils {
* @param map 待判断的Map
* @return true-Map不为null且不为空false-Map为null或空
*/
public static boolean isNotEmptyMap(Map<?, ?> map) {
public static BOOLEAN isNotEmptyMap(Map<?, ?> map) {
return map != null && !map.isEmpty();
}
@@ -400,7 +400,7 @@ public class NonUtils {
* @param array 待判断的数组
* @return true-数组为null或空false-数组不为空
*/
public static boolean isEmptyArray(Object array) {
public static BOOLEAN isEmptyArray(Object array) {
return array == null || !array.getClass().isArray() || Array.getLength(array) == 0;
}
@@ -410,7 +410,7 @@ public class NonUtils {
* @param array 待判断的数组
* @return true-数组不为null且不为空false-数组为null或空
*/
public static boolean isNotEmptyArray(Object array) {
public static BOOLEAN isNotEmptyArray(Object array) {
return array != null && array.getClass().isArray() && Array.getLength(array) > 0;
}
@@ -422,7 +422,7 @@ public class NonUtils {
* @param str 待判断的字符串
* @return true-字符串为null、空或只包含空白字符false-字符串有有效内容
*/
public static boolean isEmptyString(String str) {
public static BOOLEAN isEmptyString(String str) {
return str == null || str.trim().isEmpty();
}
@@ -432,7 +432,7 @@ public class NonUtils {
* @param str 待判断的字符串
* @return true-字符串不为null且有有效内容false-字符串为null、空或只包含空白字符
*/
public static boolean isNotEmptyString(String str) {
public static BOOLEAN isNotEmptyString(String str) {
return str != null && !str.trim().isEmpty();
}
@@ -581,7 +581,7 @@ public class NonUtils {
* @param <T> 目标类型
* @return true-对象不为null且为指定类型false-否则
*/
public static <T> boolean isInstanceAndNotNull(Object obj, Class<T> clazz) {
public static <T> BOOLEAN isInstanceAndNotNull(Object obj, Class<T> clazz) {
return isNotNull(obj) && clazz.isInstance(obj);
}

View File

@@ -88,7 +88,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isAjaxRequest(HttpServletRequest request) {
public static BOOLEAN isAjaxRequest(HttpServletRequest request) {
String header = request.getHeader("X-Requested-With");
return "XMLHttpRequest".equalsIgnoreCase(header);
}
@@ -153,7 +153,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isGet(HttpServletRequest request) {
public static BOOLEAN isGet(HttpServletRequest request) {
return "GET".equalsIgnoreCase(request.getMethod());
}
@@ -164,7 +164,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isPost(HttpServletRequest request) {
public static BOOLEAN isPost(HttpServletRequest request) {
return "POST".equalsIgnoreCase(request.getMethod());
}
@@ -175,7 +175,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isPut(HttpServletRequest request) {
public static BOOLEAN isPut(HttpServletRequest request) {
return "PUT".equalsIgnoreCase(request.getMethod());
}
@@ -186,7 +186,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isDelete(HttpServletRequest request) {
public static BOOLEAN isDelete(HttpServletRequest request) {
return "DELETE".equalsIgnoreCase(request.getMethod());
}
@@ -286,7 +286,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isHttps(HttpServletRequest request) {
public static BOOLEAN isHttps(HttpServletRequest request) {
return "https".equals(request.getScheme()) || request.isSecure() ||
"443".equals(request.getHeader("X-Forwarded-Port")) ||
"https".equals(request.getHeader("X-Forwarded-Proto"));
@@ -311,7 +311,7 @@ public class ServletUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean hasParameter(HttpServletRequest request, String paramName) {
public static BOOLEAN hasParameter(HttpServletRequest request, String paramName) {
return request.getParameter(paramName) != null;
}

View File

@@ -15,7 +15,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isEmpty(String str) {
public static BOOLEAN isEmpty(String str) {
return str == null || str.isEmpty();
}
@@ -26,7 +26,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isNotEmpty(String str) {
public static BOOLEAN isNotEmpty(String str) {
return !isEmpty(str);
}
@@ -54,7 +54,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean equals(String a, String b) {
public static BOOLEAN equals(String a, String b) {
return a == null ? b == null : a.equals(b);
}
@@ -66,7 +66,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean contains(String str, String sub) {
public static BOOLEAN contains(String str, String sub) {
return str != null && sub != null && str.contains(sub);
}
@@ -116,7 +116,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean startsWith(String str, String prefix) {
public static BOOLEAN startsWith(String str, String prefix) {
return str != null && prefix != null && str.startsWith(prefix);
}
@@ -128,7 +128,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean endsWith(String str, String suffix) {
public static BOOLEAN endsWith(String str, String suffix) {
return str != null && suffix != null && str.endsWith(suffix);
}
@@ -203,7 +203,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isNumeric(String str) {
public static BOOLEAN isNumeric(String str) {
if (isEmpty(str)) return false;
for (int i = 0; i < str.length(); i++) {
if (!Character.isDigit(str.charAt(i))) return false;
@@ -218,7 +218,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isBlank(String str) {
public static BOOLEAN isBlank(String str) {
return str == null || str.isBlank();
}
/**
@@ -228,7 +228,7 @@ public class StringUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isNotBlank(String str) {
public static BOOLEAN isNotBlank(String str) {
return !isBlank(str);
}

View File

@@ -265,7 +265,7 @@ public class TimeUtils {
* @author yslg
* @since 2025-11-02
*/
public static boolean isNowBetween(String startTime, String endTime) {
public static BOOLEAN isNowBetween(String startTime, String endTime) {
LocalTime now = LocalTime.now();
LocalTime start = LocalTime.parse(startTime, DateTimeFormatter.ofPattern("HH:mm:ss"));
LocalTime end = LocalTime.parse(endTime, DateTimeFormatter.ofPattern("HH:mm:ss"));

View File

@@ -22,7 +22,7 @@ public class ExcelColumnMapping {
/**
* @description Excel列索引从0开始优先级高于列名
*/
private Integer columnIndex;
private INTEGER columnIndex;
/**
* @description 对象字段名
@@ -37,7 +37,7 @@ public class ExcelColumnMapping {
/**
* @description 是否必填
*/
private boolean required = false;
private BOOLEAN required = false;
/**
* @description 默认值
@@ -62,7 +62,7 @@ public class ExcelColumnMapping {
return columnName;
}
public Integer getColumnIndex() {
public INTEGER getColumnIndex() {
return columnIndex;
}
@@ -74,7 +74,7 @@ public class ExcelColumnMapping {
return fieldType;
}
public boolean isRequired() {
public BOOLEAN isRequired() {
return required;
}
@@ -131,7 +131,7 @@ public class ExcelColumnMapping {
/**
* 设置是否必填
*/
public Builder required(boolean required) {
public Builder required(BOOLEAN required) {
mapping.required = required;
return this;
}

View File

@@ -17,7 +17,7 @@ public class ExcelReadResult<T> {
/**
* @description 是否成功
*/
private boolean success;
private BOOLEAN success;
/**
* @description 成功读取的数据列表
@@ -27,7 +27,7 @@ public class ExcelReadResult<T> {
/**
* @description 失败的行数据(行号 -> 错误信息)
*/
private Map<Integer, String> errorRowsMap;
private Map<INTEGER, String> errorRowsMap;
/**
* @description 总行数(不包括表头)
@@ -58,11 +58,11 @@ public class ExcelReadResult<T> {
this.errorRowsCount = 0;
}
public boolean isSuccess() {
public BOOLEAN isSuccess() {
return success;
}
public void setSuccess(boolean success) {
public void setSuccess(BOOLEAN success) {
this.success = success;
}
@@ -74,11 +74,11 @@ public class ExcelReadResult<T> {
this.dataList = dataList;
}
public Map<Integer, String> getErrorRows() {
public Map<INTEGER, String> getErrorRows() {
return errorRowsMap;
}
public void setErrorRows(Map<Integer, String> errorRowsMap) {
public void setErrorRows(Map<INTEGER, String> errorRowsMap) {
this.errorRowsMap = errorRowsMap;
}
@@ -124,7 +124,7 @@ public class ExcelReadResult<T> {
this.errorRowsCount++;
}
public boolean hasErrors() {
public BOOLEAN hasErrors() {
return this.errorRowsCount > 0;
}

View File

@@ -97,9 +97,9 @@ public class ExcelReaderUtils {
int dataStartRowIndex = (int) options.getOrDefault("dataStartRowIndex", 1);
int sheetIndex = (int) options.getOrDefault("sheetIndex", 0);
String sheetName = (String) options.get("sheetName");
boolean skipEmptyRow = (boolean) options.getOrDefault("skipEmptyRow", true);
BOOLEAN skipEmptyRow = (BOOLEAN) options.getOrDefault("skipEmptyRow", true);
int maxRows = (int) options.getOrDefault("maxRows", 0);
boolean continueOnError = (boolean) options.getOrDefault("continueOnError", true);
BOOLEAN continueOnError = (BOOLEAN) options.getOrDefault("continueOnError", true);
// 创建Workbook
Workbook workbook = createWorkbook(inputStream, fileName);
@@ -113,7 +113,7 @@ public class ExcelReaderUtils {
}
// 解析表头
Map<String, Integer> headerMap = parseHeader(sheet, headerRowIndex);
Map<String, INTEGER> headerMap = parseHeader(sheet, headerRowIndex);
// 读取数据
readData(sheet, headerMap, targetClass, columnMappings, dataStartRowIndex,
@@ -156,8 +156,8 @@ public class ExcelReaderUtils {
/**
* @description 解析表头
*/
private static Map<String, Integer> parseHeader(Sheet sheet, int headerRowIndex) {
Map<String, Integer> headerMap = new HashMap<>();
private static Map<String, INTEGER> parseHeader(Sheet sheet, int headerRowIndex) {
Map<String, INTEGER> headerMap = new HashMap<>();
Row headerRow = sheet.getRow(headerRowIndex);
if (headerRow != null) {
@@ -175,10 +175,10 @@ public class ExcelReaderUtils {
/**
* @description 读取数据
*/
private static void readData(Sheet sheet, Map<String, Integer> headerMap,
private static void readData(Sheet sheet, Map<String, INTEGER> headerMap,
Class<?> targetClass, List<ExcelColumnMapping> columnMappings,
int startRow, boolean skipEmptyRow, int maxRows,
boolean continueOnError, ExcelReadResult<Object> result) {
int startRow, BOOLEAN skipEmptyRow, int maxRows,
BOOLEAN continueOnError, ExcelReadResult<Object> result) {
int lastRowNum = sheet.getLastRowNum();
int endRow = maxRows > 0 ? Math.min(startRow + maxRows, lastRowNum + 1) : lastRowNum + 1;
@@ -229,7 +229,7 @@ public class ExcelReaderUtils {
/**
* @description 判断是否为空行
*/
private static boolean isEmptyRow(Row row) {
private static BOOLEAN isEmptyRow(Row row) {
if (row == null) {
return true;
}
@@ -249,7 +249,7 @@ public class ExcelReaderUtils {
/**
* @description 将行数据转换为对象
*/
private static Object convertRowToObject(Row row, Map<String, Integer> headerMap,
private static Object convertRowToObject(Row row, Map<String, INTEGER> headerMap,
Class<?> targetClass, List<ExcelColumnMapping> columnMappings,
int rowNum) throws Exception {
Object obj = targetClass.getDeclaredConstructor().newInstance();
@@ -307,7 +307,7 @@ public class ExcelReaderUtils {
/**
* @description 获取单元格
*/
private static Cell getCell(Row row, ExcelColumnMapping mapping, Map<String, Integer> headerMap) {
private static Cell getCell(Row row, ExcelColumnMapping mapping, Map<String, INTEGER> headerMap) {
if (row == null) {
return null;
}
@@ -318,7 +318,7 @@ public class ExcelReaderUtils {
}
// 使用列名
Integer columnIndex = headerMap.get(mapping.getColumnName());
INTEGER columnIndex = headerMap.get(mapping.getColumnName());
if (columnIndex != null) {
return row.getCell(columnIndex);
}
@@ -344,7 +344,7 @@ public class ExcelReaderUtils {
return cell.getNumericCellValue();
}
case BOOLEAN:
return cell.getBooleanCellValue();
return cell.getBOOLEANCellValue();
case FORMULA:
return cell.getCellFormula();
case BLANK:
@@ -369,12 +369,12 @@ public class ExcelReaderUtils {
return strValue;
}
// Integer类型
if (targetType == Integer.class || targetType == int.class) {
// INTEGER类型
if (targetType == INTEGER.class || targetType == int.class) {
if (value instanceof Number) {
return ((Number) value).intValue();
}
return Integer.parseInt(strValue);
return INTEGER.parseInt(strValue);
}
// Long类型
@@ -401,12 +401,12 @@ public class ExcelReaderUtils {
return Float.parseFloat(strValue);
}
// Boolean类型
if (targetType == Boolean.class || targetType == boolean.class) {
if (value instanceof Boolean) {
// BOOLEAN类型
if (targetType == BOOLEAN.class || targetType == BOOLEAN.class) {
if (value instanceof BOOLEAN) {
return value;
}
return Boolean.parseBoolean(strValue) || "1".equals(strValue) ||
return BOOLEAN.parseBOOLEAN(strValue) || "1".equals(strValue) ||
"".equals(strValue) || "true".equalsIgnoreCase(strValue);
}

View File

@@ -20,19 +20,19 @@ public class ExcelUtilsExample {
*/
public static class UserInfo {
private String name;
private Integer age;
private INTEGER age;
private String phone;
private String email;
private String idCard;
private Date joinDate;
private Boolean active;
private BOOLEAN active;
// Getters and Setters
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public Integer getAge() { return age; }
public void setAge(Integer age) { this.age = age; }
public INTEGER getAge() { return age; }
public void setAge(INTEGER age) { this.age = age; }
public String getPhone() { return phone; }
public void setPhone(String phone) { this.phone = phone; }
@@ -46,8 +46,8 @@ public class ExcelUtilsExample {
public Date getJoinDate() { return joinDate; }
public void setJoinDate(Date joinDate) { this.joinDate = joinDate; }
public Boolean getActive() { return active; }
public void setActive(Boolean active) { this.active = active; }
public BOOLEAN getActive() { return active; }
public void setActive(BOOLEAN active) { this.active = active; }
@Override
public String toString() {
@@ -81,7 +81,7 @@ public class ExcelUtilsExample {
ExcelColumnMapping.builder()
.columnName("年龄")
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.build(),
@@ -116,7 +116,7 @@ public class ExcelUtilsExample {
ExcelColumnMapping.builder()
.columnName("是否在职")
.fieldName("active")
.fieldType(Boolean.class)
.fieldType(BOOLEAN.class)
.defaultValue("true")
.build()
);
@@ -172,7 +172,7 @@ public class ExcelUtilsExample {
ExcelColumnMapping.builder()
.columnName("年龄")
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.addValidation(
ValidationParam.builder()
@@ -180,7 +180,7 @@ public class ExcelUtilsExample {
.fieldLabel("年龄")
.required()
.customValidator(value -> {
Integer age = (Integer) value;
INTEGER age = (INTEGER) value;
return age >= 18 && age <= 65;
})
.customErrorMessage("年龄必须在18-65岁之间")
@@ -277,7 +277,7 @@ public class ExcelUtilsExample {
ExcelColumnMapping.builder()
.columnIndex(1) // 第2列
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.build(),
@@ -316,7 +316,7 @@ public class ExcelUtilsExample {
ExcelColumnMapping.builder()
.columnName("年龄")
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.build()
);

View File

@@ -37,11 +37,11 @@
```java
public class UserInfo {
private String name;
private Integer age;
private INTEGER age;
private String phone;
private String email;
private Date joinDate;
private Boolean active;
private BOOLEAN active;
// Getters and Setters...
}
@@ -61,7 +61,7 @@ List<ExcelColumnMapping> columnMappings = Arrays.asList(
ExcelColumnMapping.builder()
.columnName("年龄")
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.build(),
@@ -88,7 +88,7 @@ List<ExcelColumnMapping> columnMappings = Arrays.asList(
ExcelColumnMapping.builder()
.columnName("是否在职")
.fieldName("active")
.fieldType(Boolean.class)
.fieldType(BOOLEAN.class)
.defaultValue("true")
.build()
);
@@ -140,7 +140,7 @@ List<ExcelColumnMapping> columnMappings = Arrays.asList(
ExcelColumnMapping.builder()
.columnName("年龄")
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.addValidation(
ValidationParam.builder()
@@ -148,7 +148,7 @@ List<ExcelColumnMapping> columnMappings = Arrays.asList(
.fieldLabel("年龄")
.required()
.customValidator(value -> {
Integer age = (Integer) value;
INTEGER age = (INTEGER) value;
return age >= 18 && age <= 65;
})
.customErrorMessage("年龄必须在18-65岁之间")
@@ -227,7 +227,7 @@ List<ExcelColumnMapping> columnMappings = Arrays.asList(
ExcelColumnMapping.builder()
.columnIndex(1) // 第2列
.fieldName("age")
.fieldType(Integer.class)
.fieldType(INTEGER.class)
.required()
.build(),
@@ -282,7 +282,7 @@ List<ValidationParam> validationParams = Arrays.asList(
.fieldLabel("年龄")
.required()
.customValidator(value -> {
Integer age = (Integer) value;
INTEGER age = (INTEGER) value;
return age >= 18 && age <= 65;
})
.customErrorMessage("年龄必须在18-65岁之间")
@@ -422,11 +422,11 @@ public ResultDomain<String> importUsers(@RequestParam("file") MultipartFile file
## 支持的数据类型
- **String** - 字符串
- **Integer/int** - 整数
- **INTEGER/int** - 整数
- **Long/long** - 长整数
- **Double/double** - 双精度浮点数
- **Float/float** - 单精度浮点数
- **Boolean/boolean** - 布尔值支持true/false、1/0、是/否)
- **BOOLEAN/BOOLEAN** - 布尔值支持true/false、1/0、是/否)
- **Date** - 日期需指定dateFormat
## 配置选项
@@ -439,7 +439,7 @@ public ResultDomain<String> importUsers(@RequestParam("file") MultipartFile file
| columnIndex(int) | 设置Excel列索引从0开始优先级高于columnName | columnName和columnIndex至少一个 |
| fieldName(String) | 设置对象字段名 | 是 |
| fieldType(Class<?>) | 设置字段类型 | 否默认String.class |
| required() / required(boolean) | 设置是否必填 | 否默认false |
| required() / required(BOOLEAN) | 设置是否必填 | 否默认false |
| defaultValue(String) | 设置默认值 | 否 |
| dateFormat(String) | 设置日期格式 | 否(默认"yyyy-MM-dd" |
| addValidation(ValidationParam) | 添加校验参数 | 否 |
@@ -455,9 +455,9 @@ public ResultDomain<String> importUsers(@RequestParam("file") MultipartFile file
| dataStartRowIndex | int | 数据起始行从0开始 | 1 |
| sheetIndex | int | Sheet索引从0开始 | 0 |
| sheetName | String | Sheet名称优先级高于sheetIndex | null |
| skipEmptyRow | boolean | 跳过空行 | true |
| skipEmptyRow | BOOLEAN | 跳过空行 | true |
| maxRows | int | 最大读取行数0=不限制) | 0 |
| continueOnError | boolean | 遇到错误继续读取 | true |
| continueOnError | BOOLEAN | 遇到错误继续读取 | true |
## 核心特性
@@ -480,7 +480,7 @@ public ResultDomain<String> importUsers(@RequestParam("file") MultipartFile file
5. **布尔类型**支持多种格式true/false、1/0、是/否)
6. **错误处理**根据continueOnError选项决定遇到错误时是否继续
7. **文件格式**:支持.xls和.xlsx两种格式
8. **类型转换**自动转换支持String、Integer、Long、Double、Float、Boolean、Date
8. **类型转换**自动转换支持String、INTEGER、Long、Double、Float、BOOLEAN、Date
## 依赖

View File

@@ -177,7 +177,7 @@ ValidationParam param = ValidationParam.builder()
.fieldLabel("年龄")
.required()
.customValidator(value -> {
Integer age = (Integer) value;
INTEGER age = (INTEGER) value;
return age >= 18 && age <= 60;
})
.customErrorMessage("年龄必须在18-60岁之间")
@@ -342,7 +342,7 @@ public ResultDomain<User> register(@RequestBody Map<String, Object> params) {
public class CustomValidateMethod implements ValidateMethod {
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
// 实现校验逻辑
return true;
}

View File

@@ -27,7 +27,7 @@ public class ValidationParam {
/**
* @description 是否必传
*/
private boolean required;
private BOOLEAN required;
/**
* @description 字段类型
@@ -37,12 +37,12 @@ public class ValidationParam {
/**
* @description 最小长度(字符串)
*/
private Integer minLength;
private INTEGER minLength;
/**
* @description 最大长度(字符串)
*/
private Integer maxLength;
private INTEGER maxLength;
/**
* @description 最小值(数字)
@@ -77,7 +77,7 @@ public class ValidationParam {
/**
* @description 是否允许为空字符串(默认不允许)
*/
private boolean allowEmpty = false;
private BOOLEAN allowEmpty = false;
/**
* @description 校验方法(使用预定义的校验方法)
@@ -106,7 +106,7 @@ public class ValidationParam {
return fieldLabel;
}
public boolean isRequired() {
public BOOLEAN isRequired() {
return required;
}
@@ -114,11 +114,11 @@ public class ValidationParam {
return fieldType;
}
public Integer getMinLength() {
public INTEGER getMinLength() {
return minLength;
}
public Integer getMaxLength() {
public INTEGER getMaxLength() {
return maxLength;
}
@@ -146,7 +146,7 @@ public class ValidationParam {
return customErrorMessage;
}
public boolean isAllowEmpty() {
public BOOLEAN isAllowEmpty() {
return allowEmpty;
}
@@ -178,7 +178,7 @@ public class ValidationParam {
return this;
}
public Builder required(boolean required) {
public Builder required(BOOLEAN required) {
param.required = required;
return this;
}
@@ -193,12 +193,12 @@ public class ValidationParam {
return this;
}
public Builder minLength(Integer minLength) {
public Builder minLength(INTEGER minLength) {
param.minLength = minLength;
return this;
}
public Builder maxLength(Integer maxLength) {
public Builder maxLength(INTEGER maxLength) {
param.maxLength = maxLength;
return this;
}
@@ -233,7 +233,7 @@ public class ValidationParam {
return this;
}
public Builder allowEmpty(boolean allowEmpty) {
public Builder allowEmpty(BOOLEAN allowEmpty) {
param.allowEmpty = allowEmpty;
return this;
}

View File

@@ -15,7 +15,7 @@ public class ValidationResult {
/**
* @description 是否校验通过
*/
private boolean valid;
private BOOLEAN valid;
/**
* @description 错误信息列表
@@ -32,11 +32,11 @@ public class ValidationResult {
this.errors = new ArrayList<>();
}
public boolean isValid() {
public BOOLEAN isValid() {
return valid;
}
public void setValid(boolean valid) {
public void setValid(BOOLEAN valid) {
this.valid = valid;
}
@@ -70,9 +70,9 @@ public class ValidationResult {
/**
* @description 是否有错误
* @return boolean
* @return BOOLEAN
*/
public boolean hasErrors() {
public BOOLEAN hasErrors() {
return !valid;
}

View File

@@ -289,7 +289,7 @@ public class ValidationUtils {
* @param required 是否必填
* @return ValidationParam
*/
public static ValidationParam email(String fieldName, String fieldLabel, boolean required) {
public static ValidationParam email(String fieldName, String fieldLabel, BOOLEAN required) {
return ValidationParam.builder()
.fieldName(fieldName)
.fieldLabel(fieldLabel)
@@ -307,7 +307,7 @@ public class ValidationUtils {
* @param required 是否必填
* @return ValidationParam
*/
public static ValidationParam phone(String fieldName, String fieldLabel, boolean required) {
public static ValidationParam phone(String fieldName, String fieldLabel, BOOLEAN required) {
return ValidationParam.builder()
.fieldName(fieldName)
.fieldLabel(fieldLabel)

View File

@@ -10,7 +10,7 @@ package org.xyzh.common.utils.validation.method;
public class BankCardValidateMethod implements ValidateMethod {
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}
@@ -34,11 +34,11 @@ public class BankCardValidateMethod implements ValidateMethod {
/**
* @description Luhn算法校验银行卡校验算法
* @param cardNumber 银行卡号
* @return boolean 是否通过校验
* @return BOOLEAN 是否通过校验
*/
private boolean luhnCheck(String cardNumber) {
private BOOLEAN luhnCheck(String cardNumber) {
int sum = 0;
boolean alternate = false;
BOOLEAN alternate = false;
// 从右向左遍历
for (int i = cardNumber.length() - 1; i >= 0; i--) {

View File

@@ -14,18 +14,18 @@ public class ChineseValidateMethod implements ValidateMethod {
// 中文字符正则(包括中文标点符号)
private static final Pattern CHINESE_PATTERN = Pattern.compile("^[\u4e00-\u9fa5]+$");
private final boolean allowPunctuation; // 是否允许中文标点符号
private final BOOLEAN allowPunctuation; // 是否允许中文标点符号
public ChineseValidateMethod() {
this.allowPunctuation = false;
}
public ChineseValidateMethod(boolean allowPunctuation) {
public ChineseValidateMethod(BOOLEAN allowPunctuation) {
this.allowPunctuation = allowPunctuation;
}
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}

View File

@@ -34,7 +34,7 @@ public class EmailValidateMethod implements ValidateMethod {
}
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}
@@ -48,7 +48,7 @@ public class EmailValidateMethod implements ValidateMethod {
// 域名限制校验
if (allowedDomains != null && allowedDomains.length > 0) {
boolean domainMatched = false;
BOOLEAN domainMatched = false;
for (String domain : allowedDomains) {
if (email.endsWith("@" + domain.toLowerCase())) {
domainMatched = true;

View File

@@ -60,7 +60,7 @@ public class IdCardValidateMethod implements ValidateMethod {
}
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}
@@ -83,7 +83,7 @@ public class IdCardValidateMethod implements ValidateMethod {
/**
* @description 校验15位身份证
*/
private boolean validate15IdCard(String idCard) {
private BOOLEAN validate15IdCard(String idCard) {
// 15位身份证格式省(2位)市(2位)县(2位)年(2位)月(2位)日(2位)顺序号(3位)
if (!Pattern.matches("^\\d{15}$", idCard)) {
return false;
@@ -106,7 +106,7 @@ public class IdCardValidateMethod implements ValidateMethod {
/**
* @description 校验18位身份证
*/
private boolean validate18IdCard(String idCard) {
private BOOLEAN validate18IdCard(String idCard) {
// 18位身份证格式省(2位)市(2位)县(2位)年(4位)月(2位)日(2位)顺序号(3位)校验码(1位)
if (!Pattern.matches("^\\d{17}[0-9Xx]$", idCard)) {
return false;
@@ -134,11 +134,11 @@ public class IdCardValidateMethod implements ValidateMethod {
/**
* @description 校验日期是否合法
*/
private boolean validateDate(String year, String month, String day) {
private BOOLEAN validateDate(String year, String month, String day) {
try {
int y = Integer.parseInt(year);
int m = Integer.parseInt(month);
int d = Integer.parseInt(day);
int y = INTEGER.parseInt(year);
int m = INTEGER.parseInt(month);
int d = INTEGER.parseInt(day);
// 年份范围1900-当前年份
int currentYear = java.time.Year.now().getValue();
@@ -168,14 +168,14 @@ public class IdCardValidateMethod implements ValidateMethod {
/**
* @description 判断是否为闰年
*/
private boolean isLeapYear(int year) {
private BOOLEAN isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
/**
* @description 校验18位身份证的校验码
*/
private boolean validateCheckCode(String idCard) {
private BOOLEAN validateCheckCode(String idCard) {
int sum = 0;
for (int i = 0; i < 17; i++) {
sum += (idCard.charAt(i) - '0') * WEIGHT[i];

View File

@@ -13,10 +13,10 @@ public class PasswordValidateMethod implements ValidateMethod {
private final int minLength;
private final int maxLength;
private final boolean requireUpperCase;
private final boolean requireLowerCase;
private final boolean requireDigit;
private final boolean requireSpecialChar;
private final BOOLEAN requireUpperCase;
private final BOOLEAN requireLowerCase;
private final BOOLEAN requireDigit;
private final BOOLEAN requireSpecialChar;
/**
* @description 默认密码规则6-20位必须包含字母和数字
@@ -35,8 +35,8 @@ public class PasswordValidateMethod implements ValidateMethod {
* @param requireSpecialChar 是否需要特殊字符
*/
public PasswordValidateMethod(int minLength, int maxLength,
boolean requireUpperCase, boolean requireLowerCase,
boolean requireDigit, boolean requireSpecialChar) {
BOOLEAN requireUpperCase, BOOLEAN requireLowerCase,
BOOLEAN requireDigit, BOOLEAN requireSpecialChar) {
this.minLength = minLength;
this.maxLength = maxLength;
this.requireUpperCase = requireUpperCase;
@@ -46,7 +46,7 @@ public class PasswordValidateMethod implements ValidateMethod {
}
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}
@@ -88,7 +88,7 @@ public class PasswordValidateMethod implements ValidateMethod {
if (requireUpperCase || requireLowerCase || requireDigit || requireSpecialChar) {
msg.append(",且包含");
boolean first = true;
BOOLEAN first = true;
if (requireUpperCase) {
msg.append("大写字母");

View File

@@ -20,18 +20,18 @@ public class PhoneValidateMethod implements ValidateMethod {
// 台湾手机号正则
private static final Pattern TW_PHONE_PATTERN = Pattern.compile("^09\\d{8}$");
private final boolean strictMode; // 严格模式,只验证中国大陆手机号
private final BOOLEAN strictMode; // 严格模式,只验证中国大陆手机号
public PhoneValidateMethod() {
this.strictMode = true;
}
public PhoneValidateMethod(boolean strictMode) {
public PhoneValidateMethod(BOOLEAN strictMode) {
this.strictMode = strictMode;
}
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}

View File

@@ -16,18 +16,18 @@ public class UrlValidateMethod implements ValidateMethod {
"^(https?|ftp)://[a-zA-Z0-9+&@#/%?=~_|!:,.;-]*[a-zA-Z0-9+&@#/%=~_|-]$"
);
private final boolean requireHttps; // 是否要求HTTPS
private final BOOLEAN requireHttps; // 是否要求HTTPS
public UrlValidateMethod() {
this.requireHttps = false;
}
public UrlValidateMethod(boolean requireHttps) {
public UrlValidateMethod(BOOLEAN requireHttps) {
this.requireHttps = requireHttps;
}
@Override
public boolean validate(Object value) {
public BOOLEAN validate(Object value) {
if (value == null || !(value instanceof String)) {
return false;
}

View File

@@ -12,9 +12,9 @@ public interface ValidateMethod {
/**
* @description 校验方法
* @param value 待校验的值
* @return boolean 是否校验通过
* @return BOOLEAN 是否校验通过
*/
boolean validate(Object value);
BOOLEAN validate(Object value);
/**
* @description 获取校验失败的错误提示信息

View File

@@ -56,12 +56,12 @@ public class DeptRoleController {
/**
* @description 删除部门
* @param deptDTO 部门DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-10
*/
@DeleteMapping("/dept")
public ResultDomain<Boolean> deleteDept(@RequestBody TbSysDeptDTO deptDTO) {
public ResultDomain<BOOLEAN> deleteDept(@RequestBody TbSysDeptDTO deptDTO) {
return deptRoleService.deleteDept(deptDTO);
}
@@ -117,12 +117,12 @@ public class DeptRoleController {
/**
* @description 删除角色
* @param roleDTO 角色DTO
* @return ResultDomain<Boolean> 删除结果
* @return ResultDomain<BOOLEAN> 删除结果
* @author yslg
* @since 2025-11-10
*/
@DeleteMapping("/role")
public ResultDomain<Boolean> deleteRole(@RequestBody TbSysRoleDTO roleDTO) {
public ResultDomain<BOOLEAN> deleteRole(@RequestBody TbSysRoleDTO roleDTO) {
return deptRoleService.deleteRole(roleDTO);
}

View File

@@ -59,7 +59,7 @@ public class PermissionController {
* @since 2025-11-10
*/
@DeleteMapping("/module")
public ResultDomain<Boolean> deleteModule(@RequestBody TbSysModuleDTO moduleDTO) {
public ResultDomain<BOOLEAN> deleteModule(@RequestBody TbSysModuleDTO moduleDTO) {
return modulePermissionService.deleteModule(moduleDTO);
}
@@ -120,7 +120,7 @@ public class PermissionController {
* @since 2025-11-10
*/
@DeleteMapping
public ResultDomain<Boolean> deletePermission(@RequestBody TbSysPermissionDTO permissionDTO) {
public ResultDomain<BOOLEAN> deletePermission(@RequestBody TbSysPermissionDTO permissionDTO) {
return modulePermissionService.deletePermission(permissionDTO);
}

View File

@@ -38,7 +38,7 @@ public class SysConfigController {
}
@DeleteMapping
public ResultDomain<Boolean> deleteConfig(@RequestBody TbSysConfigDTO configDTO) {
public ResultDomain<BOOLEAN> deleteConfig(@RequestBody TbSysConfigDTO configDTO) {
return sysConfigService.deleteConfig(configDTO);
}

View File

@@ -44,7 +44,7 @@ public class UserController {
@DeleteMapping
@PreAuthorize("hasAuthority('system:user:delete')")
public ResultDomain<Boolean> deleteUser(@RequestBody TbSysUserDTO userDTO) {
public ResultDomain<BOOLEAN> deleteUser(@RequestBody TbSysUserDTO userDTO) {
return sysUserService.deleteUser(userDTO);
}

View File

@@ -36,7 +36,7 @@ public class ViewController {
}
@DeleteMapping
public ResultDomain<Boolean> deleteView(@RequestBody TbSysViewDTO viewDTO) {
public ResultDomain<BOOLEAN> deleteView(@RequestBody TbSysViewDTO viewDTO) {
return viewService.deleteView(viewDTO);
}

View File

@@ -104,14 +104,14 @@ public class DeptRoleServiceImpl implements DeptRoleService {
}
@Override
public ResultDomain<Boolean> deleteDept(TbSysDeptDTO deptDTO) {
public ResultDomain<BOOLEAN> deleteDept(TbSysDeptDTO deptDTO) {
if (deptDTO == null || StringUtils.isBlank(deptDTO.getDeptId())) {
return ResultDomain.failure(MSG_DEPT_ID_REQUIRED);
}
int rows = deptMapper.deleteDept(deptDTO);
if (rows > 0) {
logger.info("删除部门成功, deptId={}", deptDTO.getDeptId());
return ResultDomain.success("删除部门成功", Boolean.TRUE);
return ResultDomain.success("删除部门成功", BOOLEAN.TRUE);
}
logger.warn("删除部门失败, deptId={}", deptDTO.getDeptId());
return ResultDomain.failure("删除部门失败");
@@ -203,14 +203,14 @@ public class DeptRoleServiceImpl implements DeptRoleService {
}
@Override
public ResultDomain<Boolean> deleteRole(TbSysRoleDTO roleDTO) {
public ResultDomain<BOOLEAN> deleteRole(TbSysRoleDTO roleDTO) {
if (roleDTO == null || StringUtils.isBlank(roleDTO.getRoleId())) {
return ResultDomain.failure(MSG_ROLE_ID_REQUIRED);
}
int rows = roleMapper.deleteRole(roleDTO);
if (rows > 0) {
logger.info("删除角色成功, roleId={}", roleDTO.getRoleId());
return ResultDomain.success("删除角色成功", Boolean.TRUE);
return ResultDomain.success("删除角色成功", BOOLEAN.TRUE);
}
logger.warn("删除角色失败, roleId={}", roleDTO.getRoleId());
return ResultDomain.failure("删除角色失败");
@@ -322,14 +322,14 @@ public class DeptRoleServiceImpl implements DeptRoleService {
}
@Override
public ResultDomain<Boolean> deleteDeptRole(TbSysDeptRoleDTO deptRoleDTO) {
public ResultDomain<BOOLEAN> deleteDeptRole(TbSysDeptRoleDTO deptRoleDTO) {
if (deptRoleDTO == null || StringUtils.isBlank(deptRoleDTO.getDeptId()) || StringUtils.isBlank(deptRoleDTO.getRoleId())) {
return ResultDomain.failure(MSG_DEPT_ROLE_ID_REQUIRED);
}
int rows = deptRoleMapper.deleteDeptRole(deptRoleDTO);
if (rows > 0) {
logger.info("删除部门角色关联成功, deptId={}, roleId={}", deptRoleDTO.getDeptId(), deptRoleDTO.getRoleId());
return ResultDomain.success("删除部门角色关联成功", Boolean.TRUE);
return ResultDomain.success("删除部门角色关联成功", BOOLEAN.TRUE);
}
logger.warn("删除部门角色关联失败, deptId={}, roleId={}", deptRoleDTO.getDeptId(), deptRoleDTO.getRoleId());
return ResultDomain.failure("删除部门角色关联失败");

View File

@@ -94,14 +94,14 @@ public class ModulePermissionServiceImpl implements ModulePermissionService {
}
@Override
public ResultDomain<Boolean> deleteModule(TbSysModuleDTO moduleDTO) {
public ResultDomain<BOOLEAN> deleteModule(TbSysModuleDTO moduleDTO) {
if (moduleDTO == null || StringUtils.isBlank(moduleDTO.getModuleId())) {
return ResultDomain.failure(MSG_MODULE_ID_REQUIRED);
}
int rows = moduleMapper.deleteModule(moduleDTO);
if (rows > 0) {
logger.info("删除模块成功, moduleId={}", moduleDTO.getModuleId());
return ResultDomain.success("删除模块成功", Boolean.TRUE);
return ResultDomain.success("删除模块成功", BOOLEAN.TRUE);
}
logger.warn("删除模块失败, moduleId={}", moduleDTO.getModuleId());
return ResultDomain.failure("删除模块失败");
@@ -171,14 +171,14 @@ public class ModulePermissionServiceImpl implements ModulePermissionService {
}
@Override
public ResultDomain<Boolean> deletePermission(TbSysPermissionDTO permissionDTO) {
public ResultDomain<BOOLEAN> deletePermission(TbSysPermissionDTO permissionDTO) {
if (permissionDTO == null || StringUtils.isBlank(permissionDTO.getPermissionId())) {
return ResultDomain.failure(MSG_PERMISSION_ID_REQUIRED);
}
int rows = permissionMapper.deletePermission(permissionDTO);
if (rows > 0) {
logger.info("删除权限成功, permissionId={}", permissionDTO.getPermissionId());
return ResultDomain.success("删除权限成功", Boolean.TRUE);
return ResultDomain.success("删除权限成功", BOOLEAN.TRUE);
}
logger.warn("删除权限失败, permissionId={}", permissionDTO.getPermissionId());
return ResultDomain.failure("删除权限失败");

View File

@@ -80,14 +80,14 @@ public class SysConfigServiceImpl implements SysConfigService {
}
@Override
public ResultDomain<Boolean> deleteConfig(TbSysConfigDTO configDTO) {
public ResultDomain<BOOLEAN> deleteConfig(TbSysConfigDTO configDTO) {
if (configDTO == null || StringUtils.isBlank(configDTO.getConfigId())) {
return ResultDomain.failure(MSG_CONFIG_ID_REQUIRED);
}
int rows = configMapper.deleteConfig(configDTO);
if (rows > 0) {
logger.info("删除配置成功, configId={}", configDTO.getConfigId());
return ResultDomain.success("删除配置成功", Boolean.TRUE);
return ResultDomain.success("删除配置成功", BOOLEAN.TRUE);
}
logger.warn("删除配置失败, configId={}", configDTO.getConfigId());
return ResultDomain.failure("删除配置失败");

View File

@@ -93,14 +93,14 @@ public class SysUserServiceImpl implements SysUserService {
}
@Override
public ResultDomain<Boolean> deleteUser(TbSysUserDTO userDTO) {
public ResultDomain<BOOLEAN> deleteUser(TbSysUserDTO userDTO) {
if (userDTO == null || StringUtils.isBlank(userDTO.getUserId())) {
return ResultDomain.failure(MSG_USER_ID_REQUIRED);
}
int rows = userMapper.deleteUser(userDTO);
if (rows > 0) {
logger.info("删除用户成功, userId={}", userDTO.getUserId());
return ResultDomain.success("删除用户成功", Boolean.TRUE);
return ResultDomain.success("删除用户成功", BOOLEAN.TRUE);
}
logger.warn("删除用户失败, userId={}", userDTO.getUserId());
return ResultDomain.failure("删除用户失败");
@@ -168,7 +168,7 @@ public class SysUserServiceImpl implements SysUserService {
}
@Override
public ResultDomain<Boolean> updateUserPassword(String userId, String oldPassword, String newPassword) {
public ResultDomain<BOOLEAN> updateUserPassword(String userId, String oldPassword, String newPassword) {
if (StringUtils.isBlank(userId)) {
return ResultDomain.failure(MSG_USER_ID_REQUIRED);
}
@@ -182,7 +182,7 @@ public class SysUserServiceImpl implements SysUserService {
int rows = userMapper.updateUser(dto);
if (rows > 0) {
logger.info("更新用户密码成功, userId={}", userId);
return ResultDomain.success("更新用户密码成功", Boolean.TRUE);
return ResultDomain.success("更新用户密码成功", BOOLEAN.TRUE);
}
logger.warn("更新用户密码失败, userId={}", userId);
return ResultDomain.failure("更新用户密码失败");
@@ -211,7 +211,7 @@ public class SysUserServiceImpl implements SysUserService {
}
@Override
public ResultDomain<Boolean> updateUserStatus(String userId, String status) {
public ResultDomain<BOOLEAN> updateUserStatus(String userId, String status) {
if (StringUtils.isBlank(userId)) {
return ResultDomain.failure(MSG_USER_ID_REQUIRED);
}
@@ -222,7 +222,7 @@ public class SysUserServiceImpl implements SysUserService {
int rows = userMapper.updateUser(dto);
if (rows > 0) {
logger.info("更新用户状态成功, userId={}", userId);
return ResultDomain.success("更新用户状态成功", Boolean.TRUE);
return ResultDomain.success("更新用户状态成功", BOOLEAN.TRUE);
}
logger.warn("更新用户状态失败, userId={}", userId);
return ResultDomain.failure("更新用户状态失败");
@@ -290,21 +290,21 @@ public class SysUserServiceImpl implements SysUserService {
}
@Override
public ResultDomain<Boolean> removeUserRole(TbSysUserRoleDTO userRoleDTO) {
public ResultDomain<BOOLEAN> removeUserRole(TbSysUserRoleDTO userRoleDTO) {
if (userRoleDTO == null || StringUtils.isBlank(userRoleDTO.getUserId()) || StringUtils.isBlank(userRoleDTO.getRoleId())) {
return ResultDomain.failure("用户ID和角色ID不能为空");
}
int rows = userRoleMapper.deleteUserRole(userRoleDTO);
if (rows > 0) {
logger.info("删除用户角色关联成功, userId={}, roleId={}", userRoleDTO.getUserId(), userRoleDTO.getRoleId());
return ResultDomain.success("删除用户角色关联成功", Boolean.TRUE);
return ResultDomain.success("删除用户角色关联成功", BOOLEAN.TRUE);
}
logger.warn("删除用户角色关联失败, userId={}, roleId={}", userRoleDTO.getUserId(), userRoleDTO.getRoleId());
return ResultDomain.failure("删除用户角色关联失败");
}
@Override
public ResultDomain<Boolean> setUserRoles(String userId, String[] roleIds) {
public ResultDomain<BOOLEAN> setUserRoles(String userId, String[] roleIds) {
if (StringUtils.isBlank(userId)) {
return ResultDomain.failure(MSG_USER_ID_REQUIRED);
}
@@ -337,7 +337,7 @@ public class SysUserServiceImpl implements SysUserService {
}
}
logger.info("设置用户角色成功, userId={}, count={}", userId, roleIds == null ? 0 : roleIds.length);
return ResultDomain.success("设置用户角色成功", Boolean.TRUE);
return ResultDomain.success("设置用户角色成功", BOOLEAN.TRUE);
}
@Override

View File

@@ -83,14 +83,14 @@ public class ViewServiceImpl implements ViewService {
}
@Override
public ResultDomain<Boolean> deleteView(TbSysViewDTO viewDTO) {
public ResultDomain<BOOLEAN> deleteView(TbSysViewDTO viewDTO) {
if (viewDTO == null || StringUtils.isBlank(viewDTO.getViewId())) {
return ResultDomain.failure(MSG_VIEW_ID_REQUIRED);
}
int rows = viewMapper.deleteView(viewDTO);
if (rows > 0) {
logger.info("删除视图成功, viewId={}", viewDTO.getViewId());
return ResultDomain.success("删除视图成功", Boolean.TRUE);
return ResultDomain.success("删除视图成功", BOOLEAN.TRUE);
}
logger.warn("删除视图失败, viewId={}", viewDTO.getViewId());
return ResultDomain.failure("删除视图失败");

View File

@@ -247,7 +247,7 @@
</select>
<!-- 根据条件查询系统访问控制列表数量 -->
<select id="getAclCountByFilter" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysAclDTO">
<select id="getAclCountByFilter" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysAclDTO">
SELECT COUNT(1)
FROM sys.tb_sys_acl
<where>

View File

@@ -213,7 +213,7 @@
</select>
<!-- 根据条件查询系统访问控制策略数量 -->
<select id="getAclPolicyCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysAclPolicyDTO">
<select id="getAclPolicyCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysAclPolicyDTO">
SELECT COUNT(1)
FROM sys.tb_sys_acl_policy
<where>

View File

@@ -228,7 +228,7 @@
</select>
<!-- 根据条件查询系统配置数量 -->
<select id="getConfigCount" resultType="java.lang.Integer" parameterType="TbSysConfigDTO">
<select id="getConfigCount" resultType="java.lang.INTEGER" parameterType="TbSysConfigDTO">
SELECT COUNT(1)
FROM config.tb_sys_config
<where>

View File

@@ -172,7 +172,7 @@
</select>
<!-- 根据条件查询系统部门数量 -->
<select id="getDeptCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysDeptDTO">
<select id="getDeptCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysDeptDTO">
SELECT COUNT(1)
FROM sys.tb_sys_dept
<where>

View File

@@ -182,7 +182,7 @@
</select>
<!-- 根据条件查询系统部门角色关系数量 -->
<select id="getDeptRoleCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysDeptRoleDTO">
<select id="getDeptRoleCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysDeptRoleDTO">
SELECT COUNT(1)
FROM sys.tb_sys_dept_role
<where>

View File

@@ -168,7 +168,7 @@
</select>
<!-- 根据条件查询系统模块数量 -->
<select id="getModuleCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysModuleDTO">
<select id="getModuleCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysModuleDTO">
SELECT COUNT(1)
FROM sys.tb_sys_module
<where>

View File

@@ -219,7 +219,7 @@
</select>
<!-- 根据条件查询系统权限数量 -->
<select id="getPermissionCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysPermissionDTO">
<select id="getPermissionCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysPermissionDTO">
SELECT COUNT(1)
FROM sys.tb_sys_permission
<where>

View File

@@ -200,7 +200,7 @@
</select>
<!-- 根据条件查询系统视图权限关系数量 -->
<select id="getViewPermissionCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysViewPermissionDTO">
<select id="getViewPermissionCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysViewPermissionDTO">
SELECT COUNT(1)
FROM sys.tb_sys_view_permission
<where>

View File

@@ -198,7 +198,7 @@
</select>
<!-- 根据条件查询系统角色数量 -->
<select id="getRoleCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysRoleDTO">
<select id="getRoleCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysRoleDTO">
SELECT COUNT(1)
FROM sys.tb_sys_role
<where>

View File

@@ -207,7 +207,7 @@
</select>
<!-- 根据条件查询系统角色权限关系数量 -->
<select id="getRolePermissionCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysRolePermissionDTO">
<select id="getRolePermissionCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysRolePermissionDTO">
SELECT COUNT(1)
FROM sys.tb_sys_role_permission
<where>

View File

@@ -204,7 +204,7 @@
</select>
<!-- 根据条件查询系统用户信息数量 -->
<select id="getUserInfoCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysUserInfoDTO">
<select id="getUserInfoCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysUserInfoDTO">
SELECT COUNT(1)
FROM sys.tb_sys_user_info
<where>

View File

@@ -216,7 +216,7 @@
</select>
<!-- 根据条件查询用户数量 -->
<select id="getUserCountByFilter" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysUserDTO">
<select id="getUserCountByFilter" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysUserDTO">
SELECT COUNT(1)
FROM sys.tb_sys_user
<where>

View File

@@ -226,7 +226,7 @@
</select>
<!-- 根据条件查询系统用户角色关系数量 -->
<select id="getUserRoleCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysUserRoleDTO">
<select id="getUserRoleCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysUserRoleDTO">
SELECT COUNT(1)
FROM sys.tb_sys_user_role
<where>

View File

@@ -204,7 +204,7 @@
</select>
<!-- 根据条件查询系统视图数量 -->
<select id="getViewCount" resultType="java.lang.Integer" parameterType="org.xyzh.common.dto.sys.TbSysViewDTO">
<select id="getViewCount" resultType="java.lang.INTEGER" parameterType="org.xyzh.common.dto.sys.TbSysViewDTO">
SELECT COUNT(1)
FROM sys.tb_sys_view
<where>