软件工程硕士论文

您当前的位置:学术堂 > 毕业论文 > 在职硕士论文 > 工程硕士论文 > 软件工程硕士论文 >

基于物联网的物流信息数据库设计

来源:学术堂 作者:姚老师
发布于:2017-01-09 共4540字
  本篇论文快速导航:

展开更多

  3.8 未验收订单查询模块

  未验收订单查询模块是本文基于物联网的物流信息系统最重要的一个模块。该模块主要实现用户随时、随地查询自己的尚未验收的物流情况。通过底层的物联网传感器实时上传的温度、湿度、光照、位置等信息,系统服务器对这些信息进行处理并通过数据库服务器进行存储,以便用户查询物流的实时动态和历史情况。该模块如下图 3.11 所示。

  未验收订单查询模块分为以下四个子模块:订单信息模块、物品状态信息模块、物品足迹模块、所在车辆信息模块。

  3.8.1 订单信息子模块。

  订单信息子模块主要显示用户未验收订单的详细信息,是一个对未验收订单的信息的一个总的情况的显示模块。订单的详细信息包括:寄件人姓名、寄件人地址、寄件人联系电话、收件人姓名、收件人地址、收件人联系电话、发货时间、物品种类、所在位置、物品状态、所在派送车辆信息。该模块将未验收的与该用户相关的(寄件人联系电话或者收件人联系电话与用户的联系电话符合)订单信息都显示出来,让用户对订单情况有一个总体的掌握。其中所在位置、物品状态、所在车辆信息都是物流货物的最新信息。对于用户的未验收的订单信息,以分页的形式显示出来。如果用户想要更详细的实时的状态信息汇总可以查看 3.8.2、3.8.3 和 3.8.4 三个子模块。三个子模块分别是对位置、状态、所在派送车辆信息的一个动态的实时的以时间为单位记录的过程。

  3.8.2 物品状态信息子模块。

  因为本文的系统是基于物联网的物流信息系统,所以底层的硬件支撑为物联网。对于物联网中的传感器可以实时的上传物品的状态,本文采集的是温度、湿度、光照、和是否碰撞的数据。温度和湿度是由温湿度传感器采集数据获得;光照是由光照传感器采集数据获得;是否碰撞是由加速度传感器采集数据进行测量。传感器采集的数据上传给基站,基站节点将数据上传给系统服务器,服务器对数据进行处理,对物品的状态信息进行判断和存储。对于温度、湿度、光照和是否碰撞,分别以时间为横坐标,数据为纵坐标进行显示。在数据库中存储的是每五分钟物联网上传的物体状态数据。所以数据是呈现大数据的特点。

  3.8.3 物品足迹子模块。

  在物品足迹子模块中,用户可以了解物流货物的整个货运过程的位置信息,并且及时掌握最新信息。该信息是由货物所在的车辆的基站与卫星定位系统通讯获得的位置数据,然后由基站上传给系统服务器,系统服务器对物品的实时位置信息存储到数据库服务器中。物流货物的实时位置信息也是大数据的重要来源。用户想要获取物流货物的位置信息时,系统服务器向用户展示物流货物的以时间为轴的位置信息。为了让用户总体上更好的掌握位置信息,每小时为单位,进行位置信息显示。

  3.8.4 所在派送车辆信息子模块。

  所在派送车辆信息子模块是当物流货物在派送阶段,可以向用户提供物流货物所在车辆的实时信息,包括车牌号、派送员姓名、派送员电话、当前位置。当用户需要与派送员提前联系时,可以及时通过派送员电话进行沟通。当用户需要知道派送车辆的位置进行派送时间的预判断时,可以通过车辆当前位置与自己的派送地址进行判断。因为涉及到车辆其他物流货物的派送地点的隐私性,所以只提供车辆当前的位置,不提供车辆的位置轨迹。

  通过 3.8.1、3.8.2、3.8.3 和 3.8.4 四个子模块,用户可以全方位的掌握物流货物的运送情况。

  3.9 数据库设计。

  本文的基于物联网的物流信息系统较传统的物流信息系统不同的是,需要面临大数据存储和处理的问题。随着用户的增加,电子商务行业的不断升温,配套行业--物流的需求和增长速度也在迅速的增加,这样会导致大数据的产生,因为物联网每时每刻在上传着数据,而服务器端又要对这些数据进行存储,所以面对不断增长的数据,如果数据库的设计和选择上没有考虑大数据的问题,那么就会导致随着用户的增加,系统的存储和查询速度都会严重的影响用户的体验度。所以在本文的系统的数据库设计中,要考虑大数据的存储和处理问题。对于登录模块、注册模块、修改用户信息模块、历史订单查询模块和未验收订单查询模块以及其四个子模块,设计了符合本文系统要求的数据库表格。以上模块在运行的过程中,会根据用户的需求的不同,请求不同的数据库表格进行信息的获取和更新。

  3.9.1 用户信息表格设计。

  为了提高本文用户注册模块的体验度,避免用户注册填写信息过多导致的用户注册的复杂性,本文的系统在用户注册初期仅需要输入用户名、手机号、密码。用户名和手机号都可以唯一的标识用户。用户在输入用户名时系统会进行重复验证,用户名可以使用字母、数字和符号。用户在输入手机号后会通过短信进行验证,而且用户的手机号码是 11 位数字。用户注册后将用户的用户名、手机号和密码存储在用户表格 User_login中。在 User_login 表格中,UserId 是主键,可以唯一的标识该用户所在的信息,UserId是存储时自动生成的,不能后期修改。用户名 UserName 和用户密码 UserPwd 都是可以用字母、数字和字符组合而成,且长度收到限制。UserName 的长度不能超过 50 个字符,而且是每个用户的用户名不同。UserPwd 的长度不能超过 30 个字符。用户的手机号UserMobile 的长度必须是 11 位的数字。

  用户在注册时,输入用户名、手机号和密码后,还可以通过修改用户信息模块对用户的信息进行完善。因为用户在平时的登录中只涉及到用户名或者手机号和密码,所以用户完善的其他信息存储在另外一张表格 User_detail 中。User_login 和 User_detail 通过主键 UserId 进行关联,User_detail 中的 UserId 不是自动生成的,是与 User_login 中的UserId 一致的。在 User_detail 中,存储用户的性别、真实姓名、地址和邮箱,如下表3.2 所示。Sex 是用户的性别,0 为男,1 为女。TrueName 是用户的真实姓名长度不超过50.User_Email 是用户的电子邮箱,长度不超过 50.Addr_province、Addr_city 和Addr_district 分别是用户所在地址的省、市和区,字符长度都不能超过 10.表 3.2 中的除 UserId 字段的其他字段可以为空。

  3.9.2 订单信息表格设计。

  订单信息表格存储订单的详细信息,包括订单号、寄件人姓名、寄件人电话、寄件人地址、收件人姓名、收件人电话、收件人地址、物品种类、物品重量、物品数量和备注。寄件人和收件人的地址都是通过省、市、区、街道分别存储的,这样可以更好的获取信息。备注是用户在寄件时填写的备注信息。订单信息表格如下表 3.3 所示。其中OrderId 是自动生成的,并且是订单信息与物品状态信息表格、物品位置信息表格以及货运信息表格关联起来的主键。S_name 是寄件人姓名,长度在 50 个字符之内。S_tel是寄件人的联系电话,必须为长度为 11 位的数字。寄件人的地址分别用省 S_addr_pro、市 S_addr_city、区 S_addr_district 和街道 S_addr_street 来表示,长度分别不超过 10 个字符。R_name 是收件人姓名,长度在 50 个字符之内。R_tel 是收件人的联系电话,必须为长度为 11 位的数字。收件人的地址分别用省 R_addr_pro、市 R_addr_city、R_addr_district 和街道 R_addr_street 来表示,长度分别不超过 10 个字符。Item_num、Item_type 和 Item_weight 分别代表订单运送物品的数量、类别和重量。Item_num 必须是数字。Item_type 存储的是物品的类型,长度不超过 10 位。Item_weight 代表了物品的重量,长度是不超过 10 位的小数点后默认为两位的数字。IsFragile 代表物品是否易碎,如果是易碎物品,用户可以标注此项。State 表示物流的运送阶段,0 代表发货,1 代表运送,2 代表派送,3 代表验收。表 3.3 最后的字段 Remark 是订单的备注信息,可以标注希望什么时间派送,或者注意事项等。Order 表格一般是物品被寄件人寄出时生成的基本信息表格,基本在物流运送过程中是不变的,除非用户在寄送过程中修改了收件人的地址、电话或者姓名。其他表格通过 OrderId 可以随时查询订单的基本信息。

  3.9.3 货运信息表格设计。

  货运信息表格是物品在物流货运过程中的最新的位置、状态和所在派送车辆信息。

  其中包括订单 ID、时间、位置、物品状态和所在派送车辆。如果物品还未到派送阶段,那么所在派送车辆为空。货运信息表格如下表 3.4 所示。其中 OrderId 是订单 Id,该订单号不是自动生成的,与 Order 表格中的 OrderId 一致。L_time 是最新状态上传的时间,它的类型是 datatime.L_location 是货运物品的最新位置,它代表在 L_time 时间下物品所在的位置。L_state 是货运物品的状态,0 表示正常,1 表示不正常。如果物品在货运过程中的环境温度、湿度或者光照不合适,并且超出了物品的承受范围,那么物品的状态就会不正常。如果物品在货运过程中发生了配装,那么物品的状态也会产生不正常。

  该字段是由物联网上传来的信息处理决定。L_car 是货运物品在派送状态下的所在车辆ID 号。车辆的详细信息可以根据所在派送车辆信息表格提供。

  3.9.4 物品状态信息表格设计。

  物品状态信息是由物联网采集的物品货运过程中的状态信息,包括订单号、温度、湿度、光照、是否碰撞和上传时间。如下表 3.5 所示。其中 OrderId 是 Order 表格中的OrderId,不是自动生成的。物品的订单详情可以通过 OrderId 查找 Order 表格中的详细信息。I_time 是该条数据上传的时间戳,是由物联网获取温度、湿度、光照等参数的时间。I_ temprature 是物联网获取的物品所在环境的实时温度,数据类型是浮点型。I_humidity 是物联网获取的物品所在环境的实时湿度,数据类型是浮点型。I_light 是物联网获取的物品所在环境的实时光照,数据类型是浮点型。I_click 是物品在货运过程中是否发生碰撞,0 为无,1 为是。除 OrderId 外其他的字段均有物联网上传的数据获得。通过表 3.5 可以获取物品的实时货运状态。3.8.2 物品状态信息模块可以通过表 3.5 获取数据。

  3.9.5 物品位置信息表格设计。

  物品位置信息是由物联网采集的物品货运过程中的实时位置信息,包括订单号、位置和上传时间。如下表 3.6 所示。其中 OrderId 是 Order 表格中的 OrderId,不是自动生成的。物品的订单详情可以通过 OrderId 查找 Order 表格中的详细信息。I_time 是该条数据上传的时间戳,是由物联网通过卫星定位系统获取的位置信息的时间。I_ location是物品的实时位置信息,当物品的位置发生更改时,物联网上传物品的位置信息,并通过服务器上传给数据库服务器进行存储。除 OrderId 外其他的字段均有物联网上传的数据获得。通过表 3.6 可以获取物品的实时货运位置。3.8.3 物品足迹模块可以通过表 3.6获取数据。

  3.9.6 所在派送车辆信息表格设计。

  物品经过发货、货运、派送、验收四个阶段完成物品的物流过程。在派送阶段,为了让用户了解派送车辆的信息,更好的掌握物流运送情况,所以将派送阶段的派送车辆信息存储在表 3.7 中。其中 CarId 是派送车辆的 Id 号,是自动生成的,C_Num 是派送车辆的车牌号,为 6 位的字符长度,C_tel 是派送员的联系电话,数据长度为 11 位的数字。

  Car_detail 表格中的数据基本是不变的,因为一般情况下一辆派送车辆对应一部派送电话。表 3.4 中的 L_car 对应的是表 3.7 中的 CarId.将表 3.7 与表 3.4 分离出来是为了将数据分别存储,因为表 3.4 更新随着物联网上传的数据而改变,而派送车辆的信息通常不会改变,将表 3.4 与表 3.7 分开是为了提高表 3.4 的更新速度。这样做也是考虑了基于物联网的物流信息系统的大数据的存储和更新快速的特点。

返回本篇论文导航
相关内容推荐
相关标签:
返回:软件工程硕士论文