摘 要
随着家政服务需求的不断增长,一个高效、便捷的预约平台成为必要。本系统针对传统家政服务平台资源分散、管理不便和用户体验不佳的问题进行了优化设计。通过构建基于Spring Boot框架的后端服务,并采用MySQL数据库存储数据,结合微信小程序前端展示,实现了普通用户、家政用户和管理员三大模块的功能分离。普通用户可浏览家政服务、在线反馈、查看新闻资讯和个人信息管理;家政用户能够发布服务并审核预约;管理员则负责全面管理包括服务类型、预约信息、评价管理在内的所有资源。系统特别强调了用户的个性化需求,比如收藏、点赞、评论等互动功能,以及对在线反馈的支持。前后端分离的设计不仅提升了系统的扩展性和维护性,而且大幅改善了用户体验,使得家政服务预约更加便捷高效,同时增强了平台资源管理的有效性和灵活性。
关键词:家政服务预约平台;微信小程序;Java;Spring Boot
Abstract
With the growing demand for housekeeping services, an efficient and convenient booking platform has become necessary. This system is optimized for the problems of scattered resources, inconvenient management and poor user experience of traditional housekeeping service platforms. By building a back-end service based on the Spring Boot framework, using a MySQL database to store data, and combining with the front-end display of WeChat Mini Programs, the functions of ordinary users, housekeeping users and administrators are separated. Ordinary users can browse housekeeping services, give online feedback, view news and personal information management; Housekeeping users are able to post services and review appointments; The administrator is responsible for the overall management of all resources, including service type, reservation information, and review management. The system places special emphasis on the user's personalized needs, such as interactive features such as favorites, likes, comments, etc., as well as support for online feedback. The design of front-end and back-end separation not only improves the scalability and maintenance of the system, but also greatly improves the user experience, making housekeeping service appointments more convenient and efficient, and enhancing the effectiveness and flexibility of platform resource management.
Keywords: housekeeping service booking platform; WeChat Mini Program; Java; Spring Boot
目 录
1 绪论
1.1 研究背景
随着社会经济的发展和生活节奏的加快,家庭对于家政服务的需求日益增长,涵盖清洁、育儿、老人护理等多个方面。然而,传统的家政服务预约方式效率低下,往往依赖电话沟通或面对面协商,这不仅耗时费力,而且服务质量参差不齐,难以满足现代家庭对便捷性和专业性的要求。此外,信息不对称问题也导致了供需双方难以高效匹配,用户在寻找合适的家政服务时面临诸多不便,而家政服务提供者同样难以找到稳定的工作机会。
在此背景下,借助信息技术手段优化家政服务流程,成为了提升行业效率和服务质量的关键所在。互联网平台的兴起为解决这些问题提供了可能,通过在线预约系统,可以实现家政服务信息的透明化和流程的标准化,有助于打破信息壁垒,提高资源匹配效率。特别是移动互联网和智能设备的普及,使得基于微信小程序等轻量级应用的服务预约变得更加便捷,极大地提升了用户体验,同时也为家政服务行业的数字化转型奠定了基础。
1.2 研究目的和意义
本研究旨在通过设计并实现一个基于Spring Boot、Java、MySQL以及微信小程序的家政服务预约平台,解决传统家政服务预约方式中存在的效率低下、服务质量不一和信息不对称的问题。具体目标包括构建一个易于使用、功能全面的系统,使得普通用户能够方便快捷地查找和预约家政服务,家政服务提供者可以有效地管理和推广自己的服务,同时为管理员提供强大的后台支持以维护系统的正常运行和资源管理。
本研究的意义在于推动家政服务行业的数字化转型,通过技术创新改善现有家政服务模式,提升服务效率和服务质量,满足现代社会对便捷性和专业性的需求。此外,通过建立透明、高效的沟通机制,不仅有助于缓解供需双方的信息不对称问题,还能够增强用户体验,促进家政服务市场的健康发展。长远来看,这将有助于提高整个社会的生活质量,并为其他类似服务业提供宝贵的实践经验和技术参考。
1.3 国内外研究现状
在国内,家政服务预约平台的发展随着互联网技术的进步而逐渐兴起。早期的研究主要集中在如何利用网络技术提高家政服务的信息透明度和匹配效率上,例如通过建立简单的在线信息发布和查询系统来解决信息不对称的问题。近年来,随着移动互联网的普及,研究重点转向了基于智能手机应用的服务预约系统,特别是微信小程序的广泛应用为用户提供了更加便捷的服务体验。这些平台不仅关注于提升用户体验,还致力于优化家政服务提供者与需求者之间的互动机制。
在国外,家政服务预约平台的研究起步较早,并且在技术和商业模式上均有较为成熟的发展。初期的研究多集中于探索如何通过信息化手段改善服务质量。进入21世纪后,随着共享经济模式的流行,以TaskRabbit、Thumbtack为代表的创新型平台开始崭露头角,它们通过构建一个连接家政服务提供者和消费者的市场,使得服务预约变得更加灵活高效。同时,对隐私保护和数据安全的关注也成为了研究的重要方向之一。
总体而言,国内外在家政服务预约平台的研究和发展方面均取得了显著进展,但侧重点有所不同。国内研究更多地聚焦于如何借助本土流行的社交媒体工具提升用户体验和服务效率;而国外则更注重通过创新商业模式和技术手段,如共享经济模式的应用,来满足市场需求。尽管存在差异,两者都致力于通过信息技术改善传统家政服务行业的不足,推动行业向更加智能化、高效化的方向发展。
1.4 论文组成结构
本文的结构按逻辑顺序分为以下几个章节:
第1章绪论,本章节介绍研究背景和意义,回顾当前研究现状,并阐明本文主要组织结构。
第2章系统关键技术,本章节将对家政服务预约平台的实现关键技术进行简要介绍。
第3章系统分析,本章节基于市场调研,分析家政服务预约平台的可行性、功能、角色、性能等需求,明确各模块的业务需求。
第4章系统设计,本章节详细阐述系统的整体架构设计,包括前后端结构、数据库设计及功能模块的设计思路。
第5章系统实现,本章节介绍系统各主要模块的具体实现,包括代码示例、业务逻辑及界面设计等。
第6章系统测试,本章节描述系统的测试方法及结果,分析系统的性能、稳定性及用户反馈。
第7章结论,本章节对主要对研究成果进行总结。
2 开发工具及相关技术介绍
2.1 微信小程序
微信小程序开发工具[1]是为开发者提供的官方集成开发环境(IDE),旨在简化和加速微信小程序的创建与调试过程。它支持代码编辑、智能提示、实时预览及调试等功能,使开发者能够高效编写前端界面与后端逻辑。该工具内置了丰富的API接口和组件库,便于实现多样化的应用功能。同时,它还集成了云开发能力,允许开发者直接在小程序中使用云端数据库、存储和计算资源,极大地降低了开发门槛,提升了开发效率,非常适合个人开发者和企业快速构建并发布微信小程序[2]。
2.2 Java语言简介
Java语言是我们目前生活中最常用的语言,它是一门面向对象的编程语言[3],不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,所以Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等[4]。
2.3 MySQL数据库介绍
MySQL是一种开源的关系型数据库管理系统[5],由瑞典MySQL AB公司开发,现在由Oracle公司维护。MySQL支持多个操作系统,包括Linux、Windows、macOS等。它是一种客户端/服务器模式的数据库,提供高效、可靠、稳定的数据存储和管理服务。MySQL是目前最流行的开源关系型数据库之一,被广泛应用于Web应用程序、企业应用程序和移动应用程序等领域[6]。
2.4 Spring Boot框架
Spring Boot[7]是一款基于Java的开源框架,旨在简化新Spring应用的初始搭建以及开发过程。它通过提供默认配置和约定优于配置的原则,使开发者能够快速上手,减少繁琐的配置工作。Spring Boot内置了众多开箱即用的功能模块,如嵌入式的HTTP服务器(Tomcat、Jetty等)、安全机制、数据库访问支持(JPA、MyBatis等),极大地方便了Web应用和服务端开发。此外,它还集成了Spring生态系统的其他项目,如Spring Data、Spring Security等,为构建微服务架构提供了强有力的支持。凭借其灵活性和强大的功能,Spring Boot成为了现代企业级应用开发的首选框架之一[8]。
3 系统分析
3.1 可行性分析
可行性分析是系统分析的第一步,进行系统的可行性分析是至关重要的。它不仅帮助我们评估项目的潜在风险和挑战,还能确保资源的有效利用,避免不必要的浪费。通过技术、经济和操作三个维度的全面分析,我们可以明确项目的实施路径,确定是否具备成功的基础条件,并为后续的开发和运营提供科学依据。这种系统化的评估有助于识别可能的瓶颈,提前制定应对策略,从而提高项目的成功率和可持续性。
3.1.1 技术可行性
技术可行性方面,本系统采用成熟的Spring Boot框架与MySQL数据库进行开发,结合微信小程序前端展示,这些技术均有良好的社区支持和丰富的资源,能够高效实现预期功能。同时,前后端分离的设计模式有助于提高系统的扩展性和维护性,确保系统的稳定运行。
3.1.2 经济可行性
经济可行性上,利用开源技术和现有的微信平台生态,可以大幅降低开发成本和后续维护费用。此外,通过线上平台的构建减少了传统救助方式中的物理空间需求和人力资源消耗,提高了资源利用效率,使得项目具有较高的经济效益和可持续发展能力。
3.1.3 操作可行性
操作可行性方面,系统设计注重用户体验,界面友好,操作简便,无论是普通用户、家政用户还是管理员都能快速上手。并且,基于微信小程序的特性,用户无需额外安装应用,降低了使用门槛,方便各类人群随时随地参与家政服务预约活动。
3.2 功能需求分析
本家政服务预约平台旨在为普通用户、家政服务提供者及管理员提供一套全面的服务解决方案。系统通过清晰的功能模块划分,确保各角色能够高效地完成各自的任务,包括但不限于服务浏览与预约、信息发布与管理、反馈处理等,从而提升用户体验和运营效率。具体功能描述如下:
1. 普通用户功能模块:
首页:提供家政服务的快速入口及推荐服务,让用户一目了然地了解平台的核心功能。
家政服务:用户可以详细浏览各类家政服务的具体内容,包括价格、时长和服务详情,并进行预约操作。
在线反馈:允许用户提交关于服务质量或平台使用体验的反馈,帮助改进服务和解决问题。
新闻资讯:展示与家政服务相关的最新动态和资讯,使用户能够及时获取行业信息。
我的:集中管理用户的个人信息、收藏的服务、历史预约记录、评价信息以及提交的反馈,便于用户查看和编辑个人资料。
2. 家政用户功能模块:
首页:为家政用户提供一个简洁的界面,展示重要通知和服务需求趋势,帮助他们快速了解当前市场动态。
家政服务:允许家政用户发布和管理自己的服务项目,包括设置服务价格、时长和服务详情,并能查看服务请求。
新闻资讯:提供行业最新消息和更新,使家政用户能够紧跟市场变化,优化自身服务内容和策略。
我的:家政用户可以在此管理个人信息、查看收藏的服务信息、处理预约请求、查看客户评价,以及调整已发布的服务详情。
3. 管理员功能模块:
后台首页:提供系统整体运行状况的概览,包括用户活动、服务请求和反馈统计等关键指标。
系统用户:管理平台所有注册用户的账户信息,执行添加、编辑或删除操作以维护用户数据的准确性。
服务类型管理:定义和调整家政服务的类别,确保服务分类清晰准确,便于用户查找所需服务。
家政服务管理:审核新发布的家政服务项目,保证服务质量,并根据需要更新或移除不符合标准的服务。
预约信息管理:监督和处理所有家政服务的预约请求,确保预约流程顺畅且高效。
评价信息管理:查看并管理员工收到的客户评价,帮助提升服务质量及解决潜在问题。
在线反馈管理:审查用户提交的反馈信息,及时回应用户关切,持续改进平台体验。
系统管理:更新和维护平台首页的轮播图内容,吸引用户关注热门服务或重要通知。
公告通知管理:发布和管理对平台用户的公告通知,确保信息传达及时有效,增强用户沟通。
资源管理:管理和更新平台上的新闻资讯及资讯分类,为用户提供有价值的信息资源。
3.3 非功能性分析
系统非功能需求指的是性能需求,即对一个系统的性能需求进行分析和定义的过程。在进行性能需求分析时,因此家政服务预约平台的设计与实现主要需要考虑以下几个方面的性能需求:
响应时间:响应时间是指系统在接收到请求后,作出响应的时间。根据具体的业务需求和用户体验要求,可以确定系统在不同场景下的响应时间要求。
吞吐量:吞吐量是指系统在一定时间内处理的事务或请求的数量。根据业务需求和用户量的估计,可以确定系统需要支持的最大吞吐量。
并发用户数:并发用户数是指系统在同时使用的用户数量。根据预期的用户量和并发访问需求,可以确定系统需要支持的最大并发用户数。
可扩展性:可扩展性是指系统在面对用户量增加或并发访问需求增加时,能否通过增加硬件资源或调整系统架构来满足需求。根据预期的用户增长和扩展计划,可以确定系统需要具备的可扩展性要求。
故障处理能力:系统对故障的处理能力是指在出现错误或故障时,系统能够快速、准确地识别、定位并处理故障的能力。根据业务的重要性和对故障处理的要求,可以确定系统需要具备的故障处理能力。
安全性:系统在性能需求分析中,也需考虑安全方面的需求,如数据的保密性、完整性和可用性等。根据具体的安全需求和合规要求,可以确定系统需要满足的安全性需求。
通过对这些性能需求进行详细分析和定义,可以为家政服务预约平台的设计和开发提供指导,确保系统在满足预期的性能需求的同时,具备良好的性能和可靠性。
3.4 系统用例分析
系统用例分析在家政服务预约平台的开发过程中起到了至关重要的作用,它通过详细描述系统中不同用户角色与系统之间的交互过程,明确了每个角色的功能需求和操作流程。这不仅有助于确保设计出的系统能够满足用户的实际需要,提高系统的易用性和用户体验,同时也为开发团队提供了清晰的方向和依据,保证了开发工作的高效进行,并有利于后续的系统测试和维护工作。
普通用户角色用例如图3-1所示。
图3-1 普通用户用例图
家政用户角色用例如图3-2所示。
图3-2 家政用户用例图
管理员用例图如图3-3所示。
图3-3 管理员用例图
3.5 系统流程分析
家政服务预约平台支撑整个机构不同层面的多种职能,而各功能模块间存在着多种关联信息,组成一个有机整体,并针对就业数据自身特点和面临的现实条件,对系统进行流程图设计。活动图是一种用于对系统的动态行为建模的另一种常用图表,通常用于可视化展示系统中各个活动的执行顺序、流程控制和数据交互,展现从一个活动到另一个活动的控制流,活动图在本质上是一种流程图;但活动图着重表现从一个活动到另一个活动的控制流。因此,这里列举了2个业务活动图。
(1)用户登录查询的业务流程如下。
用户注册登录,系统从数据库获取用户数据信息,登录成功用户进入查询页面,用户输入查询关键字,数据库查询用户所输入的关键字,查询成功显示查询的模块信息,查询失败不显示。用户登录查询功能的活动图如图3-4所示。
图3-4 用户登录查询活动图
(2)管理员添加信息的业务流程如下。
此活动图描述了管理员添加信息。管理员可以通过信息管理模块页面选择要添加的基本信息。添加成功传入数据库中,失败则不添加。管理员可以保存信息并更新系统中的信息。管理员添加信息功能的活动图如图3-5所示。
图3-5 管理员添加信息活动图
4 系统设计
4.1 系统总体目标
家政服务预约平台主要服务于家政服务预约管理,利用网络改变传统家政服务预约模式,简化家政服务预约平台流程,减轻传统家政服务预约平台带来的工作负担和降低大量资源的消耗。本系统达到的目标主要有以下几点:
(1)通过简单的页面设计和便捷的功能操作,保证系统的简单性和实用性,形成良好的用户体验。
(2)本系统主要针对家政服务预约平台需求进行设计开发,突出较强的针对性。
(3)能够具有一定的安全机制,保证用户信息的安全性。
4.2 系统功能结构
通过整体功能模块设计,我们将根据需求分析的结果,将系统的功能划分为不同的模块。每个模块负责实现特定的功能,并与其他模块进行协作。我们将详细定义每个模块的输入、输出、处理逻辑和相互依赖关系。系统总体功能模块图如下图所示。
图4-2 系统功能结构图
4.3 数据库设计
4.3.1 概念模型设计
借助先进的系统,E-R图使其他用户可以快速轻松地了解系统的功能以及他们之间的关系。根据家政服务预约平台分析结果,本家政服务预约平台总体E-R图如下图所示。
图4-3 系统E-R图
4.3.2 逻辑结构设计
逻辑结构设计则细化了概念模型,定义了具体的数据表、字段类型及约束条件,如用户表包含用户ID、用户名、密码等字段,并设置了主键和外键以确保数据的完整性和一致性。家政服务预约平台所需要的部分数据结构表如下表所示。
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | token_id | int | 是 | 是 | 临时访问牌ID | |
2 | token | varchar | 64 | 否 | 否 | 临时访问牌 |
3 | info | text | 65535 | 否 | 否 | 信息 |
4 | maxage | int | 是 | 否 | 最大寿命:默认2小时 | |
5 | create_time | timestamp | 是 | 否 | 创建时间 | |
6 | update_time | timestamp | 是 | 否 | 更新时间 | |
7 | user_id | int | 是 | 否 | 用户编号 |
表 4-2-article(文章)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | article_id | mediumint | 是 | 是 | 文章id | |
2 | title | varchar | 125 | 是 | 是 | 标题 |
3 | type | varchar | 64 | 是 | 否 | 文章分类 |
4 | hits | int | 是 | 否 | 点击数 | |
5 | praise_len | int | 是 | 否 | 点赞数 | |
6 | create_time | timestamp | 是 | 否 | 创建时间 | |
7 | update_time | timestamp | 是 | 否 | 更新时间 | |
8 | source | varchar | 255 | 否 | 否 | 来源 |
9 | url | varchar | 255 | 否 | 否 | 来源地址 |
10 | tag | varchar | 255 | 否 | 否 | 标签 |
11 | content | longtext | 4294967295 | 否 | 否 | 正文 |
12 | img | varchar | 255 | 否 | 否 | 封面图 |
13 | description | text | 65535 | 否 | 否 | 文章描述 |
表 4-3-article_type(文章分类)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | type_id | smallint | 是 | 是 | 分类ID | |
2 | display | smallint | 是 | 否 | 显示顺序 | |
3 | name | varchar | 16 | 是 | 否 | 分类名称 |
4 | father_id | smallint | 是 | 否 | 上级分类ID | |
5 | description | varchar | 255 | 否 | 否 | 描述 |
6 | icon | text | 65535 | 否 | 否 | 分类图标 |
7 | url | varchar | 255 | 否 | 否 | 外链地址 |
8 | create_time | timestamp | 是 | 否 | 创建时间 | |
9 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-4-auth(用户权限管理)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | auth_id | int | 是 | 是 | 授权ID | |
2 | user_group | varchar | 64 | 否 | 否 | 用户组 |
3 | mod_name | varchar | 64 | 否 | 否 | 模块名 |
4 | table_name | varchar | 64 | 否 | 否 | 表名 |
5 | page_title | varchar | 255 | 否 | 否 | 页面标题 |
6 | path | varchar | 255 | 否 | 否 | 路由路径 |
7 | parent | varchar | 64 | 否 | 否 | 父级菜单 |
8 | parent_sort | int | 是 | 否 | 父级菜单排序 | |
9 | position | varchar | 32 | 否 | 否 | 位置 |
10 | mode | varchar | 32 | 是 | 否 | 跳转方式 |
11 | add | tinyint | 是 | 否 | 是否可增加 | |
12 | del | tinyint | 是 | 否 | 是否可删除 | |
13 | set | tinyint | 是 | 否 | 是否可修改 | |
14 | get | tinyint | 是 | 否 | 是否可查看 | |
15 | field_add | text | 65535 | 否 | 否 | 添加字段 |
16 | field_set | text | 65535 | 否 | 否 | 修改字段 |
17 | field_get | text | 65535 | 否 | 否 | 查询字段 |
18 | table_nav_name | varchar | 500 | 否 | 否 | 跨表导航名称 |
19 | table_nav | varchar | 500 | 否 | 否 | 跨表导航 |
20 | option | text | 65535 | 否 | 否 | 配置 |
21 | create_time | timestamp | 是 | 否 | 创建时间 | |
22 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-5-code_token(验证码)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | code_token_id | int | 是 | 是 | 验证码ID | |
2 | token | varchar | 255 | 否 | 否 | 令牌 |
3 | code | varchar | 255 | 否 | 否 | 验证码 |
4 | expire_time | timestamp | 是 | 否 | 失效时间 | |
5 | create_time | timestamp | 是 | 否 | 创建时间 | |
6 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-6-collect(收藏)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | collect_id | int | 是 | 是 | 收藏ID | |
2 | user_id | int | 是 | 是 | 收藏人ID | |
3 | source_table | varchar | 255 | 否 | 否 | 来源表 |
4 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
5 | source_id | int | 是 | 否 | 来源ID | |
6 | title | varchar | 255 | 否 | 否 | 标题 |
7 | img | varchar | 255 | 否 | 否 | 封面 |
8 | create_time | timestamp | 是 | 否 | 创建时间 | |
9 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-7-comment(评论)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | comment_id | int | 是 | 是 | 评论ID | |
2 | user_id | int | 是 | 是 | 评论人ID | |
3 | reply_to_id | int | 是 | 否 | 回复评论ID | |
4 | content | longtext | 4294967295 | 否 | 否 | 内容 |
5 | nickname | varchar | 255 | 否 | 否 | 昵称 |
6 | avatar | varchar | 255 | 否 | 否 | 头像地址 |
7 | create_time | timestamp | 是 | 否 | 创建时间 | |
8 | update_time | timestamp | 是 | 否 | 更新时间 | |
9 | source_table | varchar | 255 | 否 | 否 | 来源表 |
10 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
11 | source_id | int | 是 | 否 | 来源ID |
表 4-8-evaluation_information(评价信息)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | evaluation_information_id | int | 是 | 是 | 评价信息ID | |
2 | service_name | varchar | 64 | 否 | 否 | 服务名称 |
3 | service_type | varchar | 64 | 否 | 否 | 服务类型 |
4 | home_user | int | 否 | 否 | 家政用户 | |
5 | ordinary_user | int | 否 | 否 | 普通用户 | |
6 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
7 | service_evaluation | varchar | 64 | 否 | 否 | 服务评价 |
8 | date_of_evaluation | date | 否 | 否 | 评价日期 | |
9 | evaluation_content | text | 65535 | 否 | 否 | 评价内容 |
10 | create_time | datetime | 是 | 否 | 创建时间 | |
11 | update_time | timestamp | 是 | 否 | 更新时间 | |
12 | source_table | varchar | 255 | 否 | 否 | 来源表 |
13 | source_id | int | 否 | 否 | 来源ID | |
14 | source_user_id | int | 否 | 否 | 来源用户 |
表 4-9-hits(用户点击)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | hits_id | int | 是 | 是 | 点赞ID | |
2 | user_id | int | 是 | 否 | 点赞人 | |
3 | create_time | timestamp | 是 | 否 | 创建时间 | |
4 | update_time | timestamp | 是 | 否 | 更新时间 | |
5 | source_table | varchar | 255 | 否 | 否 | 来源表 |
6 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
7 | source_id | int | 是 | 否 | 来源ID |
表 4-10-home_user(家政用户)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | home_user_id | int | 是 | 是 | 家政用户ID | |
2 | name_of_personnel | varchar | 64 | 否 | 否 | 人员姓名 |
3 | age_of_personnel | varchar | 64 | 否 | 否 | 人员年龄 |
4 | gender_of_staff | varchar | 64 | 否 | 否 | 人员性别 |
5 | qualification_certificate | varchar | 255 | 否 | 否 | 资质证明 |
6 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
7 | user_id | int | 是 | 否 | 用户ID | |
8 | create_time | datetime | 是 | 否 | 创建时间 | |
9 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-11-housekeeping_service(家政服务)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | housekeeping_service_id | int | 是 | 是 | 家政服务ID | |
2 | service_name | varchar | 64 | 否 | 否 | 服务名称 |
3 | service_type | varchar | 64 | 否 | 否 | 服务类型 |
4 | cover_image | varchar | 255 | 否 | 否 | 封面图片 |
5 | home_user | int | 否 | 否 | 家政用户 | |
6 | service_price | double | 否 | 否 | 服务价格 | |
7 | service_duration | varchar | 64 | 否 | 否 | 服务时长 |
8 | service_instructions | text | 65535 | 否 | 否 | 服务须知 |
9 | service_details | longtext | 4294967295 | 否 | 否 | 服务详情 |
10 | hits | int | 是 | 否 | 点击数 | |
11 | praise_len | int | 是 | 否 | 点赞数 | |
12 | collect_len | int | 是 | 否 | 收藏数 | |
13 | comment_len | int | 是 | 否 | 评论数 | |
14 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
15 | reservation_information_limit_times | int | 是 | 否 | 预约限制次数 | |
16 | create_time | datetime | 是 | 否 | 创建时间 | |
17 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-12-notice(公告)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | notice_id | mediumint | 是 | 是 | 公告ID | |
2 | title | varchar | 125 | 是 | 否 | 标题 |
3 | content | longtext | 4294967295 | 否 | 否 | 正文 |
4 | create_time | timestamp | 是 | 否 | 创建时间 | |
5 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-13-online_feedback(在线反馈)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | online_feedback_id | int | 是 | 是 | 在线反馈ID | |
2 | title_name | varchar | 64 | 否 | 否 | 标题名称 |
3 | type_of_feedback | varchar | 64 | 否 | 否 | 反馈类型 |
4 | feedback_user | int | 否 | 否 | 反馈用户 | |
5 | feedback_date | date | 否 | 否 | 反馈日期 | |
6 | feedback_content | text | 65535 | 否 | 否 | 反馈内容 |
7 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
8 | examine_reply | varchar | 255 | 否 | 否 | 审核回复 |
9 | create_time | datetime | 是 | 否 | 创建时间 | |
10 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-14-ordinary_user(普通用户)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | ordinary_user_id | int | 是 | 是 | 普通用户ID | |
2 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
3 | user_age | varchar | 64 | 否 | 否 | 用户年龄 |
4 | user_gender | varchar | 64 | 否 | 否 | 用户性别 |
5 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
6 | user_id | int | 是 | 否 | 用户ID | |
7 | create_time | datetime | 是 | 否 | 创建时间 | |
8 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-15-praise(点赞)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | praise_id | int | 是 | 是 | 点赞ID | |
2 | user_id | int | 是 | 是 | 点赞人 | |
3 | create_time | timestamp | 是 | 否 | 创建时间 | |
4 | update_time | timestamp | 是 | 否 | 更新时间 | |
5 | source_table | varchar | 255 | 否 | 否 | 来源表 |
6 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
7 | source_id | int | 是 | 否 | 来源ID | |
8 | status | tinyint | 是 | 否 | 点赞状态:1为点赞,0已取消 |
表 4-16-reservation_information(预约信息)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | reservation_information_id | int | 是 | 是 | 预约信息ID | |
2 | service_name | varchar | 64 | 否 | 否 | 服务名称 |
3 | service_type | varchar | 64 | 否 | 否 | 服务类型 |
4 | home_user | int | 否 | 否 | 家政用户 | |
5 | service_price | double | 否 | 否 | 服务价格 | |
6 | ordinary_user | int | 否 | 否 | 普通用户 | |
7 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
8 | appointment_time | datetime | 否 | 否 | 预约时间 | |
9 | appointment_remarks | text | 65535 | 否 | 否 | 预约备注 |
10 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
11 | examine_reply | varchar | 255 | 否 | 否 | 审核回复 |
12 | pay_state | varchar | 16 | 是 | 否 | 支付状态 |
13 | pay_type | varchar | 16 | 否 | 否 | 支付类型: 微信、支付宝、网银 |
14 | evaluation_information_limit_times | int | 是 | 否 | 评价限制次数 | |
15 | create_time | datetime | 是 | 否 | 创建时间 | |
16 | update_time | timestamp | 是 | 否 | 更新时间 | |
17 | source_table | varchar | 255 | 否 | 否 | 来源表 |
18 | source_id | int | 否 | 否 | 来源ID | |
19 | source_user_id | int | 否 | 否 | 来源用户 |
表 4-17-service_type(服务类型)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | service_type_id | int | 是 | 是 | 服务类型ID | |
2 | service_type | varchar | 64 | 否 | 否 | 服务类型 |
3 | create_time | datetime | 是 | 否 | 创建时间 | |
4 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-18-slides(轮播图)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | slides_id | int | 是 | 是 | 轮播图ID | |
2 | title | varchar | 64 | 否 | 否 | 标题 |
3 | content | varchar | 255 | 否 | 否 | 内容 |
4 | url | varchar | 255 | 否 | 否 | 链接 |
5 | img | varchar | 255 | 否 | 否 | 轮播图 |
6 | hits | int | 是 | 否 | 点击量 | |
7 | create_time | timestamp | 是 | 否 | 创建时间 | |
8 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-19-upload(文件上传)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | upload_id | int | 是 | 是 | 上传ID | |
2 | name | varchar | 64 | 否 | 否 | 文件名 |
3 | path | varchar | 255 | 否 | 否 | 访问路径 |
4 | file | varchar | 255 | 否 | 否 | 文件路径 |
5 | display | varchar | 255 | 否 | 否 | 显示顺序 |
6 | father_id | int | 否 | 否 | 父级ID | |
7 | dir | varchar | 255 | 否 | 否 | 文件夹 |
8 | type | varchar | 32 | 否 | 否 | 文件类型 |
表 4-20-user(用户账户)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | user_id | int | 是 | 是 | 用户ID | |
2 | state | smallint | 是 | 否 | 账户状态:(1可用|2异常|3已冻结|4已注销) | |
3 | user_group | varchar | 32 | 否 | 否 | 所在用户组 |
4 | login_time | timestamp | 是 | 否 | 上次登录时间 | |
5 | phone | varchar | 11 | 否 | 否 | 手机号码 |
6 | phone_state | smallint | 是 | 否 | 手机认证:(0未认证|1审核中|2已认证) | |
7 | username | varchar | 16 | 是 | 否 | 用户名 |
8 | nickname | varchar | 16 | 否 | 否 | 昵称 |
9 | password | varchar | 64 | 是 | 否 | 密码 |
10 | | varchar | 64 | 否 | 否 | 邮箱 |
11 | email_state | smallint | 是 | 否 | 邮箱认证:(0未认证|1审核中|2已认证) | |
12 | avatar | varchar | 255 | 否 | 否 | 头像地址 |
13 | open_id | varchar | 255 | 否 | 否 | 针对获取用户信息字段 |
14 | create_time | timestamp | 是 | 否 | 创建时间 |
表 4-21-user_group(用户组)
编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
1 | group_id | mediumint | 是 | 是 | 用户组ID | |
2 | display | smallint | 是 | 否 | 显示顺序 | |
3 | name | varchar | 16 | 是 | 否 | 名称 |
4 | description | varchar | 255 | 否 | 否 | 描述 |
5 | source_table | varchar | 255 | 否 | 否 | 来源表 |
6 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
7 | source_id | int | 是 | 否 | 来源ID | |
8 | register | smallint | 否 | 否 | 注册位置 | |
9 | create_time | timestamp | 是 | 否 | 创建时间 | |
10 | update_time | timestamp | 是 | 否 | 更新时间 |
5 系统实现
5.1 前台用户功能模块的实现
5.1.1 前台首页模块
前台小程序首页为用户提供一个综合信息展示平台,包括家政服务、在线反馈等,通过清晰的布局和分类让用户能够快速找到感兴趣的内容,并参与互动。其首页界面展示如下图5-1所示。
图5-1 前台首页界面图
5.1.2 用户注册模块
用户注册模块为新用户提供简便的注册流程,新用户可通过填写基本信息完成注册,系统会自动生成用户资料,支持后续完善个人信息,保障了用户的便捷性和数据完整性。用户注册界面展示如下图5-2所示。
图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-3用户登录界面图
登录的逻辑代码如下所示。
/**
* 登录
* @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.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}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.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
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());
tokenService.save(accessToken);
// 返回用户信息
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.4家政服务模块
家政服务模块展示了详细的家政服务信息,包括家政用户、服务价格、服务时长、服务须知、服务详情等,用户可以点赞、收藏或评论,同时支持家政服务预约功能。家政服务界面如下图5-4所示。
图5-4 家政服务界面图
查询家政服务的逻辑代码如下所示。
@RequestMapping("/get_obj")
public Map<String, Object> obj(HttpServletRequest request) {
List resultList = service.selectBaseList(service.select(service.readQuery(request), service.readConfig(request)));
if (resultList.size() > 0) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("obj",resultList.get(0));
return success(jsonObject);
} else {
return success(null);
}
}
服务预约界面如下图5-6所示。
图5-5 服务预约界面图
5.1.5在线反馈模块
在线反馈模块允许用户提交关于平台使用体验或改进建议的反馈,后台设有专门模块收集这些意见,并由管理员审核处理,确保平台能够持续优化服务。在线反馈界面如下图5-6所示。
图5-6 在线反馈界面图
提交在线反馈信息的逻辑代码如下所示。
@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.1.6新闻资讯模块
新闻资讯模块旨在为用户提供最新、最相关的家政服务行业动态和平台更新信息。通过简洁直观的界面设计,用户可以轻松浏览各类资讯文章,并根据个人兴趣选择阅读。新闻资讯界面如下图5-7所示。
图5-7 新闻资讯界面图
5.1.7 普通用户我的界面
普通用户的“我的”模块是一个集个人信息管理、服务互动于一体的综合功能区。用户可以在此查看和编辑自己的基本信息,如联系方式和个人简介等,以保持资料的最新状态。此外,还能查看历史预约记录、已收藏的服务以及提交的评价和反馈,便于回顾和管理自己的使用经历。普通用户我的界面如下图5-8所示。
图5-8普通用户我的界面图
5.1.8 家政用户我的界面
家政用户的“我的”模块专注于提供高效的服务管理和业务优化工具。在家政用户登录后,他们可以通过此模块查看和更新个人信息、管理发布的服务详情,包括调整价格和服务描述等。同时,家政用户还可以处理收到的预约请求,查看客户评价,以便及时改进服务质量。家政用户我的界面如下图5-9所示。
图5-9家政用户我的界面图
5.2 后台功能模块的实现
5.2.1后台登录模块
管理员的后台登录页面设计简洁且安全,提供了用户名和密码输入框以及验证码验证功能,确保只有授权人员能够访问管理系统。成功登录后,管理员将被引导至后台首页,概览系统的关键运行状态。后台登录界面如下图5-10所示。
图5-10 后台登录界面图
5.2.2系统用户模块
系统用户模块实现对所有注册用户的集中管理和维护,管理员可以审核新注册用户的信息,监控用户行为,必要时进行账户封禁或权限调整操作,同时支持批量导出用户数据用于分析和报告,保障了平台的安全性和合规性。系统用户界面如下图5-11所示。
图5-11 系统用户界面图
修改用户信息关键代码如下:
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
5.2.3 服务类型管理模块
服务类型管理模块使管理员能够定义、更新家政服务的分类标准,以满足市场变化和服务扩展的需求。管理员可以轻松添加新的服务类别或修改现有类别。服务类型管理界面如下图5-12所示。
图5-12 服务类型管理界面图
5.2.4 家政服务管理模块
在家政服务管理模块中,管理员负责审核新发布的家政服务项目,确保其符合平台的质量标准,并及时调整或移除不符合要求的服务。该模块还支持对服务详情的直接编辑,如价格、时长和服务说明等,以优化用户体验并提高服务质量。家政服务审核界面如下图5-13所示。
图5-13 家政服务审核界面图
家政服务审核关键代码如下:
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
5.2.5 在线反馈管理模块
在线反馈管理模块让管理员能够集中处理用户的反馈信息,包括查看、回复和解决用户提出的问题或建议。该模块不仅有助于提升用户满意度,还能为平台改进提供宝贵的意见。管理员可以通过标记状态来跟踪反馈的处理进度,确保每个问题都得到妥善解决。在线反馈审核界面如下图5-14所示。
图5-14 在线反馈审核界面图
5.2.6系统管理模块
轮播图管理模块是系统管理的一部分,专门用于更新和维护平台首页展示的轮播图内容。管理员可以上传新图片、设定显示顺序及链接地址,用以推广热门服务或重要公告。轮播图界面如下图5-15所示。
图5-15 轮播图界面图
上传轮播图关键代码如下:
@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, "上传失败");
}
6 系统测试
6.1 测试目的
系统的测试目的在于确保家政服务预约平台在功能、性能、安全性和用户体验等方面均达到预期标准。通过全面的测试,验证各模块的正确性和稳定性,确保不同类型的用户能够顺畅地使用系统完成各自的任务。同时,测试还致力于发现并修正潜在的问题和缺陷,优化系统响应速度和数据处理能力,保障系统的可靠运行,并为用户提供一个安全、高效、便捷的服务平台。
6.2 测试类型
检测系统是否合格,需要用到很多的测试类型。接下来就对这部分内容进行描述。
功能测试:这是系统测试中,首先进行的测试内容,其属于黑盒测试。主要检验制作的系统与需求说明文档的相符程度,还有它们之间存在的差异问题。
性能测试:主要测试制作的系统,在同时面对很多的用户请求时,该系统的应对能力。同时也是检查制作的系统跟事先预定的系统性能存在的差距问题。这样的方法通常在实时系统中,或者是嵌入式系统中运用得比较多。
容量测试:这种方法针对数据。检查正常运行的系统对数据处理的容量值。
安全性测试:这种方法常用于检验系统中设置的安全保护机制对来自非法用户的攻击时是否有效。而检测系统中的信息保护机制就需要使用常见安全测试中的保护测试来验证。
健壮性测试:这种测试还有一个别称是容错测试,通常运用故障插入法来检测系统的容错能力,看系统是否可以忽略故障保持继续运行,或者是检测系统应对故障时的自动恢复能力。
兼容性测试:面对计算机的各种软硬件环境,检测本系统是否可以兼容。
易用性测试:这种方法主要是面向用户,检测用户是否很容易理解和使用系统。
家政服务预约平台在经历最后的测试环节,需要检验本系统的功能安全性,功能适用性等内容,最终得出测试结论。
表6-1 功能测试数据表
符合要求 | |
符合要求 | |
符合要求 | |
符合要求 | |
符合要求 |
6.3 可用性测试
通常来说,一个布局合理,显示的内容无错别字,并具备合理正常的操作逻辑的系统往往很受欢迎,而且可以提升访问者的使用时间以及访问率。
表6-2 可用性测试数据表
测试内容 | 测试结果 |
合理 | |
合理 | |
能 | |
无 | |
检查系统功能有无友好性 | 有 |
能 | |
无 | |
检查系统有无提供帮助信息 | 有 |
6.4 测试结果分析
家政服务预约平台经过了编码阶段的单元测试,和最后的系统整体测试等测试后,对于用户要求的功能,本系统都进行了实现,各个模块都运行正常。在面对一些故障性问题时,本系统也有相应的应对办法,并且本系统可以保持24小时正常运转。因此,基于大数据的面向高校的家政服务预约平台可以交付用户使用。
7 总结
本研究围绕家政服务预约平台的开发与实现展开,旨在通过现代信息技术为普通用户、家政用户和管理员提供高效、便捷的家政服务预约平台。研究从需求分析入手,明确了用户、家政用户和管理员的功能需求,并结合非功能需求进行了系统可行性分析。系统采用 B/S 架构,基于Java语言和Spring Boot框架进行开发,结合微信小程序实现移动终端支持,同时利用MySQL数据库进行数据存储与管理。在系统设计阶段,详细规划了架构设计、功能设计和数据库设计,确保系统的模块化与可扩展性。系统实现部分按照功能模块逐一开发,完成了用户、管理员和家政用户的各项功能。系统测试阶段,针对主要功能进行了全面测试,验证了功能的正确性和系统的稳定性,测试结果表明系统各项功能均达到预期目标。
通过本次研究,家政服务预约平台的开发不仅为用户提供了便捷的家政服务预约管理工具,也为家政用户和管理员提供了高效的工作平台。系统的成功实现证明了所选技术栈的合理性与可行性,为后续的优化与功能扩展奠定了坚实基础。未来,随着技术的不断进步和用户需求的进一步明确,系统有望在更广泛的场景中发挥重要作用。
参考文献
- 张引,赵玉丽,张斌,等.微信小程序全栈开发技术与实战[M].人民邮电出版社:202212.258.
- 千锋教育.微信小程序开发与实战[M].人民邮电出版社:202209.367.
- 陈敬宗.计算机软件Java编程特点与技术应用分析[J].中国信息界,2025,(01):162-164.
- 柯灵.Java编程语言在计算机软件开发中的应用与问题处理探析[J].电脑知识与技术,2024,20(27):45-47.
- 李艳杰.MySQL数据库下存储过程的综合运用研究[J].现代信息科技,2023,7(11):80-82+88.
- 肖睿,李鲲程,范效亮,等.MySQL数据库应用技术及实践[M].人民邮电出版社:202206.228.
- 王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.
- 李兴华,马云涛.Spring开发实战[M].人民邮电出版社:202303.381.
- 刘波,庄媛.互联网时代家政行业如何多元发展[N].天津日报,2025-01-27(012).
- Ahmed U J ,Talukder S M ,Talukdar A , et al.Sheba.xyz: Codifying household service solutions using a digital platform[J].Journal of Information Technology Teaching Cases,2024,14(2):290-298.
- Ettarfi K .Conceptualizing labor agency through resilience: Practices of reassembling work on domestic services platforms[J].Geoforum,2024,156104130-104130.
- 李泊锐,李蕊婷,高巧依.数字化趋势下家政服务平台的生态网络构建现状及对策探析——以宁波市三个阿姨信息科技有限公司为例[J].上海商业,2024,(10):18-20.
- 何晓荣,赖桂冰.家政服务业经营管理模式改革探究[J].今日财富,2024,(30):56-58.
- 王凯文.基于深度学习的家政服务推荐平台研究与应用[D].太原师范学院,2024.
- 邹连飞.A家政公司O2O管理模式的优化研究[D].广州大学,2024.
- 赵爽,赵丹丹.基于区块链技术的家政服务信用体系构建研究[J].网络安全技术与应用,2023,(09):124-126.
- 推进家政服务业提质扩容升级家政服务信用信息平台[J].中国信用,2023,(06):20-21.
- 吕怡楠.互联网时代下的家政服务业发展研究[J].上海商业,2023,(01):89-91.
- Jianjun Y ,Yanli F ,Yuanguang Z , et al.Pricing and quality strategies for an on-demand housekeeping platform with customer-intensive services[J].Transportation Research Part E,2022,164
- 龙凤,友邻优生活B2B2C家服在线交易平台(微信小程序端)V2.0.重庆市,家无忧(重庆)网络科技有限公司,2022-04-28.
致 谢
在此论文完成之际,感谢我的指导老师。在指导老师的网页设计课上,当时我学到了很多东西,这对于我实习过程中也打了一定的基础,而且指导老师对于我的设计也提出许多建议,并予以悉心的指导,对于一些细小的问题都耐心的指导我去完善,授予我写论文的心得,时常的鼓励我,另外感谢教导我完善此项目的前端同学,对于这个项目,我是边学习边实现完成的,有许多东西开始并不是很明白,但前端开发的同学非常耐心的引导我去将这个项目完成,在系统的后端开发中,所用到的后台开发技术也时常会给我讲解,助于我更好的将论文完成,在此对帮助到我的同学和一直予以教导的指导老师致以衷心的感谢,祝事业有成。