1. 研究目的与意义、国内外研究现状(文献综述)
1.1研究意义
随着社会信息化发展,当今社会人们的生活节奏加快,增加了物品遗失的概率,给物品失主造成经济上与精神上的损失。在寻找失物时,传统的张贴寻物启事的方法效率低、保密性差、管理不集中还耗费财力物力[1]。而随着经济发展、义务教育的展开和道德教育的广泛化,人们在拾取失物后更愿意将它交还失主。然而,很多时候人们不知道如何去寻找失主,也不知道该将一些如u盘等价值不明显但是很重要的失物交到何处。并且传统的手工登记管理手段和纸质物品管理方法对失物的寻找、招领、管理及返还都存在工作量大、效率低的问题[2]。如何为失物招领提供一个可行的高效解决方案,则需要采用信息化手段,有序地对失物招领这项社会化程度较高的活动进行信息化管理。
大学校园人口密度大、活动范围广,学生和教师常用的生活物品与学习用品,如书籍、u盘、钥匙、校园卡、水杯等,难免会遗失。而除了去失物地点寻找和去零散的招领处寻找外,师生们最普遍的失物寻找方法是在qq空间和微信朋友圈发布寻物启事、在校内学生自建设自管理的失物招领群发布失物信息。但是这些方法除了传播效率不高、耗费时间外,还存在信息零散的问题,使得事物的寻找与招领都不方便且效率低下[3]。为了解决该问题,有必要研究和开发一个统一的信息管理平台,方便师生们对失物的寻找与招领。
2. 研究的基本内容和问题
2.1 研究目标
现有的失物招领平台都是基于大范围的,一般为省份、城市为单位,信息多且杂、难寻找有用信息,不适合以学校为单位寻找失物。而目前在南京农业大学丢失物品后,最普遍的失物寻找方法是在QQ空间和微信朋友圈发布寻物启事、在同学自建的失物招领群发布失物信息以及去分布在一食堂、教学楼A101、北门门卫、各宿舍管理员处等的失物存放处寻找。这些方法传播范围有限、失物存放处零散众多、QQ空间转发还耗费朋友时间精力,都不是很好的方法。
本研究致力于开发一个面向南农师生的失物招领微信小程序平台,构建一个完善的失物招领管理体系。用户登录后,可以根据不同分类浏览已发布的失物或招领信息,也可以自行发布失物或招领信息寻物或寻人。在用户发布失物信息后,显示相关的招领信息;同样的,在用户发布招领信息后会显示相关的失物信息。而失物招领处的管理者可以更有效地管理失物招领处的失物,使得学校范围内的失物管理效率有极大提高。对于总管理者,也将提供各失物招领处的物品及人员的管理功能。相较于其他平台,本系统加入了防止冒领的机制,将会对于失物的招领工作进行一个正确性的保障。
2.2 研究内容
基于上述的研究目的,本研究以微信平台为载体,致力于设计和构建一个面向南农师生的实用的失物招领平台。
2.2.1功能设计
图1 程序功能设计图
程序功能设计如图1所示。用户为微信小程序界面。用户在第一次使用时需要进行微信授权及学工号绑定,学工号及其对应密码由后台提前导入。用户绑定学工号时检验该学工号是否存在及密码是否正确。登录平台后用户可以进行失物找寻和招领信息的浏览,可以根据物品分类选择查看,也可以输入关键词进行查找,系统会根据用户需求进行相关内容推荐。找到失物后可以发送感谢信,发现不实信息后可以进行举报,同时,对于不合理情况也可以向总负责人进行投诉。寻物用户在系统中找到自己的失物后可以回答发布者提出的关键信息问题,发布者收到后查看问题答案,确认正确后,寻物用户可以自行前往约定地点或失物招领处,展示通过的申请领取自己的失物。若用户被管理员移入违规用户,用户无法进行发布信息、发布感谢信的操作,并提示“您已违规,请与辅导员联系解封”。
工作人员及管理员为网页界面。招领处工作人员登录平台后,可以在有学生或教师送来失物时进行信息的确认,在失主前来认领物品时进行物品归还的确认。同时,招领处的工作人员还可以对本招领处的物品进行管理,不定期列出失物招领表在学校公告。总管理员登录平台后可管理各类信息。在收到用户的举报信息和投诉的时候可进行处理。
2.2.2数据库设计
实体包括用户、工作人员、管理员、失物、招领物、招领处、感谢信、举报信息、投诉信息,E-R图如图2-图10展示。
图2 用户E-R图
图3 工作人员E-R图
图4 管理员E-R图
图5 失物E-R图
图6 招领物E-R图
图7 招领处E-R图
图8 感谢信E-R图
图9 举报信息E-R图
图10投诉信息E-R图
图11招领处失物E-R图
实例表包括包括用户、工作人员、管理员、失物、招领物、招领处、感谢信、举报信息、投诉信息,如表1-表7所示。
表1 用户
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 学工号(主键) |
| password | varchar | 15 | 密码 |
| username | varchar | 20 | 用户名 |
| create_time | datetime | 8 | 注册时间 |
| role | int | 11 | 用户权限 |
| keyword | varchar | 20 | 关联关键字 |
| userlock | bit | 1 | 是否删除标志 |
表2 工作人员
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 学工号(主键) |
| password | varchar | 15 | 密码 |
| username | varchar | 20 | 用户名 |
| create_time | datetime | 8 | 注册时间 |
| role | int | 11 | 用户权限 |
| userlock | bit | 1 | 是否删除标志 |
表3 管理员
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 账号 |
| password | varchar | 15 | 密码 |
表4 失物
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 编号(主键) |
| title | varchar | 50 | 标题 |
| name | varchar | 50 | 物品名称 |
| classification | varchar | 50 | 物品种类 |
| address | varchar | 50 | 丢失地点 |
| create_time | datetime | 8 | 添加时间 |
| lose_time | datetime | 8 | 丢失时间 |
| info | varchar | 255 | 详情描述 |
| mobile | varchar | 15 | 手机号 |
| remark | varchar | 255 | 备注 |
| result | bit | 1 | 结果(是否寻回) |
| post_id | int | 11 | 发布者学工号 |
| picture | varchar | 255 | 物品图片存储路径 |
表5 招领物
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 编号(主键) |
| title | varchar | 50 | 标题 |
| name | varchar | 50 | 物品名称 |
| classification | varchar | 50 | 物品种类 |
| address | varchar | 50 | 捡拾地点 |
| create_time | datetime | 8 | 添加时间 |
| pickup_time | datetime | 8 | 捡拾时间 |
| info | varchar | 255 | 详情描述 |
| mobile | varchar | 15 | 手机号 |
| handin | bit | 1 | 是否交至招领处 |
| caseid | int | 11 | 交至的招领处 |
| check | bit | 1 | 是否通过招领处审核 |
| result | bit | 1 | 结果(是否找到失主) |
| post_id | int | 11 | 发布者的学工号 |
| picture | varchar | 255 | 物品图片存储路径 |
| question | varchar | 255 | 问题 |
| answer | varchar | 255 | 问题回答 |
| apply_id | int | 11 | 申领者学工号 |
表6 招领处
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 编号(主键) |
| name | varchar | 50 | 名称 |
| address | varchar | 255 | 地址 |
| worker_id | int | 11 | 工作人员编号 |
| exl_id | int | 11 | 存放的失物表编号 |
表7 感谢信
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 编号(主键) |
| title | varchar | 50 | 标题 |
| info | varchar | 255 | 详情描述 |
| create_time | datetime | 8 | 添加时间 |
| post_id | int | 11 | 发布者学工号 |
表8 举报信息
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 编号(主键) |
| th_id | int | 11 | 举报的信息编号 |
| info | varchar | 255 | 举报理由 |
| post_id | int | 11 | 举报人学工号 |
表9 投诉信息
| 字符名 | 类型 | 长度 | 意义 |
| id | int | 11 | 编号(主键) |
| info | varchar | 255 | 投诉内容 |
| post_id | int | 11 | 投诉者学工号 |
表10招领处失物
| 字符名 | 类型 | 长度 | 意义 |
| thing_id | int | 11 | 失物编号(主键) |
| address_id | int | 11 | 招领处编号 |
| putin_time | datetime | 8 | 收入时间 |
2.2.3技术研究
小程序前端使用微信小程序开发框架,主要逻辑使用JavaScript开发,页面使用小程序标准的wxml和wxss构建,使用axios进行前后端网络通信,开发工具采用微信官方提供的微信小程序开发工具。小程序开发具有先天平台优势,比Google Instant APP在内的新型Web技术更加稳定,受众更广。
小程序后端采用标准SSM(Spring-SpringMVC-Mybatis)开发框架,由J2EE技术进行前后端通信处理,基于Jackson进行Restful通信,数据库采用MySQL8.0,后端系统部署在腾讯云服务器上,服务器版本采用Ubuntu18.04,Web容器使用ApacheTomcat8,使用HTTPS作为协议通信。该套架构具有稳定可靠的特点,非常适合作为小程序后端系统使用。
测试数据模拟生成,采用边界值法、等价类划分法、场景法进行测试。测试用例包括动作/条件及期望结果。在内容上:考虑软件的各类因素,包括流程、UI界面、提示语、交互、功能点;在测试流程上:优先考虑系统核心流程,再考虑系统的异常情况。
2.2.4算法设计
根据CB算法设计算法实现推荐内容的精确匹配。
2.2.5防冒领机制
用户上传招领物时需要填写一个关键问题,若申领人回答正确此问题,用户可进行确认,之后申领人可查看物品所在地点及联系方式,并协商领取或前往失物招领处领取失物。
2.3 拟解决的关键问题
(1)关系数据库设计
(2)管理系统业务流程的设计
(3)设计研究算法进行内容的推荐
(4)具体业务开发
(5)防冒领机制
3. 研究的方法与方案
3.1研究方法
1.通过查阅书籍资料以及网上搜索相关资料做好前期准备
2.了解其他失物招领平台须具有的基础功能
4. 研究创新点
南京农业大学的网上办事大厅整合了许多校园服务,比较完善,但是一直以来都缺少一个校园失物招领的平台,本项目基于南京农业大学的情况进行失物招领平台的开发,弥补了该功能的缺失。相较于其他失物招领网站,本系统具有更强的管理性。根据学校的实际情况进行对于失物的管理设计方案,对于失物的收入、归还以及整理都有极大帮助。对于总管理者来说,也可以有效地管理各失物招领处的物品及工作人员。并且与别的系统相比,基于微信小程序的系统将会具有更好的实用性与便捷性。
5. 研究计划与进展
2019年12月11日-12月31日:上网查找资料,学习相关的开发知识;
2020年01月01日-01月15日:对系统进行详细的分析、设计;
2020年01月16日-02月01日:熟悉软件使用,确定研究方案;
