基于android的仓储物流管理系统内容摘要:
国外购买先进技术,高额的投资、合理的管理往往会得到更大的利润。 企业的技术手段也已经由简单落后转变成高科技与人工手段结合,进而将更多的高科技产品应用到零售业。 国内 推行 WMS 的条件日益成熟。 物流行业在过去的两年里随着国家经济的发展而日新月异,现代一体化物流的管理思想逐渐被企业所接受和认同,管理人员对仓库也有了新的定位与认识,从而对管理系统也提出了新的要求 [4]。 而国外在此方面的技术已经相当成熟。 设计的平台及工具 Android 平台 Android 是基于 Linux 软件 内核 开发的 操作系统, 主要应用在移动设备上, 早期由 Google 开发,后 来由 Google 联合 全球 几大手机厂商组成的 开放手机联盟( Open Handset Alliance) 来 开发 [7]。 它包括操作系统 、 用户界面和应用程序 ,这是组成 移动电话工作 环境 所需 要 的全部软件,而且不存在任何 使用权限制 ,号称是首个为移动终端打造的真正的 开放和完整的移动软件 [8]。 Android 的系统架构和其操作系统一样, 都 采用了 系统 分层 的架构。 从 图 11 所示的 Android 系统架构 图 中可以 看 出 , Android 的底层结构从上到下可以被划分为四个层次 ,分别 用来表示 应用程序层、系统运行库层、应用程序框架层和 Linux 内核 层 [9]。 每当 Android 召开开发者大会发布新版本的时候,都 会 连同其 核心应用程序包一起发布, 其 应用 程序包括 诸如 客户端, 短消息 , 万年历 ,地图,浏览器, 名片 管理等 [12]。 Android 中 应用程序 的代码 都是 由 Java 语言编写的 [7]。 Android 有一个最重要的特性就是软件的 开发人员可以访问 系统中任何 应用程序 中所使用的 任意 API 框架 ,没有权限的限制。 该 应用程序的架构设计 使组件的重 用机制得到简化,我们所能使用到的任意 应用程序都可以发布它的功能 模块 并且任何其它的应用程序 都可以使用这个模块 ( 需要 遵循框架的安全性 原则 ) [9]。 同样, 这个 应用程序 所使 3 用到的 重用机制 可以让使用者 方便的 变更应用程序种的组件。 Android 的系统框架中 包含一些 C 语言或者 C++库, 它们可以 被 Android 系统 中 的不同 应用程序 组件 所 使用 ,同时 通过 Android 的 应用程序框架为 开发 人员 提供服务。 图 11 安卓系统架构图 开发工具 Eclipse Eclipse 开发工具 是一个 完全开源的软件开发工具,它是 基于 Java 的可扩展 平台开发的。 我们对其本身的理解 , 其实 它只是一个 开源 框架 或者它只是 一组服务,用于通过各种 插件 和 组件构建 具有不同功能的 开发环境 [10]。 对于我们来说比较 幸运的 是, Eclipse自身 附带了一个标准的插件 库 ,包括 Java 开发 必备的 JDK 工具 [11]。 对于 大多数 的 用户 来说其实他们更 乐于将 Eclipse 当作 编写 Java 的 IDE 来使用,但 是 Eclipse 的研发公司想要的结果不仅仅只是这样。 其实 Eclipse 开发平台里面 还包括插件开发环境 PDE, 这个组件主要 是为开发人员和一些软件爱好者准备的, 希望 他们来 扩展 Eclipse 的 功能 ,它允许 开发人员及爱好者们 构建与 Eclipse 开发环境组合 的工具 ,从而达到功能的扩展 [11]。 虽然 Eclipse 是 由 Java 语言 编写 的,但 是 它的用途并不 只是用来编写 Java 语言 ,其实 Eclipse 的开发人员已经开发出了 诸如 C/C++ 、 COBOL、 PHP 等编程语言的插件 ,其中很多都已经被开发人员所使用。 Eclipse 开源 框架还 可以被 用来作为与软件开发无 4 关的其他应用程序 开发的 基础 [10]。 SQLite 数据库 SQLite 是实现了 SQL92 标准的一个嵌入式数据库,它遵循 ACID 关联式 数据库管理系统 ,通过在一个库中组合了数据库引擎和连接数据库的接口 ,通过自身就能将所有的数据 存储于单个文件中而著名 [13]。 我认为 SQLite 数据库的功能一定程度上应该是居于MySQL 和 PostgreSQL 之间 .而在性能上面 ,SQLite 常常要比它们快 23 倍 (甚至更多 )。 这得益于其高度调整了的内部架构 ,由于它去除了服务器端到客户端和客户端到服务器端的通信,将整个数据库系统放在其中,使其成为在需要完成高效地应用数据库时可以使用的一个非常方便的工具。 其实除了速度和效率这两方面的优势, SQLite 数据库还有 很多其它的优势使其成为一个优质的产品解决方案 [15]。 因为 SQLite 数据库中存的数据文件都不复杂,这个特点决定了开发产品的时候不必使用一个管理团队花大量的时间来构造复杂的权限结构来保护用户的数据库。 因为权限会通过文件系统自动进行。 同时这也意味着数据库空间的大小只与环境大小有关 ,与系统本身无关,不需要特殊的规则来了解用户的磁盘空间。 5 第 2 章 系统的总体设计 系统的设计目标 设计仓储物流管理系统的总 体目标是:在 Android 开发平台上,利用我们所学的知识开发一个体系功能结构完备、产品易升级、易优化、使用界面友好的仓储物流管理系统,实现其对仓储物流的流程管理。 使使用者可以随时查看货品的状态。 系统的可行性分析 可行性分析的目的 可行性分析的目的主要是对产品的需求进行分析,弄清楚产品的要求,需要什么数据和最后想要达到什么样的效果,确定接下来我们需要完成的工作,以便我们能规范化的实现产品的功能,提高开发的可见度,便于对开发流程的控制与管理,最终完成我们开发的任务。 可行性分析的前提 ( 1)开发的总体要求 主要功能:使用者可以在手持终端设备上实现系统管理。 性能要求:要求系统功能完备,产品可以稳定运行,应该 具备一定的使用价值, 设计 水平 尽量 接近商用。 信息要求:产品数据信息安全,还要保证各个系统各个界面数据的一致性。 ( 2)开发的总体目标 在产品应用后,能显著提高工作人员工作的效率,减少工作量,降低手工操作的误差,最终实现的目的是提高库存的准确性,减少损失。 软件实践操作的可行性 这个系统的使用只要求使用者具有一定的手机操作经验,因为 Android 系统本身就具有操作简单的特点,本程序中的所有控件均继承自 Android,所以只要会使用 Android手机即可 [12]。 6 系统的特点 系统的简要描述 本系统主要通过设计基本信息管理模块来实现使用者对供应商、客户和商品的基本信息管理,通过设计库存管理模块实现使用者对商品出库、入库操作的信息进行记录与管理,通过设计信息查询模块达到使用者要查询完整的库存信息的目的,通过设计系统设置模块实现使用 者对个人信息的查询与修改。 系统处理流程 系统使用者可以通过基本信息管理模块管理商品、客户和供应商的基本信息。 可以对系统中的数据进行增加、修改、删除和查询等操作。 将这些基本信息放在通过表的形式放在数据库当中。 系统可以自己根据使用者在前端进行的操作访问数据库,完成用户的需求。 最后用表单的形式显示在前端界面上面,方便使用人员查看数据。 使用人员可以通过库存管理模块来完成产品入库和产品出库的操作,其功能同基本信息管理模块一样,对系统的操作也包括增加、修改、删除和查询。 商品入库信息和商品的出库信息也都会 被放在系统数据库当中,当用户有操作需要的时候,系统可以自动访问数据库,生成相应的表单,将其在前端的操作界面上显示出来,方便使用人员查看到想要的数据。 整个系统的处理流程如图 21 所示: 数 据 库得 到 库 存 基 本 信息生 产 入 库 单生 产 出 库 单基 本 信 息 管 理库 存 管 理系 统 使 用 者 图 21 系统处理流程 7 系统运行环境的要求 ( 1)硬件要求:系统 CPU:主频 512MHz 或更高 随机存储器( RAM): 128M 或更多 只读存储器( ROM): 200MB 或更多 ( 2)软件要求: 的操作系统及更高 8 第 3 章 数据库的设计 数据库 设计 (Database Design)在软件开发的流程中有着至关重要的作用,她 指 在一个给定的开发平台上搭建系统运行所要使用到的 数据库 模式 , 搭建 数据库 结构 及 使用 系统, 使其能够高效稳定的 存储 系统 数据,满足用户 对产品的各种 需求 ( 对 信息 查询 和处理 的 要求 ) [14][20]。 它包 括对数据库中数据添加、修改、删除、查询和生成相应报表操作的设计。 总体的设计原则应该体现在提高系统处理数据的效率以及便于操作数据两方面。 数据库是信息管理系统的核心和基础。 它将信息管理系统中大量的数据按一定的模型架构有序的组织起来,为其系统提供存储、修改和查询数据信息的功能,使信息管理系统可以方便、及时、准确地从数据库中获取所需要的数据。 数据库的设计的步骤主要有对产品需求的分析,数据库概念结构的设计和对数据库逻辑结构的设计 [15][23]。 数据库需求分析 对于产品的设计和研发开说,需求分析是整个设计过程的基础,这个阶段是最困难、最耗费时间的。 理解客户的需求, 调查和分析 系统使用者的使用要求 , 了解业务流程,弄 清楚系统要使用 数据的 类型 、范围、数量以及它们在 整个业务流程 中的 使用 情况, 总体上 确定 数据库的架构和功能,创建数据字典和产品 ER 图 [14][23]。 出库操作 设计出库功能模块主要完成两部分功能: ( 1)获得出库单 : 系统使用人员在操作界面上输入想要查询的基本信息,从商品信息表中获得要查询商品的详细信息,从客户信息表中获得要查询客户的详细信息。 ( 2)获取出库单中各项商品的详细信息 : 系统中商品的出库单与出库商品相关联,从商品信息表中选取出系统中出库商品的相关信息。 系统中商品的出库流程如图 31 所示。 入库操作 设计入库功能模块主要完成两部分功能: 9 ( 1) 获得入库单 : 系统使用 人员在操作界面上输入想要查询的基本信息,从商品信息表中获得要查询商品的详细信息,从供应商信息表中获得要查询供应商的详细信息。 ( 2)获取入库单中各项商品的详细信息 : 系统中商品的入库单与入库商品相关联,从商品信息表中选取出系统中入库商品的相关信息。 系统中商品的入库流程如图 32 所示。 人 员 信 息 表 客 户 信 息 表出 库 单 表制 单商 品 信 息 表编 辑 出 库 单 商 品 信 息获 得 出 库 单 信 息 表出 库 单 商 品 信 息 表客 户 信 息出 库 单 信 息商 品 信 息出 库 单 编 号出 库 单 商 品 信 息人 员 名 称 图 31 出库流程 人 员 信 息 表 供 应 商 信 息 表入 库 单 表制 单商 品 信 息 表编 辑 入 库 单 商 品 信 息获 得 入 库 单入 库 单 商 品 信 息 表供 应 商 名 称入 库 单 信 息商 品 信 息入 库 单 编 号入 库 单 商 品 信 息人 员 名 称 图 32 入库流程 10 功能模块设计 仓 储 物 流 管 理 系 统基 本 信 息 管 理库 存 管 理系 统 设 置商品信息管理客户信息管理供应商信息管理入库管理出库管理用户管理修改密码安全退出 图 33 系统功能模块图 上面的图 33 的系统功能模块图中列出了系统目前可以实现的主要功能的模块。 其中主要包括了基本信息管理模块,库存信息管理模块和系统设置模块。 其中基本信息管理模块中又设计了商品信息管理模块,客户信息管理模块和供应商信息管理模块。 库存信息管理模块中设计了商品出库的理模块和商品入库的管理模块。 系统设置模块中主要设计了用来管理用户的功能模块,修改密码的功能模块和退出系统的功能模块。 在基本信息管理模块中设计的对于管理商品信息的模块主要包括了添加商品信息的模块、修 改商品信息的模块、删除商品信息的模块和查询商品信息的模块。 剩下的两个功能模块客户信息管理模块和供应商管理模块中也都设计了能够完成相同功能的两个模块。 在库存信息管理模块中设计了实现对入库和出库信息操作的入库管理模块和出库管理模块。 其中入库管理模块中设计了用来添加入库商品信息的模块、可以实现修改入库商品信息的模块以及可以实现删除入库商品信息的模块和用来查询入库商品信息的管理模块 [24]。 同样的因为商品的出库的操作和入库的 操作大致相同,所以我在设计这个模块的时候也设计的可以实现相同功能的模块。 11 数据字典 数据 字典 ( Data dictionary)是用户 访问 数据库 和 应用程序 数据的目录。 是数据库中所有对象及其关系的信息集合,它 是对数据的 数据项 、 数据结构 、 数据流 、 数据存储 、处理逻辑、外部实体等进行定义和描述,其目的 是为 数据流程图 中的各个元素 给出 详细的说明 [16]。 用户的需求具体体 现在对各种数据信息的添加、保存、更新和查询。 要求数据结构能够满足对各种信息的输入和输出。 收集基本数据、数据结构和数据处理流程,组成一份说明详细的数据字典,详细的见下面的表 31,主要是为接下来设计的具体功能实现做好充分的准备。 表 31 数据字典 数据名称 数据描述 数据定义 商品信息 描述商品的各项基本信息 商品信息 =名称 +规格 客户信息 描述客户的各项基本信息 客户信息 =公司名称 +联系人姓名 +联系人地址 +城市名称 +地区名称 +邮政编码 +联系电话 +传真号码 +公司主页 供应商信息 描述供应商的各项基本信 息 供应商信息 =公司名称 +联系人姓名 +联系人地址 +城市名称 +地区名称 +邮政编码 +联系电话 +传真号码 +公司主页 商品属性信息 描述商品属性的各项基本信息 商品属性信息 =商品单位 +商品类别 入库单信息 描述系统入库单的各项基本信息 入库单信息 =入库单号 +供应商 +制单人 +入库时间 +库管员 +经办人 +是否入库 +数量 +仓库 入库单商品信息 描述与入库单中商品相关的各项基本 信息 入库单商品信息 =供货商公司名称 +联系人姓名 +联系电话 +商品名称 +商品规格 +计量单位 +单价 +数量 +进货日期 出库单信息 描述系统出库单的各 项基本信息 出库单信息 =出库单号 +客户 +制单人+出库时间 +库管员 +经办人 +是否出库 +数量 +仓库 出库单商品信息 描述与出库单中商品相关的各项基本 信息 出库单商品信息 =客户公司名称 +联系人姓名 +联系电话 +商品名称 +商品规格 +计量单位 +单价 +数量 +出货日期 12 数据库概念结构设计 数据库的概念结构设计是设计整个数据库的关键,它的设计任务是在需求分析说明书的基础上,按照自顶向下或者自底向上的方法将其构建成一个不依赖任何具体实物的数据模型 [17]。 它通过对用户需求进行综合、归纳与抽象,形成一个满足需求的概念模型。 具体的实现方法是先画出系统中的局部 ER 图,然后将各个部分合并到一起,最后进行属性图的优化和美化的工作。 ( 1)商品的实体属性图,如图 34: 商 品名 称 规 格 计 量 单 位 图 34 商品实体属性图 商品的基本信息包括商品名称、商品规格和商品的计量单位。 ( 2)供应商的实体属性图,如图 35: 供 应 商 公 司 主 页地 区邮 编 传 真电 话公 司 名 称城 市联 系 人 图 35 供应商实体属性图 供应商的基本信息包括公司名称、联系人姓名、联系人地址、城市名称、地区名称、邮政编码、联系电话、传真号码和公司主页等信息。 ( 3)客户的实体属性图,如图 36: 13 客 户 公 司 主 页地 区邮 编 传 真电 话公 司 名 称城 市联 系 人 图 36 客户实体属性图 客户的基本信息包括公。基于android的仓储物流管理系统
相关推荐
( 3) 日历显示 本系统可以 生成 1900 年至 2100 年这 201 年的公历和农历之间的对应日期并且以日历的形式显示出来, 当 用户添加的日程信息 后 可以在日历 界面 上清晰的标注出来,让用户对日程信息一目了然给,同时也方便用户的查询和修改。 ( 4) 用户管理 每个用户 都 拥有 自己 的账号,用以向数据库服务器进行身份验证,并方便数据库服务器分类管理每个用户的日程信息
layout_height = wrap_content android:textColor=@color/text_color / TextView android:id = @ +id/tvMsg2 android:layout_width=fill_parent android:layout_height = wrap_content android
层数据流图 数据流 0层图体现了系统的主要功能框架,本系统的 0 层图如图 8所示: 客 客 客 客 客客 客 客 客客 客客 客 客 客 客 客 客 客客 客 客 客客 客 客 客客 客客 客 客 客 客 客 客 客 客 客 客 客客 客客 客客 客 客 客客 客 客 客客 客 客客 客 客客客客客客客 客客 客客 客 客 客客 客客客客客客客 客图 8 一层数据流图 13
免因噪声干扰而死机。 XTAL1 和 XTAL2 口引出外围的晶振电路为单片机工作提系统时钟,本设计中设置单片机的晶振 为 12MHz。 RESET: AT89S52 的 重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间, AT89S51 便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设 成已知状态,并且至地址 0000H
模集成电路技术把具有数据处理能力的中央处理器 CPU随机存储器 RAM、只读存储器 ROM、多种 I/O口和中断系统、定时器 /计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、 A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。 单片机也被称为 微控制器 ( Microcontroller),是因为它最早被用在工业控制领域。 单片机由芯片内仅有 CPU的专用
之后,于 2020年推出的用于构建新一代 Inter 集成服务平台的最新框架,这种集成服务平台允许各系统环境下的应用程序通过因特网进行通信和共享数据。 目前,因特网服务平台亟待解决的重要问题是系统间的互通性问题,一些相关协议如 XML( extensible Markup Language,可扩展标记语言)、 SOAP( Simple Object Access Protocol