基于Web的农产品溯源系统设计
2019-08-06夏秀绿王晓乔
夏秀绿 王晓乔
摘 要:本文从需求分析、开发技术、系统设计与实现等方面论述了农产品溯源系统的设计。该系统采用B/S设计模式,后台基于Node.JS,数据库采用MongoDB,前台运用VS Code编辑器和Javascript、Html5、Css3等技术实现了界面的编写,集成了首页、企业注册、企业管理和网站管理员四个模块,实现了农产品溯源和农产品信息管理。
关键词:农产品;溯源系统;数据库;Node.JS
中图分类号:TP311.1 文献标识码:A
Abstract:This paper discusses the design of agricultural product traceability system from the aspects of requirements analysis,development technology,system design and implementation.This system adopts B/S design mode,the background is constructed based on node.JS,the database is constructed based on MongoDB,and the front-end interface is programmed via the VS Code editor,JavaScript,Html5,Css3 and other techniques,integrating the 4 modules of home page,enterprise registration,enterprise management and website administrator and realizing the traceability and information management of agricultural products.
Keywords:agricultural products;traceability system;database;Node.JS
1 引言(Introduction)
為了解决农产品的安全问题,需要尽快的推广和完善农产品溯源系统体系。农产品溯源系统开发的目的是能够更方便、更有效地管理所有的农产品信息,所以企业信息、农产品的生产和供应过程是系统的关键,需要及时对这些信息作出记录和监管,保证溯源信息的真实性[1]。本文设计与实现了一个消费者通过溯源码查询农产品相关生产信息的农产品溯源系统,使消费者可以更加及时、准确、详尽的搜集到农产品的根源信息。
2 农产品溯源系统需求分析(Requirements analysis of the traceability system for agricultural products)
2.1 需求分析
2.1.1 消费者需求分析
对于消费者来说,第一,消费者需要根据农产品标签提供的溯源号码追溯查询到农产品的种植、销售等相关信息,第二,消费者在溯源过程中遇到问题,或者对农产品相关信息有意见时,可以向有关企业和系统管理员进行反馈和建议。
2.1.2 企业需求分析
对于企业用户来说,需要注册、登录、添加产品、产品管理、企业信息管理、用户相关信息修改等功能实现对企业信息和农产品信息的管理[2],其用例图如图2所示。
(1)企业生产者注册:企业进入注册模块必须填写注册信息:用户名、密码、用户身份、真实姓名、主营行业、身份证号、电话、邮箱、联系地址等信息,用户提交注册信息后,等待系统管理员的审核,经审核成功后才算注册成功。
(2)登录:如果经过审核,注册成功后即可通过输入正确的用户名和密码进行登录。进入企业系统界面。
(3)生产者信息修改:生产者的用户名是固定且唯一的,并且是不可以修改的。但可以通过输入旧密码等验证进行修改密码、邮箱、电话、联系地址等信息。
(4)添加企业相关信息:企业进入系统后点击“企业信息”后可以填写企业相关信息:企业标题、企业LOGO、企业描述、底部信息等。
(5)添加农产品生产信息:在添加产品模块,企业用户可以填写有关农产品的相关信息,例如溯源码、产品名、生产企业、生产日期、基地名称、基地地址、产品图片、产品描述等。点击“提交”即添加新产品成功。
(6)管理企业所有产品信息:在产品界面,企业添加的所有农产品信息都在此页面显示,并且企业可以任意删除产品,删除后的农产品不能被消费者查询到。
2.1.3 管理员(政府)需求分析
管理员具有管理系统中所有企业用户的注册信息、企业描述信息和农产品信息的权力,并且能够对企业和农产品信息进行修改[3],其用例图如图3所示。
(1)登录:系统管理员需要通过账号密码登录,登录成功后进入系统管理中心模块。
(2)企业信息:进入企业管理模块,企业可以对企业信息做出相关操作。
(3)产品信息:进入产品管理模块。企业可以对某个产品做出删除操作,删除成功后消费者就不能查询到该农产品信息。
消费者、企业用户、管理人员等三个使用对象的不同管理权限如图1所示。
2.2 业务流程图
2.2.1 消费者追溯流程
消费者通过本系统提供的界面,输入农产品的溯源码,即可进行查询的操作,若溯源码错误则会弹出“溯源码错误,请重新输入!”的提示信息,如图2所示。
2.2.2 企业用户信息管理流程
农产品相关企业通过填写注册信息提交给后台,此时系统管理员在企业信息模块可以对企业注册信息进行审核,若审核失败,则企业用户需要再次填写注册信息,若审核成功,企业就可以进行登录,验证登录信息并成功后跳转到“企业管理中心”模块,则可以进行用户注册信息的修改、企业信息和农产品信息的管理,可以添加企业信息、产品信息等[4],如图3所示。
2.2.3 系统管理员管理流程
系统管理员进入系统后台登录界面输入用户名密码进行登录操作,若用户名和密码输入并提交给后台验证为错误时,则需要重新登录,若正确,就可以进入后台管理中心,即可对企业所有的企业信息、产品信息进行修改[5],如图4所示。
3 主要開发技术(Main development technologies)
本系统是基于B/S模式开发[6],使用Node.js服务器开发环境,利用Express框架,Ejs作为前端界面模板,Visual Studio Code作为前端页面的编码器,用Robomongo可视化工具来操作MongoDB数据库。Javascript能使网页增添动态效果,本系统开发采用Html5、Css3、javascrip等编程语言,能兼容大部分主流浏览器,可以增加用户的满意度,用户使用起来更方便。Node.js是一种新型的服务器开发环境,是支持javascrip语言在后台运行的基础。Express是Node.js的一个方法库里面封装了常用的api方法, 会使程序开发更加快捷方便。
4 农产品溯源系统的设计与实现(Design and implementation of the traceability system for agricultural products)
4.1 总体设计
根据系统的需求分析,系统采用模块化设计分成三个模块:企业用户模块、系统管理模块、消费者查询模块[7],如图5所示。
4.2 数据库设计
本系统数据库主要包括,企业用户注册信息、企业相关信息、产品信息的三张表[8],如表1、表2、表3所示。
4.3 网站主要界面
4.3.1 系统首页模块实现
系统首页模块(图6)包括:消费者溯源码查询入口、企业用户登录模块、产品案例展示模块等主要部分组成,企业用户可以进入首页选择注册或登录,消费者进入系统首页可以输入溯源码进行查询农产品信息,还可以浏览到最近发布的溯源农产品案例,在首页的底部,可以看到关于系统管理人员联系方式等,便于消费者提出建议。
4.3.2 企业管理模块实现
企业用户在系统首页输入注册时的账号和密码进行登录操作,登录完成后点击“进入系统”便可进入企业后台管理中心。企业管理模块(图7)有“信息修改”“企业信息”“产品管理”“添加产品”等功能,用户点击左侧不同按钮进入相应的功能模块。
4.3.3 溯源信息查询信息模块实现
消费者进入系统首页并在溯源码输入框输入溯源码信息,通过“查询”按钮即可查询相关的农产品信息,进入溯源信息模块,消费者即可查看到所需农产品的生产信息和基地信息,以及该农产品所属企业的企业信息。
消费者在系统首页搜索框输入溯源码,点击查询,前台将请求和数据发送给后台,后台拿到数据查询MongoDB数据库,并返回给前台生成静态界面展示给消费者。后台接受前台发送的请求(溯源码)并查询产品信息数据表,将查询到的数据以json格式返回给前台页面。
5 结论(Conclusion)
参考文献(References)
[1] 陈文静,李晗林,曾玉荣.福建省农产品质量安全可追溯体系发展对策[J].福建农林大学学报(哲学社会科学版),2013(6):30-34.
[2] 章海荣,潘庆雯,程雯.基于SSH框架的农产品溯源系统的设计与实现[J].电子设计工程,2019,27(09):47-50.
[3] 李锦贤,杨枫.基于区块链和物联网的农产品安全溯源体系设计[J].上海农业科技,2019(02):41-42;53.
[4] 袁园.基于农产品防伪溯源系统的应用[J].电子技术与软件工程,2019(03):77.
[5] 成志平.果蔬类农产品冷链物流信息溯源分析[J].现代营销(下旬刊),2018(11):100.
[6] 汤哲君,宋佳乾.基于LNMP架构的农产品电商一体化溯源系统的设计与实现[J].电子测试,2018(17):74-75.
[7] 张延华,杨兆鑫,杨睿哲,等.基于区块链的农产品溯源系统[J].情报工程,2018,4(03):4-13.
[8] 吴霜,喻朝新.物联网和区块链技术在农产品溯源上的应用[J].电信工程技术与标准化,2018,31(06):12-15.