毕业设计(论文)
题
学目:生:商店库存管理系统的指导老师:
系
专
班学别:业:级:号:2013年6月
福建工程学院本科毕业设计(论文)作者承诺保证书
本人郑重承诺:本篇毕业设计(论文)的内容真实、可靠。如果存在弄虚作假、抄袭的情况,本人愿承担全部责任。
学生签名:
年月日
福建工程学院本科毕业设计(论文)指导教师承诺保证书
本人郑重承诺:我已按有关规定对本篇毕业设计(论文)的选题与内容进行了指导和审核,该同学的毕业设计(论文)中未发现弄虚作假、抄袭的现象,本人愿承担指导教师的相关责任。
指导教师签名:
年月日
目录
1项目来源.................................................................................................................................. 1
1.1项目背景及目的............................................................................................................ 1
1.2商店库存管理系统的现状............................................................................................ 1
1.3项目研究的目的和方法................................................................................................ 2
1.3.1项目的研究目的.................................................................................................. 2
1.3.2开发方法及步骤.................................................................................................. 22开发平台介绍.......................................................................................................................... 4
2.1系统平台环境................................................................................................................ 4
2.1.1硬件平台.............................................................................................................. 4
2.1.2软件平台.............................................................................................................. 4
2.2相关技术......................................................................................................................... 5
3需求分析.................................................................................................................................. 6
3.1业务需求......................................................................................................................... 6
3.1.1业务流程图.......................................................................................................... 6
3.2功能需求........................................................................................................................ 6
3.2.1功能需求描述...................................................................................................... 6
3.2.2数据流图............................................................................................................... 7
4概要设计.................................................................................................................................11
4.1总体结构设计...............................................................................................................11
4.2接口设计...................................................................................................................... 12
4.2.1外部接口............................................................................................................. 12
4.2.2内部接口............................................................................................................ 12
4.3数据库设计.................................................................................................................. 13
4.3.1概述.................................................................................................................... 13
4.3.2数据库的安全及设计描述................................................................................ 13
4.3.3数据库设计表.................................................................................................... 13
5详细设计................................................................................................................................. 15
5.1概述.............................................................................................................................. 15
5.2. 系统E-R 图.................................................................................................................15
5.3模块设计说明.............................................................................................................. 19
5.3.1用户登录模块设计说明.................................................................................... 19
5.3.2商品管理模块设计说明.................................................................................... 21
5.3.3出库单管理模块设计说明................................................................................. 23
5.4界面设计...................................................................................................................... 25
5.4.1界面设计原则.................................................................................................... 25
5.4.2数据输入界面设计............................................................................................ 25
5.5界面显示...................................................................................................................... 26
5.5.1系统登陆界面.................................................................................................... 26
5.5.2系统主界面........................................................................................................ 27
5.5.3商品管理界面..................................................................................................... 28
5.5.4添加入库单界面................................................................................................. 29
5.5.4数据统计界面..................................................................................................... 30
5.5.4数据统计界面..................................................................................................... 31
6总结........................................................................................................................................ 33
致谢语........................................................................................................................................ 35参考文献:................................................................................................................................ 36
附录:........................................................................................................................................ 37
商店库存管理系统的设计与实现
摘要:商店库存管理系统是基于B/S架构的典型的信息管理系统, 其开发主要包括后台数据库的建立和维护以及网页前端的开发两个方面。该系统根据现在商店的需求而展开分析与设计,具有一定的实用性。
本系统是利用apache 网页服务端和php 语言和Mysql 数据库开发而成。Apache 是Apache 软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web 服务器端软件之一。它快速、可靠并且可通过简单的API 扩展,将Perl/Python等解释器编译到服务器中;PHP 独特的语法混合了C 、Java 、Perl 以及PHP 自创的语法。PHP 安装它可以比CGI 或者Perl 更快速地执行动态网页。用PHP 做出的动态页面与其他的编程语言相比,PHP 是将程序嵌入到HTML 文档中去执行,执行效率比完全生成HTML 标记的CGI 要高许多;PHP 还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快;MySQL 是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB 公司。目前MySQL 被广泛地应用在Internet 上的中小型网站中。其体积小、速度快、总体拥有成本低且开放源码。三者结合开发简易,程序稳定,保证系统高效可靠运行。
本系统主要实现的功能有:登录管理、用户管理、商品管理、厂商名管理、商品类型名管理、进货入库管理、出库销售管理、统计管理、商品搜索。其中登录管理包括用户登录和退出;用户管理包括增删改查登录用户;商品管理是对商品信息的增删改查;厂商名和类型管理是商品附属属性的增删改查;进货入库管理是增加商品相应库存并添加一条入库信息的功能;出库销售是减少商品相应库存量并添加一条出库信息的功能;统计管理则是查看紧急库存和可以按需求选择对当日或者某天甚至某些天的销售统计。
关键字:商店库存;库存管理系统;B/S架构;apache ;php ;mysql ;
The design and iplementation of
Store Stock Management System(SSMS)
Abstract :the store stock management system is the typical information management system based on B/Sarchitecture, its development mainly includes two aspects:the background of the establishment and maintenance of database and front-end development of webpage. The system analysis and design according to the shop now demand, has a certain practicality.
This system is the Apache webpage server and PHP language and Mysql database development. Apache is an open source Apache software foundation of the webpage server ;PHP install it can perform dynamic webpage faster than CGI or Perl. Dynamic web pages using PHP to make compared with other programming languages ;MySQL is a small association database management system is an open source, the developer for the Swedish company MySQL AB. At present, MySQL is widely used in Internet, small and medium-sized site and open source.The combination of the three simple program development, stable, reliable and efficient operation of guarantee system.
The main function of this system contains login management, user management, commodity management, supplier management, commodity type management, goods warehousing management, sales management, statistics management, merchandise search.. The log management include user login and exit; the user management includes the crud user login; commodity management of commodity information crud; vendor name and type of management is commodity dependency crud; stock stock management is to increase the commodity stock and add a information storage function; outbound sales reduce the commodity corresponding stock and add a library of information function; statistical management is to view the emergency stock and demand can be selected on the day of or one day even some day sales statistics.
Key words:Store Stock ;Stock Management System ;B/S;apache ;php ;mysql ;
1项目来源
1.1项目背景及目的
库存管理系统是一个商店乃至企业不可缺少的部分,它的内容对于单位的决策者和管理者来说都至关重要,所以库存管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件库存,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
当今时代,世界经济正在从工业时代向知识时代转变。我们说知识时代经济的两个重要特征就是全球化和信息化,要实现全球化和信息化,就必须依靠更加完善的网络和更加完善的数据库。在这样一个飞速发展的信息科技时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于管理信息系统的大好时机。使用计算机进行信息控制,不仅提高了工作效率,而且一定程度上提高了其安全性。尤其对于比较复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好商店乃至企业的库存信息而设计的,商店库存管理系统就是一种伴随着计算机信息技术发展而成长起来的一种库存管理解决方案。
1.2商店库存管理系统的现状
商店库存管理系统在国内外范围都趋于完善,尤其是近几年伴随着计算机的快速普及,商店库存管理系统的使用范围逐步扩大,运用人群也越来越多,从最早的运用简单纸笔和辅助工具计算器记录库存进出库情况,到现在运用计算机对库存的商品信息记录、出入库记录、数据统计等等,巨大的市场潜力和商业需求也促使许多公司加大了对库存管理系统的研究力度,以便满足不同文化水平人对商店库存管理的需求。
现今传统的商店库存管理系统存在一些挑战与局限性,比如针对商店商品不同单位的库存,单位换算概念很模糊;亦或不能有一种比较严谨的方法算出每日的盈利情况,
单纯以每件商品的进价出售价差来算总的盈利额对于市场经济来说是不科学的,如果以一个时间范围来计算总支出金额和收入金额,这样只能保证在大部分时间都是准确的,却忽略了前后的真空期,所以这也是不严谨的。因此商店库存管理系统急需进一步完善,使以上问题能得到完美解决和系统功能进一步提高。
1.3项目研究的目的和方法
1.3.1项目的研究目的
本商店库存管理系统设计与开发,通过商店库存的功能分析、数据分析的过程,运用数据库设计、维护与运用SQL 对数据库中的表进行查询的技术,开发一套在实际商店库存管理上可以投入实际应用的管理系统。本系统是运行在Window 操作系统下,利用apache+php+mysql为平台进行开发的;对于并非大量的数据信息,采用mysql 数据库进行存储和处理。商店库存管理系统包括用户管理、商品管理、厂商名管理、商品类型名管理、进货入库管理、出库销售管理、统计管理等等,能有效地提高家庭财务管理效率。本系统的操作使用方式应符合普通商店的一般习惯,应具备操作灵活,使用方便等特点,便于使用。用Mysql 的作为数据库后台支持,可以方便的进行各种数据存储、查询和处理,所开发出的系统应安全可靠。
1.3.2开发方法及步骤
1. 可行性分析
商店库存管理系统的投入,能够提高商店员工对商店库存的工作效率、减少人员精力支出,从而减少劳力资本的投入,所以本系统开发是很有必要的。
2. 技术可行性分析
本系统开发涉及到的技术因素有:
(1)管理系统的开发理论与技术支持。
(2)基于B/S开发的理论基础
(3)B/S机构规划和技术设计。
(4)数据库技术理论与实践。
(5)Web 开发技术。能够使用php 开发系统
综上,大学四年所学、所实践,本系统开发不存在以上技术问题
3. 需求分析
本系统大致可实现以下功能(模块):
(1)用户管理:新用户的添加,修改密码及其它信息,移除用户等,这个用户
就是系统用来登录所需要的帐号角色。
(2)商品管理:商品管理是对商品种类的名称价格等信息的增删改查。区分同
一件商品的规则是结合它的商品名和厂商品。
(3)商品厂商管理:由于同样的商品有可能有不同的厂商,所以设置这个模块
来区分各种同名商品是很有必要的,通过增加厂商,在商品添加或管理的时候就有商品厂商的选择。
(4)商品类型名管理:由于商品有不同的类型,所以设置这个模块来区分各种
商品类型。
(5)入库及出库管理:针对商品的销售和进货,对数据库的相应商品进行库存
的增加或者删减,保证实际库存与数据库的统一。
(6)数据统计:一个库存管理系统所需要的数据统计功能,可以按时间区间统
计销售额等等。
4. 数据库设计与实现
根据业务需求、信息需求、和处理需求,确定信息系统的数据结构、数据操作。建立E—R图,进行数据库设计,建立完备的数据库系统。
5. 系统实现
用PHP 以及Mysql 对设计好的系统模型进行编程,实现此系统。
6. 测试与维护
对系统每一个功能模块程序进行测试。
2开发平台介绍
2.1系统平台环境
2.1.1硬件平台
硬件设备设计是根据信息系统的设计需求,确定信息系统物理设备方案,所设计的硬件设备方案在能够充分满足信息系统功能需求的前提下,还应满足系统的效率、可靠性、安全性和适应性等性能要求,并具有较高的性价比。根据前面的需求分析,我们得出本系统理想的环境当然是配置较高最好,实际操作中硬件平台如下:
硬件环境(访问者):建议用户在允许的情况下采用较高配置硬件资源。
硬件环境(开发者):赛扬T16001.7GHz 处理器,1G 内存,160G 磁盘空间。
2.1.2软件平台
软件平台是信息系统开发和运行所需的集成软件环境,设计和选择高效、实用、方便、功能齐全的软件平台,对信息系统的开发具有十分重要的意义。在结合实际开发的需要并充分考虑各种软件平台的性能及适用范围和对软件平台的使用能力,本系统的软件平台选择如下:
(1)操作系统
目前在个人微机上用的操作系统主要有Vista/Windows7/xp/2003server等,本系统在Windows XP 操作系统下进行开发,可运行于前面所列举的各种操作系统,建议使用Windows xp 以上系统。
(2)支撑软件
支撑软件是辅助开发和维护软件的工具或环境软件,包括编译程序,数据库系统,集成开发环境等,本系统的支撑软件是:数据库管理系统(PHPMyadmin )与www 网页浏览器(IE 6)。
2.2相关技术1. C/S模式
B/S结构即浏览器和服务器结构。它是随着Internet 技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW 的浏览器来实现,主要事务逻辑在服务器端(Server)实现,极少部分事务逻辑在前端(Browser)实现。浏览器通过Web Server 同数据库进行数据交互。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本,是互联网、计算机进一步在全球发展的标志。
2. PHP
PHP 独特的语法混合了Perl 、C 、Java 以及PHP 自创的语法。它可以比Perl 更快速地执行动态网页。用PHP 做出的动态页面与其他的编程语言相比,PHP 是将程序嵌入到HTML 文档中去执行,执行效率比完全生成HTML 标记的CGI 要高许多;PHP 具有非常强大的功能,所有的CGI 的功能PHP 都能实现,而且支持几乎所有流行的数据库以及操作系统。最重要的是PHP 可以用C 、C++进行程序的扩展!PHP 还可以执行已经编译后的代码,编译可以达到加密和优化代码运行,使所有代码的运行速度更加快速。
3. MYSQL
MySQL 是一个关系型数据库管理系统,它的开发公司是瑞典的MySQL AB ,目前属于Oracle 公司。MySQL 是一种关联数据库的管理系统,关联数据库将数据保存在不同的表中,并不是把所有数据放在一个大仓库内,这样就提高了灵活性并增加了速度。MySQL 的SQL 语言是用于访问数据库的最常用数据库标准化语言。MySQL 分为社区版和商业版,由于其速度快、体积小、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL 作为网站数据库。由于其社区版的性能卓越,搭配PHP 和Apache 可组成良好的Apache+php+MySQL(AMP)开发环境。
3需求分析
3.1业务需求
3.1.1业务流程图
用户登陆
选择操作
用户管理数据统计
商品管理
商品名/类型管理
出库销售
进货入库
图3-1业务流程图
3.2功能需求
3.2.1功能需求描述
本系统大致可分为以下功能(模块):
用户管理:新用户的添加,修改密码及其它信息,移除用户,因为这是一个小型商店,并不涉及权限问题,所以这个功能会相对简单一些。
商品管理:查询装口布局做到精简一目了然。增加商品时要充分利用javascript 对输入框进行判断。
商品厂商管理:充分利用javascript 对输入框进行判断。商品类型名管理:充分利用javascript 对输入框进行判断。入库及出库管理:保证实际库存与数据库的统一。数据统计:按各种时间区间统计销售额。
3.2.2数据流图
商品信息详情
管
理
员
查询条件信息
商店库存管理系统
商品管理
管
理
查询结果反馈
员
商品库存
图3.2.1数据流图顶层图
管理员
进货入库单
商品信息
商品信息查询
入库进货管理
商品信息管理
销售出库管理
入库单出库单
入库表
商品信息表
出库表
图3.2.2数据流图一层图
修改商品信息
管
理
员
商品信息管理
商品管理商品库存详情
图3.2.3数据流图二层图
入库条件
管入库条件设定
入库理
入进添加入库信息
库货员
表
管理
增加库存
入库表
图3.2.4数据流图二层图
出库条件
管出库条件设定
销售理
出出添加出库信息
库库员
表
管理
减少库存
出库表
图3.2.5数据流图二层图
管理员
商查询条件
品商品查询相应信息
库信息存查询
详情
图3.2.6数据流图二层图
4概要设计
4.1总体结构设计
管理员管理
用户管理
增加用户商品管理
商店库存管理系统
商品管理
增加商品厂商名管理增加厂商名
厂商名/类型管理
商品类型管理增加商品类型
进货入库增加进货入库
出库销售增加出库销售查看库存
数据统计
销售统计
图4-1总体结构设计
4.2接口设计
4.2.1外部接口1. 用户界面
在用户界面部分,根据需求分析结果,用户需要一个简易操作界面。在界面设计上,应做到简捷、易于操作,拥有和谐的人机交互界面,并且要注意到界面的布局,应突出的显示重要以及出错信息。在界面设计部分,本系统按照一般信息管理系统用户界面设计标准、利用HTML 中样式的控制,为用户提供友好、方便、直观、简洁、美观的操作环境。
本系统利用html 中的Iframe 标签固定左边的菜单栏,每个页面的边框一致化,使页面有统一的界面风格和操作风格。对错误信息、提示信息进行标准化,尽量做到清晰明了、整齐归一。
本系统在输入上,利用javascript 控制,避免的用户的误操作,并且有些地方会有输入提示,通俗易懂,更方便用户的正确使用。
2. 软件接口
服务器程序可以使用php 提供的对Mysql 的接口,进行对数据库的所有访问。3. 硬件接口
在输入方面,对于键盘、鼠标的输入、对输入进行处理。
在输出方面,打印机的连接和使用,也可用PHP 的标准输入/输出对其进行处理。4.2.2内部接口
系统在功能模块的设计上,以“高内聚、低耦合”为此次设计的目标。内部接口方面,各模块之间采用函数调用、参数传递、返回值等方式进行信息的传递。具体参数的结构将在下面数据结构设计的内容中进行展示说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各个模块之间进行传输。
4.3数据库设计
4.3.1概述
数据库是信息系统的基础和核心,数据库设计的质量将直接关系到信息系统开发的成败和优劣。制作数据库表首先要确定实体的属性和实体间的关系。根据关系做出数据表。
4.3.2数据库的安全及设计描述
数据库的用户表设定了用户名和密码登录,防止本系统不受非法用户的入侵,保证系统的信息安全不受非法获取和修改。4.3.3数据库设计表
用户表记录了管理员的相关信息,具体如下表:
表4-3-1用户表
字段名[usernames][names][pwd][tel]
类型varchar(20)varchar(20)varchar(20)varchar(13)
空否否否是
含义用户名用户姓名密码电话
商品表记录了商品员的相关信息,具体如下表:
表4-3-2商品表
字段名[id][brand][cod][name][unit]
类型int(255)varchar(20)varchar(20)varchar(13)varchar(8)
空否否否否否
含义编号厂商名货号商品名称单位
[number][type][outprice][attime]
int(5)varchar(10)float datetime
否否否否
数量类型出售价格加入时间
表4-3-3出库表
字段名[id][brand][name][unit][number][price][attime]
类型int(255)varchar(20)varchar(13)varchar(8)int(5)float datetime
空否否否否否否否
编号厂商名商品名称单位数量出售单价出库时间
含义
表4-3-4入库表
字段名[id][brand][name][unit][number][tolprice][attime]
类型int(255)varchar(20)varchar(13)varchar(8)int(5)float datetime
空否否否否否否否
编号厂商名商品名称单位数量入库总价入库时间
含义
表4-3-5厂商名表
字段名[id][brand][pfb][tel]
类型int(255)varchar(20)varchar(40)varchar(30)
空否否否否
编号厂商名厂商地址联系电话
含义
表4-3-6商品类型表
字段名[id][type]
类型int(255)varchar(30)
空否否
编号类型名
含义
5详细设计
5.1概述
通过系统概要设计为后期将要构造的系统实体建立一个模型或表达式。在软件系统总体设计中,完成了数据和系统构建,并通过模块层次结构图来描绘软件结构。
通过对商店库存基本业务流程的调查和了解以及前面对系统需求的分析后,接下来要做的就是本系统概要设计。
5.2. 系统E-R 图
概念模型的设计是为了将现实世界信息进行抽象,实现信息世界的建模,是进行数据库设计的有力工具。数据库概念模型设计可通过E-R 图来描述现实世界的概念模型。本系统的E-R 图表现了系统中各个实体之间的联系,具体的如下图所示:
系统总ER 图细节如下:
姓名密码
联系电话
厂商地址
管理员
N
电话
11
对应
用户名
1
管理
商品名
厂商名
数量
类型编号
1
N
商品
售价
1
类型
单位
货号
对应
图5.2.1系统总ER 图
姓名密码
管理员
管理员编号
用户名电话
图5.2.2管理员ER 图
商品名厂商名
数量
商品
售价
类型
单位
货号
图5.2.3商品ER 图
商品名厂商名
数量
进货入库单
总价格
添加日期
单位
图5.2.4进货入库单ER 图
商品名厂商名
数量
出库销售单
出售价
添加日期
单位
图5.2.5出库销售单ER 图
厂商编号厂商名类型编号
商品厂商商品类型
厂商地址
电话类型名
图5.2.6商品厂商ER 图图5.2.7商品类型ER 图
5.3模块设计说明
5.3.1用户登录模块设计说明
(1)程序描述
该模块用于对使用该系统的用户进行登录验证的功能。
(2)功能
表5-2模块设计表2
程序名称相关数据库表输入输出
程序处理说明
用户登录Users 表用户名、密码显示登录成功1. 2. 3. 4. 5.
输入用户名和密码验证输入合法性
将数据与数据库用户表进行比对显示登陆成功进入系统首页
(3)用户管理程序流程图
开始
输入
用户名和密码
用户名密码是否为空否用户名和密码
是
与用户表进行匹配
与用户表是否匹配
是
登录成功
否
用户名或密码错误
结束
5.3.2商品管理模块设计说明
(1)程序描述
该模块用于对使用该系统的商品信息进行添加、查询、删除、修改操作。是本系统最基本的功能,所有操作都围绕着这个模块来进行,例如核心模块出库入库也是基于这个商品管理模块。我们在这里之举例此功能的商品添加功能。
(2)功能
表5-2模块设计表2
程序名称相关数据库表输入输出
程序处理说明
商品信息添加Products 表商品信息商品信息记录
1. 输入商品详细信息2. 验证输入合法性
3. 将该记录插入用户表
(3)商品添加程序流程图如下
开始
输入商品信息
否
Js 脚本验证合法性是商品信息
添加到数据
库
是否成功
否
是
添加成功!
添加失败!
结束
5.3.3出库单管理模块设计说明
(1)程序描述
该模块用于对使用该系统的商品出库进行处理,此商品销售出库模块与商品进货入库模块这两部分是本系统的核心功能,每个仓库管理系统最核心的操作就是对库存的增加与减少,本设计说明之举例商品的出库功能。
(2)功能
表5-2模块设计表2
程序名称相关数据库表输入输出
程序处理说明
出库单管理Products outpro 表出库信息出库信息记录
1.输入出库信息2.验证信息合法性3.添加到出库表
4.增加相应库存到商品表
(3)用户管理程序流程图如下
开始
输入出库单信息
否
Js 脚本验证合法性是出库详细信息
添加到出库
表
修改库存数
量
是否成功
出库失败!
是否成功
否
是
添加成功!
删除新添加出库表中信
息
结束
5.4界面设计
5.4.1界面设计原则
(1)一致性原则。人机界面设计要尽量使每个页面除了主要内容外的设计是一致的,增强页面间的一致性,统一界面风格。
(2)信息记忆性原则。人机界面设计要尽量减少使用者的记忆负担,采用有助于记忆的页面信息设计方案。
(3)帮助和提示原则。要对用户的操作命令作出相应的反应,帮助用户正确地处理问题。在系统处理工作时要有相应的提示,尽量把主动权让给用户,例如删除功能,要提示用户是否确定要删除该条记录。
5.4.2数据输入界面设计
数据输入界面往往占终端用户最多的使用时间,也是计算机系统中最容易出问题的部分之一。其总目标:简化用户的工作量,并且尽可能降低出错率,除此之外还要容忍用户疏忽或错误。这些要求在设计实现时可采用多种方法:
(1)尽可能减轻用户记忆,采用列表或下拉框来选择。对共同输入内容设置默认值;使用代码和缩写等;系统自动记录用户已输入过的内容。
(2)使界面有一致风格的数据输入界面。
(3)防止用户出错。对删除必须再一次确认,对严重的错误,要警告并退出。对空值输入,要给出相应的提示;在输入框中也有限制,限制可输入的字符类型。
(4)提供反馈。要使用户能查看已输入的内容,并提示有效的输入回答。
(7)若条件具备,在数据输入界面尽可能采用自动输入。
5.5界面显示
由于本系统的界面繁多,有很多界面都是类似的,因此选择了一些有代表性的界面进行说明。
5.5.1系统登陆界面
登陆界面提供了一个给系统用户进入商店库存管理系统的一个入口,必须输入正确的账号和密码才能进入系统,每个用户名在系统中只能唯一存在。如图5-15
所示:
图5-15商店库存管理系统登陆界面
5.5.2系统主界面
在登陆界面上输入正确的帐号、密码之后,进入商店库存管理系统。如图5-16所示,主界面是一个产品搜索界面,单击左边的菜单,可以显示对应的子菜单,直观的看
出该菜单下所拥有的功能。
图5-16商店库存管理系统主界面
5.5.3商品管理界面
在左边菜单栏选择相应的子菜单单击进入后,右边的窗口显示如下的界面,这是一个商品管理的界面,直观的看出所有商品的信息,数据量超过设定的10条会在下一页中显示。其中每一条记录后面有两个操作,分别是修改和删除,点击修改后,界面会跳到相应的修改界面,点击删除后,网页前端会进行一个js 脚本的确认框,点击
确定则删除,点击取消责取消删除动作。
图5-17
商品管理的界面
图5-18商品添加的界面
5.5.4添加入库单界面
该模块用于对使用该系统的商品入库进行处理,此商品销售出库模块与商品进货入库模块这两部分是本系统的核心功能,通过添加相应的信息把入库单写入进货入库
表,然后修改商品表相应的库存量。
图5-19入库进货单界面
5.5.4数据统计界面
此界面为数据统计功能模块下的查看销售记录功能,点击昨日销售清单,下面的列表会显示出昨日所有售出的商品信息。此外还可以按日期区间查询,选择比如从5月1号至5月10
号的信息,系统会列出相应日期内的所有销售信息。
图5-20数据统计-昨日销售单界面
5.5.4数据统计界面
此界面为数据统计功能模块下的查看销售记录功能,点击昨日销售清单,下面的列表会显示出昨日所有售出的商品信息。此外还可以按日期区间查询,选择比如从5月1号至5月10
号的信息,系统会列出相应日期内的所有销售信息。
图5-21数据统计-昨日销售单界面
图5-21
数据统计-按日期区间查询销售单界面
图5-22数据统计-按日期区间查询结果界面
6总结
断断续续地经过将近半年的调查、学习、研究和设计,系统的开发已经大功告成,之前对于PHP 语言几乎一无所知,因为想做一个B/S架构的系统,所以我是边学边做,虽然依靠我有限知识或者说学习能力制作出来的软件和想象中的还是有些差距,理想很丰满现实很骨感,虽然骨感,但至少是一份完整的系统,至少这是对自己一次能力的提升和信心的积累。现将总结如下:
(1)系统的功能基本达到预想的设计要求,系统中各个模块的核心功能都有实现。
(2)系统模块划分比较明确,模块功能设计有较强的针对性。
(3)体现出了B/S架构下系统的优势,界面比较美观,而且也最大限度地保持了各页面的一致性。
由于实践经验的不足,系统还有一些地方亟待完善,是截至本次毕业设计结束还未解决但已意识到的不足:
(1)最开始计划用ext 来做这种b/s架构的管理系统的界面,ext界面的整洁布局天生就适合做这样的管理系统,可是因为在ext 还没学习完成之前,迫不及待地就对系统开始动工,最后也是不了了之。
(2)同样的,没有把之前期待的AJAX 无刷新技术融入到系统中,确实是一个很大的遗憾,学了一段时间AJAX,真正要用的时候还是无从下手被系统繁琐的关系给击败,无奈放弃。
(3)很想把商品信息加入有不同单位的储存,感觉这样更接近现实,虽然这只是一个便利商店的库存系统,但是同一件商品也是有可能有大小不同单位的,至少这样会更方便用户使用,这也是几乎所有库存系统都没有体现出来的,可是在想破脑筋之后还是没能相出一个完美的解决方案。
(4)没有把‘盈利’的统计做出来,不知道要怎么去计算这个统计会比较合适,一种是计算每一件售出的商品的进价和售价差,另一种是比如这个月进货的总金额和这个月出售总金额的差。这两种方案都不完美,最后也只能告吹。
(5)有些可有可无的功能摒弃掉了,比如权限和备份。权限问题是我觉得这种小商店系统没必要做权限,备份的问题是一方面不是很有必要,另一方面技术能力也有限。如果能做出来系统肯定会更家完善,这点也很遗憾。
通过这次毕业设计对库存管理系统的了解,我觉得要使商店库存管理系统在商店库存管理中发挥其应有的效果,就要不断地拓宽商店库存管理信息系统在商店库存管理中的应用范围、增强商店库存辅助工具的智能化运用,使商店库存管理信息系统真正成为管理的助手。因此,从商店库存管理信息系统应用范围的趋势看,应大力开发与互联网相连的实时商店库存计划管理软件,也就是要实现商店库存数据的准确性和实时性,才能准确判断理财方向。以往通过人工去计算统计,还有赖于对有关资料的收集、记录和分析,十分繁琐。若是有了软件程序使用计算机就可以完成计算机实时统计,以便用户在掌握所需情况后,有的放矢地制订出商店库存的计划和进货调整计划等等,通过信息反馈系统,计算机还可做出统计分析,数据表分析,并且能够提供商店库存有关利润、升值空间等具体的分析情况。开发出这样的计划管理系统软件,是商店库存趋于自动化必然趋势。
总之,对商店库存管理信息系统应用及其发展趋势的认识,应持机遇与挑战并存的态度。商店库存信息化、智能化是社会科技进步赋予家庭及其财务管理软件的历史必然,是人类社会进入21世纪之后,所要经历的必由之路。但人类社会要全面实现电脑社会,矛盾也是客观存在的,将传统与进步结合、迎接挑战,探索适合商店库存管理信息系统管理的新路,是以后商店库存软件开发方向应该追求的目标。
总体来说毕业设计做到现在这个成果,个人而言已经是比较满意,虽然运用了大部分以前学习的知识,包括HTML、SQL 的基本运用,但核心的开发语言PHP 毕竟是现学现卖。还有必须感叹一下网络的强大,可以让我在用一种全新的开发语言且没有去专门上课学习的情况下独立完成这样一个系统,虽然也必须感叹一下其中艰辛的过程,但我相信只要有毅力,有信念,最可以做到最好!本次毕业设计对我个人来说的意义是巩固了所学知识,又了解、学习了全新的知识和技术,并且在开发这样一款库存系统的同时,对商店的营销运营有了一定的了解,另外又磨练了我的意志和增强了我学习的主动性!真可谓一举多得!这次毕业设计十分有意义!
致谢语
大学生涯里,我学到的不仅仅是书本上的知识和技术,还学到了做人应该学会感恩,要怀有一颗感恩的心,此次的毕业设计系统部分能顺利完成,离不开指导老师的建议和指引,毕业论文更是导师不厌其烦地跟我说明论文的格式,给了我很大的帮助!导师平易近人,但是谈到学习工作上的事又很认真,无论在理论上还是在实践中,都给与我莫大的帮助,使我得到很大的提高。这对于我以后的工作和生活都有一种巨大的推动作用!因此,在这里我要郑重地感谢我的导师!。
感谢在整个开发过程中的各个阶段给予一些意见和帮助的同学朋友们,因为有你们才能使我的开发更顺利,系统的界面更加完美,功能更加完善。
至此,本课题圆满完成,感谢福建工程学院给予了这个学习机会,让我从中学习到很多很多,并更加体会到了软件变成开发的乐趣,并可能因此而让我终身受益。再次感谢导师和给予我过帮助的人们,今天毕业设计的完成因为有你们,明天、后天、未来的人生路上更缺少不了你们!怀着一颗感恩的心,我的大学生涯也即将落下帷幕,人生奔向更美好的明天!
参考文献:
[1]陶飞飞、李明.Web 程序设计[M ]. 北京交通大学出版社出版社.2009
[2]陆慧恩、张成珠. 实用软件工程[M ]. 北京:清华大学出版社.2006
[3]谭贞军.php 编程新手自学手册. 机械工业出版社.2012
[4]唐豪杰、李承飞.mysql 数据库编程入门到精通[M ]. 中国水利水电出版社.2008
[5]沈磊. 零售业的网络时代. 上海财经大学工商管理学院学报(商业研究) [N ].2007年第5期
[6]郑人杰、殷人昆. 实用软件工程[M ]. 清华大学出版社.2007
[7]李泽建、许亮. 浅析多媒体数据库技术的发展和展望[N ]. 昆明理工大学学报(理工版).2007年2月
[8]Nicholas C.Zakas.JavaScript PD(第二版).NCZonline.2010
[9]Luke Welling 、Laura Thomson. php 和mysql 开发(原书第4版) [M ]. 机械工业出版社.2010
[10]陈湘扬, 陈国益. PHP5+MySQL网页系统开发设计. 北京:电子工业出版社,2007.
[11]邹天思, 孙鹏. PHP 从入门到精通. 北京:清华大学出版社,2010.
[12]DAVID LANE[美].PHP&MYSQL WEB 数据库应用开发指南[M].南京:东南大学出版社,2009。
[13]MIHAI BUCICA[美].AJAX与PHP WEB 开发[M].北京:人民邮电出版社,2011。
附录:
关键代码与算法:
登录:
include_once("../db/conn.php");
$sql="SELECT COUNT(*)FROM users WHERE usernames ='{$_POST['names']}'AND pwd ='{$_POST['pwd']}'";
$conn=mysql_query($sql);
$row=mysql_fetch_array($conn);
if ($row[0]
exit("用户名或密码错误, 请返回重试!");
}else{
session_start();
$_SESSION['names']=$_POST['names'];
header("Location:./manage.php");
}
?>
商品搜索算法:
//$brand=$_POST['brand'];
//$code=$_POST['code'];
$type=$_POST['type'];
$name=$_POST['name'];
if($name==''){$sql="SELECT *FROM products WHERE type like '%{$type}%'";}
products WHERE name like '%{$name}%'";}
products WHERE type like '%{$type}%'&&nameelse if($type==''){$sql="SELECT *FROM else{$sql="SELECT *FROM
like'%{$name}%'";}
$query=mysql_query($sql);
$num=mysql_num_rows($query);
if ($num
echo "";
}else{
while ($row=mysql_fetch_array($query)){
if (!$a){
$a="a";
}else {
$a="";
}
echo "
";
}
}
}
?>
商品管理里的显示与分页:
include_once("../db/conn.php");
$perNum=10;//每页显示数
$page=$_GET['page'];
$offset=($_GET['page']-1)*$perNum;
if ($offset
$offset=0;
}
$sql="SELECT *FROM products LIMIT {$offset},{$perNum}";
$query=mysql_query($sql);
while ($row=mysql_fetch_array($query)){
if (!$a){
$a="a";
}else {
$a="";
}
//print_r($row);
echo "
";
}
?>
{$row[3]} | {$row[1]} | {$row[2]} | ||||||
{$row[3]} | {$row[1]} | {$row[2]} | {$row[5]} | {$row[4]} | {$row[6]} | {$row[7]} | {$row[8]} |
[修改]| delconfirm();\">[删除] |
毕业设计(论文)
题
学目:生:商店库存管理系统的指导老师:
系
专
班学别:业:级:号:2013年6月
福建工程学院本科毕业设计(论文)作者承诺保证书
本人郑重承诺:本篇毕业设计(论文)的内容真实、可靠。如果存在弄虚作假、抄袭的情况,本人愿承担全部责任。
学生签名:
年月日
福建工程学院本科毕业设计(论文)指导教师承诺保证书
本人郑重承诺:我已按有关规定对本篇毕业设计(论文)的选题与内容进行了指导和审核,该同学的毕业设计(论文)中未发现弄虚作假、抄袭的现象,本人愿承担指导教师的相关责任。
指导教师签名:
年月日
目录
1项目来源.................................................................................................................................. 1
1.1项目背景及目的............................................................................................................ 1
1.2商店库存管理系统的现状............................................................................................ 1
1.3项目研究的目的和方法................................................................................................ 2
1.3.1项目的研究目的.................................................................................................. 2
1.3.2开发方法及步骤.................................................................................................. 22开发平台介绍.......................................................................................................................... 4
2.1系统平台环境................................................................................................................ 4
2.1.1硬件平台.............................................................................................................. 4
2.1.2软件平台.............................................................................................................. 4
2.2相关技术......................................................................................................................... 5
3需求分析.................................................................................................................................. 6
3.1业务需求......................................................................................................................... 6
3.1.1业务流程图.......................................................................................................... 6
3.2功能需求........................................................................................................................ 6
3.2.1功能需求描述...................................................................................................... 6
3.2.2数据流图............................................................................................................... 7
4概要设计.................................................................................................................................11
4.1总体结构设计...............................................................................................................11
4.2接口设计...................................................................................................................... 12
4.2.1外部接口............................................................................................................. 12
4.2.2内部接口............................................................................................................ 12
4.3数据库设计.................................................................................................................. 13
4.3.1概述.................................................................................................................... 13
4.3.2数据库的安全及设计描述................................................................................ 13
4.3.3数据库设计表.................................................................................................... 13
5详细设计................................................................................................................................. 15
5.1概述.............................................................................................................................. 15
5.2. 系统E-R 图.................................................................................................................15
5.3模块设计说明.............................................................................................................. 19
5.3.1用户登录模块设计说明.................................................................................... 19
5.3.2商品管理模块设计说明.................................................................................... 21
5.3.3出库单管理模块设计说明................................................................................. 23
5.4界面设计...................................................................................................................... 25
5.4.1界面设计原则.................................................................................................... 25
5.4.2数据输入界面设计............................................................................................ 25
5.5界面显示...................................................................................................................... 26
5.5.1系统登陆界面.................................................................................................... 26
5.5.2系统主界面........................................................................................................ 27
5.5.3商品管理界面..................................................................................................... 28
5.5.4添加入库单界面................................................................................................. 29
5.5.4数据统计界面..................................................................................................... 30
5.5.4数据统计界面..................................................................................................... 31
6总结........................................................................................................................................ 33
致谢语........................................................................................................................................ 35参考文献:................................................................................................................................ 36
附录:........................................................................................................................................ 37
商店库存管理系统的设计与实现
摘要:商店库存管理系统是基于B/S架构的典型的信息管理系统, 其开发主要包括后台数据库的建立和维护以及网页前端的开发两个方面。该系统根据现在商店的需求而展开分析与设计,具有一定的实用性。
本系统是利用apache 网页服务端和php 语言和Mysql 数据库开发而成。Apache 是Apache 软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web 服务器端软件之一。它快速、可靠并且可通过简单的API 扩展,将Perl/Python等解释器编译到服务器中;PHP 独特的语法混合了C 、Java 、Perl 以及PHP 自创的语法。PHP 安装它可以比CGI 或者Perl 更快速地执行动态网页。用PHP 做出的动态页面与其他的编程语言相比,PHP 是将程序嵌入到HTML 文档中去执行,执行效率比完全生成HTML 标记的CGI 要高许多;PHP 还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快;MySQL 是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB 公司。目前MySQL 被广泛地应用在Internet 上的中小型网站中。其体积小、速度快、总体拥有成本低且开放源码。三者结合开发简易,程序稳定,保证系统高效可靠运行。
本系统主要实现的功能有:登录管理、用户管理、商品管理、厂商名管理、商品类型名管理、进货入库管理、出库销售管理、统计管理、商品搜索。其中登录管理包括用户登录和退出;用户管理包括增删改查登录用户;商品管理是对商品信息的增删改查;厂商名和类型管理是商品附属属性的增删改查;进货入库管理是增加商品相应库存并添加一条入库信息的功能;出库销售是减少商品相应库存量并添加一条出库信息的功能;统计管理则是查看紧急库存和可以按需求选择对当日或者某天甚至某些天的销售统计。
关键字:商店库存;库存管理系统;B/S架构;apache ;php ;mysql ;
The design and iplementation of
Store Stock Management System(SSMS)
Abstract :the store stock management system is the typical information management system based on B/Sarchitecture, its development mainly includes two aspects:the background of the establishment and maintenance of database and front-end development of webpage. The system analysis and design according to the shop now demand, has a certain practicality.
This system is the Apache webpage server and PHP language and Mysql database development. Apache is an open source Apache software foundation of the webpage server ;PHP install it can perform dynamic webpage faster than CGI or Perl. Dynamic web pages using PHP to make compared with other programming languages ;MySQL is a small association database management system is an open source, the developer for the Swedish company MySQL AB. At present, MySQL is widely used in Internet, small and medium-sized site and open source.The combination of the three simple program development, stable, reliable and efficient operation of guarantee system.
The main function of this system contains login management, user management, commodity management, supplier management, commodity type management, goods warehousing management, sales management, statistics management, merchandise search.. The log management include user login and exit; the user management includes the crud user login; commodity management of commodity information crud; vendor name and type of management is commodity dependency crud; stock stock management is to increase the commodity stock and add a information storage function; outbound sales reduce the commodity corresponding stock and add a library of information function; statistical management is to view the emergency stock and demand can be selected on the day of or one day even some day sales statistics.
Key words:Store Stock ;Stock Management System ;B/S;apache ;php ;mysql ;
1项目来源
1.1项目背景及目的
库存管理系统是一个商店乃至企业不可缺少的部分,它的内容对于单位的决策者和管理者来说都至关重要,所以库存管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件库存,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
当今时代,世界经济正在从工业时代向知识时代转变。我们说知识时代经济的两个重要特征就是全球化和信息化,要实现全球化和信息化,就必须依靠更加完善的网络和更加完善的数据库。在这样一个飞速发展的信息科技时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于管理信息系统的大好时机。使用计算机进行信息控制,不仅提高了工作效率,而且一定程度上提高了其安全性。尤其对于比较复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好商店乃至企业的库存信息而设计的,商店库存管理系统就是一种伴随着计算机信息技术发展而成长起来的一种库存管理解决方案。
1.2商店库存管理系统的现状
商店库存管理系统在国内外范围都趋于完善,尤其是近几年伴随着计算机的快速普及,商店库存管理系统的使用范围逐步扩大,运用人群也越来越多,从最早的运用简单纸笔和辅助工具计算器记录库存进出库情况,到现在运用计算机对库存的商品信息记录、出入库记录、数据统计等等,巨大的市场潜力和商业需求也促使许多公司加大了对库存管理系统的研究力度,以便满足不同文化水平人对商店库存管理的需求。
现今传统的商店库存管理系统存在一些挑战与局限性,比如针对商店商品不同单位的库存,单位换算概念很模糊;亦或不能有一种比较严谨的方法算出每日的盈利情况,
单纯以每件商品的进价出售价差来算总的盈利额对于市场经济来说是不科学的,如果以一个时间范围来计算总支出金额和收入金额,这样只能保证在大部分时间都是准确的,却忽略了前后的真空期,所以这也是不严谨的。因此商店库存管理系统急需进一步完善,使以上问题能得到完美解决和系统功能进一步提高。
1.3项目研究的目的和方法
1.3.1项目的研究目的
本商店库存管理系统设计与开发,通过商店库存的功能分析、数据分析的过程,运用数据库设计、维护与运用SQL 对数据库中的表进行查询的技术,开发一套在实际商店库存管理上可以投入实际应用的管理系统。本系统是运行在Window 操作系统下,利用apache+php+mysql为平台进行开发的;对于并非大量的数据信息,采用mysql 数据库进行存储和处理。商店库存管理系统包括用户管理、商品管理、厂商名管理、商品类型名管理、进货入库管理、出库销售管理、统计管理等等,能有效地提高家庭财务管理效率。本系统的操作使用方式应符合普通商店的一般习惯,应具备操作灵活,使用方便等特点,便于使用。用Mysql 的作为数据库后台支持,可以方便的进行各种数据存储、查询和处理,所开发出的系统应安全可靠。
1.3.2开发方法及步骤
1. 可行性分析
商店库存管理系统的投入,能够提高商店员工对商店库存的工作效率、减少人员精力支出,从而减少劳力资本的投入,所以本系统开发是很有必要的。
2. 技术可行性分析
本系统开发涉及到的技术因素有:
(1)管理系统的开发理论与技术支持。
(2)基于B/S开发的理论基础
(3)B/S机构规划和技术设计。
(4)数据库技术理论与实践。
(5)Web 开发技术。能够使用php 开发系统
综上,大学四年所学、所实践,本系统开发不存在以上技术问题
3. 需求分析
本系统大致可实现以下功能(模块):
(1)用户管理:新用户的添加,修改密码及其它信息,移除用户等,这个用户
就是系统用来登录所需要的帐号角色。
(2)商品管理:商品管理是对商品种类的名称价格等信息的增删改查。区分同
一件商品的规则是结合它的商品名和厂商品。
(3)商品厂商管理:由于同样的商品有可能有不同的厂商,所以设置这个模块
来区分各种同名商品是很有必要的,通过增加厂商,在商品添加或管理的时候就有商品厂商的选择。
(4)商品类型名管理:由于商品有不同的类型,所以设置这个模块来区分各种
商品类型。
(5)入库及出库管理:针对商品的销售和进货,对数据库的相应商品进行库存
的增加或者删减,保证实际库存与数据库的统一。
(6)数据统计:一个库存管理系统所需要的数据统计功能,可以按时间区间统
计销售额等等。
4. 数据库设计与实现
根据业务需求、信息需求、和处理需求,确定信息系统的数据结构、数据操作。建立E—R图,进行数据库设计,建立完备的数据库系统。
5. 系统实现
用PHP 以及Mysql 对设计好的系统模型进行编程,实现此系统。
6. 测试与维护
对系统每一个功能模块程序进行测试。
2开发平台介绍
2.1系统平台环境
2.1.1硬件平台
硬件设备设计是根据信息系统的设计需求,确定信息系统物理设备方案,所设计的硬件设备方案在能够充分满足信息系统功能需求的前提下,还应满足系统的效率、可靠性、安全性和适应性等性能要求,并具有较高的性价比。根据前面的需求分析,我们得出本系统理想的环境当然是配置较高最好,实际操作中硬件平台如下:
硬件环境(访问者):建议用户在允许的情况下采用较高配置硬件资源。
硬件环境(开发者):赛扬T16001.7GHz 处理器,1G 内存,160G 磁盘空间。
2.1.2软件平台
软件平台是信息系统开发和运行所需的集成软件环境,设计和选择高效、实用、方便、功能齐全的软件平台,对信息系统的开发具有十分重要的意义。在结合实际开发的需要并充分考虑各种软件平台的性能及适用范围和对软件平台的使用能力,本系统的软件平台选择如下:
(1)操作系统
目前在个人微机上用的操作系统主要有Vista/Windows7/xp/2003server等,本系统在Windows XP 操作系统下进行开发,可运行于前面所列举的各种操作系统,建议使用Windows xp 以上系统。
(2)支撑软件
支撑软件是辅助开发和维护软件的工具或环境软件,包括编译程序,数据库系统,集成开发环境等,本系统的支撑软件是:数据库管理系统(PHPMyadmin )与www 网页浏览器(IE 6)。
2.2相关技术1. C/S模式
B/S结构即浏览器和服务器结构。它是随着Internet 技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW 的浏览器来实现,主要事务逻辑在服务器端(Server)实现,极少部分事务逻辑在前端(Browser)实现。浏览器通过Web Server 同数据库进行数据交互。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本,是互联网、计算机进一步在全球发展的标志。
2. PHP
PHP 独特的语法混合了Perl 、C 、Java 以及PHP 自创的语法。它可以比Perl 更快速地执行动态网页。用PHP 做出的动态页面与其他的编程语言相比,PHP 是将程序嵌入到HTML 文档中去执行,执行效率比完全生成HTML 标记的CGI 要高许多;PHP 具有非常强大的功能,所有的CGI 的功能PHP 都能实现,而且支持几乎所有流行的数据库以及操作系统。最重要的是PHP 可以用C 、C++进行程序的扩展!PHP 还可以执行已经编译后的代码,编译可以达到加密和优化代码运行,使所有代码的运行速度更加快速。
3. MYSQL
MySQL 是一个关系型数据库管理系统,它的开发公司是瑞典的MySQL AB ,目前属于Oracle 公司。MySQL 是一种关联数据库的管理系统,关联数据库将数据保存在不同的表中,并不是把所有数据放在一个大仓库内,这样就提高了灵活性并增加了速度。MySQL 的SQL 语言是用于访问数据库的最常用数据库标准化语言。MySQL 分为社区版和商业版,由于其速度快、体积小、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL 作为网站数据库。由于其社区版的性能卓越,搭配PHP 和Apache 可组成良好的Apache+php+MySQL(AMP)开发环境。
3需求分析
3.1业务需求
3.1.1业务流程图
用户登陆
选择操作
用户管理数据统计
商品管理
商品名/类型管理
出库销售
进货入库
图3-1业务流程图
3.2功能需求
3.2.1功能需求描述
本系统大致可分为以下功能(模块):
用户管理:新用户的添加,修改密码及其它信息,移除用户,因为这是一个小型商店,并不涉及权限问题,所以这个功能会相对简单一些。
商品管理:查询装口布局做到精简一目了然。增加商品时要充分利用javascript 对输入框进行判断。
商品厂商管理:充分利用javascript 对输入框进行判断。商品类型名管理:充分利用javascript 对输入框进行判断。入库及出库管理:保证实际库存与数据库的统一。数据统计:按各种时间区间统计销售额。
3.2.2数据流图
商品信息详情
管
理
员
查询条件信息
商店库存管理系统
商品管理
管
理
查询结果反馈
员
商品库存
图3.2.1数据流图顶层图
管理员
进货入库单
商品信息
商品信息查询
入库进货管理
商品信息管理
销售出库管理
入库单出库单
入库表
商品信息表
出库表
图3.2.2数据流图一层图
修改商品信息
管
理
员
商品信息管理
商品管理商品库存详情
图3.2.3数据流图二层图
入库条件
管入库条件设定
入库理
入进添加入库信息
库货员
表
管理
增加库存
入库表
图3.2.4数据流图二层图
出库条件
管出库条件设定
销售理
出出添加出库信息
库库员
表
管理
减少库存
出库表
图3.2.5数据流图二层图
管理员
商查询条件
品商品查询相应信息
库信息存查询
详情
图3.2.6数据流图二层图
4概要设计
4.1总体结构设计
管理员管理
用户管理
增加用户商品管理
商店库存管理系统
商品管理
增加商品厂商名管理增加厂商名
厂商名/类型管理
商品类型管理增加商品类型
进货入库增加进货入库
出库销售增加出库销售查看库存
数据统计
销售统计
图4-1总体结构设计
4.2接口设计
4.2.1外部接口1. 用户界面
在用户界面部分,根据需求分析结果,用户需要一个简易操作界面。在界面设计上,应做到简捷、易于操作,拥有和谐的人机交互界面,并且要注意到界面的布局,应突出的显示重要以及出错信息。在界面设计部分,本系统按照一般信息管理系统用户界面设计标准、利用HTML 中样式的控制,为用户提供友好、方便、直观、简洁、美观的操作环境。
本系统利用html 中的Iframe 标签固定左边的菜单栏,每个页面的边框一致化,使页面有统一的界面风格和操作风格。对错误信息、提示信息进行标准化,尽量做到清晰明了、整齐归一。
本系统在输入上,利用javascript 控制,避免的用户的误操作,并且有些地方会有输入提示,通俗易懂,更方便用户的正确使用。
2. 软件接口
服务器程序可以使用php 提供的对Mysql 的接口,进行对数据库的所有访问。3. 硬件接口
在输入方面,对于键盘、鼠标的输入、对输入进行处理。
在输出方面,打印机的连接和使用,也可用PHP 的标准输入/输出对其进行处理。4.2.2内部接口
系统在功能模块的设计上,以“高内聚、低耦合”为此次设计的目标。内部接口方面,各模块之间采用函数调用、参数传递、返回值等方式进行信息的传递。具体参数的结构将在下面数据结构设计的内容中进行展示说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各个模块之间进行传输。
4.3数据库设计
4.3.1概述
数据库是信息系统的基础和核心,数据库设计的质量将直接关系到信息系统开发的成败和优劣。制作数据库表首先要确定实体的属性和实体间的关系。根据关系做出数据表。
4.3.2数据库的安全及设计描述
数据库的用户表设定了用户名和密码登录,防止本系统不受非法用户的入侵,保证系统的信息安全不受非法获取和修改。4.3.3数据库设计表
用户表记录了管理员的相关信息,具体如下表:
表4-3-1用户表
字段名[usernames][names][pwd][tel]
类型varchar(20)varchar(20)varchar(20)varchar(13)
空否否否是
含义用户名用户姓名密码电话
商品表记录了商品员的相关信息,具体如下表:
表4-3-2商品表
字段名[id][brand][cod][name][unit]
类型int(255)varchar(20)varchar(20)varchar(13)varchar(8)
空否否否否否
含义编号厂商名货号商品名称单位
[number][type][outprice][attime]
int(5)varchar(10)float datetime
否否否否
数量类型出售价格加入时间
表4-3-3出库表
字段名[id][brand][name][unit][number][price][attime]
类型int(255)varchar(20)varchar(13)varchar(8)int(5)float datetime
空否否否否否否否
编号厂商名商品名称单位数量出售单价出库时间
含义
表4-3-4入库表
字段名[id][brand][name][unit][number][tolprice][attime]
类型int(255)varchar(20)varchar(13)varchar(8)int(5)float datetime
空否否否否否否否
编号厂商名商品名称单位数量入库总价入库时间
含义
表4-3-5厂商名表
字段名[id][brand][pfb][tel]
类型int(255)varchar(20)varchar(40)varchar(30)
空否否否否
编号厂商名厂商地址联系电话
含义
表4-3-6商品类型表
字段名[id][type]
类型int(255)varchar(30)
空否否
编号类型名
含义
5详细设计
5.1概述
通过系统概要设计为后期将要构造的系统实体建立一个模型或表达式。在软件系统总体设计中,完成了数据和系统构建,并通过模块层次结构图来描绘软件结构。
通过对商店库存基本业务流程的调查和了解以及前面对系统需求的分析后,接下来要做的就是本系统概要设计。
5.2. 系统E-R 图
概念模型的设计是为了将现实世界信息进行抽象,实现信息世界的建模,是进行数据库设计的有力工具。数据库概念模型设计可通过E-R 图来描述现实世界的概念模型。本系统的E-R 图表现了系统中各个实体之间的联系,具体的如下图所示:
系统总ER 图细节如下:
姓名密码
联系电话
厂商地址
管理员
N
电话
11
对应
用户名
1
管理
商品名
厂商名
数量
类型编号
1
N
商品
售价
1
类型
单位
货号
对应
图5.2.1系统总ER 图
姓名密码
管理员
管理员编号
用户名电话
图5.2.2管理员ER 图
商品名厂商名
数量
商品
售价
类型
单位
货号
图5.2.3商品ER 图
商品名厂商名
数量
进货入库单
总价格
添加日期
单位
图5.2.4进货入库单ER 图
商品名厂商名
数量
出库销售单
出售价
添加日期
单位
图5.2.5出库销售单ER 图
厂商编号厂商名类型编号
商品厂商商品类型
厂商地址
电话类型名
图5.2.6商品厂商ER 图图5.2.7商品类型ER 图
5.3模块设计说明
5.3.1用户登录模块设计说明
(1)程序描述
该模块用于对使用该系统的用户进行登录验证的功能。
(2)功能
表5-2模块设计表2
程序名称相关数据库表输入输出
程序处理说明
用户登录Users 表用户名、密码显示登录成功1. 2. 3. 4. 5.
输入用户名和密码验证输入合法性
将数据与数据库用户表进行比对显示登陆成功进入系统首页
(3)用户管理程序流程图
开始
输入
用户名和密码
用户名密码是否为空否用户名和密码
是
与用户表进行匹配
与用户表是否匹配
是
登录成功
否
用户名或密码错误
结束
5.3.2商品管理模块设计说明
(1)程序描述
该模块用于对使用该系统的商品信息进行添加、查询、删除、修改操作。是本系统最基本的功能,所有操作都围绕着这个模块来进行,例如核心模块出库入库也是基于这个商品管理模块。我们在这里之举例此功能的商品添加功能。
(2)功能
表5-2模块设计表2
程序名称相关数据库表输入输出
程序处理说明
商品信息添加Products 表商品信息商品信息记录
1. 输入商品详细信息2. 验证输入合法性
3. 将该记录插入用户表
(3)商品添加程序流程图如下
开始
输入商品信息
否
Js 脚本验证合法性是商品信息
添加到数据
库
是否成功
否
是
添加成功!
添加失败!
结束
5.3.3出库单管理模块设计说明
(1)程序描述
该模块用于对使用该系统的商品出库进行处理,此商品销售出库模块与商品进货入库模块这两部分是本系统的核心功能,每个仓库管理系统最核心的操作就是对库存的增加与减少,本设计说明之举例商品的出库功能。
(2)功能
表5-2模块设计表2
程序名称相关数据库表输入输出
程序处理说明
出库单管理Products outpro 表出库信息出库信息记录
1.输入出库信息2.验证信息合法性3.添加到出库表
4.增加相应库存到商品表
(3)用户管理程序流程图如下
开始
输入出库单信息
否
Js 脚本验证合法性是出库详细信息
添加到出库
表
修改库存数
量
是否成功
出库失败!
是否成功
否
是
添加成功!
删除新添加出库表中信
息
结束
5.4界面设计
5.4.1界面设计原则
(1)一致性原则。人机界面设计要尽量使每个页面除了主要内容外的设计是一致的,增强页面间的一致性,统一界面风格。
(2)信息记忆性原则。人机界面设计要尽量减少使用者的记忆负担,采用有助于记忆的页面信息设计方案。
(3)帮助和提示原则。要对用户的操作命令作出相应的反应,帮助用户正确地处理问题。在系统处理工作时要有相应的提示,尽量把主动权让给用户,例如删除功能,要提示用户是否确定要删除该条记录。
5.4.2数据输入界面设计
数据输入界面往往占终端用户最多的使用时间,也是计算机系统中最容易出问题的部分之一。其总目标:简化用户的工作量,并且尽可能降低出错率,除此之外还要容忍用户疏忽或错误。这些要求在设计实现时可采用多种方法:
(1)尽可能减轻用户记忆,采用列表或下拉框来选择。对共同输入内容设置默认值;使用代码和缩写等;系统自动记录用户已输入过的内容。
(2)使界面有一致风格的数据输入界面。
(3)防止用户出错。对删除必须再一次确认,对严重的错误,要警告并退出。对空值输入,要给出相应的提示;在输入框中也有限制,限制可输入的字符类型。
(4)提供反馈。要使用户能查看已输入的内容,并提示有效的输入回答。
(7)若条件具备,在数据输入界面尽可能采用自动输入。
5.5界面显示
由于本系统的界面繁多,有很多界面都是类似的,因此选择了一些有代表性的界面进行说明。
5.5.1系统登陆界面
登陆界面提供了一个给系统用户进入商店库存管理系统的一个入口,必须输入正确的账号和密码才能进入系统,每个用户名在系统中只能唯一存在。如图5-15
所示:
图5-15商店库存管理系统登陆界面
5.5.2系统主界面
在登陆界面上输入正确的帐号、密码之后,进入商店库存管理系统。如图5-16所示,主界面是一个产品搜索界面,单击左边的菜单,可以显示对应的子菜单,直观的看
出该菜单下所拥有的功能。
图5-16商店库存管理系统主界面
5.5.3商品管理界面
在左边菜单栏选择相应的子菜单单击进入后,右边的窗口显示如下的界面,这是一个商品管理的界面,直观的看出所有商品的信息,数据量超过设定的10条会在下一页中显示。其中每一条记录后面有两个操作,分别是修改和删除,点击修改后,界面会跳到相应的修改界面,点击删除后,网页前端会进行一个js 脚本的确认框,点击
确定则删除,点击取消责取消删除动作。
图5-17
商品管理的界面
图5-18商品添加的界面
5.5.4添加入库单界面
该模块用于对使用该系统的商品入库进行处理,此商品销售出库模块与商品进货入库模块这两部分是本系统的核心功能,通过添加相应的信息把入库单写入进货入库
表,然后修改商品表相应的库存量。
图5-19入库进货单界面
5.5.4数据统计界面
此界面为数据统计功能模块下的查看销售记录功能,点击昨日销售清单,下面的列表会显示出昨日所有售出的商品信息。此外还可以按日期区间查询,选择比如从5月1号至5月10
号的信息,系统会列出相应日期内的所有销售信息。
图5-20数据统计-昨日销售单界面
5.5.4数据统计界面
此界面为数据统计功能模块下的查看销售记录功能,点击昨日销售清单,下面的列表会显示出昨日所有售出的商品信息。此外还可以按日期区间查询,选择比如从5月1号至5月10
号的信息,系统会列出相应日期内的所有销售信息。
图5-21数据统计-昨日销售单界面
图5-21
数据统计-按日期区间查询销售单界面
图5-22数据统计-按日期区间查询结果界面
6总结
断断续续地经过将近半年的调查、学习、研究和设计,系统的开发已经大功告成,之前对于PHP 语言几乎一无所知,因为想做一个B/S架构的系统,所以我是边学边做,虽然依靠我有限知识或者说学习能力制作出来的软件和想象中的还是有些差距,理想很丰满现实很骨感,虽然骨感,但至少是一份完整的系统,至少这是对自己一次能力的提升和信心的积累。现将总结如下:
(1)系统的功能基本达到预想的设计要求,系统中各个模块的核心功能都有实现。
(2)系统模块划分比较明确,模块功能设计有较强的针对性。
(3)体现出了B/S架构下系统的优势,界面比较美观,而且也最大限度地保持了各页面的一致性。
由于实践经验的不足,系统还有一些地方亟待完善,是截至本次毕业设计结束还未解决但已意识到的不足:
(1)最开始计划用ext 来做这种b/s架构的管理系统的界面,ext界面的整洁布局天生就适合做这样的管理系统,可是因为在ext 还没学习完成之前,迫不及待地就对系统开始动工,最后也是不了了之。
(2)同样的,没有把之前期待的AJAX 无刷新技术融入到系统中,确实是一个很大的遗憾,学了一段时间AJAX,真正要用的时候还是无从下手被系统繁琐的关系给击败,无奈放弃。
(3)很想把商品信息加入有不同单位的储存,感觉这样更接近现实,虽然这只是一个便利商店的库存系统,但是同一件商品也是有可能有大小不同单位的,至少这样会更方便用户使用,这也是几乎所有库存系统都没有体现出来的,可是在想破脑筋之后还是没能相出一个完美的解决方案。
(4)没有把‘盈利’的统计做出来,不知道要怎么去计算这个统计会比较合适,一种是计算每一件售出的商品的进价和售价差,另一种是比如这个月进货的总金额和这个月出售总金额的差。这两种方案都不完美,最后也只能告吹。
(5)有些可有可无的功能摒弃掉了,比如权限和备份。权限问题是我觉得这种小商店系统没必要做权限,备份的问题是一方面不是很有必要,另一方面技术能力也有限。如果能做出来系统肯定会更家完善,这点也很遗憾。
通过这次毕业设计对库存管理系统的了解,我觉得要使商店库存管理系统在商店库存管理中发挥其应有的效果,就要不断地拓宽商店库存管理信息系统在商店库存管理中的应用范围、增强商店库存辅助工具的智能化运用,使商店库存管理信息系统真正成为管理的助手。因此,从商店库存管理信息系统应用范围的趋势看,应大力开发与互联网相连的实时商店库存计划管理软件,也就是要实现商店库存数据的准确性和实时性,才能准确判断理财方向。以往通过人工去计算统计,还有赖于对有关资料的收集、记录和分析,十分繁琐。若是有了软件程序使用计算机就可以完成计算机实时统计,以便用户在掌握所需情况后,有的放矢地制订出商店库存的计划和进货调整计划等等,通过信息反馈系统,计算机还可做出统计分析,数据表分析,并且能够提供商店库存有关利润、升值空间等具体的分析情况。开发出这样的计划管理系统软件,是商店库存趋于自动化必然趋势。
总之,对商店库存管理信息系统应用及其发展趋势的认识,应持机遇与挑战并存的态度。商店库存信息化、智能化是社会科技进步赋予家庭及其财务管理软件的历史必然,是人类社会进入21世纪之后,所要经历的必由之路。但人类社会要全面实现电脑社会,矛盾也是客观存在的,将传统与进步结合、迎接挑战,探索适合商店库存管理信息系统管理的新路,是以后商店库存软件开发方向应该追求的目标。
总体来说毕业设计做到现在这个成果,个人而言已经是比较满意,虽然运用了大部分以前学习的知识,包括HTML、SQL 的基本运用,但核心的开发语言PHP 毕竟是现学现卖。还有必须感叹一下网络的强大,可以让我在用一种全新的开发语言且没有去专门上课学习的情况下独立完成这样一个系统,虽然也必须感叹一下其中艰辛的过程,但我相信只要有毅力,有信念,最可以做到最好!本次毕业设计对我个人来说的意义是巩固了所学知识,又了解、学习了全新的知识和技术,并且在开发这样一款库存系统的同时,对商店的营销运营有了一定的了解,另外又磨练了我的意志和增强了我学习的主动性!真可谓一举多得!这次毕业设计十分有意义!
致谢语
大学生涯里,我学到的不仅仅是书本上的知识和技术,还学到了做人应该学会感恩,要怀有一颗感恩的心,此次的毕业设计系统部分能顺利完成,离不开指导老师的建议和指引,毕业论文更是导师不厌其烦地跟我说明论文的格式,给了我很大的帮助!导师平易近人,但是谈到学习工作上的事又很认真,无论在理论上还是在实践中,都给与我莫大的帮助,使我得到很大的提高。这对于我以后的工作和生活都有一种巨大的推动作用!因此,在这里我要郑重地感谢我的导师!。
感谢在整个开发过程中的各个阶段给予一些意见和帮助的同学朋友们,因为有你们才能使我的开发更顺利,系统的界面更加完美,功能更加完善。
至此,本课题圆满完成,感谢福建工程学院给予了这个学习机会,让我从中学习到很多很多,并更加体会到了软件变成开发的乐趣,并可能因此而让我终身受益。再次感谢导师和给予我过帮助的人们,今天毕业设计的完成因为有你们,明天、后天、未来的人生路上更缺少不了你们!怀着一颗感恩的心,我的大学生涯也即将落下帷幕,人生奔向更美好的明天!
参考文献:
[1]陶飞飞、李明.Web 程序设计[M ]. 北京交通大学出版社出版社.2009
[2]陆慧恩、张成珠. 实用软件工程[M ]. 北京:清华大学出版社.2006
[3]谭贞军.php 编程新手自学手册. 机械工业出版社.2012
[4]唐豪杰、李承飞.mysql 数据库编程入门到精通[M ]. 中国水利水电出版社.2008
[5]沈磊. 零售业的网络时代. 上海财经大学工商管理学院学报(商业研究) [N ].2007年第5期
[6]郑人杰、殷人昆. 实用软件工程[M ]. 清华大学出版社.2007
[7]李泽建、许亮. 浅析多媒体数据库技术的发展和展望[N ]. 昆明理工大学学报(理工版).2007年2月
[8]Nicholas C.Zakas.JavaScript PD(第二版).NCZonline.2010
[9]Luke Welling 、Laura Thomson. php 和mysql 开发(原书第4版) [M ]. 机械工业出版社.2010
[10]陈湘扬, 陈国益. PHP5+MySQL网页系统开发设计. 北京:电子工业出版社,2007.
[11]邹天思, 孙鹏. PHP 从入门到精通. 北京:清华大学出版社,2010.
[12]DAVID LANE[美].PHP&MYSQL WEB 数据库应用开发指南[M].南京:东南大学出版社,2009。
[13]MIHAI BUCICA[美].AJAX与PHP WEB 开发[M].北京:人民邮电出版社,2011。
附录:
关键代码与算法:
登录:
include_once("../db/conn.php");
$sql="SELECT COUNT(*)FROM users WHERE usernames ='{$_POST['names']}'AND pwd ='{$_POST['pwd']}'";
$conn=mysql_query($sql);
$row=mysql_fetch_array($conn);
if ($row[0]
exit("用户名或密码错误, 请返回重试!");
}else{
session_start();
$_SESSION['names']=$_POST['names'];
header("Location:./manage.php");
}
?>
商品搜索算法:
//$brand=$_POST['brand'];
//$code=$_POST['code'];
$type=$_POST['type'];
$name=$_POST['name'];
if($name==''){$sql="SELECT *FROM products WHERE type like '%{$type}%'";}
products WHERE name like '%{$name}%'";}
products WHERE type like '%{$type}%'&&nameelse if($type==''){$sql="SELECT *FROM else{$sql="SELECT *FROM
like'%{$name}%'";}
$query=mysql_query($sql);
$num=mysql_num_rows($query);
if ($num
echo "";
}else{
while ($row=mysql_fetch_array($query)){
if (!$a){
$a="a";
}else {
$a="";
}
echo "
";
}
}
}
?>
商品管理里的显示与分页:
include_once("../db/conn.php");
$perNum=10;//每页显示数
$page=$_GET['page'];
$offset=($_GET['page']-1)*$perNum;
if ($offset
$offset=0;
}
$sql="SELECT *FROM products LIMIT {$offset},{$perNum}";
$query=mysql_query($sql);
while ($row=mysql_fetch_array($query)){
if (!$a){
$a="a";
}else {
$a="";
}
//print_r($row);
echo "
";
}
?>
{$row[3]} | {$row[1]} | {$row[2]} | ||||||
{$row[3]} | {$row[1]} | {$row[2]} | {$row[5]} | {$row[4]} | {$row[6]} | {$row[7]} | {$row[8]} |
[修改]| delconfirm();\">[删除] |