目 录
摘 要
本文详细阐述了一个基于PHP的宿舍外卖点单系统的设计与实现过程。该系统旨在为在校学生提供一个方便、快捷的外卖点餐平台,以解决传统外卖方式中遇到的种种不便。
在系统设计方面,本文首先进行了需求分析,明确了系统的功能和特点。然后,对系统进行了整体架构设计,包括前后端分离的设计思想、数据库的选择和设计等。接着,详细阐述了系统的各个功能模块,如用户登录注册、菜品展示、购物车管理、订单生成与支付等。同时,本文还介绍了系统的数据库设计,包括数据表的设计、关系映射等。
在实现方面,本文采用了PHP作为后端开发语言,结合前端技术如HTML、CSS、JavaScript等进行了系统的开发。通过PHP与数据库的交互,实现了用户信息的存储、查询和修改等功能。同时,系统还提供了丰富的接口,方便前端进行数据的展示和处理。在安全性方面,系统采用了加密传输、用户身份验证等措施,确保用户数据的安全性和隐私性。为了确保系统的稳定性和安全性,我们进行了严格的代码审查和测试,并实施了多种安全措施,如数据加密、用户身份验证等。
通过本文的研究与实现,我们成功打造了一个功能完善、性能稳定、用户体验良好的宿舍外卖点单系统。该系统不仅提高了学生的点餐效率,也为商家提供了更多的销售渠道和服务方式。我们相信,这一系统将对生活产生积极的影响,并推动相关技术的发展和应用。
关键词:宿舍外卖点单系统:PHP技术;mysql数据库;
Abstract
This article elaborates on the design and implementation process of a dormitory takeout ordering system based on PHP. The system aims to provide a convenient and fast food delivery ordering platform for students on campus, in order to solve various inconveniences encountered in traditional food delivery methods.
In terms of system design, this article first conducted a requirements analysis, clarifying the functions and characteristics of the system. Then, the overall architecture design of the system was carried out, including the design concept of front-end and back-end separation, database selection and design, etc. Next, the various functional modules of the system were elaborated in detail, such as user login and registration, dish display, shopping cart management, order generation and payment, etc. Meanwhile, this article also introduces the database design of the system, including the design of data tables, relationship mapping, etc.
In terms of implementation, this article uses PHP as the backend development language and combines front-end technologies such as HTML, CSS, JavaScript, etc. for system development. Through the interaction between PHP and the database, functions such as storing, querying, and modifying user information have been achieved. At the same time, the system also provides rich interfaces to facilitate the front-end display and processing of data. In terms of security, the system adopts measures such as encrypted transmission and user authentication to ensure the security and privacy of user data. To ensure the stability and security of the system, we conducted strict code review and testing, and implemented various security measures such as data encryption and user authentication.
Through the research and implementation of this article, we have successfully developed a fully functional, stable, and user-friendly dormitory takeout ordering system. This system not only improves the efficiency of student ordering, but also provides merchants with more sales channels and service methods. We believe that this system will have a positive impact on campus life and promote the development and application of related technologies.
Keywords: Dormitory takeout ordering system: PHP technology; MySQL database;
1 绪论
1.1 研究背景
随着生活节奏的加快和互联网技术的快速发展,外卖服务逐渐成为现代生活的一部分,特别是在大学内,外卖服务受到了广大学生的青睐。传统的外卖方式,如电话订购或通过第三方平台下单,虽然在一定程度上满足了学生的需求,但也存在一些明显的问题,如订购流程繁琐、等待时间长、配送不准确等。因此,开发一个专门服务于宿舍区域的外卖点单系统显得尤为迫切。
在这样的背景下,本文提出了基于PHP的宿舍外卖点单系统的设计与实现。该系统旨在通过互联网技术,将餐厅与宿舍连接起来,为学生提供一个更加便捷、高效的外卖服务体验。同时,该系统也考虑了餐厅商家的需求,通过优化订单处理流程,提高餐厅的工作效率和服务质量。
综上所述,本文的研究背景是基于现代大学生活中对便捷外卖服务的需求,以及传统外卖方式存在的问题,通过技术手段解决这些问题,提升外卖服务的整体效率和用户体验。
1.2国内外研究现状
在中国,随着网络餐饮的快速发展,外卖服务已经成为餐饮行业的重要组成部分。特别是在大学内,由于学生群体的特殊性和庞大的市场规模,外卖服务得到了迅速普及。目前,国内已经涌现出多个专门为提供外卖服务的平台。这些平台通过整合周边的餐饮资源,提供便捷的在线点餐和配送服务,受到了广大学生的欢迎。同时,随着移动互联网的普及和智能手机的广泛使用,基于手机APP的外卖点单系统也成为了主流。这些系统通常具备界面友好、操作简便、功能完善等特点,为学生提供了更加便捷的外卖服务体验。
在国外,尤其是欧美发达国家,外卖服务同样受到了广泛的关注和追捧。与国内相比,国外的外卖服务起步较早,发展也更为成熟。许多知名的外卖平台,如Uber Eats、Deliveroo等,已经在全球范围内展开了业务。这些平台通过先进的技术手段和高效的物流配送系统,为用户提供了快速、准确、可靠的外卖服务。此外,随着人工智能和大数据技术的不断发展,国外的外卖服务也开始向智能化、个性化方向发展,为用户提供更加精准的推荐和定制服务。
综上所述,无论是国内还是国外,外卖服务都已经成为餐饮行业的重要组成部分。而针对宿舍区域的外卖点单系统作为外卖服务的一种特殊形式,也受到了广泛的关注和研究。通过技术手段解决传统外卖方式存在的问题,提升外卖服务的整体效率和用户体验,是国内外研究的共同目标。
1.3论文结构与章节安排
第一章:引言部分将介绍宿舍外卖点单系统的研究背景、开发现状,以及研究的内容与主要工作。
第二章:系统需求分析,将分析宿舍外卖点单系统的用户需求和功能需求。
第三章:系统设计,设计宿舍外卖点单系统的框架、功能模块、数据库等。
第四章:系统实现,实现宿舍外卖点单系统的框架搭建以及界面设计。
第五章:系统测试,对宿舍外卖点单系统进行界面测试、主要功能测试。
2 宿舍外卖点单系统分析
系统分析作为宿舍外卖点单系统开发的先决条件,通过系统分析了解宿舍外卖点单系统的主要用户的基本需求。进而对该平台进行可行性分析,其中就包括了技术可行性、经济可行性等,可行性分析将从项目整体角度出发,最后是具体需求的分析,分析手段将通过用户的用例图进行说明。
2.1可行性分析
通过技术、经济和操作可行性分析,宿舍外卖点单系统采用先进的技术工具和框架,降低开发成本,同时注重用户体验和操作便利性,有助于推动项目的成功实施和用户的广泛参与。
2.1.1 技术可行性分析
在技术可行性方面,宿舍外卖点单系统采用Mysql数据库作为数据存储介质,并利用IDEA、Tomcat等开发工具进行系统的搭建和部署。同时,使用Thinkphp 框架进行开发,该框架具有良好的可扩展性和维护性,能够简化开发过程并提高系统的性能和稳定性。这些技术选择是成熟且广泛应用的,能够满足项目的需求。
2.1.2经济可行性分析
在经济可行性方面,宿舍外卖点单系统所需的开发软件和工具,如IDEA、Tomcat和MySQL等,都是免费且开源的,无需额外费用。此外,这些工具易于获取和操作,降低了开发成本。而且,随着宿舍外卖点单系统的运营和发展,可以通过广告推广、会员服务等方式实现收益,增加项目的经济可行性。
2.1.3操作可行性分析
在操作可行性方面,我们参考了其他成功案例,并对用户界面和功能进行了系统分析。通过以人为本的设计原则,简化了操作流程,使得具备基本计算机知识的用户能够轻松上手。同时,我们也提供了清晰的用户指南和帮助文档,以支持用户的操作和使用。
2.2 功能需求分析
2.2.1普通用户功能
登录注册: 提供用户注册新账户和登录系统的功能。
首页: 展示系统的主要功能入口和最新信息,包括美食资讯、餐品信息等。
公告通知:及时发布系统更新、优惠活动等信息,保持用户与系统的互动和信息同步。
新闻资讯:丰富用户阅读内容,增加用户停留时间,提升系统的活跃度。
美食商城:详细展示各类美食商品,包括图片、描述和价格,吸引用户购买。
商城管理:提供购物车、订单管理等功能,让用户轻松管理购物流程,增加购物便利性。
我的账户:用户个人信息一站式管理,方便查看订单记录、余额等,提升用户满意度。
个人中心:包括个人首页:展示用户个性化信息,增强用户归属感和使用欲望。订单配送:提供订单实时配送信息,增加用户对订单的掌控感和信任度。收藏:方便用户收藏心仪商品,提高复购率和用户粘性。
退出:确保用户随时退出系统,保护用户信息安全和隐私。
2.2.2商家用户功能
后台首页:展示重要数据统计,帮助商家了解业务状况,优化经营策略。
商城管理:灵活管理商品信息,包括库存、价格等,确保商城商品的更新和充实。
美食商城:提供专属展示平台,增加商品曝光度和销售机会。
订单列表:清晰展示订单信息,方便商家及时处理订单,提高订单处理效率。
订单配送:快速响应订单配送需求,确保订单准时送达,提升用户体验和口碑。
个人中心:个人信息:便捷修改个人信息,保持信息准确性和安全性。修改密码:保障账户安全,防止信息泄露和恶意登录。网站首页:快速返回系统首页,方便商家查看系统最新动态。退出:随时退出系统,保护商家信息和权限。
2.2.3管理员功能
后台首页:展示系统整体的销售金额统计、商品销售数量统计等数据。提供关键数据概览,助力管理员制定决策和调整运营策略。
系统用户:管理系统的管理员、商家和普通用户,精准管理系统用户,确保系统权限和角色分配的准确性和安全性。
系统管理:管理系统首页的轮播图,更新广告等信息,提升系统页面美观度和吸引力。
公告通知管理:发布系统的公告和通知,及时向用户传达重要信息。
资源管理:管理系统中的新闻资讯内容,包括发布、编辑、删除等操作。对新闻资讯进行分类管理,方便用户浏览和查找。
商城管理:管理员在商城管理方面具备丰富的功能需求,包括管理美食商城的商品信息,分类列表的管理,订单列表的查看和处理,以及订单配送的管理。他们可以添加、编辑、删除商品和分类,处理订单并跟踪配送状态,以确保商城运营顺利进行,用户订单及时处理和配送,从而提升用户体验和平台的商业价值。
以上功能需求分析详细阐述了普通用户、商家用户和管理员用户在基于PHP的宿舍外卖点单系统中的功能设计,保障了系统的全面运作和用户体验。
2.3 系统用例分析
通过2.3功能的分析,得出了本宿舍外卖点单系统的用例图:
用户角色用例如图2-1所示。
图2-1宿舍外卖点单系统用户角色用例图
管理员是维护整个宿舍外卖点单系统中所有数据信息的。管理员角色用例如图2-2所示。
商家用户角色用例如图2-3所示。
图2-3宿舍外卖点单系统商家用户角色用例图
2.4本章小结
在完成可行性分析、系统流程分析和功能分析后,我们对项目进行了全面的评估和分析。通过可行性分析,我们确定了项目的技术和经济可行性,确保了项目的可行性。在系统流程分析中,我们详细了解了系统的整体流程和各个环节之间的关系,为后续的设计和开发奠定了基础。而功能分析则帮助我们准确地识别出系统所需的各种功能,并对其进行详细描述。这些分析结果将为后续的系统设计和实现提供指导和参考。通过这些分析工作,我们对项目的目标和需求有了更清晰的认识,为接下来的开发工作奠定了坚实的基础。
3 宿舍外卖点单系统总体设计
本章主要讨论的内容包括宿舍外卖点单系统的功能模块设计、数据库系统设计。
3.1 系统架构设计
在系统架构设计中,我们将确定系统的整体结构和组件之间的关系。这包括选择适当的架构风格,划分系统的层次结构,并定义各个模块的职责和交互方式。架构图如下图所示。
图3-1宿舍外卖点单系统系统架构设计图
表现层(Presentation Layer):负责与用户进行交互,将系统的功能和数据以易于理解和操作的方式展示给用户。通常包括用户界面、页面设计和用户输入验证等。
业务逻辑层(Business Logic Layer):处理系统的核心业务逻辑,包括对用户请求的处理、业务规则的执行以及数据的处理和转换。它独立于表现层和数据层,实现了业务逻辑的封装和复用。
数据层(Data Layer):负责数据的存储、访问和管理,包括数据库和持久化机制。数据层提供了对数据的增删改查操作,并与业务逻辑层进行交互,使系统能够有效地存储和检索数据。
这三个层次相互独立,通过明确的接口和协议进行通信,实现了系统的模块化和可扩展性。表现层负责将用户的请求传递给业务逻辑层,业务逻辑层处理请求并返回结果,最后数据层负责与数据库交互并提供数据支持。这种分层架构有助于实现系统的可维护性、灵活性和可测试性。
3.2 系统功能模块设计
3.2.1整体功能模块设计
通过整体功能模块设计,我们将根据需求分析的结果,将系统的功能划分为不同的模块。每个模块负责实现特定的功能,并与其他模块进行协作。我们将详细定义每个模块的输入、输出、处理逻辑和相互依赖关系。其总体设计模块图如图3-2所示。
图3-2 宿舍外卖点单系统功能模块图
3.2.2用户模块设计
用户模块是系统中一个重要的功能模块,它涉及用户的注册、登录、个人信息管理等操作。在用户模块设计中,我们将定义用户数据的结构和属性,包括用户名、密码、邮箱等。同时,还需要实现用户注册、登录、修改密码等功能,并对用户输入进行验证和处理。用户模块的结构图如下图所示。:
图3-3用户用户模块结构图
3.2.3 评论管理模块设计
评论管理模块用于管理用户对商品或其他内容的评论。在评论管理模块设计中,我们将定义评论数据的结构和属性,包括评论内容、评分、时间等。该模块应支持用户发表评论、查看评论、回复评论等功能,并提供相应的管理接口用于审核和删除不合规的评论。其结构图如下所示。
图3-4评论模块结构图
3.2.4商城管理模块设计
商城管理模块是系统中核心的功能模块,涉及商品的发布、展示、购买和订单管理等操作。在商城管理模块设计中,我们将定义商品数据的结构和属性,包括商品名称、价格、库存等。该模块应支持商品的分类、搜索、浏览和下单等功能,并提供订单管理接口用于处理用户的购买请求和订单状态的更新。具体的结构图如下:
图3-5商城模块结构图
3.2.5订单配送管理模块设计
订单管理模块是系统中一个重要的功能模块,它涉及用户下单、支付、配送等流程。在订单管理模块设计中,我们将定义订单的数据结构、订单状态的转换规则,以及订单处理的具体流程和相关操作。其模块和功能结构如下图所示。
图3-5订单模块结构图
3.3 数据库设计
数据库设计是系统开发中至关重要的一环,它涉及到数据的组织、存储和管理。在数据库设计中,我们将根据系统的需求设计数据库的概念结构和逻辑结构,包括定义实体、属性、关系和约束等。
3.3.1 数据库概念结构设计
数据库概念结构设计主要涉及数据库的实体和实体之间的关系。通过实体-关系模型或者其他适当的模型,我们将定义系统中涉及的各个实体以及它们之间的联系。下面是宿舍外卖点单系统中,主要的数据库表的E-R实体关系图。
图3-6 宿舍外卖点单系统总E-R关系图
3.3.2 数据库逻辑结构设计
通过上一小节中宿舍外卖点单系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | food_mall_id | int | 10 | 0 | N | Y | 美食商城ID | |
2 | food_specifications | varchar | 64 | 0 | Y | N | 食品规格 | |
3 | merchant_users | int | 10 | 0 | Y | N | 0 | 商家用户 |
4 | restaurant_name | varchar | 64 | 0 | Y | N | 餐厅名称 | |
5 | nature_of_business | varchar | 64 | 0 | Y | N | 经营范围 | |
6 | restaurant_address | varchar | 64 | 0 | Y | N | 餐厅地址 | |
7 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
8 | cart_title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品html的标签中 | |
9 | cart_img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
10 | cart_description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
11 | cart_price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
12 | cart_price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
13 | cart_inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
14 | cart_type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
15 | cart_content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
16 | cart_img_1 | text | 65535 | 0 | Y | N | 主图1: | |
17 | cart_img_2 | text | 65535 | 0 | Y | N | 主图2: | |
18 | cart_img_3 | text | 65535 | 0 | Y | N | 主图3: | |
19 | cart_img_4 | text | 65535 | 0 | Y | N | 主图4: | |
20 | cart_img_5 | text | 65535 | 0 | Y | N | 主图5: | |
21 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
22 | 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 | 更新时间: |
表hits (用户点击)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | restaurant_name | varchar | 64 | 0 | Y | N | 餐厅名称 | |
3 | nature_of_business | varchar | 64 | 0 | Y | N | 经营范围 | |
4 | restaurant_address | 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 | 32 | 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 | 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 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户名称 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | user_age | int | 10 | 0 | Y | N | 0 | 用户年龄 |
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 | 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 | 更新时间: |
3.4本章小结
通过以上的设计工作,我们将为系统的开发提供清晰的指导和规范,确保系统能够按照需求进行开发,并且具备良好的可维护性和扩展性。
4 宿舍外卖点单系统详细设计与实现
在详细设计与实现阶段,我们将根据系统需求和功能模块的设计,进行具体的代码编写和系统搭建。这包括前台界面的设计与开发、后台数据库的建立和管理、业务逻辑的实现等。通过编写代码、进行测试和调试,最终完成整个宿舍外卖点单系统的开发。
4.1普通用户功能模块
4.1.1 前台首页界面
前台首页界面是用户访问系统的入口页面,它应该展示平台的主要功能和特色,并提供导航链接以便用户浏览和搜索商品。首页界面的设计应注重页面的美观性和用户体验,同时也需要考虑页面的加载速度和响应性能。其主界面展示如下图4-1所示。
图4-1 前台首页界面图
4.1.2 用户注册界面
用户注册界面用于新用户进行账号注册,用户需要填写必要的个人信息并选择合适的用户名和密码。注册界面应该进行输入验证和数据格式检查,确保用户提供有效的信息。界面如下图所示。其用用户注册界面展示如下图4-2所示。
图4-2 用户注册界面图
注册关键代码如下:
4.1.3 用户登录界面
用户登录界面用于已注册用户进行账号登录,用户需要输入正确的用户名和密码才能成功登录系统。登录界面应对用户的输入进行验证,并提供密码找回或重新注册的选项。界面如下图所示。用户登录界面如下图4-3所示。
图4-3用户登录界面图
登录代码如下:
4.1.4 美食商城界面
点击“美食商城”这个菜单,可以查看到系统中的商品,列表支持通过关键词进行查询,如果想要了解某一商品的详细信息,点击后面的“详情”会进入详情查看界面,可以对商品进行添加购物车、购买、收藏、评论等操作;商品界面如下图4-4所示。
图4-4商品界面图
4.1.5 新闻资讯界面
用户可以搜索预览管理员发布的资讯信息。界面如下图4-5所示。
图4-5资讯界面图
4.1.6 订单配送界面
订单配送列表界面展示用户的订单信息,包括订单号、商品名称、购买数量、订单配送和签收状态等。用户可以查看订单详情、进行订单追踪和取消订单等操作。界面图如图4-6所示。
图4-6交易订单界面图
4.2管理员功能模块
4.2.1 系统用户界面
用户管理界面用于管理员对用户账号进行管理,包括用户信息的查看、编辑和删除等操作。管理员可以根据需要进行用户权限的控制和账号状态的管理。界面如下图4-7所示。
图4-7系统用户界面图
4.2.2 网站公告管理界面
用于管理员发布和管理系统的公告信息,包括公告标题、内容和发布时间等。管理员可以添加、编辑或删除公告,并设定公告的有效期。界面如下图4-8所示。
图4-8通知公告界面图
4.2.3轮播图管理界面
管理系统首页的轮播图,更新广告等信息,提升系统页面美观度和吸引力。界面如下图4-9所示。
图4-9轮播图管理界面图
4.2.4新闻资讯界面
管理员管理系统中的新闻资讯内容,包括发布、编辑、删除等操作。对新闻资讯进行分类管理,方便用户浏览和查找。界面如下图4-10所示。
图4-10新闻资讯界面图
4.3商家用户功能模块
4.3.1后台首页界面
后台首页展示重要数据统计,帮助商家了解业务状况,优化经营策略。。界面如下图4-11所示。
图4-11商家后台首页界面图
4.3.2商城管理界面
商家能够管理自己店铺内的美食商品信息和分类列表,包括添加、编辑、下架商品以及分类管理等操作。此外,他们需要能够查看和处理店铺的订单列表,并跟踪订单配送状态,确保订单能够准时送达给顾客。界面如下图4-12所示。
图4-12商城管理面图
5系统测试
5.1系统测试的目的
系统测试的目的是确保系统的功能完整、性能稳定,并验证系统是否符合预期的设计和需求。通过系统测试,可以发现和修复潜在的错误和缺陷,提高系统的质量和可靠性。同时,系统测试还可以评估系统在不同条件下的性能表现,包括并发性能、响应时间和容错能力等。通过全面的系统测试,可以确保系统在正式上线前达到高品质的状态。
5.2 系统测试用例
通过对用户登录功能、商品展示功能、商品添加功能、商品搜索功能以及密码修改功能进行了测试,测试如下表5-1、5-2、5-3、5-4、5-5所示。
表5-1 用户登录功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 使用正确的用户名和密码进行登录 | 成功登录系统,跳转到用户首页 | 登录成功,跳转到用户首页 | 通过 |
TC002 | 使用不存在的用户名进行登录 | 显示错误提示信息:用户名不存在 | 显示错误提示信息:用户名不存在 | 通过 |
TC003 | 使用正确的用户名和错误的密码进行登录 | 显示错误提示信息:密码错误 | 显示错误提示信息:密码错误 | 通过 |
TC004 | 不输入用户名和密码直接点击登录按钮 | 显示错误提示信息:用户名和密码不能为空 | 显示错误提示信息:用户名和密码不能为空 | 通过 |
表5-2 商品展示功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 打开商品列表页面,检查是否能够正确展示商品 | 商品列表显示正确 | 商品列表显示正确 | 通过 |
TC002 | 点击商品详情查看按钮,检查是否能正常打开页面 | 商品详情页面显示正确 | 商品详情页面显示正确 | 通过 |
TC003 | 检查商品搜索功能 | 根据关键字搜索到相关商品并正确展示 | 根据关键字搜索到相关商品并正确展示 | 通过 |
表5-3 商品添加功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 使用合法的信息添加一个新商品 | 商品成功添加到系统 | 商品成功添加到系统 | 通过 |
TC002 | 使用已存在的商品名称添加一个新商品 | 显示错误提示信息:商品名称已存在 | 显示错误提示信息:商品名称已存在 | 通过 |
TC003 | 添加商品时不输入必填信息 | 显示错误提示信息:必填字段不能为空 | 显示错误提示信息:必填字段不能为空 | 通过 |
表5-4商品搜索功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 使用商品关键字进行搜索 | 搜索结果包含符合关键字的商品 | 搜索结果包含符合关键字的商品 | 通过 |
TC002 | 使用不存在的关键字进行搜索 | 搜索结果为空 | 搜索结果为空 | 通过 |
表5-5 密码修改功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 输入正确的原密码和新密码进行修改 | 密码成功修改 | 密码成功修改 | 通过 |
TC002 | 输入错误的原密码和新密码进行修改 | 显示错误提示信息:原密码错误 | 显示错误提示信息:原密码错误 | 通过 |
TC003 | 不输入原密码和新密码直接点击修改按钮 | 显示错误提示信息:密码不能为空 | 显示错误提示信息:密码不能为空 | 通过 |
5.3 系统测试结果
以上是对系统测试的一些典型测试用例的描述。通过这些测试,可以验证用户登录功能、商品展示功能、商品添加功能、商品搜索功能以及密码修改功能的正确性和稳定性。每个测试用例都有预期结果,并与实际结果进行对比,判断是否通过测试。通过全面的系统测试,可以确保系统的各项功能正常运行,并具备高质量的用户体验。
结论
在这项研究中,我们基于ThinkPHP框架成功设计并实现了一个宿舍外卖点单系统,该系统具有稳定、高效、可靠的特点。通过合理的功能模块设计和前后端分离的架构,我们提供了良好的用户体验。在系统测试中,我们验证了系统的稳定性和功能完整性,表明ThinkPHP框架在快速开发和高质量软件构建方面的优势。
这项研究的结果显示,使用ThinkPHP框架能够快速开发出高效可靠的宿舍外卖点单系统。该平台通过合理的功能设计和良好的用户体验,提供了便捷的商品交易服务,促进了资源的有效利用。同时,ThinkPHP框架的应用也为系统的开发和维护带来了便利。然而,本研究还存在一些不足之处,如对系统安全性和性能优化的考虑不够充分。未来的研究可以进一步完善系统的功能和性能,并探索其他技术和方法的应用,以进一步提升宿舍外卖点单系统的质量和用户满意度。通过深入的研究和不断的实践,我们相信宿舍外卖点单系统将会更加完善,为用户提供更优质的服务体验。
参考文献
[1]Li L ,Zhang Z ,Li X , et al. Mining the sustainability of takeaway businesses in online food delivery service supply chain [J]. Heliyon, 2024, 10 (6): e27938-.
[2]徐京波,赵欣. 外卖服务麦当劳化:表征、生成机制及多元治理 [J/OL]. 江汉学术, 2024, (02): 47-57[2024-03-31]. https://doi.org/10.16388/j.cnki.cn42-1843/c.2024.02.005.
[3]林丽鹂. 绿色外卖,这样从灶台到餐桌[N]. 人民日报, 2024-03-24 (002). DOI:10.28655/n.cnki.nrmrb.2024.002896.
[4]李坤雨,陈俊伶. 一点手机,最快五分钟天上“掉”锅盔[N]. 四川日报, 2024-03-22 (006). DOI:10.28672/n.cnki.nscrb.2024.001330.
[5]张文礼,刘松瑶. 外卖打包费:计费不合理 隐形消费多[N]. 中国质量报, 2024-03-15 (T06). DOI:10.28164/n.cnki.nczlb.2024.000815.
[6]石静怡. 关于一次性包装的设计伦理研究——以外卖产业为例 [J]. 中国包装, 2024, 44 (03): 31-36.
[7]陈婕. 巧回应,促生成——以大班角色区游戏指导为例 [J]. 幼儿教育研究, 2024, (02): 24-26.
[8]祁豆豆. 推动外卖产业走绿色低碳之路[N]. 上海证券报, 2024-03-05 (010). DOI:10.28719/n.cnki.nshzj.2024.000971.
[9]袁文凯,崔彬. 外卖配送服务顾客满意度评价指标体系研究 [J]. 物流技术, 2024, 43 (02): 74-81.
[10]李杭芝,杨小仪. 大学生外卖市场调查分析——以中山学院为例 [J]. 现代商业, 2022, (05): 15-17. DOI:10.14097/j.cnki.5392/2022.05.059.
[11]程峰. 浅谈对高校外卖问题的认识 [J]. 现代交际, 2019, (23): 201+200.
[12]戴安南. 大学生受外卖的影响与发展对策 [J]. 今日财富, 2018, (17): 65-66.
致 谢
在在完成本研究工作的过程中,我们深深感受到了许多人的无私帮助和支持,在此向他们致以最诚挚的感谢:
首先要感谢我的指导老师,您不仅在学术上给予了我们细致入微的指导和建议,在选题、需求分析、系统设计和实现等方面都给予了我们极大的支持和启发。您的专业知识和丰富经验对我们的研究工作起到了至关重要的引领作用。同时,感谢实验室的师兄师姐们和同学们,在研究过程中给予了我们许多宝贵的技术指导和建议。他们的热情帮助和无私分享使我们在科研道路上更加顺利和快速成长。此外,还要特别感谢所有参与过讨论和评审的专家学者们,您们的专业意见和建议对我们的研究工作起到了重要的促进作用,使我们的研究更加全面和深入。最后,感谢家人和朋友们对我们学业上的理解和支持。是你们的陪伴和鼓励给予了我们前行的力量,让我们能够坚持不懈地完成了这项研究工作。
在这里,再次向所有为本研究工作做出贡献的人们表示由衷的感谢!你们的支持和帮助使得本研究取得了圆满成功,也让我们更加坚定地走在科研道路上