基于 Spring Boot 的六爻占卜 Web 应用,支持传统起卦方式和 AI 智能解卦。
- 六爻起卦:支持随机摇卦和手动输入两种方式
- 卦象分析:自动识别本卦、变卦,计算六神、六亲、用神
- 世应标记:自动计算世爻、应爻位置
- 生克关系:分析日干支与各爻地支的五行生克(日生、日克、比和、泄气、耗力)
- AI 解卦:集成 Deepseek AI,提供流式智能解读
- 历史记录:保存占卜记录,支持查看历史卦象、AI 解读、搜索和删除
- 用户系统:支持多用户,管理员可管理用户和查看所有记录
- 后端:Spring Boot 3.x、MyBatis Plus、Sa-Token
- AI:Spring AI + Deepseek
- 数据库:PostgreSQL
- 前端:Thymeleaf、原生 JavaScript
创建 PostgreSQL 数据库,执行 src/main/resources/db/schema.sql 初始化表结构。
数据库迁移脚本(按顺序执行):
V1__init_users.sql- 初始化用户表V2__add_operation_log.sql- 添加操作日志表V3__add_history_detail_fields.sql- 添加历史详情字段(世应、六神、六亲、地支、生克)V4__alter_yao_data_to_text.sql- 修改 yao_data 为 TEXT 类型支持 JSON
复制 application-local.yml.example 为 application-local.yml,配置:
spring:
datasource:
url: jdbc:postgresql://localhost:5432/yi
username: your_username
password: your_password
ai:
openai:
api-key: your_deepseek_api_key
base-url: https://api.deepseek.commvn spring-boot:run -Dspring.profiles.active=local- 用户名:
adm - 密码:
admin777777
src/main/java/com/taichi/yi/
├── controller/ # 控制器
│ ├── AuthController # 认证和用户管理
│ └── DivinationController # 占卜核心功能
├── entity/ # 实体类
│ ├── Divination # 占卜会话
│ ├── DivinationRecord # 历史记录
│ ├── Gua # 卦象
│ ├── Yao # 爻
│ ├── SixSpirit # 六神
│ ├── SixRelative # 六亲
│ ├── YongShen # 用神
│ ├── DiZhi # 地支
│ └── User # 用户
├── service/ # 服务层
│ ├── DivinationService # 占卜逻辑
│ ├── AiInterpretationService # AI 解卦
│ ├── DivinationRecordService # 历史记录
│ └── UserService # 用户管理
└── mapper/ # 数据访问层
POST /api/divination/start- 创建占卜会话POST /api/divination/{sessionId}/generate- 随机生成一爻POST /api/divination/{sessionId}/set- 手动设置一爻GET /api/divination/{sessionId}- 获取占卜结果GET /api/divination/{sessionId}/ai-interpret- AI 解卦(流式)
GET /api/history- 获取历史列表(支持搜索)GET /api/history/{id}- 获取历史详情DELETE /api/history/{id}- 删除历史记录
GET /api/admin/users- 获取所有用户POST /api/admin/users- 创建用户POST /api/admin/users/{username}/password- 修改密码DELETE /api/admin/users/{username}- 删除用户
MIT License