高校闲置物品交易系统设计与实现

2021-09-08 02:51林康杰邱泽明陈彬陈兆东陈晓璇鲜征征
新型工业化 2021年6期
关键词:功能模块闲置聊天

林康杰,邱泽明,陈彬,陈兆东,陈晓璇,鲜征征

(广东金融学院 互联网金融与信息工程学院,广东 广州 510521)

0 引言

近年来,互联网行业与科技迅猛发展,随之出现众多的闲置物品交易平台,比如“闲鱼”“转转”等平台,通过它们可 消化一部分闲置物品,有助于建设环保型社会[1]。高校大学生这一用户群体接受能力强,能快速适应互联网环境的变化,但往往又存在较为冲动且不理性的消费理念,随之带来闲置物品不断增加等问题[2]。

在校期间,高校学生通常会有各种闲置物品,甚至还有一些因冲动消费而购买的无太多用处的物品[3]。如果把这些物品通过二手交易平台进行售卖,卖家在妥善处理物品的同时能够获得了一定的收益,而买家只需花费较少的金钱就能获得需要的物品[4]。随着社交平台的推广普及,QQ、微信、微信公众号等社交软件越来越大众化[5],但通过QQ群、微信群和朋友圈途径做交易并不顺畅。大学生绝大部分无收入来源,但有一定的环保意识和开放的消费观念[6]。二手交易平台,是消费者将购买来的使用过或未使用过的商品即折旧、闲置品进行交易的平台[7]。高校二手交易市场蕴含商机,并且有着很大的发展空间。

2013年,李成成[8]基于某公司的跳蚤市场网站项目,借助Web、SQL数据库和NET技术成功搭建了大学生的互联网旧物交换系统平台。2016年,李星悦等人[9]利用安卓系统,结合Java以及WebApp等技术手段,设计并完成了大学内校园闲置物品交易系统平台。2016年,王超等人[10]调研了高校二手书籍等学习资料交易市场,并根据其存在的问题,提出,建立校内移动交易平台的设想。2017年,李岩堃等人[11]结合对二手市场现状的调查分析,设计并构建完整的高校二手交易平台功能框架。2019年,赵永刚等人[12]深入调查分析校园闲置物品市场,认为在校园里搭建二手闲置物品交易平台是“绿色生活方式”与“循环经济”的有力结合,同时也减轻了大学生对于闲置物品的过度浪费。

综上,校园闲置物品交易系统有利于解决闲置囤积问题,有助于建设绿色环保型校园。当前,校园师生的生活、学习物品不断增多,闲置物品交易的需求很迫切,交易范围越来越广。本文将针对现有校园闲置物品交易系统功能单调、交易不便捷等缺点,设计并实现一个更实用的校园闲置物品交易系统。

1 系统主要创新

1.1 卖家买家分离

经查阅发现,“闲鱼”“转转”等二手平台的界面分布分为我的、消息、首页、发布、发现/鱼塘。我们的这个创新可以切换两个不同的界面去使用,也即分为买家和卖家,简洁又方便。

1.2 基于独立高校地区

系统专注于高校学生的日常用品、娱乐设备和学习资料等的二手交易。每个学校都有各自不同的文化和生活习惯。使用学校账号登录设备和区分开各高校之间的二手交易,这样更利于管理和双方交易方便。

1.3 推荐和猜你喜欢

系统首页提供最新推荐、最热推荐和猜你喜欢板块。最新推荐板块显示用户最新上传的物品;最热推荐板块根据全部用户对物品的点击量、浏览量和搜索量等指标来推送物品;猜你喜欢板块则根据个人用户对物品的点击量、浏览量、搜索量和收藏物等指标来推送物品。

2 系统分析与设计

2.1 系统功能需求分析

功能总体框架。本系统分别由登录认证模块、买卖家模块、个人中心、搜索推荐模块、聊天模块、反馈模块六个功能板块组成,系统总体功能架构如图1所示。

图1 高校闲置物品交易系统功能架构图

2.2 系统主要界面设计

(1)在登录界面。登录认证模块的学号账号密码页面,先进行学校选择,然后可输入本校的学号或教工号,密码为学校账号密码,支持记住账号密码,登录界面如图2所示。

(2)首页界面。首页主要分为五个板块,顶部导航板块、搜索和发布板块、分类及其他板块、猜你喜欢板块和推荐板块,首页界面如图3所示。

图3 首页界面

顶部导航:可查看首页、租赁和赠送的内容,支持切换买卖家身份,可在登录后查看个人中心信息。

搜索发布:搜索框支持输入关键字搜索。支持卖买家进行“发布闲置”和“寻求闲置”操作。

分类及其他:可按物品类型查找物品。

猜你喜欢:根据个人用户经常点击的某类型闲置或收藏的物品来进行推送。

最新最热推荐:最新推荐根据用户最新上传的物品进行推送;最热推荐根据全部用户的点击量、浏览量、收藏量来进行推送。

(3)个人中心界面。个人中心有个人资料、我的物品、发布物品、收藏盒、正在交易和已交易六个板块,个人中心界面如图4所示。

图4 个人中心界面

个人资料:支持编辑修改个人信息。

我的物品:可查看个人发布的闲置、寻求、租赁和赠送物品的交易状态和内容详情。

正在交易:可查看正在交易的闲置、寻求、租赁和赠送物品,商议可进行聊天。

3 系统核心功能具体实现

3.1 发布功能模块的实现

(1)发布功能模块流程分析。发布功能的流程分析如图5所示,用户需要登录后才能使用发布(闲置、寻求)功能。登录后的用户可以在首页发布物品,也可以在个人中心发布物品,进入发布详情页,填写完整的物品信息后即可发布,若上传成功则表示发布成功。如发现错误信息,可在我的物品里进行修改或者删除物品。本功能支持编辑商品名字、商品简介、商品价格、联系方式、取货方式、可否议价、商品分类、商品图片和视频的字段信息;图片最大限制为5M,视频最大限制为20M。

