Skip to content

JianGuo1111/Yi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Yi - 六爻占卜系统

基于 Spring Boot 的六爻占卜 Web 应用,支持传统起卦方式和 AI 智能解卦。

功能特性

  • 六爻起卦:支持随机摇卦和手动输入两种方式
  • 卦象分析:自动识别本卦、变卦,计算六神、六亲、用神
  • 世应标记:自动计算世爻、应爻位置
  • 生克关系:分析日干支与各爻地支的五行生克(日生、日克、比和、泄气、耗力)
  • AI 解卦:集成 Deepseek AI,提供流式智能解读
  • 历史记录:保存占卜记录,支持查看历史卦象、AI 解读、搜索和删除
  • 用户系统:支持多用户,管理员可管理用户和查看所有记录

技术栈

  • 后端:Spring Boot 3.x、MyBatis Plus、Sa-Token
  • AI:Spring AI + Deepseek
  • 数据库:PostgreSQL
  • 前端:Thymeleaf、原生 JavaScript

快速开始

1. 配置数据库

创建 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

2. 配置应用

复制 application-local.yml.exampleapplication-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.com

3. 启动应用

mvn spring-boot:run -Dspring.profiles.active=local

访问 http://localhost:8080

4. 默认账户

  • 用户名: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/              # 数据访问层

API 接口

占卜

  • 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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors