(最新原创毕设)Java防晒护肤品店销售管理平台/03.14(白嫖源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
在功能模块方面,平台主要包括用户注册与登录、商品浏览与购买、订单管理、评价与投诉管理、以及商家管理等模块。普通用户可以方便地浏览商品、查看推荐、下单购买,并进行评价与投诉;商家用户则可以管理商品信息、处理订单、查看销售数据,并发布相关通知和资讯。系统还提供了丰富的后台管理功能,以便于管理员进行用户和商品的管理。
摘 要
随着护肤品市场的快速发展,消费者对防晒护肤产品的需求日益增加。为满足这一市场需求,本文设计并实现了一款基于Spring Boot框架的“生态光彩”防晒护肤品店销售管理平台。该平台旨在为用户提供便捷的购物体验,同时为商家提供高效的管理工具。
本文首先分析了当前护肤品市场的现状及存在的问题,明确了平台的设计目标和功能需求。系统采用了前后端分离的架构,前端使用Vue.js框架,后端基于Spring Boot进行开发,数据库则采用MySQL存储用户和商品数据。通过这种架构设计,系统具备了良好的扩展性和可维护性。
在功能模块方面,平台主要包括用户注册与登录、商品浏览与购买、订单管理、评价与投诉管理、以及商家管理等模块。普通用户可以方便地浏览商品、查看推荐、下单购买,并进行评价与投诉;商家用户则可以管理商品信息、处理订单、查看销售数据,并发布相关通知和资讯。系统还提供了丰富的后台管理功能,以便于管理员进行用户和商品的管理。
通过对平台的实际运行测试,结果表明,该系统能够有效提高用户的购物效率,优化商家的管理流程,提升用户满意度。最终,本文总结了系统的设计与实现过程,并对未来的改进方向进行了展望,提出了基于数据分析和个性化推荐等技术的进一步发展思路。
关键词:防晒护肤品;Spring Boot;销售管理平台;系统设计与实现
Abstract
With the rapid development of the skincare market, consumers' demand for sunscreen skincare products is increasing day by day. To meet this market demand, this article designs and implements a "Ecological Radiance" sunscreen and skincare store sales management platform based on the Spring Boot framework. This platform aims to provide users with a convenient shopping experience and efficient management tools for merchants.
This article first analyzes the current situation and existing problems of the skincare market, and clarifies the design goals and functional requirements of the platform. The system adopts a front-end and back-end separation architecture, with Vue.js framework for the front-end and Spring Boot for the back-end development. MySQL is used to store user and product data for the database. Through this architectural design, the system has good scalability and maintainability.
In terms of functional modules, the platform mainly includes modules such as user registration and login, product browsing and purchasing, order management, evaluation and complaint management, and merchant management. Ordinary users can conveniently browse products, view recommendations, place orders, and make evaluations and complaints; Merchant users can manage product information, process orders, view sales data, and post relevant notifications and information. The system also provides rich backend management functions for administrators to manage users and products.
Through actual operational testing of the platform, the results show that the system can effectively improve users' shopping efficiency, optimize merchant management processes, and enhance user satisfaction. Finally, this article summarizes the design and implementation process of the system, and looks forward to future improvement directions, proposing further development ideas based on data analysis and personalized recommendation technologies.
Keywords: Sunscreen skincare products; Spring Boot; Sales management platform; System Design and Implementation
目 录
1 前 言
1.1 选题背景和意义
1.2 国内外研究现状
1.3 论文结构与章节安排
2 关键技术
2.1 Java
2.2 MySQL
2.3 Spring Boot框架
2.4 B/S模式
3 系统分析
3.1 可行性分析
3.1.1 技术可行性
3.1.2 经济可行性
3.1.3 操作可行性
3.1.4 社会可行性
3.2 功能需求分析
3.3 系统性能分析
3.4 系统流程分析
3.4.1 程序操作流程
3.4.2 登录流程
3.4.3 注册流程
4 系统设计
4.1 总体设计
4.1.1 框架设计
4.1.2 功能模块设计
4.2 数据库设计
4.2.1 E-R图
4.2.1 数据库表结构设计
5 系统实现
5.1 普通用户模块
5.1.1 用户登录界面
5.1.2 用户注册界面
5.1.3 新闻资讯界面
5.1.4 购物商场界面
5.1.5 我的订单界面
5.1.6 我的地址界面
5.1.7 好物推荐界面
5.1.8 商品投诉界面
5.2 商家用户模块
5.2.1 好物推荐管理界面
5.2.2 商品购买管理界面
5.2.3 商品配送管理界面
5.2.4 客户信息管理界面
5.2.5 分类列表界面
5.3 后台管理员模块
5.3.1 系统用户界面
5.3.2 商品类型管理界面
5.3.3 好物推荐管理界面
5.3.4 系统管理界面
5.3.5 通知公告管理界面
5.3.6 资源管理界面
6 系统测试
6.1 测试目的与意义
6.2 测试用例
6.3 测试分析
7 结束语
参考文献
致 谢
1 前 言
1.1选题背景和意义
在当今社会,随着人们对皮肤健康和美容意识的不断增强,防晒护肤品的市场需求显著上升。防晒不仅是夏季护肤的必要步骤,更是全年皮肤保护的重要环节。随着科学研究的深入,消费者对防晒产品的成分、功效和使用方法的关注度逐渐提高,这使得防晒护肤品的种类和品牌层出不穷。在这种背景下,如何为消费者提供一个便捷、高效的购物平台,成为了行业发展的重要课题。
与此同时,电商行业的迅猛发展为护肤品的销售提供了新的机遇。传统的销售模式已经无法满足现代消费者对购物体验的多样化需求。消费者希望能够在一个集成化的平台上,轻松找到所需的产品,获取相关的护肤知识,以及享受便捷的售后服务。因此,开发一个专注于防晒护肤品的销售管理平台,不仅能够提升消费者的购物体验,还能为商家提供更加高效的管理工具。
本平台的设计与实现,旨在通过现代化的技术手段,构建一个全面、高效的销售管理系统。平台将用户体验放在首位,提供简洁明了的界面和流畅的操作流程,使消费者能够方便地浏览商品、下单购买及管理个人信息。同时,商家用户可以通过系统高效地管理商品、处理订单和与客户互动,提升运营效率。
通过建立“生态光彩”防晒护肤品店销售管理平台,不仅能够满足市场对防晒产品的需求,还能推动整个行业的数字化转型。该平台的成功实施,将为消费者提供更优质的购物体验,为商家创造更大的商业价值,促进护肤品市场的健康发展。
1.2国内外研究现状
在国内外,关于护肤品销售管理平台的研究和实践逐渐增多,反映了电商行业的快速发展和消费者需求的变化。国外一些知名的护肤品电商平台,如Sephora和Ulta Beauty,已经成功构建了综合性的在线销售系统。这些平台不仅提供丰富的产品选择,还通过用户评价、个性化推荐和专业的护肤资讯,提升了消费者的购物体验。Sephora的“虚拟试妆”功能,利用增强现实技术,让用户能够在购买前体验产品效果,这一创新吸引了大量消费者,并提高了购买转化率。
在国内,随着电商的普及,护肤品销售平台也在不断创新和升级。以天猫和京东为代表的综合性电商平台,已经建立了完善的护肤品销售体系,并通过大规模的促销活动和品牌合作,吸引了大量消费者。此外,一些专业的护肤品电商如小红书和美丽说,专注于分享用户体验和护肤心得,形成了独特的社交电商模式。这些平台通过用户生成内容(UGC)和社区互动,增强了用户粘性,推动了产品的销售。
在研究方面,国内外学者对电商平台的用户体验、营销策略和技术应用进行了深入探讨。研究表明,用户体验的优化对提升消费者满意度和忠诚度具有重要影响。某些研究还探讨了基于数据分析的个性化推荐系统,强调其在提升用户购物体验和增加销售额方面的作用。此外,关于电商平台供应链管理的研究也逐渐增多,探讨如何通过信息化手段优化库存管理和物流配送,以提高整体运营效率。
综上所述,国内外在护肤品销售管理平台的设计与实现方面已经取得了一定的研究成果和实践经验。这些研究和案例为“生态光彩”防晒护肤品店销售管理平台的开发提供了宝贵的参考,能够帮助该平台更好地满足市场需求,提升用户体验,实现商业价值。
1.3论文结构与章节安排
本文共分为七章,章节内容安排如下:
第一章:引言,主要介绍“生态光彩”防晒护肤品店销售管理平台领域研究的背景和意义,概述研究的现状和系统特点。
第二章:关键技术,主要探讨和说明实现“生态光彩”防晒护肤品店销售管理平台的关键技术。
第三章:系统分析,主要从“生态光彩”防晒护肤品店销售管理平台的可行性、功能、性能等方面进行分析,为后续系统设计提供理论支持。
第四章:系统设计,主要对“生态光彩”防晒护肤品店销售管理平台功能模块、数据库进行功能设计。
第五章:系统实现,主要介绍了“生态光彩”防晒护肤品店销售管理平台各个顾客用户的功能、系统界面的实现。
第六章:系统测试,主要对“生态光彩”防晒护肤品店销售管理平台进行测试,验证功能完整性、稳定性和安全性,评估系统在实际运行中的性能表现。
第七章:结束语。总结全文研究内容,提出对“生态光彩”防晒护肤品店销售管理平台领域未来发展的展望和建议,指出研究的不足和可优化之处,为相关领域的进一步探索提供参考。
2 关键技术
2.1Java
Java是一种跨平台的编程语言,广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。在“生态光彩”防晒护肤品店销售管理平台中,Java通常用于后端开发,提供强大的处理能力和稳定性。同时Java是一种面向对象的编程语言,支持封装、继承和多态等特性,使代码更易于维护和重用。还拥有丰富的标准库和第三方框架,如Spring、Hibernate等,可以大大提高开发效率。
2.2MySQL
MySQL是一种流行的开源关系型数据库管理系统,用于存储和管理数据。在“生态光彩”防晒护肤品店销售管理平台中,MySQL可以用于数据存储、数据查询和数据管理等方面,用户可以免费使用和修改源代码,为平台提供可靠和高性能的数据库支持。MySQL支持多种存储引擎,如InnoDB和MyISAM,可以根据不同的应用场景选择合适的存储引擎,以提高性能;提供了多种数据安全机制,如用户权限管理、数据加密和备份恢复等,确保数据的安全性。
2.3Spring Boot框架
Spring Boot是一个用于构建微服务的Java框架,简化了Spring应用程序的开发和部署过程。Spring Boot通过自动配置和约定优于配置的理念,简化了Spring应用程序的开发过程,使开发者可以更快地构建和部署应用程序;拥有丰富的生态系统,如Spring Cloud、Spring Security等,可以满足各种企业级应用的需求。在“生态光彩”防晒护肤品店销售管理平台中,Spring Boot可以帮助开发团队快速搭建后端服务,并实现各种功能模块的集成和管理。
2.4B/S模式
B/S模式(Browser/Server模式)是一种网络应用架构,其中浏览器(Browser)作为客户端与服务器(Server)进行通信。这种模式使用户可以通过普通的Web浏览器访问应用程序,而无需安装额外的客户端软件。用户通过浏览器发送请求,服务器接收并处理这些请求,然后将结果返回给浏览器显示给用户。在“生态光彩”防晒护肤品店销售管理平台中,B/S模式的优势包括跨平台的兼容性,用户可以在不同操作系统和设备上访问应用程序。此外,维护和部署也更为简便,并且能够实现较高的安全性,因为服务器端控制了应用程序和数据的访问权限。
3 系统分析
3.1可行性分析
3.1.1技术可行性
从技术角度来看,Spring Boot作为一种轻量级、快速构建的Java框架,能够提高开发效率,降低系统的复杂程度,易于维护和升级。同时,MySQL作为关系型数据库,能够支持平台数据的存储与管理,保障系统的稳定性和高效性。因此,本系统具有技术可行性。
3.1.2经济可行性
考虑到Springboot、Vue、MyBatis Plus及MySQL等均为开源技术,无需支付高昂的许可费用,大大降低了系统的开发成本。同时,这些技术拥有广泛的用户群体和成熟的社区支持,便于获取技术支持和资源共享。此外,系统的实施将显著提升管理的效率和用户体验,从而带来潜在的经济效益。因此,从经济角度来看,该系统的开发同样具备可行性。
3.1.3操作可行性
系统设计应遵循用户友好原则,确保用户能够轻松上手并高效使用。通过合理的界面布局、直观的操作流程以及详尽的帮助文档,可以大大降低用户的学习成本,提高系统的操作可行性。此外,系统还应具备完善的权限管理和数据安全机制,确保操作的安全性和合规性。
3.1.4社会可行性
“生态光彩”防晒护肤品店销售管理平台的设计与实现具有良好的社会可行性。防晒护肤品市场需求持续增长,平台能满足消费者对优质产品的需求,并提供便捷的购物体验。采用现代电商技术,平台整合商品信息和用户反馈,提升商家运营效率,支持精准营销。简洁的界面和流畅的操作吸引用户,增加粘性,创造更多销售机会。
在数字经济背景下,线上销售渠道成为主流,平台符合这一趋势,推动行业数字化转型,促进产业链协同发展。因此,该平台具备良好的可行性,有助于行业健康发展。
从技术、经济、操作和社会四个维度来看,“生态光彩”防晒护肤品店销售管理平台的开发均具备高度的可行性。
3.2功能需求分析
本系统可以分为:普通用户、商家用户和管理员三大角色。
普通用户主要包括首页、通知公告、新闻资讯、购物商场、商城管理(我的购物车、我的订单、 我的地址、 我的优惠券)、好物推荐、我的账户、个人中心(个人首页、商品购买、商品配送、商品评价、商品投诉、订单配送、收藏)等功能。
商家用户主要包括后台首页、好物推荐管理、商品购买管理、商品配送管理、商品评价管理、商品投诉管理、客户信息管理、通知公告管理、资源管理(新闻资讯)、商城管理(购物商场、分类列表、订单列表、订单配送、优惠券)等功能。
管理员可登录系统后台进行管理,拥有后台首页、系统用户(管理员、普通用户、商家用户)、商品类型管理、好物推荐管理、商品购买管理、商品配送管理、商品评价管理、商品投诉管理、客户信息管理、系统管理(轮播图)、通知公告管理、资源管理(新闻资讯、资讯分类)、商城管理(购物商场、分类列表、订单列表、订单配送、优惠券)等功能。
(一)普通用户角色用例如下图所示。

图3.1普通用户用例图
普通用户具体功能说明如下所示。
注册登录:普通用户可以通过注册成为系统用户,填写基本信息并设置账号密码。注册成功后,用户可以使用账号和密码登录系统前台,访问各项功能,享受个性化的购物体验。
首页:作为系统的主界面,首页为用户提供了防晒护肤品的推荐、热门活动展示等信息。同时,用户可以在此快速浏览常购商品或新品促销,方便快捷地找到心仪的产品。
通知公告:平台发布的各类重要公告或通知,如促销活动、特别产品推荐、平台维护时间等,都会显示在此模块。确保用户及时获取商城的最新动态和重要信息,提升用户体验。
新闻资讯:提供关于护肤知识、产品使用技巧等相关的资讯。用户可以通过阅读此模块的内容,了解更多关于护肤和健康的信息,帮助其做出更合适的产品选择。
购物商场:用户可以在购物商场中浏览各类护肤品,按类别、品牌、价格等条件进行筛选。系统提供详细的商品信息,包括图片、描述、价格和用户评价,帮助用户做出购买决策。
商城管理:
我的购物车:用户可以将心仪的商品添加到购物车,方便后续购买。购物车支持商品数量调整和删除功能,便于用户管理选购商品。
我的订单:用户可以查看自己的订单记录,包括订单状态、商品详情和支付信息。此功能帮助用户随时掌握订单动态。
我的地址:用户可以管理自己的收货地址,包括添加、编辑和删除地址,以便于快速下单。
我的优惠券:用户可以查看和管理获得的优惠券,系统提供优惠券的使用规则和有效期信息,帮助用户在购物时享受优惠。
好物推荐:系统根据用户的购买历史和浏览记录,智能推荐相关的护肤品和热销商品。通过个性化推荐,提升用户的购物体验,帮助用户发现更多心仪的产品。
我的账户:用户可以查看和管理自己的账户信息,包括个人资料、登录信息和安全设置。确保用户的账户信息安全,并可以随时更新个人资料。
个人中心:
个人首页:展示用户的基本信息和重要通知,提供一目了然的个人账户概览。
商品购买:用户可以查看自己购买的商品记录,包括购买时间、商品信息和订单状态,便于后续管理。
商品配送:用户可以查看商品的配送状态,实时获取物流信息,确保及时收到购买的商品。
商品评价:用户可以对购买的商品进行评价,分享使用体验,帮助其他用户做出购买决策。
商品投诉:用户可以对不满意的商品进行投诉,系统提供投诉渠道和处理进度查询,维护用户权益。
订单配送:用户可以查看订单的配送信息,包括发货状态和预计到达时间,确保及时了解订单动态。
收藏:用户可以将喜欢的商品添加到收藏夹,方便后续快速浏览和购买,提升购物的便利性。
(二)商家用户角色用例如下图所示。

图3.2商家用户用例图
商家用户具体功能说明如下所示。
后台首页:登录成功后,商家用户将进入系统的后台首页。首页提供了商家的工作概览。这一界面帮助商家快速了解当前的运营状态和待处理事项,提升管理效率。
好物推荐管理:商家用户可以管理自己店铺中的好物推荐,包括添加、修改和删除推荐商品。通过优化推荐内容,商家能够提升产品的曝光率,吸引更多用户关注和购买。
商品购买管理:商家用户可以查看所有商品的购买记录,包括用户购买的商品、数量、时间等信息。此功能帮助商家了解产品的销售情况,及时调整库存和营销策略。
商品配送管理:商家用户可以管理商品的配送状态,包括发货、运输和签收等环节。商家能够实时更新配送信息,确保用户及时获取物流动态,提高用户满意度。
商品评价管理:商家用户可以查看和管理用户对其商品的评价,审核评价内容,及时回复用户反馈。通过积极管理评价,商家可以提升产品的信誉度,增强用户的购买信心。
商品投诉管理:商家用户可以处理用户对商品的投诉,包括查看投诉内容、处理投诉请求和反馈处理结果。及时处理投诉有助于维护用户权益,提升用户对商家的信任。
客户信息管理:商家用户可以查看和添加客户的基本信息,包括联系方式、购买记录等。通过了解客户信息,商家能够更好地进行客户关系管理,提供个性化的服务。
通知公告管理:商家用户可以发布店铺的通知和公告,向用户传达重要信息和活动安排,如促销活动、新品上架等。确保用户能够及时获取商家的最新动态,增强与用户的互动。
资源管理(新闻资讯):商家用户可以查看与护肤相关的新闻资讯内容。
商城管理:
购物商场:商家用户可以管理自己店铺的商品展示,确保商品信息的准确性和完整性,提升用户的购物体验。
分类列表:商家可以维护商品分类,确保商品在商城中的合理分类,方便用户搜索和浏览,提升购物效率。
订单列表:商家可查看所有订单的详细信息,便于管理和跟踪。
订单配送:商家可以处理订单的配送流程,确保及时发货。
优惠券:商家可以创建和管理优惠券活动,吸引用户购买,提高销售额。
(三)管理员角色用例如下图所示。

图3.3管理员用例图
系统后台管理端管理员具体功能说明如下所示。
登录:管理员通过输入用户名和密码进行身份验证。系统采用安全的登录机制,确保只有经过授权的管理员可以访问管理后台,防止未授权访问和数据泄露,保障系统的安全性。
后台首页:登录成功后,管理员将进入系统的后台首页。首页提供了管理员的工作概览。这一界面帮助管理员快速了解系统的整体运行状态和待处理事项,提升管理效率。
系统用户管理:管理员可以管理系统中的用户,包括普通用户和商家用户。支持用户的新增、修改、删除和权限管理。通过角色分配,确保不同用户在系统中拥有适当的权限,促进系统的安全与高效运作。
商品类型管理:管理员可以查看和管理商品类型,包括添加新类型、编辑现有类型和删除不再使用的类型。此功能确保商品分类的清晰和准确,方便用户在商城中进行搜索和浏览。
好物推荐管理:管理员可以管理平台上的好物推荐,包括添加、修改和删除推荐商品。通过优化推荐内容,吸引用户关注,提高销售转化率,增强用户购物体验。
商品购买管理:管理员可以查看所有商品的购买记录,包括用户购买的商品、数量、时间等信息。此功能支持数据分析,帮助管理员了解用户偏好,优化商品库存和采购策略。
商品配送管理:管理员可以管理商品的配送状态,包括发货、运输和签收等环节。通过实时跟踪配送进度,确保用户能够及时获取配送信息,提高用户满意度。
商品评价管理:管理员可以查看和管理用户对商品的评价,审核评价内容,处理不当评价。这一功能帮助管理员了解用户对商品的真实反馈,促进商品质量的提升。
商品投诉管理:管理员可以处理用户对商品的投诉,包括查看投诉内容、处理投诉请求和反馈处理结果。及时处理投诉有助于维护用户权益,提升用户对平台的信任。
客户信息管理:管理员可以查看和管理客户的基本信息,包括联系方式、购买记录等。系统确保客户信息的安全与隐私,遵循相关法律法规,保护用户数据。
系统管理(轮播图):管理员可以管理网站的轮播图,包括添加、修改和删除轮播图内容,以确保首页展示的信息及时更新。通过吸引人的视觉内容,提升用户的浏览体验。
通知公告管理:管理员可以发布系统通知和公告,向用户传达重要信息和活动安排。确保用户能够及时获取商城动态和重要通知,提高信息传递的效率。
资源管理(新闻资讯、资讯分类):管理员可以管理平台上的新闻资讯内容和分类,发布护肤知识和产品信息。通过及时更新资讯内容,增强用户对平台的信任和粘性,提升用户的参与感。
商城管理:
购物商场:管理商城的整体布局,确保商品展示的合理性。
分类列表:维护商品分类的准确性和完整性,方便用户浏览。
订单列表:查看和管理所有用户订单,包括订单状态和处理情况。
订单配送:管理订单的配送流程,确保用户及时收到商品。
优惠券:创建和管理优惠券活动,吸引用户购买,增加销售机会。
3.3系统性能分析
对于“生态光彩”防晒护肤品店销售管理平台的设计与实现,下面是系统性能分析表:
表3.1性能需求表
|
项目 |
内容 |
|
响应时间 |
系统对用户请求的响应时间需在500ms以内 |
|
并发用户数 |
系统需要支持1000个并发用户同时访问 |
|
吞吐量 |
系统每秒需要处理1000个请求 |
|
可用性 |
系统需要保证每月99.9%的可用性 |
|
数据安全 |
用户敏感数据需要加密存储,并支持数据库备份和恢复 |
|
数据一致性 |
系统中的数据操作需保证ACID特性,确保数据一致性 |
|
扩展性 |
系统需要支持水平扩展,能够方便地增加服务器节点以应对高请求量 |
|
可维护性 |
系统代码需要清晰易懂、结构良好,方便团队成员维护和修改 |
|
日志记录 |
系统需要记录用户操作日志、异常日志以及系统运行日志 |
|
监控报警 |
系统需要实时监控运行状态,当系统异常时能够及时发送警报通知相关人员 |
|
缓存设置 |
针对频繁使用的数据,系统需要进行合适的缓 |
3.4系统流程分析
3.4.1程序操作流程
用户访问平台,可以选择进行注册或登录操作。注册成功后,用户可以使用注册的账号登录平台。登录后的用户可以进入系统功能界面,使用自己权限内的功能操作。程序操作流程图如下图所示。

图3.4程序操作流程图
3.4.2登录流程
用户访问平台,进入登录页面页面,入其用户名和密码,后端服务接收登录请求,验证用户提供的用户名和密码是否匹配数据库中存储的信息,验证通过即可登录成功。登录流程图如下图所示。

图3.5登录流程图
3.4.3注册流程
未有账号的用户可进入注册界面进行注册操作,填写注册表格,包括用户名、密码、电子邮件等必要信息。后台系统验证并保存用户提交的信息。分配唯一用户标识符。注册成功后,用户可以使用账号密码进行登录。用户注册流程图如下图所示。

图3.6注册流程图
4 系统设计
4.1总体设计
4.1.1框架设计
B/S架构,即浏览器/服务器架构,是一种基于Web的分布式计算范式。在此架构中,应用程序的逻辑被巧妙地区分为客户端和服务器两部分。具体而言,客户端借助广泛使用的浏览器界面,进行应用访问与操作;而服务器端则肩负起业务逻辑处理、数据存储及管理的核心职责。值得一提的是,客户端无需安装特定的软件,用户仅需通过浏览器输入相应的URL地址,即可轻松访问应用程序,这一特性极大地提升了用户的使用便捷性和系统的维护效率。服务器端通常采用高性能的计算机和数据库系统,能够处理大量并发请求和复杂的业务逻辑。B/S架构的优势在于其跨平台性和易于维护性,开发者可以通过更新服务器端的代码来实现整个系统的升级和维护,而无需逐一更新客户端。

图4.1系统架构图
4.1.2功能模块设计
功能模块设计是系统开发过程中的重要阶段,它旨在将系统划分为不同的模块,每个模块负责完成特定的功能或任务。“生态光彩”防晒护肤品店销售管理平台由多个功能模块组成,每个模块下又包含具体的功能操作。功能模块图如下图所示。

图4.2系统架构图
4.2数据库设计
4.2.1E-R图
E-R图有助于理清系统中的数据结构和关系,为后续的数据库表结构设计提供指导。在进行数据库设计之前,首先需要先绘制实体-关系(E-R)图。E-R图将帮助我们理清业务中的实体(Entity)及它们之间的关系(Relationship),从而为后续的数据库表设计提供基础。根据前文可以得出本“生态光彩”防晒护肤品店销售管理平台拥有多个实体,在此列举主要实体,各个实体之间联系总E-R图如下图所示。

图4.3总E-R图
4.2.1数据库表结构设计
在E-R图确定后,接下来可以根据实体和关系的属性设计数据库表结构。在E-R图明确了实体和它们之间的关系后,接下来可以开始设计数据库表结构。每个实体对应一个数据库表,每个属性对应表中的字段。如下列表格所示,在此列举主要数据表。
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
token_id |
int |
10 |
0 |
N |
Y |
临时访问牌ID |
|
|
2 |
token |
varchar |
64 |
0 |
Y |
N |
临时访问牌 |
|
|
3 |
info |
text |
65535 |
0 |
Y |
N |
||
|
4 |
maxage |
int |
10 |
0 |
N |
N |
2 |
最大寿命:默认2小时 |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
7 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户编号: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
address_id |
int |
10 |
0 |
N |
Y |
收货地址: |
|
|
2 |
name |
varchar |
32 |
0 |
Y |
N |
姓名: |
|
|
3 |
phone |
varchar |
13 |
0 |
Y |
N |
手机: |
|
|
4 |
postcode |
varchar |
8 |
0 |
Y |
N |
邮编: |
|
|
5 |
address |
varchar |
255 |
0 |
N |
N |
地址: |
|
|
6 |
user_id |
mediumint |
8 |
0 |
N |
N |
用户ID:[0,8388607]用户获取其他与用户相关的数据 |
|
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
9 |
default |
bit |
1 |
0 |
N |
N |
0 |
默认判断 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
article_id |
mediumint |
8 |
0 |
N |
Y |
文章id:[0,8388607] |
|
|
2 |
title |
varchar |
125 |
0 |
N |
Y |
标题:[0,125]用于文章和html的title标签中 |
|
|
3 |
type |
varchar |
64 |
0 |
N |
N |
0 |
文章分类:[0,1000]用来搜索指定类型的文章 |
|
4 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数:[0,1000000000]访问这篇文章的人次 |
|
5 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
|
6 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
7 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
8 |
source |
varchar |
255 |
0 |
Y |
N |
来源:[0,255]文章的出处 |
|
|
9 |
url |
varchar |
255 |
0 |
Y |
N |
来源地址:[0,255]用于跳转到发布该文章的网站 |
|
|
10 |
tag |
varchar |
255 |
0 |
Y |
N |
标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 |
|
|
11 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文:文章的主体内容 |
|
|
12 |
img |
varchar |
255 |
0 |
Y |
N |
封面图 |
|
|
13 |
description |
text |
65535 |
0 |
Y |
N |
文章描述 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
type_id |
smallint |
5 |
0 |
N |
Y |
分类ID:[0,10000] |
|
|
2 |
display |
smallint |
5 |
0 |
N |
N |
100 |
显示顺序:[0,1000]决定分类显示的先后顺序 |
|
3 |
name |
varchar |
16 |
0 |
N |
N |
分类名称:[2,16] |
|
|
4 |
father_id |
smallint |
5 |
0 |
N |
N |
0 |
上级分类ID:[0,32767] |
|
5 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]描述该分类的作用 |
|
|
6 |
icon |
text |
65535 |
0 |
Y |
N |
分类图标: |
|
|
7 |
url |
varchar |
255 |
0 |
Y |
N |
外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 |
|
|
8 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
auth_id |
int |
10 |
0 |
N |
Y |
授权ID: |
|
|
2 |
user_group |
varchar |
64 |
0 |
Y |
N |
用户组: |
|
|
3 |
mod_name |
varchar |
64 |
0 |
Y |
N |
模块名: |
|
|
4 |
table_name |
varchar |
64 |
0 |
Y |
N |
表名: |
|
|
5 |
page_title |
varchar |
255 |
0 |
Y |
N |
页面标题: |
|
|
6 |
path |
varchar |
255 |
0 |
Y |
N |
路由路径: |
|
|
7 |
parent |
varchar |
64 |
0 |
Y |
N |
父级菜单 |
|
|
8 |
parent_sort |
int |
10 |
0 |
N |
N |
0 |
父级菜单排序 |
|
9 |
position |
varchar |
32 |
0 |
Y |
N |
位置: |
|
|
10 |
mode |
varchar |
32 |
0 |
N |
N |
_blank |
跳转方式: |
|
11 |
add |
tinyint |
3 |
0 |
N |
N |
1 |
是否可增加: |
|
12 |
del |
tinyint |
3 |
0 |
N |
N |
1 |
是否可删除: |
|
13 |
set |
tinyint |
3 |
0 |
N |
N |
1 |
是否可修改: |
|
14 |
get |
tinyint |
3 |
0 |
N |
N |
1 |
是否可查看: |
|
15 |
field_add |
text |
65535 |
0 |
Y |
N |
添加字段: |
|
|
16 |
field_set |
text |
65535 |
0 |
Y |
N |
修改字段: |
|
|
17 |
field_get |
text |
65535 |
0 |
Y |
N |
查询字段: |
|
|
18 |
table_nav_name |
varchar |
500 |
0 |
Y |
N |
跨表导航名称: |
|
|
19 |
table_nav |
varchar |
500 |
0 |
Y |
N |
跨表导航: |
|
|
20 |
option |
text |
65535 |
0 |
Y |
N |
配置: |
|
|
21 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
22 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
cart_id |
int |
10 |
0 |
N |
Y |
购物车ID: |
|
|
2 |
title |
varchar |
64 |
0 |
Y |
N |
标题: |
|
|
3 |
img |
varchar |
255 |
0 |
N |
N |
0 |
图片: |
|
4 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID: |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
7 |
state |
int |
10 |
0 |
N |
N |
0 |
状态:使用中,已失效 |
|
8 |
price |
double |
9 |
2 |
N |
N |
0.00 |
单价: |
|
9 |
price_ago |
double |
9 |
2 |
N |
N |
0.00 |
原价: |
|
10 |
price_count |
double |
11 |
2 |
N |
N |
0.00 |
总价: |
|
11 |
num |
int |
10 |
0 |
N |
N |
1 |
数量: |
|
12 |
goods_id |
mediumint |
8 |
0 |
N |
N |
商品id:[0,8388607] |
|
|
13 |
type |
varchar |
64 |
0 |
N |
N |
未分类 |
商品分类: |
|
14 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]用于产品规格描述 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
code_token_id |
int |
10 |
0 |
N |
Y |
||
|
2 |
token |
varchar |
255 |
0 |
Y |
N |
||
|
3 |
code |
varchar |
255 |
0 |
Y |
N |
验证码 |
|
|
4 |
expire_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
失效时间 |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
collect_id |
int |
10 |
0 |
N |
Y |
收藏ID: |
|
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
收藏人ID: |
|
3 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
4 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
5 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
6 |
title |
varchar |
255 |
0 |
Y |
N |
标题: |
|
|
7 |
img |
varchar |
255 |
0 |
Y |
N |
封面: |
|
|
8 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
comment_id |
int |
10 |
0 |
N |
Y |
评论ID: |
|
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
评论人ID: |
|
3 |
reply_to_id |
int |
10 |
0 |
N |
N |
0 |
回复评论ID:空为0 |
|
4 |
content |
longtext |
2147483647 |
0 |
Y |
N |
内容: |
|
|
5 |
nickname |
varchar |
255 |
0 |
Y |
N |
昵称: |
|
|
6 |
avatar |
varchar |
255 |
0 |
Y |
N |
头像地址:[0,255] |
|
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
9 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
10 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
11 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
coupon_id |
int |
10 |
0 |
N |
Y |
优惠券id |
|
|
2 |
coupon_user_id |
int |
10 |
0 |
Y |
N |
优惠券用户id |
|
|
3 |
coupon_user_auth |
varchar |
255 |
0 |
Y |
N |
优惠券用户 |
|
|
4 |
coupon_name |
varchar |
255 |
0 |
Y |
N |
优惠券名称 |
|
|
5 |
coupon_price |
int |
10 |
0 |
Y |
N |
优惠券价格 |
|
|
6 |
coupon_price1 |
int |
10 |
0 |
Y |
N |
优惠券券后价格 |
|
|
7 |
coupon_time |
varchar |
255 |
0 |
Y |
N |
优惠券时间 |
|
|
8 |
coupon_type |
varchar |
255 |
0 |
Y |
N |
优惠券类型 |
|
|
9 |
create_time |
timestamp |
19 |
0 |
Y |
N |
CURRENT_TIMESTAMP |
|
|
10 |
update_time |
timestamp |
19 |
0 |
Y |
N |
CURRENT_TIMESTAMP |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
id |
int |
10 |
0 |
N |
Y |
id |
|
|
2 |
user_id |
int |
10 |
0 |
Y |
N |
用户id |
|
|
3 |
coupon_id |
int |
10 |
0 |
Y |
N |
优惠券id |
|
|
4 |
is_use |
int |
10 |
0 |
Y |
N |
是否使用 |
|
|
5 |
coupon_user_id |
int |
10 |
0 |
Y |
N |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
customer_information_id |
int |
10 |
0 |
N |
Y |
客户信息ID |
|
|
2 |
customer_users |
int |
10 |
0 |
Y |
N |
0 |
顾客用户 |
|
3 |
user_name |
varchar |
64 |
0 |
Y |
N |
用户姓名 |
|
|
4 |
purchase_frequency |
double |
9 |
2 |
Y |
N |
0.00 |
购买次数 |
|
5 |
purchase_amount |
double |
9 |
2 |
Y |
N |
0.00 |
购买金额 |
|
6 |
purchase_date |
date |
10 |
0 |
Y |
N |
购买日期 |
|
|
7 |
customer_preferences |
varchar |
64 |
0 |
Y |
N |
客户偏好 |
|
|
8 |
customer_quality |
varchar |
64 |
0 |
Y |
N |
客户质量 |
|
|
9 |
content_validity |
text |
65535 |
0 |
Y |
N |
内容简介 |
|
|
10 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
11 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
goods_id |
mediumint |
8 |
0 |
N |
Y |
产品id:[0,8388607] |
|
|
2 |
title |
varchar |
125 |
0 |
Y |
N |
标题:[0,125]用于产品和html的<title>标签中 |
|
|
3 |
img |
text |
65535 |
0 |
Y |
N |
封面图:用于显示于产品列表页 |
|
|
4 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]用于产品规格描述 |
|
|
5 |
price_ago |
double |
8 |
2 |
N |
N |
0.00 |
原价:[1] |
|
6 |
price |
double |
8 |
2 |
N |
N |
0.00 |
卖价:[1] |
|
7 |
sales |
int |
10 |
0 |
N |
N |
0 |
销量:[0,1000000000] |
|
8 |
inventory |
int |
10 |
0 |
N |
N |
0 |
商品库存 |
|
9 |
type |
varchar |
64 |
0 |
N |
N |
商品分类: |
|
|
10 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击量:[0,1000000000]访问这篇产品的人次 |
|
11 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文:产品的主体内容 |
|
|
12 |
img_1 |
text |
65535 |
0 |
Y |
N |
主图1: |
|
|
13 |
img_2 |
text |
65535 |
0 |
Y |
N |
主图2: |
|
|
14 |
img_3 |
text |
65535 |
0 |
Y |
N |
主图3: |
|
|
15 |
img_4 |
text |
65535 |
0 |
Y |
N |
主图4: |
|
|
16 |
img_5 |
text |
65535 |
0 |
Y |
N |
主图5: |
|
|
17 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
18 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
19 |
customize_field |
text |
65535 |
0 |
Y |
N |
自定义字段 |
|
|
20 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
21 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
22 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
23 |
user_id |
int |
10 |
0 |
Y |
N |
0 |
添加人 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
type_id |
int |
10 |
0 |
N |
Y |
商品分类ID: |
|
|
2 |
father_id |
smallint |
5 |
0 |
N |
N |
0 |
上级分类ID:[0,32767] |
|
3 |
name |
varchar |
255 |
0 |
Y |
N |
商品名称: |
|
|
4 |
desc |
varchar |
255 |
0 |
Y |
N |
描述: |
|
|
5 |
icon |
varchar |
255 |
0 |
Y |
N |
图标: |
|
|
6 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
7 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
8 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
hits_id |
int |
10 |
0 |
N |
Y |
点赞ID: |
|
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
点赞人: |
|
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
logistics_delivery_id |
int |
10 |
0 |
N |
Y |
物流配送ID |
|
|
2 |
order_number |
varchar |
64 |
0 |
Y |
N |
订单号 |
|
|
3 |
product_name |
varchar |
64 |
0 |
Y |
N |
商品名称 |
|
|
4 |
purchase_quantity |
varchar |
64 |
0 |
Y |
N |
购买数量 |
|
|
5 |
total_transaction_amount |
double |
11 |
2 |
Y |
N |
0.00 |
交易总额 |
|
6 |
the_date_of_issuance |
date |
10 |
0 |
Y |
N |
发货日期 |
|
|
7 |
delivery_number |
varchar |
30 |
0 |
Y |
N |
配送订单 |
|
|
8 |
ordinary_users |
int |
10 |
0 |
Y |
N |
0 |
普通用户 |
|
9 |
shipping_address |
varchar |
64 |
0 |
Y |
N |
收货地址 |
|
|
10 |
delivery_status |
varchar |
64 |
0 |
Y |
N |
配送状态 |
|
|
11 |
signing_status |
varchar |
64 |
0 |
Y |
N |
签收状态 |
|
|
12 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
|
13 |
contact_name |
varchar |
255 |
0 |
Y |
N |
联系人名字 |
|
|
14 |
merchant_id |
int |
10 |
0 |
Y |
N |
商家id |
|
|
15 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
16 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
merchant_users_id |
int |
10 |
0 |
N |
Y |
商家用户ID |
|
|
2 |
merchant_name |
varchar |
64 |
0 |
Y |
N |
商家姓名 |
|
|
3 |
merchant_gender |
varchar |
64 |
0 |
Y |
N |
商家性别 |
|
|
4 |
contact_information |
varchar |
64 |
0 |
Y |
N |
联系方式 |
|
|
5 |
examine_state |
varchar |
16 |
0 |
N |
N |
未审核 |
审核状态 |
|
6 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
|
7 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
notice_id |
mediumint |
8 |
0 |
N |
Y |
公告id: |
|
|
2 |
title |
varchar |
125 |
0 |
N |
N |
标题: |
|
|
3 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文: |
|
|
4 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
order_id |
int |
10 |
0 |
N |
Y |
订单ID: |
|
|
2 |
order_number |
varchar |
64 |
0 |
Y |
N |
订单号: |
|
|
3 |
goods_id |
mediumint |
8 |
0 |
N |
N |
商品id:[0,8388607] |
|
|
4 |
title |
varchar |
255 |
0 |
Y |
N |
商品标题: |
|
|
5 |
img |
varchar |
255 |
0 |
Y |
N |
商品图片: |
|
|
6 |
price |
double |
10 |
2 |
N |
N |
0.00 |
价格: |
|
7 |
price_ago |
double |
10 |
2 |
N |
N |
0.00 |
原价: |
|
8 |
num |
int |
10 |
0 |
N |
N |
1 |
数量: |
|
9 |
price_count |
double |
8 |
2 |
N |
N |
0.00 |
总价: |
|
10 |
norms |
varchar |
255 |
0 |
Y |
N |
规格: |
|
|
11 |
type |
varchar |
64 |
0 |
N |
N |
未分类 |
商品分类: |
|
12 |
contact_name |
varchar |
32 |
0 |
Y |
N |
联系人姓名: |
|
|
13 |
contact_email |
varchar |
125 |
0 |
Y |
N |
联系人邮箱: |
|
|
14 |
contact_phone |
varchar |
11 |
0 |
Y |
N |
联系人手机: |
|
|
15 |
contact_address |
varchar |
255 |
0 |
Y |
N |
收件地址: |
|
|
16 |
postal_code |
varchar |
9 |
0 |
Y |
N |
邮政编码: |
|
|
17 |
user_id |
int |
10 |
0 |
N |
N |
0 |
买家ID: |
|
18 |
merchant_id |
mediumint |
8 |
0 |
N |
N |
0 |
商家ID: |
|
19 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
20 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
21 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]用于产品规格描述 |
|
|
22 |
state |
varchar |
16 |
0 |
N |
N |
待付款 |
订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成 |
|
23 |
remark |
text |
65535 |
0 |
Y |
N |
订单备注 |
|
|
24 |
delivery_state |
varchar |
16 |
0 |
Y |
N |
未配送 |
发货状态:未配送,已配送 |
|
25 |
vip_discount |
double |
11 |
2 |
Y |
N |
0.00 |
折扣 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
ordinary_users_id |
int |
10 |
0 |
N |
Y |
普通用户ID |
|
|
2 |
user_name |
varchar |
64 |
0 |
Y |
N |
用户姓名 |
|
|
3 |
contact_information |
varchar |
64 |
0 |
Y |
N |
联系方式 |
|
|
4 |
user_gender |
varchar |
64 |
0 |
Y |
N |
用户性别 |
|
|
5 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
|
6 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
|
7 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
praise_id |
int |
10 |
0 |
N |
Y |
点赞ID: |
|
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
点赞人: |
|
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
8 |
status |
bit |
1 |
0 |
N |
N |
1 |
点赞状态:1为点赞,0已取消 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
product_complaints_id |
int |
10 |
0 |
N |
Y |
商品投诉ID |
|
|
2 |
product_name |
varchar |
64 |
0 |
Y |
N |
商品名称 |
|
|
3 |
product_code |
varchar |
64 |
0 |
Y |
N |
商品编号 |
|
|
4 |
commodity_price |
double |
9 |
2 |
Y |
N |
0.00 |
商品价格 |
|
5 |
merchant_users |
int |
10 |
0 |
Y |
N |
0 |
商家用户 |
|
6 |
ordinary_users |
int |
10 |
0 |
Y |
N |
0 |
普通用户 |
|
7 |
purchase_quantity |
double |
9 |
2 |
Y |
N |
0.00 |
购买数量 |
|
8 |
complaint_content |
text |
65535 |
0 |
Y |
N |
投诉内容 |
|
|
9 |
examine_state |
varchar |
16 |
0 |
N |
N |
未审核 |
审核状态 |
|
10 |
examine_reply |
varchar |
16 |
0 |
Y |
N |
审核回复 |
|
|
11 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
12 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
13 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 |
|
|
14 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID |
|
|
15 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
product_delivery_id |
int |
10 |
0 |
N |
Y |
商品配送ID |
|
|
2 |
merchant_users |
int |
10 |
0 |
Y |
N |
0 |
商家用户 |
|
3 |
product_name |
varchar |
64 |
0 |
Y |
N |
商品名称 |
|
|
4 |
product_code |
varchar |
64 |
0 |
Y |
N |
商品编号 |
|
|
5 |
commodity_price |
varchar |
64 |
0 |
Y |
N |
商品价格 |
|
|
6 |
ordinary_users |
int |
10 |
0 |
Y |
N |
0 |
普通用户 |
|
7 |
purchase_quantity |
varchar |
64 |
0 |
Y |
N |
购买数量 |
|
|
8 |
delivery_address |
varchar |
64 |
0 |
Y |
N |
配送地址 |
|
|
9 |
delivery_status |
varchar |
64 |
0 |
Y |
N |
配送状态 |
|
|
10 |
delivery_remarks |
text |
65535 |
0 |
Y |
N |
配送备注 |
|
|
11 |
product_evaluation_limit_times |
int |
10 |
0 |
N |
N |
1 |
评价限制次数 |
|
12 |
product_complaints_limit_times |
int |
10 |
0 |
N |
N |
1 |
投诉限制次数 |
|
13 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
14 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
15 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 |
|
|
16 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID |
|
|
17 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
product_evaluation_id |
int |
10 |
0 |
N |
Y |
商品评价ID |
|
|
2 |
product_name |
varchar |
64 |
0 |
Y |
N |
商品名称 |
|
|
3 |
product_code |
varchar |
64 |
0 |
Y |
N |
商品编号 |
|
|
4 |
commodity_price |
double |
9 |
2 |
Y |
N |
0.00 |
商品价格 |
|
5 |
merchant_users |
int |
10 |
0 |
Y |
N |
0 |
商家用户 |
|
6 |
ordinary_users |
int |
10 |
0 |
Y |
N |
0 |
普通用户 |
|
7 |
purchase_quantity |
double |
9 |
2 |
Y |
N |
0.00 |
购买数量 |
|
8 |
product_evaluation |
varchar |
64 |
0 |
Y |
N |
商品评价 |
|
|
9 |
feedback_content |
text |
65535 |
0 |
Y |
N |
反馈内容 |
|
|
10 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
11 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
12 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 |
|
|
13 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID |
|
|
14 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
product_purchase_id |
int |
10 |
0 |
N |
Y |
商品购买ID |
|
|
2 |
product_name |
varchar |
64 |
0 |
Y |
N |
商品名称 |
|
|
3 |
product_code |
varchar |
64 |
0 |
Y |
N |
商品编号 |
|
|
4 |
commodity_price |
double |
9 |
2 |
Y |
N |
0.00 |
商品价格 |
|
5 |
merchant_users |
int |
10 |
0 |
Y |
N |
0 |
商家用户 |
|
6 |
merchant_name |
varchar |
64 |
0 |
Y |
N |
商家姓名 |
|
|
7 |
ordinary_users |
int |
10 |
0 |
Y |
N |
0 |
普通用户 |
|
8 |
user_name |
varchar |
64 |
0 |
Y |
N |
用户姓名 |
|
|
9 |
contact_information |
varchar |
64 |
0 |
Y |
N |
联系方式 |
|
|
10 |
purchase_quantity |
double |
9 |
2 |
Y |
N |
0.00 |
购买数量 |
|
11 |
total_payment |
varchar |
64 |
0 |
Y |
N |
合计支付 |
|
|
12 |
delivery_address |
varchar |
64 |
0 |
Y |
N |
配送地址 |
|
|
13 |
purchase_remarks |
text |
65535 |
0 |
Y |
N |
购买备注 |
|
|
14 |
pay_state |
varchar |
16 |
0 |
N |
N |
未支付 |
支付状态 |
|
15 |
pay_type |
varchar |
16 |
0 |
Y |
N |
支付类型: 微信、支付宝、网银 |
|
|
16 |
product_delivery_limit_times |
int |
10 |
0 |
N |
N |
0 |
配送限制次数 |
|
17 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
18 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
19 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表 |
|
|
20 |
source_id |
int |
10 |
0 |
Y |
N |
来源ID |
|
|
21 |
source_user_id |
int |
10 |
0 |
Y |
N |
来源用户 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
product_type_id |
int |
10 |
0 |
N |
Y |
商品类型ID |
|
|
2 |
product_type |
varchar |
64 |
0 |
Y |
N |
商品类型 |
|
|
3 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
recommended_items_id |
int |
10 |
0 |
N |
Y |
好物推荐ID |
|
|
2 |
product_name |
varchar |
64 |
0 |
Y |
N |
商品名称 |
|
|
3 |
product_code |
varchar |
64 |
0 |
Y |
N |
商品编号 |
|
|
4 |
product_type |
varchar |
64 |
0 |
Y |
N |
商品类型 |
|
|
5 |
commodity_price |
double |
9 |
2 |
Y |
N |
0.00 |
商品价格 |
|
6 |
date_of_manufacture |
date |
10 |
0 |
Y |
N |
生产日期 |
|
|
7 |
guarantee_date |
date |
10 |
0 |
Y |
N |
保质日期 |
|
|
8 |
product_images |
varchar |
255 |
0 |
Y |
N |
商品图片 |
|
|
9 |
merchant_users |
int |
10 |
0 |
Y |
N |
0 |
商家用户 |
|
10 |
merchant_name |
varchar |
64 |
0 |
Y |
N |
商家姓名 |
|
|
11 |
product_introduction |
longtext |
2147483647 |
0 |
Y |
N |
商品简介 |
|
|
12 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数 |
|
13 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
|
14 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
|
15 |
product_purchase_limit_times |
int |
10 |
0 |
N |
N |
0 |
购买限制次数 |
|
16 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
17 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
schedule_id |
smallint |
5 |
0 |
N |
Y |
日程ID:[0,32767] |
|
|
2 |
content |
varchar |
255 |
0 |
Y |
N |
日程内容 |
|
|
3 |
scheduled_time |
datetime |
19 |
0 |
Y |
N |
计划时间 |
|
|
4 |
user_id |
int |
10 |
0 |
N |
N |
用户id |
|
|
5 |
create_time |
datetime |
19 |
0 |
Y |
N |
创建时间 |
|
|
6 |
update_time |
datetime |
19 |
0 |
Y |
N |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
score_id |
int |
10 |
0 |
N |
Y |
评分ID: |
|
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
评分人: |
|
3 |
nickname |
varchar |
64 |
0 |
Y |
N |
昵称: |
|
|
4 |
score_num |
double |
5 |
2 |
N |
N |
0.00 |
评分: |
|
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
7 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
8 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
9 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
shopping_mall_id |
int |
10 |
0 |
N |
Y |
购物商场ID |
|
|
2 |
product_specifications |
varchar |
64 |
0 |
Y |
N |
产品规格 |
|
|
3 |
healthy_ingredients |
varchar |
64 |
0 |
Y |
N |
健康成分 |
|
|
4 |
usage_method |
varchar |
64 |
0 |
Y |
N |
使用方法 |
|
|
5 |
merchant_users |
int |
10 |
0 |
Y |
N |
0 |
商家用户 |
|
6 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
|
7 |
cart_title |
varchar |
125 |
0 |
Y |
N |
标题:[0,125]用于产品html的标签中 |
|
|
8 |
cart_img |
text |
65535 |
0 |
Y |
N |
封面图:用于显示于产品列表页 |
|
|
9 |
cart_description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]用于产品规格描述 |
|
|
10 |
cart_price_ago |
double |
8 |
2 |
N |
N |
0.00 |
原价:[1] |
|
11 |
cart_price |
double |
8 |
2 |
N |
N |
0.00 |
卖价:[1] |
|
12 |
cart_inventory |
int |
10 |
0 |
N |
N |
0 |
商品库存 |
|
13 |
cart_type |
varchar |
64 |
0 |
N |
N |
未分类 |
商品分类: |
|
14 |
cart_content |
longtext |
2147483647 |
0 |
Y |
N |
正文:产品的主体内容 |
|
|
15 |
cart_img_1 |
text |
65535 |
0 |
Y |
N |
主图1: |
|
|
16 |
cart_img_2 |
text |
65535 |
0 |
Y |
N |
主图2: |
|
|
17 |
cart_img_3 |
text |
65535 |
0 |
Y |
N |
主图3: |
|
|
18 |
cart_img_4 |
text |
65535 |
0 |
Y |
N |
主图4: |
|
|
19 |
cart_img_5 |
text |
65535 |
0 |
Y |
N |
主图5: |
|
|
20 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
|
21 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
slides_id |
int |
10 |
0 |
N |
Y |
轮播图ID: |
|
|
2 |
title |
varchar |
64 |
0 |
Y |
N |
标题: |
|
|
3 |
content |
varchar |
255 |
0 |
Y |
N |
内容: |
|
|
4 |
url |
varchar |
255 |
0 |
Y |
N |
链接: |
|
|
5 |
img |
varchar |
255 |
0 |
Y |
N |
轮播图: |
|
|
6 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击量: |
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
upload_id |
int |
10 |
0 |
N |
Y |
上传ID |
|
|
2 |
name |
varchar |
64 |
0 |
Y |
N |
文件名 |
|
|
3 |
path |
varchar |
255 |
0 |
Y |
N |
访问路径 |
|
|
4 |
file |
varchar |
255 |
0 |
Y |
N |
文件路径 |
|
|
5 |
display |
varchar |
255 |
0 |
Y |
N |
显示顺序 |
|
|
6 |
father_id |
int |
10 |
0 |
Y |
N |
0 |
父级ID |
|
7 |
dir |
varchar |
255 |
0 |
Y |
N |
文件夹 |
|
|
8 |
type |
varchar |
32 |
0 |
Y |
N |
文件类型 |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
user_id |
int |
10 |
0 |
N |
Y |
用户ID:[0,8388607]用户获取其他与用户相关的数据 |
|
|
2 |
state |
smallint |
5 |
0 |
N |
N |
1 |
账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
|
3 |
user_group |
varchar |
32 |
0 |
Y |
N |
所在用户组:[0,32767]决定用户身份和权限 |
|
|
4 |
login_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
上次登录时间: |
|
5 |
phone |
varchar |
11 |
0 |
Y |
N |
手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 |
|
|
6 |
phone_state |
smallint |
5 |
0 |
N |
N |
0 |
手机认证:[0,1](0未认证|1审核中|2已认证) |
|
7 |
username |
varchar |
16 |
0 |
N |
N |
用户名:[0,16]用户登录时所用的账户名称 |
|
|
8 |
nickname |
varchar |
16 |
0 |
Y |
N |
昵称:[0,16] |
|
|
9 |
password |
varchar |
64 |
0 |
N |
N |
密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 |
|
|
10 |
|
varchar |
64 |
0 |
Y |
N |
邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 |
|
|
11 |
email_state |
smallint |
5 |
0 |
N |
N |
0 |
邮箱认证:[0,1](0未认证|1审核中|2已认证) |
|
12 |
avatar |
varchar |
255 |
0 |
Y |
N |
头像地址:[0,255] |
|
|
13 |
open_id |
varchar |
255 |
0 |
Y |
N |
针对获取用户信息字段 |
|
|
14 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
|
1 |
group_id |
mediumint |
8 |
0 |
N |
Y |
用户组ID:[0,8388607] |
|
|
2 |
display |
smallint |
5 |
0 |
N |
N |
100 |
显示顺序:[0,1000] |
|
3 |
name |
varchar |
16 |
0 |
N |
N |
名称:[0,16] |
|
|
4 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]描述该用户组的特点或权限范围 |
|
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
|
8 |
register |
smallint |
5 |
0 |
Y |
N |
0 |
注册位置: |
|
9 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
|
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
5 系统实现
5.1普通用户模块
5.1.1用户登录界面
用户输入用户名和密码后,系统首先对这些输入进行基本的格式验证,确保用户名和密码符合系统设定的格式要求(如长度、特殊字符要求等)。系统接收到用户输入后,会根据用户名查找系统中存储的用户信息数据库或者其他持久化存储方式。系统需要验证密码的正确性,验证成功即可成功登录。