图5 发布功能流程分析图

(2)发布功能模块实现的关键函数。发布功能模块主要是实现上传与添加,其关键函数如下所述:

①String addPhoto(MultipartFile file);

功能:上传图片/视频。

参数:file为传入的文件流,包括图片和视频。

返回值:返回上传到服务器之后的文件名字。

实现分析:该方法会将用户发布的商品信息传入,上传图片以及视频。多个文件则通过‘#’号进行分割。上传至服务器,然后将文件名字返回供添加商品使用。

②void addProducts(Product product);

功能:通过该方法添加商品,其间会验证传入参数的有效性。

参数:Product对象,封装了商品的多个属性。

返回值:无

实现分析:前端根据上传的图片/视频之后返回的文件名,将数据封装为Product类之后,通过接口addProducts进行上传。验证通过后,保存成功。

3.2 推荐功能模块的实现

(1)推荐功能模块流程分析。推荐功能的流程分析如图6所示,用户在网站首页即可使用此推荐功能。推荐功能使用的是基于协同过滤的用户相似度算法。即若用户未登录,则推荐的策略是销售量最高的商品;若已登录,则先收集用户的购物车里面所收藏的商品,与其他用户的购物车中收藏的商品进行相似度对比,得到对应的相似度评分,最后通过对相似度评分进行排序获取最高评分的5%的用户,由其组成用户集,随机从用户集中推送四个商品给用户。在相应页面可查看最热闲置和最新闲置,最热闲置板块根据用户的点击量,浏览量和搜索量来进行推送;最新闲置板块推送用户最新上传的物品。

图6 推荐功能流程分析图

(2)推荐功能模块实现的关键函数。发布功能模块主要是实现上传与添加,其关键技术如下所述:

①List recommendShop(String userId,List goodsId);

功能:获取用户相似度最高的商品集合

参数:当前用户ID,商品ID。

返回值:返回推荐的商品的集合。

实现分析:根据当前用户ID,获取此用户的购物车商品集合。然后将数据集里的商品与其他用户购物车中收藏的商品进行相似度分析得到评分,最后获取评分较高的前5%的用户的数据集,随机返回用户数据集中的对应购物车上的四个商品。

3.3 聊天功能模块的实现

(1)聊天功能模块流程分析。聊天功能的逻辑流程分析如图7所示,用户登录系统后,搜索查找物品。在物品详情介绍下方点击联系卖家,通过聊天联系促成交易。双方通过“确定交易”和“取消交易”来决定物品的隐藏和恢复,通过“完成交易”来移除物品。聊天功能的实现界面如图8所示。

图7 聊天功能流程分析图

图8 聊天界面

(2)聊天功能模块实现的关键函数。本系统的聊天模块主要是基于WebSocket来实现。WebSocket底层是通过建立一条通信管道来维持服务端和用户之间的联系,并通过服务端转发来使用户之间实行通信。核心函数为:

MessageVO pushMessage(Message message);功能:发送消息。

参数:message封装了消息发送的所有信息,包括卖家id,买家id,物品id,消息类型(包括确认按钮,消息内容),发送时间等。

返回值:含有消息内容,买家id,卖家id等信息的消息视图。

实现分析:pushMessage方法接收Websocket传递的消息对象message之后,如果用户不在线的话,就先根据参数,将发送的消息存入数据库,待接收方上线接收;如果在线则将消息直接通过Websocket的服务端推送给用户。

由于篇幅有限,本系统其他功能的实现此处不再赘述。

4 系统测试

4.1 功能测试

本系统的功能测试主要在于测试系统的核心功能是否与需求一致。以下对系统两个主要功能进行测试,如表1所示。

表1 部分功能测试用例表

4.2 性能测试

本系统中首页加载的资源和渲染的内容较多,所以性能测试部分主要针对首页的首屏渲染。这部分的性能测试使用Chrome浏览器中的performance工具进行测试。

对首屏渲染时各部分执行时长的测试。测试结果如图9所示。图中上方红色框部分是白屏的时间段,从下面的红色框内可看到白屏时间仅有498ms,对于一个有较多图片的页面来说打开速度已经足够快。而其中表示JavaScript执行时长的Scripting耗时最长,这是因为在首页需要发起较多XHR请求资源,这符合预期的结果。

图9 首页性能测试分析图

经过系列的功能测试和性能测试,可以看出该系统,设计均符合预期。

5 结语

本文通过调研,对几个二手交易平台进行研究和学习,然后设计并实现了一个高校闲置物品交易系统,旨在解决高校日趋增多的闲置物品问题,校园区域化的设计更能增加交易的便捷性和安全性。

接下来将会对系统进行剖析整理,开发小程序端,简化系统功能,使其更加契合现在的高校师生生活方式。我们将优化搜索功能,现在的系统搜索功能仅支持关键字搜索,后续将添加更多种类的关系搜索,例如条件搜索,基于租赁的条件搜索租赁相关物品。还要完善聊天功能,现在的聊天功能仅支持文本消息和表情包发送,后续将增加聊天的消息类型,例如图片和视频文件等。

猜你喜欢
功能模块闲置聊天
数字化赋能闲置宅基地和闲置农房盘活改革
不做闲置主妇
我就是不想跟你聊天了
敞开门聊天
基于ASP.NET标准的采购管理系统研究
扶贫资金闲置浪费谁之过?
输电线路附着物测算系统测算功能模块的研究
M市石油装备公服平台网站主要功能模块设计与实现
养老床位欠缺与闲置并存
功能模块的设计与应用研究