廖 磊 张雨亭 殷 强 杨礼林
(西华大学,四川 成都 610039)
随着社会发展速度的加快,电子商务也呈普及化趋势发展,智能化已成为各行各业发展的必要阶段。在物流企业中,虽然订单管理相比早前人为管理已有很大改善,部分企业也已纷纷上线信息化系统。但随着业务规模扩大、服务客户增多,订单管理面临新局面。重复拆分及订单无法实现智能匹配依然困扰着企业,尤其在港口的承运车辆匹配的问题上,出现了人工一遍又一遍手工选点、拆分的场面,特别是遇到多订单拆分时,更是手忙脚乱、捉襟见肘为此急需能满足订单自动拆分及智能匹配的方法。
(一)为了实现港口承运数据匹配货运车辆信息的有关功能,系统设计PC服务器需要可以输入并查询承运车辆信息的终端并可以处理信息匹配。系统采用C/S架构,如图1所示。
图1 系统C/S架构图
服务器和客户端是分离的,这就形成了前台和后天两个服务区。前台服务区是在智能手机平台等移动终端运行,比较注重客户体验、交流,用户与客户端之间可进行信息输入与信息查询等功能。后台服务注重信息处理与信息匹配等方面的功能,运行在Linux系统中,然后将信息匹配的结果又反馈给服务器。
(二)功能模块设计
实际调研,得出结论,从而进一步设计规划了承运车辆数据与货运车辆数据与系统主要功能模块相匹配。匹配系统组成分前台和后台管理两部分,分别通过手机平台和PC端实现。前台管理部分有四个方面,分别是系统管理模块,首页模块,消息模块以及个人中心模块;后台管理部分有用户管理模块,车货信息模块和信息匹配模块三方面。此系统分配不同的权限给不同的角色,功能集合应用在不同的人员角色,但不同的权限又对应不同的功能集合。如图2所示
图2 承运数据与货运车辆匹配系统的主要功能树状图
1、系统管理模块。在使用前每个用户需要注册自己的信息,然后登陆系统(首次使用需要注册个人信息,之后都可以用之前注册的信息进行登陆)。为确保用户信息安全,系统设有退出模块,用户在登录完成系统操作后,退出此系统。
2、首页模块。系统会确认用户通过手机发布到系统中的相关信息,然后其他用户可在发布模块中查看。车主和货主主要通过发布信息的参与,来实现对车辆信息以及货物信息的发布。首页主要包括发布车源或货源、查询车源或货源这两个部分。在系统首页,用户点击信息录入请求,等系统响应后再输入信息,服务器经过处理后,再往数据库中相对的表中输入来实现。
3、消息模块。车主与货主通过消息模块了解到的对方信息,是由系统自动对用户发布的相关信息进行匹配后,然后以消息的形式发送到消息模块的,同时港口工作人员可以提取消息模块中的信息,对货运司机的身份、货运货物的信息与收人进行核对。
4、个人中心模块。个人中心由系统设置、个人信息和发布信息三部分组成。系统设置包含信息提示方法和通知时间、软件版本号、软件退出后接收信息等软件系统的相关信息。个人信息注册时,用户需要输入用户名、电话、所在地、类型(货主或车主)等个人信息。发布信息包括用户发布的车辆信息和货物信息。
5、信息匹配模块。后台服务器会操作此模块。系统会根据用户发布的信息来自动匹配相关的合适信息,匹配时,系统会优先选择诚信度高的车主。然后,系统会将相关信息发送给车主,提醒车主及时查看。
6、车货信息管理。车货信息管理模块,主要是为了保证信息源的真实可靠性,管理员对所发布的货物或车辆信息进行查询增删等基本操作,对相关信息进行维护更新。
7、用户信息管理。用户信息管理类似于车货信息管理,同样是由管理员操作用户信息。
(三)数据库设计
数据库在任何系统中都占据着非常重要的位置。本文中数据库的设计主要是指逻辑结构设计以及概念结构设计。
逻辑结构设计。对于实体间的1:x联系可以转换为一个独立的关系模式,也可以与x端对应的关系模式合并。这是不违背转换原则的,所以该实体型转换为一个关系模式是可以实现的。
概念结构设计。货物配送信息匹配系统关系数据库的实体关系为1:x:一条货物信息或车辆信息只能对应一个用户,但一个用户可以发布多条货物信息或者车辆信息;一条货物信息只能被分配给一台车辆,但一台车辆可以分配多条货物信息。
(一)客户端功能实现
1、信息输入。输入的信息包括用户的注册信息、货物以及车辆信息,处理逻辑在程序里大致一样,以下以输入车辆信息来举例说明。
界面采用LinearLayout布局方式,由register/truckinfo_layout.xml布局文件实现,由UserRegister/TruckInfoBean来实现数据模型,车辆信息属性有了定义,并对外暴露成员变量的get和set方法。实现了用户所发布的车辆信息的实例传递。RegisterActivity加载register_layout.xml,在信息录入界面使用户所有进行的操作逻辑全部得以实现。车辆信息新增加接口由DB模块系统封装,并向服务器Mysql数据库中提交车辆信息。录入时需要用户输入基本的信息,比如车型,最大运载量等信息。用户录入车辆信息完成后,点击提交,方可成功将信息输入后台。
2、信息查询。车辆信息、货物信息都可以在系统首页中查询,二者在程序中的处理逻辑相同,以下以查询货物信息来举例说明。
由SearchTrucksActivity加载truckinfo_layout.xml,以此使所有货物信息所显示的逻辑得以实现。由DB模块对货物的数据信息查询接口进行封装,从服务器Mysql数据库中取得货物信息至客户端,通过货物信息的Activity实例解析数据,在界面上呈现出货物信息。
3、个人信息操作。包括用户对已提交的相关信息进行查看或修改等操作。其中包含我的发布、路径规划、设置和修改密码等模块,实现了用户删除和编辑已发布的信息,对系统基本功能的设置和修改密码等与自己相关的信息进行操作。
(二)服务器端功能实现
对于客户端提交上来的系列数据,服务器端会利用相关技术进行信息的匹配和信息推送,同时还要管理系统后台,实现环境为Linux系统和Mysql数据库,其主要功能包含三个方面:信息处理、信息推送和后台管理。
1、信息处理服务器定义与客户端数据类型一致的实体类。为实现信息在数据库的增加、删除、修改等操作,需要由规定Socket接口发送客户端信息至服务器,服务器再把信息内容进行解析。启动服务器端时,加载Mysql驱动,,配置数据库的用户名、密码以及访问地址,通过DriverManager.getConnection从数据库中获取连接实例,客户端数据的操作请求被服务器接收后,数据库通过创建PreparedStatement实例来执行SQL语句,实现信息在数据库的增加、删除、修改等操作,完成此次操作后把数据库连接关闭,等待再一次应用。
2、信息推送技术是服务器主动给客户端发送信息的技术。主要包括用户没有请求,但是对用户却有重要作用的数据。在用户登录客户端时,服务器自动把用户的地址信息记录下来,然后利用固定消息接口把消息推送至客户端,并在用户的手机客户端消息界面体现所推送的消息。此时用户可以对消息进行操作,查看消息详情等。
3、后台管理系统,此系统由管理员登录,来对用户个人信息以及发布的信息进行管理。后台管理系统采用JSP+Servlet+Javabean技术实现:管理员提交的信息在数据库的增加、删除、修改等操作由Servlet来处理;车辆、货物、个人的信息由JSP显示;后台使用的车辆、货物、用户的信息由javabean封装。
随着中国经济飞速发展,基于港口运输的货运车辆数量不断增长,传统的货运单登记存在着疲于应付、准确性不高的问题,基于承运数据库的货运车辆信息匹配软件,有助于提高工作效率,实现精准匹配。