Files
yoloShop/CLAUDE.md
2026-02-11 21:10:06 +08:00

4.6 KiB
Raw Permalink Blame History

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

项目概述

波猫商店 (Bomaos-Shop) — 基于 Java 8 + Spring Boot 2.7.13 的自动化发卡电商平台支持14种支付渠道、批发模式、自动/手动发货。

重要提示:本仓库缺少 src/main/ 目录Java 源码 (.java) 和资源文件均不在标准位置。 所有内容位于 target/classes/ 下:

  • Java 后端:仅有编译后的 .class 文件,无法直接编辑,需反编译才能理解逻辑
  • 前端模板和静态资源完整存在Beetl 模板 (templates/)、CSS/JS (static/)、配置文件 (*.yml) 均可直接编辑
  • 注意target/ 是 Maven 构建输出目录,mvn clean 会清除其中所有文件

构建与运行

# Maven 编译
mvn compile

# 打包(跳过测试)
mvn clean package -DskipTests

# 运行测试
mvn test

# 直接运行
java -jar target/bomaos-shop-2.0.4.jar

# Docker 部署(需先将 sql/bomaos-shop.sql 复制到 mysql/db/init.sql
docker-compose up -d

应用默认端口 8085,开发环境数据库连接 localhost:3307Docker 环境连接 mysql:3306

技术栈

层级 技术
框架 Spring Boot 2.7.13
ORM MyBatis-Plus 3.5.3.1
数据库 MySQL 8.0 + Druid 连接池
认证 Apache Shiro 1.11.0 + JWT (jwtp)
模板引擎 Beetl 3.0.16
前端 UI Layui
工具库 Hutool 5.8.20、Lombok、Fastjson 2

架构

包结构 (com.bomaos)

com.bomaos/
├── BomaosApplication          # 启动类
├── carmi/                     # 卡密管理CRUD + Excel 导入导出)
├── orders/                    # 订单管理
├── products/                  # 商品 & 分类管理
├── settings/                  # 支付配置、优惠券、商店设置、微信推送
├── content/                   # 文章 & 轮播图
├── reception/                 # 前台展示(首页、商品详情、支付回调)
├── dashboard/                 # 后台仪表盘
├── theme/                     # 主题管理(白天/黑夜/暗黑)
├── website/                   # 网站 SEO 设置
└── common/
    ├── core/
    │   ├── pays/              # 14种支付渠道集成alipay/wxpay/paypal/epusdt/epay 等)
    │   ├── shiro/             # Shiro 安全配置
    │   ├── aspect/            # AOP 操作日志
    │   ├── config/            # Spring 配置类
    │   ├── enmu/              # 枚举(支付类型等)
    │   ├── utils/             # 工具类
    │   └── web/               # BaseController / BaseApiController
    └── system/                # 用户、角色、菜单、字典、日志等系统管理

分层模式

每个业务模块遵循标准 MVC 分层:controller/ → service/ → mapper/ → entity/,部分模块含 dto/vo/excel/

路由分区

  • 后台管理/products/**/carmi/**/orders/**/settings/**/content/**/sys/**/dashboard/**
  • 前台展示/(首页)、/product/{id}/order/search/pay
  • 支付回调/notify/**
  • JWT 保护的 API/api/**

多环境配置

  • application.yml — 公共配置端口、连接池、MyBatis-Plus、JWT
  • application-dev.yml — 开发环境MySQL localhost:3307
  • application-test.yml — 测试环境
  • application-prod.yml — 生产环境
  • 通过 spring.profiles.active 切换

数据库

24 张表,初始化脚本在 sql/bomaos-shop.sql。核心业务表:sys_products(商品)、sys_cards(卡密)、sys_orders(订单)、sys_pays(支付配置)、sys_coupon(优惠券)。系统表以 sys_ 前缀命名,使用 RBAC 权限模型(sys_user / sys_role / sys_menu 及关联表)。

支付集成

支付实现集中在 common.core.pays 包下,每种支付方式一个子包。支付配置存储在 sys_pays 表中JSON 格式保存各渠道参数。回调统一由 reception.controller.NotifyController 处理。

编码约定

  • Java 8 语法UTF-8 编码
  • 实体类使用 Lombok (@Data, @TableName 等)
  • MyBatis-Plus 注解映射XML Mapper 与 Java 文件同目录(classpath:com/bomaos/**/*Mapper.xml
  • 下划线数据库字段自动映射驼峰命名 (map-underscore-to-camel-case: true)
  • 时间格式统一 yyyy/MM/dd HH:mm:ss,时区 GMT+8
  • 操作日志通过 AOP 切面 (OperLogAspect) 自动记录