基于图像识别的社区旧衣物回收管理系统设计
2024-01-26黄媛媛张错玲万谊丹陈家俊
黄媛媛 张错玲 万谊丹 陈家俊
摘要:随着我国经济的发展,衣物的淘汰率逐年升高,如何科学地处理被淘汰的旧衣物,开始引起人们的关注。文章结合目前常见的几种旧衣物回收模式的优点,提出一种基于图像识别的“线上申请+站点投放”的社区旧衣物回收模式,并设计了一款社区旧衣物回收管理系统。用户可以通过识别二维码图像获取相关数据,进入该系统进行旧衣物回收申请。文章详细分析了旧衣物回收管理系统的功能需求,重点阐述了具体的模块划分和详细的数据库设计。提出的旧衣物回收管理模式能够使社区旧衣物回收更便捷,用户操作简单方便。
关键词:旧衣物回收管理系统;数据库设计;E-R图;图像识别;线上申请+站点投放
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2023)35-0043-04
开放科学(资源服务)标识码(OSID)
0 引言
随着经济的发展,人们在服装方面的需求不再只是保暖,而是更加追求品质与款式。随之而来的是,不断有大量的旧衣物被淘汰,随着旧衣物的数量急剧增长、垃圾分类的现象普及,对旧衣物的回收也逐渐被人们关注[1],如何方便、高效、合理地对旧衣物进行回收值得探讨和研究。基于此,提出一种基于图像识别的“线上申请+站点投放”的社区旧衣物回收模式,并设计一款社区旧衣物回收管理系统。一款高效实用的旧衣物回收管理系统不仅需要功能模块设计合理,还需要稳定可靠的数据库系统作为支撑。优秀的数据库设计不仅可以节省数据存储空间,还能提升系统的性能,提高系统的运行效率,最大限度地保障数据系统中数据的完整性和一致性[2-3]。文章重点介绍社区旧衣物回收管理系统中的各功能模块,并对各模块中的数据库进行详细的设计。
1 数据库设计工具及运行结构
MySQL是一种开源的关系型数据库管理系统(RDBMS) ,支持多用户、多线程、多任务的操作,在社区开发和支持方面有 20 多年的历史,是一种安全、可靠、稳定的基于SQL的数据库管理系统。MySQL作为一个功能强大且易用的关系型数据库管理系统,被广泛应用在个人网站和中小型企业中。
MySQL采用C/S的体系架构,即客户端和服务器端的基本架构。客户端主要指一些应用程序或管理工具。服务器端包含连接层、核心服务层、存储引擎层、数据存储层。每一层都包含许多模块,其中,核心服务层提供MySQL核心服务,包括查询、解析、查询优化、缓存和内置函数。所有跨存储引擎层的功能都在这一层实现,存储过程、触发器、视图等功能也在这一层实现。当客户端向 MySQL 服务器发送一条查询请求时,程序通过MySQL与connectors交互,连接池认证相关处理,服务器首先检查查询缓存,如果查询的结果已经存储在缓存,则立刻返回存储在缓存中的结果,否则服务器进行SQL解析,再由优化器生成对应的执行计划,MySQL 根据执行计划,调用存储引擎的API来执行查询,将结果返回给客户端,同时将查询结果存储在缓存中[3-4]。MySQL逻辑架构及SQL语句执行过程(见图1) 。
2 需求分析
目前国内旧衣物回收主要有2种模式:线下回收模式和“互联网+”回收模式。线下回收模式,有两种方式:一种方式是通过在校园、小区放置旧衣物回收箱来回收学生、居民投放的旧衣物,这种方式品控无法保证[5],可重复利用率不高,且科学合理的清运也很难保障,要么清运不及时,要么清运时旧衣物过少,运输成本高;另一种方式是生产商独立回收,这种方式回收渠道单一、回收率低。“互联网+”回收模式,是通过线上预约,线下上门回收。这种回收方式通常是通过闲鱼、转转等专门的软件进行预约,且每次预约需达到5kg的重量[5],不方便小区居民随时投放,覆盖率不高。针对目前旧衣物回收现象和所出现的问题,设计一款方便小区居民随时投放的旧衣物回收管理系统,具有很好的实用价值和现实意义。
在设计基于MySQL的社区旧衣物回收管理系统时,首先要考虑的需求就是用户使用系统时便利性的需求[6],只有满足用户便利性的需求,才能保证系统应用的覆盖率和使用量。对于年轻上班族来说,他们中大部分人群白天没有“合适的时间”,等待回收人员上门回收旧衣物,而对于留守在家中的人群,大多数是年龄较大的人群,不太习惯于使用手机申请旧衣物回收,“互联网+”的模式对这一部分人群显得不够“友好”[7]。通过“线上申请+站点投放”的回收模式进行旧衣物回收管理,能够很好地满足居民随时将家中旧衣物进行回收的需求。通过“线上申请”的方式,可以满足小区居民随时随地注册申请旧衣物回收的需求,同时对于不习惯于使用手机申请的人群可以在家人的帮助下完成注册,“站点投放”的方式,对投放衣物的重量、件数和时间没有限制,可以滿足上班族在“不忙”的时间段投放旧衣物,也可以让家人代为投放旧衣物。其次,在设计者设计旧衣物回收管理系统时要考虑的是品控和运输成本控制的需求。“线上申请”可以通过负责人审核环节将不符合回收标准的旧衣物排除在外,达到较好的品控效果[8];在“站点投放”的回收箱设计一个衣物存量反馈功能,根据回收箱的衣物存量,合理安排运维人员的清运时间和清运频率,这样在很大程度上地满足了控制运输成本的需求[9]。通过“线上申请+站点投放”的回收模式,既能够很好地解决居民随时申请、随时投放的难题,也能够很好地解决覆盖面、品控、运输成本控制等方面的问题。
通过对系统的功能需求分析,可以准确找到系统所需要实现的功能模块和其所需要的功能需求,为后续的系统设计和开发提供有效的依据。同时,系统功能需求分析也有助于优化系统功能设计,提高系统的可用性和用户满意度。
3 系统总体设计
系统采用Java作为编程语言,将MySQL作为后台数据库,使用Navicat for MySQL作为数据库管理工具,以JSP技术作为Web开发技术[10]。通过需求分析可知,旧衣物回收管理系统的用户角色包括客户、站点负责人、运维人员和系统管理员。系统包括5个功能模块:站点管理模块、客户管理模块、员工管理模块、回收信息管理模块、公告管理模块[10-11]。经过分析,旧衣物回收管理系统各功能模块示意图(见图2) 。
客户模块:居民通过手机扫码回收箱上的二维码进入手机App,完成账号注册,通过账号和密码进入到系统相应页面,填写客户基本信息,客户可以对个人信息进行管理,查看系统发布的公告。如果客户有旧衣物回收需求,在系统“回收申请”模块提出旧衣物回收的申请,客户误操作时,可以撤回申请。站点负责人通过“回收申请管理”模块对客户的回收申请进行审核,客户在“回收申请”模块可以查看审核结果。当审核通过后,客户可以将旧衣物投放至最近的回收箱,当系统提示回收箱装满时,站点负责人可以暂缓通过客户的旧衣物回收申请,并通知客户暂缓通过原因,防止客户跑空,提升客户体验感。
站点负责人模块:站点负责人即负责某个社区所有回收站点的工作人员。进入系统后,站点负责人凭借账号和密码进行登录,通过验证后转入站点负责人页面,站點负责人通过“回收申请管理”模块对本社区辖属的所有回收站点,进行回收申请审核、审核状态查看、审核状态修改。通过“站点状态管理”可以查看本社区内所有站点物品存量信息,当系统提示回收箱状态为满时,站点负责人通过“派单信息管理”通知或电话通知到运维人员及时进行清运。站点负责人通过“回收记录管理”可以查看本社区辖区内所有站点的回收记录,通过回收记录可以进行多维度的数据统计和分析处理。站点负责人可以通过“公告管理”发布和管理公告。
运维人员模块:运维人员即清运社区站点回收箱的旧衣物的工作人员。进入系统后,运维人员凭借账号和密码进行登录,通过验证后转入运维人员页面,运维人员可以通过“个人信息管理”更新个人信息。通过“派单信息管理”可以查看社区内哪些站点的回收箱旧衣物等待清运,当站点旧衣物清运完成后,运维人员通过“派单信息管理”更新本站点旧衣物清运情况,并通过“站点状态管理”更新站点回收箱的状态。旧衣物回收管理系统运行流程图(见图3) 。
系统管理员模块:系统管理员是回收机构的负责人,负责管理回收机构的所有信息。进入系统后,系统管理员凭借账号和密码进行登录,通过验证后转入系统管理员页面[11]。通过“站点管理”模块,系统管理员可以对回收机构下属的各个回收站点进行信息管理。通过“运维人员管理”模块,系统管理员可以对回收机构所有运维人员的信息进行管理。通过“站点负责人管理”模块,系统管理员可以对回收机构所有站点负责人信息进行管理。通过“客户信息管理”模块可以管理所有客户信息。利用“回收记录统计”模块,系统管理员可以多维度统计整个回收机构的回收记录,对回收情况进行相应的数据分析和处理[11],合理调配回收站点布局和资金、人员投入情况。在“公告管理”模块中,系统管理员可以对回收机构发布的所有公告进行管理和维护。
4 系统概念结构设计
根据上述系统功能需求分析,可知本系统一共有7个实体:回收站点、社区站点负责人、社区、运维人员、旧衣物、客户、公告[11]。对收集到的数据进行分类、组织,可得到旧衣物回收管理系统各个实体的 E-R 图(见图4、图5等)。
5 系统逻辑结构设计
通过分析上述各实体E-R图和回收管理系统E-R图,可以将 E-R 图转换为对应的关系模型。旧衣物回收管理系统包含以下 7 张表:回收站点、社区、社区站点负责人、运维人员、旧衣物、客户、公告。
回收站点表包括:二维码编号、站点名称、站点地址、站点负责人、所属社区、回收箱状态。
站点负责人表包括:负责人编号、姓名、账号、密码、所属社区、站点负责人权限、联系方式。
社区表包括:社区编号、名称、社区地址。
运维人员包括:编号、姓名、所属社区、联系方式。
旧衣物表包括:衣物编号、衣物成分、新旧程度、衣服厚度、所属站点、回收时间、所属客户。
客户表包括:编号、姓名、账号、密码、权限、所属站点、联系方式。
公告表包括:公告编号、发布时间、发布人、公告内容、公告标题。
6 系统数据库表结构设计
通过数据库逻辑设计,可以将概念设计转化为具体的表结构和逻辑操作,为后续的数据库物理实现提供有力的支持。同时,数据库逻辑设计也有助于提高系统的性能和可用性,增强系统的稳定性和安全性。旧衣物回收管理系统涉及的主要表设计(见表1、表2等)。
7 结束语
文章设计了一款全新的“线上申请+站点投放”的社区旧衣物回收管理系统,重点介绍社区旧衣物回收管理系统中的各功能模块,并对各模块中的数据库进行详细的设计。在分析系统需求和明确系统功能的基础上,详细描述了该系统数据库的设计流程,同时展示了每个环节的阶段性成果。优秀的数据库设计不仅提高了旧衣物回收管理系统整体设计效率,还为后期系统能够高效运行提供了有力的支撑。
参考文献:
[1] 魏丹.社区旧衣物回收服务系统设计研究[D].北京:北京化工大学,2021.
[2] 乔梦月.探析Oracle数据库应用系统的性能优化[J].电脑编程技巧与维护,2021(8):90-92.
[3] 郑戟明,董云朝,柳青.MySQL数据库数据导入导出方法的探讨[J].电脑知识与技术,2022,18(22):24-25.
[4] 杨颖,马莲,李树森,等.长江源区SWAT水文模型数据库构建及模型的率定与验证[J].安徽大学学报(自然科学版),2022,46(4):76-84.
[5] 陆向阳,周溪召.废旧衣物回收模式及问题分析[J].物流科技,2020,43(12):57-59.
[6] 张坤,张云霞,孙全建.计算机软件数据库设计的原则及问题研究[J].电子技术与软件工程,2022(1):168-171.
[7] 范宏进,孙明洋,汪欣欣,等.基于二维码技术和奖励机制的闲置衣物分享系统[J].上海纺织科技,2022,50(11):58-61.
[8] 郭燕.英国慈善机构在旧衣物回收体系中的作用[J].纺织导报,2015(10):26,28-30.
[9] 周映黎,刘思岐,肖彩红,等.关于旧衣公益性回收利用问题研究[J].企业导报,2015(7):180-181.
[10] 赵栋,朱晓峰,孔令宇.基于Web的健身房管理系统设计与实现[J].北京印刷学院学报,2022,30(9):65-69.
[11] 李洋,刘婷.基于MySQL的家电回收管理系统的数据库设计[J].科技与创新,2023(3):141-143,146.
【通联编辑:谢媛媛】