# eshop-class2-group7 **Repository Path**: grade24-fullstack-class2/eshop-class2-group7 ## Basic Information - **Project Name**: eshop-class2-group7 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2026-07-21 - **Last Updated**: 2026-07-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 电子商城(E-Shop)暑期企业级综合项目实战 > 班级:____ 组号:____ 组名:____ ## 一、项目简介 本项目为软件技术专业暑期企业级综合项目实战,目标是以小组协作方式,在 **4 周** 内完成一个功能完整、可演示、可部署的 **电子商城系统**,全程模拟企业真实研发流程:需求分析 → 系统设计 → 编码实现 → 测试 → 部署 → 验收答辩。 ### 当前完成情况 | 部分 | 当前状态 | 已完成功能 | |------|----------|------------| | 后端 v1.0 | ✅ 已完成并冻结 | 登录鉴权、用户、分类、商品、SKU、购物车、地址、订单、模拟支付、后台管理、操作日志 | | PC 消费者端 | ✅ 已完成 | 商品列表/搜索/详情、SKU、购物车、地址、确认订单、支付、我的订单 | | Web 管理端 | ✅ 主要功能已完成 | 分类管理、商品与 SKU 管理、图片上传、上下架、订单查询/取消/发货、操作日志 | | 手机 H5 端 | 🚧 公共框架已完成 | Vue 3 + Vant 登录、导航、路由和权限保护已接入,商城业务页面待继续接入 | | 自动化验证 | ✅ 已通过 | 后端 13 项测试、Docker/MySQL API 冒烟流程和前端生产构建 | ### 阶段成果快照 为方便组员查看和上传,当前已完成内容已经整理为独立快照: - [`eshop-release-v1.0/`](eshop-release-v1.0/):可直接运行和继续开发的项目文件夹。 - [`eshop-release-v1.0/上传说明.md`](eshop-release-v1.0/上传说明.md):完成范围、运行方式和排除内容说明。 快照不包含 `.git`、本地 `.env`、数据库运行数据、依赖目录和构建产物。 ## 二、小组成员与分工(模块负责制) 本项目采用 **模块负责制**:不按前后端分工,每人认领业务模块,独立负责该模块的 **数据库表 + 后端接口 + 前端页面** 完整链路。 | 姓名 | 学号 | 角色 | 负责模块(全栈) | |------|------|------|------------------| | 祝意远 | | 组长/架构员 | 项目脚手架、登录鉴权、公共组件、接口冻结、集成联调 + 关键模块兜底 | | | | 模块负责人 | 商品模块(分类/列表/搜索/详情 + 后台商品管理) | | | | 模块负责人 | 订单 + 支付模块(含后台订单管理) | | | | 模块负责人 | 用户 + 购物车模块(含后台用户管理) | | | | 模块负责人 | 测试 + 部署 + 选做功能 | > 分工规则详见 `docs/00-项目要求/项目要求.md` 第三节,模块难度权重与考核挂钩。 > 4 人组时,测试与部署职责分摊到各模块负责人,选做功能由认领者负责。 ## 三、技术栈(各组自选,确定后填写) | 分层 | 技术选型 | 版本 | |------|----------|------| | 前端 | Vue 3 + Vite + Vue Router + Pinia;PC/Web 使用 Element Plus,移动 H5 使用 Vant | Vue 3 / Vite 6 | | 后端 | Java + Spring Boot + Spring Security + JWT + MyBatis-Plus + Flyway + Actuator | JDK 17 / Spring Boot 3.5.16 | | 数据库 | MySQL | 8.4 | | 部署 | Docker Compose + Nginx | Docker Compose v2+ | ## 四、仓库目录结构 ``` ├── README.md # 项目说明(本文件) ├── docs/ # 项目文档 │ ├── 00-项目要求/ # 项目要求、验收标准、评分标准(教师发布,勿改) │ ├── 01-需求文档/ # 需求规格说明书 │ ├── 02-设计文档/ # 架构设计、数据库设计、接口设计 │ ├── 03-测试文档/ # 测试计划、测试报告 │ ├── 04-会议记录/ # 小组会议纪要 │ └── 05-总结答辩/ # 项目总结报告、答辩材料 ├── reports/ # 日报周报 │ ├── daily/ # 日报(每人每天一份) │ └── weekly/ # 周报(每组每周一份,组长汇总) └── eshop-release-v1.0/ # 可运行并继续开发的阶段成果 ├── frontend/ # Vue 3 三端前端代码 ├── backend/ # Spring Boot 后端代码 ├── scripts/ # API 冒烟测试脚本 ├── docker-compose.yml # MySQL、后端和前端编排 └── .env.example # 本地环境变量示例 ``` ## 五、关键时间节点(4 周) | 阶段 | 时间 | 交付物 | |------|------|--------| | 第 1 周 | 需求与设计 | 需求规格说明书、架构/数据库/接口设计 | | 第 2 周 | 核心功能开发 | 用户、商品模块可演示 | | 第 3 周 | 完整功能开发 | 购物车、订单、支付(模拟)模块可演示;选做功能与挑战模块开发 | | 第 4 周 | 测试、部署与答辩 | 测试报告、挑战模块压测/边界验证、部署上线、总结报告、答辩 | ## 六、Git 协作规范 1. 主分支 `main` 只存放可运行代码,禁止直接 push。 2. 功能开发使用 `feature/功能名` 分支,完成后经组长 Code Review 合并。 3. 提交信息格式:`: <描述>`,type 取值:`feat` `fix` `refactor` `docs` `test` `chore`。 4. **每人每天至少一次有效提交**,提交记录将作为个人考核依据。 5. **交叉 Code Review**:每人的功能分支由相邻模块负责人审查后方可合并(审查人在合并说明中留名)。 ## 七、如何开始 1. 全组阅读 `docs/00-项目要求/` 下的全部文档。 2. 完成分工表、确定技术栈并填入本文件。 3. 按 `docs/01-需求文档/` 模板开始编写需求文档。 4. 每天下班前提交个人日报到 `reports/daily/`。 ## 八、本地运行与验证 ### 1. 准备环境变量 在 PowerShell 中进入仓库根目录,然后进入阶段成果文件夹并准备环境变量: ```powershell Set-Location '.\eshop-release-v1.0' Copy-Item .env.example .env ``` `.env.example` 中的账号和密钥仅用于本地开发,正式部署前必须修改。 ### 2. 启动完整项目 ```powershell docker compose up -d --build docker compose ps ``` 容器健康后可访问: - PC 消费者端: - Web 管理端: - 手机 H5 端: - 后端健康检查: 本地管理员账号配置在 `.env` 的 `BOOTSTRAP_ADMIN_*` 变量中。 ### 3. 运行后端接口冒烟测试 ```powershell .\scripts\api-smoke-test.ps1 ``` 测试脚本会创建独立测试数据,完成注册、商品/SKU、购物车、下单、支付、发货、确认收货和取消订单等流程,并在结束后自动清理测试数据。 ### 4. 停止项目 ```powershell docker compose down ```