# LSO_Nodejs服务端开发_赛博家电系统 **Repository Path**: faser/lso-xulixin-server-dev ## Basic Information - **Project Name**: LSO_Nodejs服务端开发_赛博家电系统 - **Description**: 基于斯巴达圣体的赛博家电系统. 后端Nodejs, 前端Vue2. - **Primary Language**: NodeJS - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2023-12-16 - **Last Updated**: 2024-06-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: Nodejs, Vue ## README ## 运行 ### 前置准备 #### 1. 安装依赖 ```bash npm install ``` #### 2. 配置 将 `.env` 复制为 `.env.local` ,并修改其中的配置 ```bash DB_HOST = <数据库IP> DB_USER = <数据库用户名> DB_PASSWORD = <数据库密码> DB_PORT = [端口号] SESSION_SECRETKEY = ``` ### 开发调试 ```bash npm run dev ``` ### 运行 ```bash npm run start ``` # 概要设计说明书 ## 引言   随着智能家居市场的日益发展,家电设备的智能化管理成为用户关注的重点。本项目旨在开发一个智能家居系统后端管理系统,以实现对家电设备、用户信息以及电量消耗的便捷管理。系统主要面向智能家居服务提供商和终端用户,提供家电控制、电量监控、用户信息管理等功能。   本文档旨在提供智能家居系统后端管理部分的概要设计,该系统基于Vue.js前端框架、axios数据交互库以及node.js后端运行环境构建。该系统允许授权用户执行一系列管理任务,包括家电类型管理、用户家电列表管理以及用户信息管理。 ### 文档目的 本文档的目的是明确系统的功能需求、技术选型、数据库设计、接口设计、安全性与性能考虑,以及部署方案,为系统的详细设计和开发提供指导。 ### 读者对象 本文档面向项目经理、系统架构师、软件工程师、测试工程师以及维护人员等所有参与项目开发和维护的相关人员。 ## 总体设计 ### Api设计 [Api设计文档](./back_end/api.md) ### 系统架构 系统采用前后端分离的设计模式,前端使用Vue.js构建用户界面,通过axios与后端进行数据交互;后端采用Express.js框架处理业务逻辑和数据库操作。数据库选用关系型数据库MySQL,用于存储用户信息、家电类型和用户家电列表等数据。 ### 功能模块 系统主要包括以下功能模块: 1. 家电管理模块:负责家电类型的增删改查以及用户家电列表的管理。 2. 用户信息管理模块:负责用户信息的查看、修改以及登录认证等功能。 ### 技术选型 * 前端技术栈:Vue.js + axios * 后端技术栈:Node.js + Express.js * 数据库:MySQL * 部署环境:云服务器或虚拟主机 ## 数据库设计 数据库设计遵循第三范式,确保数据的完整性和一致性。主要数据表包括用户表(user)、风扇类型表(appliance_type)和用户风扇表(user_fan)。各表之间通过外键关联,实现数据的关联查询和操作。 ## 接口设计 系统提供RESTful风格的API接口,遵循统一的返回格式。接口设计考虑到易用性、安全性、一致性和可扩展性。主要接口包括获取家电类型列表、获取用户家电列表、获取风扇具体信息、添加风扇、开启/关闭用户风扇、获取用户信息、用户登录/退出登录以及充值电量等。 ## 安全性与性能考虑 ### 安全性 系统采用以下措施保障安全性: 1. 用户密码加密存储:使用安全的加密算法对用户密码进行加密处理,防止密码泄露。 2. 登录认证:通过token与Session机制进行用户认证与权限管理,确保只有授权用户才能访问系统资源。 3. 数据传输安全:使用HTTPS协议进行数据传输,确保数据在传输过程中的安全性。 ### 性能 系统性能优化主要考虑以下几个方面: 1. 数据库索引优化:对数据库表建立合适的索引,提高查询效率。 2. 缓存机制:合理使用缓存机制,减少对数据库的频繁访问,提高系统响应速度。 3. 异步处理:对于耗时较长的操作,采用异步处理方式,避免阻塞系统主线程。 ## 部署方案 系统部署在云服务器或虚拟主机上,确保服务器的稳定性和可扩展性。部署流程包括配置环境、安装数据库、部署应用、接口测试以及性能调优等步骤。 ## 总结   本文档对智能家居系统后端管理部分进行了概要设计,明确了系统的功能需求、技术选型、数据库设计、接口设计、安全性与性能考虑以及部署方案。通过本文档的指导,项目团队可以有序地进行系统的详细设计和开发工作。   本项目旨在开发一个智能家居系统的后端管理系统,通过实现家电管理、用户信息管理等功能,为用户提供便捷的智能家居服务。在开发过程中,我们将注重系统的安全性、性能和可扩展性,以满足不断增长的用户需求。未来,我们将根据市场反馈和技术发展趋势,不断完善系统功能,提升用户体验,推动智能家居行业的持续发展。