# SmartLife **Repository Path**: se2023/smart-life ## Basic Information - **Project Name**: SmartLife - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-08 - **Last Updated**: 2026-06-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SmartLife 智慧生活 AI 大模型应用平台 #### 项目名称 SmartLife 智慧生活 AI 大模型应用平台 #### 功能概述 SmartLife 是一个面向运动健身与健康管理场景的前后端分离 Web 应用。系统主要包含用户注册登录、JWT 身份认证、首页数据总览、个人资料管理、健康档案、运动打卡、健身活动管理、运动知识管理、用户管理、AI 智能助手和天气生活助手等功能。 平台支持使用 ECharts 展示用户与活动统计数据,使用 DeepSeek Chat API 提供运动健身智能问答,并通过 Open-Meteo API 查询城市天气信息。管理员可以维护用户、健身活动与运动知识,普通用户可以管理个人信息、记录健康数据和完成运动打卡。 #### 软件架构 项目采用前后端分离的多层架构。前端通过 HTTP/JSON 与后端 RESTful API 通信,后端按照控制层、服务层、持久层和数据层划分职责,各层通过 Spring IoC 容器完成依赖管理。 1. 表现层:使用 Vue 3、Element Plus、Vue Router、Pinia、Axios 和 ECharts,负责页面展示、路由、状态管理、接口请求与数据可视化。 2. 控制层:使用 Spring MVC,通过 `@RestController` 接收前端请求、完成参数绑定并返回统一的 `Result` 响应。 3. 服务层:使用 Spring Service,负责用户认证、业务规则、分页查询和模块间业务协调。 4. 持久层:使用 MyBatis-Plus,通过 Mapper、ServiceImpl、条件构造器和分页插件完成数据访问,并支持逻辑删除与字段自动填充。 5. 数据层:使用 MySQL 8 保存系统用户、健康记录、运动打卡、健身活动、运动知识和 AI 聊天记录。 6. 公共与外部服务:使用 JWT 保存登录身份,使用 Spring Security BCrypt 加密密码,使用 `@RestControllerAdvice` 统一处理异常,并接入 DeepSeek Chat API 和 Open-Meteo API。 系统的主要请求流向为:浏览器 → Vue/Axios → Spring MVC Controller → Spring Service → MyBatis-Plus Mapper → MySQL,查询结果按照相反方向返回并由前端渲染。 #### 开发环境和运行环境 1. JDK版本:21(项目编译目标为 Java 17,满足课程至少使用 JDK 17 的要求) 2. Web服务器:Spring Boot 3.1.5 内置 Tomcat 10.1.15 3. 数据库服务器:MySQL 8 4. 后端构建工具:Apache Maven 3.9.9 5. 前端运行环境:Node.js 23.11.0、npm 10.8.3、Vite 5 6. 后端主要框架:Spring Boot 3.1.5、Spring MVC、MyBatis-Plus 3.5.7、Spring Security 7. 前端主要框架:Vue 3、Element Plus 2、Pinia 2、Axios、ECharts 5 8. 默认运行端口:后端 `8080`,前端 `5173` #### 成员及分工说明 | | 姓名 | 学号 | 班级 | 分工简介 | | ----- | ---- | ---- | ---- | -------- | | 组长 | 杨浩楠 | 202310414301 | 软件工程3班 | 负责项目协调、后端基础环境、跨域配置、统一响应、全局异常处理、JWT认证、登录注册、数据库脚本和项目文档 | | 组员1 | 王鹏 | 202310414322 | 软件工程3班 | 负责前端基础配置、入口、路由、整体布局、主题样式、首页总览页面和首页统计接口 | | 组员2 | 施程舰 | 202310414317 | 软件工程3班 | 负责个人中心、个人资料修改、健康档案、健康数据管理和相关后端接口 | | 组员3 | 周兴吾 | 202310414316 | 软件工程3班 | 负责运动打卡、活动管理、健身活动增删改查、打卡记录和相关后端接口 | | 组员4 | 熊廷秸 | 202310414318 | 软件工程3班 | 负责运动知识页面、知识列表、知识数据维护、知识查询接口和初始化数据 | | 组员5 | 顾先磊 | 202310414305 | 软件工程3班 | 负责用户管理、前端请求封装、用户状态管理、AI助手、天气助手和AI聊天记录相关后端代码 |