图5.1用户登录界面设计
登录关键代码如下:
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
Duration duration = Duration.ofSeconds(7200L);
redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
5.1.2用户注册界面
用户注册时,系统要求用户提供必要的信息,例如用户名、密码、电子邮件地址等。这些信息通常由用户在注册表单中输入,并通过前端验证确保格式的正确性。注册过程完成后,系统会为新用户创建一个账户。这包括分配一个唯一的用户ID和设置初始的权限或者角色。

图5.2用户注册界面设计
注册关键代码如下:
/**
* 注册
* @param user
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(@RequestBody User user) {
// 查询用户
Map<String, String> query = new HashMap<>();
Map<String,Object> map = JSON.parseObject(JSON.toJSONString(user));
query.put("username",user.getUsername());
List list = service.selectBaseList(service.select(query, new HashMap<>()));
if (list.size()>0){
return error(30000, "用户已存在");
}
map.put("password",service.encryption(String.valueOf(map.get("password"))));
service.insert(map);
return success(1);
}
5.1.3新闻资讯界面
提供关于护肤知识、产品使用技巧等相关的资讯。用户可以通过阅读此模块的内容,了解更多关于护肤的信息,帮助其做出更合适的产品选择。在详情页面可以点赞、评论和收藏。
新闻资讯主界面图如下所示。

图5.3新闻资讯主界面设计
5.1.4购物商场界面
在购物商场中,用户可以轻松浏览各类护肤品,并通过类别、品牌、价格等条件进行筛选。系统提供详细的商品信息,包括清晰的图片、详尽的描述、价格以及用户评价,帮助用户做出明智的购买决策。此外,智能推荐功能会根据用户的购买历史和偏好,将相关产品优先展示,进一步提升购物体验,确保用户能够找到最适合自己的护肤品。
购物商场主界面图如下所示。

图5.4购物商场主界面设计
5.1.5我的订单界面
提供用户的历史订单和当前订单的详细信息,包括每个订单的状态、预计送达时间、护肤品明细等。
我的订单主界面图如下所示。

图5.5我的订单主界面设计
5.1.6我的地址界面
用户可以管理自己的收货地址,确保商品送达时的准确性。支持新增、修改、删除收货地址。
我的地址主界面图如下所示。

图5.6我的地址主界面设计
5.1.7好物推荐界面
系统根据用户的购买历史和浏览记录,智能推荐相关的护肤品和热销商品。通过个性化推荐,提升用户的购物体验,帮助用户发现更多心仪的产品。
好物推荐主界面图如下所示。

图5.7好物推荐主界面设计
5.1.8商品投诉界面
用户可以对不满意的商品进行投诉,系统提供投诉渠道和处理进度查询,维护用户权益。
商品投诉主界面图如下所示。

图5.8商品投诉主界面设计
5.2商家用户模块
5.2.1好物推荐管理界面
商家用户可以管理自己店铺中的好物推荐,包括添加、修改和删除推荐商品。通过优化推荐内容,商家能够提升产品的曝光率,吸引更多用户关注和购买。
好物推荐管理主界面图如下所示。

图5.9好物推荐管理界面设计
5.2.2商品购买管理界面
商家用户可以查看所有商品的购买记录,包括用户购买的商品、数量、时间等信息。此功能帮助商家了解产品的销售情况,及时调整库存和营销策略。
商品购买管理主界面图如下所示。

图5.10商品购买管理界面设计
5.2.3商品配送管理界面
商家用户可以管理商品的配送状态,包括发货、运输和签收等环节。商家能够实时更新配送信息,确保用户及时获取物流动态,提高用户满意度。
商品配送管理主界面图如下所示。

图5.11商品配送管理界面设计
5.2.4客户信息管理界面
商家用户可以查看和添加客户的基本信息,包括联系方式、购买记录等。通过了解客户信息,商家能够更好地进行客户关系管理,提供个性化的服务。
客户信息管理主界面图如下所示。

图5.12客户信息管理界面设计
5.2.5分类列表界面
商家能够设置商品分类,方便用户快速找到所需产品。
分类列表主界面图如下所示。

图5.13分类列表界面设计
5.3后台管理员模块
5.3.1系统用户界面
管理员可对普通用户、商家用户和管理员等用户信息进行管控,包括进行增删改查操作,可点击详情进行查阅。
系统用户主界面图如下所示。

图5.14系统用户界面设计
添加系统用户信息关键代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
5.3.2商品类型管理界面
管理员可以查看和管理商品类型,包括添加新类型、编辑现有类型和删除不再使用的类型。此功能确保商品分类的清晰和准确,方便用户在商城中进行搜索和浏览。
商品类型管理主界面图如下所示。

图5.15商品类型管理界面设计
5.3.3好物推荐管理界面
管理员可以管理平台上的好物推荐,包括添加、修改和删除推荐商品。通过优化推荐内容,吸引用户关注,提高销售转化率,增强用户购物体验。
好物推荐管理界面如下所示。

图5.16好物推荐管理界面设计
5.3.4系统管理界面
管理员可以对轮播图进行管理,包括添加、修改、删除轮播图,设置轮播图属性等。
系统管理界面如下所示。

图5.17系统管理界面设计
5.3.5通知公告管理界面
管理员可以发布公告信息,所有用户都可以查看公告信息。同时,管理员还需要能够查看和管理所有公告信息。
通知公告管理界面如下所示。

图5.18通知公告管理界面设计
上传图片关键代码如下:
@PostMapping("/upload")
public Map<String, Object> upload(@RequestParam("file") MultipartFile file) {
log.info("进入方法");
if (file.isEmpty()) {
return error(30000, "没有选择文件");
}
try {
//判断有没路径,没有则创建
String filePath = System.getProperty("user.dir") + "/src/main/resources/static/";
File targetDir = new File(filePath);
if (!targetDir.exists() && !targetDir.isDirectory()) {
if (targetDir.mkdirs()) {
log.info("创建目录成功");
} else {
log.error("创建目录失败");
}
}
String fileName = file.getOriginalFilename();
File dest = new File(filePath + fileName);
log.info("文件路径:{}", dest.getPath());
log.info("文件名:{}", dest.getName());
file.transferTo(dest);
JSONObject jsonObject = new JSONObject();
jsonObject.put("url", "/api/upload/" + fileName);
return success(jsonObject);
} catch (IOException e) {
log.info("上传失败:{}", e.getMessage());
}
return error(30000, "上传失败");
5.3.6资源管理界面
管理员可以管理平台上的新闻资讯内容和分类,发布护肤知识和产品信息。通过及时更新资讯内容,增强用户对平台的信任和粘性,提升用户的参与感。
资源管理界面如下所示。

图5.19资源管理详情界面设计
6 系统测试
6.1测试目的与意义
在软件开发生命周期中,系统测试占据着举足轻重的地位。通过进行全面而系统的测试,我们能够确保软件在实际使用环境中具备稳定运行的能力,从而满足用户的多样化需求,并显著提升软件的整体质量与可靠性。这一过程不仅有助于识别并修复潜在问题,还能为软件的持续优化提供有力支撑。
随着现代信息的快速发展,在社会各大领域中已经都开始应用网络信息技术,在应用网络技术的同时人们也开始把软件的质量问题作为了一个重要焦点来关注,因为一个软件的好与坏它决定着这个系统在市场上的生存,所以我们必须要把软件质量来做好,这样才有一定的生存能力。对于用户来说它们首先选用的都是保证这个系统软件的质量问题,因为一个系统的软件质量决定着用户在后期上成本经济的问题。图6-1就是纠错测试流程。

图6.1测试与纠错信息流程
6.2测试用例
在系统的功能验证阶段,我们将对全部的功能界面进行全面测试。具体而言,我们将模拟用户行为,输入各类数据并进行提交操作,随后仔细观察和分析每个页面的响应反馈。这一过程旨在验证系统的功能完整性,确保页面所呈现的功能与预期相符,并能够完全实现预设的交互逻辑。通过这种全面细致的测试方法,我们将确保系统在实际应用中能够稳定、准确地响应用户需求。
下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
表6.1系统登录功能测试用例
|
功能描述 |
用于系统登录 |
|
|
测试目的 |
检测登录时的合法性检查 |
|
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
输入的用户名和密码带有非法字符 |
提示用户名或者密码错误 |
与预期结果一致 |
|
输入的用户名或者密码为空 |
提示用户名或者密码错误 |
与预期结果一致 |
|
输入的用户名和密码不存在 |
提示用户名或者密码错误 |
与预期结果一致 |
|
输入正确的用户名和密码 |
登录成功 |
与预期结果一致 |
下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
表6.2注册功能测试用例
|
功能描述 |
用于用户注册 |
|
|
测试目的 |
检测用户注册时的合法性检查 |
|
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
输入的手机号不合法 |
提示请输入正确的手机号码 |
与预期结果一致 |
|
输入的字段为空 |
提示必填项不能为空 |
与预期结果一致 |
|
输入的密码少于6位 |
提示密码必须为6-12位 |
与预期结果一致 |
|
输入的密码大于12位 |
提示密码必须为6-12位 |
与预期结果一致 |
下表是商品类型管理功能的测试用例,检测了对商品类型的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;登录系统。
表6.3商品类型管理的测试用例
|
功能描述 |
用于商品类型 |
|
|
测试目的 |
检测商品类型时的各种操作的运行情况 |
|
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加商品类型,必填项合法输入,点击保存 |
提示添加成功 |
与预期结果一致 |
|
点击添加商品类型,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改商品类型,必填项修改为空,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改商品类型,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除商品类型,选择商品类型删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索商品类型,输入存在的商品类型名 |
查找出相应商品类型 |
与预期结果一致 |
|
点击搜索商品类型,输入不存在的商品类型名 |
不显示商品类型 |
与预期结果一致 |
下表是通知公告管理功能的测试用例,检测了通知公告管理中对通知公告的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;登录系统。
表6.4通知公告管理的测试用例
|
功能描述 |
用于通知公告 |
|
|
测试目的 |
检测通知公告时的各种操作的运行情况 |
|
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加通知公告,必填项合法输入,点击保存 |
提示添加成功 |
与预期结果一致 |
|
点击添加通知公告,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改通知公告,必填项修改为空,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改通知公告,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除通知公告,选择通知公告删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索通知公告,输入存在的通知公告名 |
查找出相应通知公告 |
与预期结果一致 |
|
点击搜索通知公告,输入不存在的通知公告名 |
不显示通知公告 |
与预期结果一致 |
下表是好物推荐管理功能的测试用例,检测了好物推荐管理中对好物推荐的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;登录系统。
表6.5好物推荐管理的测试用例
|
功能描述 |
用于好物推荐 |
|
|
测试目的 |
检测好物推荐时的各种操作的运行情况 |
|
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加好物推荐,必填项合法输入,点击保存 |
提示添加成功 |
与预期结果一致 |
|
点击添加好物推荐,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改好物推荐,必填项修改为空,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改好物推荐,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除好物推荐,选择好物推荐删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索好物推荐,输入存在的好物推荐名 |
查找出相应好物推荐 |
与预期结果一致 |
|
点击搜索好物推荐,输入不存在的好物推荐名 |
不显示好物推荐 |
与预期结果一致 |
下表是订单列表管理功能的测试用例,检测了订单列表管理中对订单列表的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;登录系统。
表6.6订单列表管理的测试用例
|
功能描述 |
用于订单列表 |
|
|
测试目的 |
检测订单列表时的各种操作的运行情况 |
|
|
测试数据以及操作 |
预期结果 |
实际结果 |
|
点击添加订单列表,必填项合法输入,点击保存 |
提示添加成功 |
与预期结果一致 |
|
点击添加订单列表,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改订单列表,必填项修改为空,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击修改订单列表,必填项输入不合法,点击保存 |
提示必填项不能为空 |
与预期结果一致 |
|
点击删除订单列表,选择订单列表删除 |
提示删除成功 |
与预期结果一致 |
|
点击搜索订单列表,输入存在的订单列表名 |
查找出相应订单列表 |
与预期结果一致 |
|
点击搜索订单列表,输入不存在的订单列表名 |
不显示订单列表 |
与预期结果一致 |
6.3测试分析
本“生态光彩”防晒护肤品店销售管理平台开发与设计满足相关信息的管理需求,在设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了管理员以及用户能够方便操作。系统的主要特点和优点归纳如下:
(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给客户带来了极大的方便。
(2)该“生态光彩”防晒护肤品店销售管理平台开发与设计内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因客户的马虎操作而出现的失误,其操作方便,会员界面友好,能够上网的人都可以很好的进行操作。
经过对上述的测试结果分析,所有基本功能齐全,操作简单,系统运行性能良好,系统安全可靠,能促进“生态光彩”防晒护肤品店销售管理平台的发展,发展前景广阔。
7 结束语
通过开发“生态光彩”防晒护肤品店销售管理平台,我深刻体会到软件开发的完整流程。从确定开发目标开始,我进行了详细的需求分析,明确了系统所需的各项功能。接着,设计了系统的功能框架和数据库结构,包括实体和数据表的规划。随后,逐步实现了各功能模块的界面,并进行了全面的功能测试。尽管过程中遇到诸多挑战,但经过深入分析和参考相关文献,我成功地解决了这些问题,最终让系统顺利运行。
虽然目前系统的功能基本满足了用户需求,但仍有许多可以改进的地方。未来的开发阶段,我计划进行以下改进:
用户界面设计:当前界面虽然操作简便,但在设计的多样性上仍有提升空间。我将引入更多设计元素,使界面更加美观和用户友好。
安全性能优化:系统的安全性仍需加强,特别是在程序退出时,确保没有数据泄露或系统不稳定的风险。此外,系统的并发处理能力需要优化,以确保在高并发场景下仍能稳定运行。这些改进将提升系统的安全性,确保用户在不同场景下都能安全、可靠地使用系统。
性能优化:在性能方面,将通过精细化调整数据结构和代码逻辑来优化系统。目标是让系统在高负载下依然保持稳定和高效运行,减少事务处理时间,提高工作效率。同时,将尽力降低服务器资源的占用率。这些改进将提升系统整体性能,为用户带来更加流畅高效的体验。
通过这些优化,我希望进一步提升“生态光彩”防晒护肤品店销售管理平台的用户体验和性能,使系统更好地符合实际需求。
参考文献
[1]Wang Q ,Zheng L ,Hong R .Exploration on the Teaching Model of Java Programming and Practice for Students with No Programming Background[J].Advances in Educational Technology and Psychology,2024,8(6):
[2]韩强.化妆品线上销售与消费者信任建立机制研究[J].销售与管理,2024,(28):57-59.
[3]陆向艳,柳明洲.基于SpringBoot的农产品溯源系统的设计与实现[J].电脑知识与技术,2024,20(26):35-36+39.DOI:10.14004/j.cnki.ckt.2024.1351.
[4]Zhang J .Teaching Reform of Java Program Design Based on Vocational Education Cloud Platform[J].Journal of Higher Education Teaching,2024,1(5):
[5]韩强.个性化化妆品推荐系统对消费者购买意愿的影响作用[J].销售与管理,2024,(20):36-38.
[6]钟胜男.Y护肤品公司营销策略优化研究[D].北方工业大学,2024.DOI:10.26926/d.cnki.gbfgu.2024.000560.
[7]Wai H K ,Funabiki N,Aung T S, et al.Answer Code Validation Program with Test Data Generation for Code Writing Problem in Java Programming Learning Assistant System[J].Engineering Letters,2024,32(5):
[8]Ullenboom C .Java Programming Exercises:Volume Two: Java Standard Library[M].CRC Press:2024-03-30.
[9]陈彬.基于SpringBoot技术的海产品销售平台设计与开发[J].信息与电脑(理论版),2024,36(05):77-80.
[10]Aung T S ,Aung H L,Funabiki N, et al.An Implementation of Web-based Personal Platform for Programming Learning Assistant System with Instance File Update Function[J].Engineering Letters,2024,32(2):
[11]朱少君.B公司护肤品营销策略研究[D].云南师范大学,2023.DOI:10.27459/d.cnki.gynfc.2023.000249.
[12]双乐珊.基于深度学习的冷启动化妆品推荐系统设计与实现[D].南京邮电大学,2022.DOI:10.27251/d.cnki.gnjdc.2022.000721.
[13]孙镐东.济南PS集团护肤产品市场营销策略研究[D].哈尔滨工程大学,2022.DOI:10.27060/d.cnki.ghbcu.2022.002539.
[14]丁海洋,王昊翔,姚全珠.基于MVVM框架的汽车销售管理系统设计与实现[J].电子制作,2021,(22):55-56+8.DOI:10.16589/j.cnki.cn11-3571/tn.2021.22.019.
[15]李天琪,杨红梅,娄茜然,等.基于内容推荐的化妆品查询可视化系统设计与实现[J].信息与电脑(理论版),2021,33(11):141-143.
[16]苗璐.ORL公司美妆产品营销策略研究[D].上海外国语大学,2021.DOI:10.27316/d.cnki.gswyu.2021.000325.
[17]陈静.基于云计算的新零售化妆品企业ERP系统的设计与实施[D].山东大学,2020.DOI:10.27272/d.cnki.gshdu.2020.003645.
[18]徐连霞,李建.浅议化妆品网上销售系统的设计与实现[J].明日风尚,2019,(13):57.
[19]邱子珊,黄婉滢,肖华.大学生化妆品营销策略探究[J].现代营销(下旬刊),2019,(07):83-84.DOI:10.19932/j.cnki.22-1256/f.2019.07.043.
致 谢
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设施能够完成离不开老师的帮助。我对老师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
最后,我要感谢我的家人和同学们。感谢父母在物质与精神上给予我无限的支持和鼓励。感谢我的同学们,在论文写作期间,你们给予了我许多宝贵的建议和帮助,让我在学术研究的道路上不再孤单。
再次感谢所有在我大学生活中给予我帮助和支持的人们。您们的关怀和鼓励将永远铭刻在我的心中,成为我未来前行的动力。
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。
免费领取项目源码,请关注❤点赞收藏并私信博主,谢谢-
更多推荐



所有评论(0)