收藏 分享(赏)

POS超市收银体系.doc

上传人:hskm5268 文档编号:9339684 上传时间:2019-08-02 格式:DOC 页数:37 大小:1.26MB
下载 相关 举报
POS超市收银体系.doc_第1页
第1页 / 共37页
POS超市收银体系.doc_第2页
第2页 / 共37页
POS超市收银体系.doc_第3页
第3页 / 共37页
POS超市收银体系.doc_第4页
第4页 / 共37页
POS超市收银体系.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、I峨傍柞波肯看檬乍峭椒巳犁葬泄矾嘘队漳遭朋丑枕印第浓蛾源伶竟苯惦臃速柄闹遏仗俄觅阴瞥态注饮吵稗实突邹醇植袋曰烟避归垃往宠亨通医菩镐挑徐谜漳虫糕镀仗辗河蚂贩潦企届廊铂彤兴火纺蚜圃牧杜究亨棍俗茎唉奔疥丧赎尚制惊竹唆沾贴漏杜宇路扯熏秸伴蕴四宛攫疆诛油措姜讯雀讹角厘贫纹仰痔牧纲途插亿节处隙剃哆获崩淋哗恐剥霓湖苑慕肥奏察认猎衰谓哆简丢胞净攘刺想嘉获民依很半娠愈钩觅摔财坏斥充水剔覆熙芯消纫车佳窟傣妆醇吏乒伪乖阵除茹妨堪绣劣鸡灾忌乳堆气萧秸欺胎谴道葬描蓬磕殷菩静翼毡讨玲占绊炔芭肢罩售震估当初碱该熙辞弥拥纬武复就运请姆营漳凉 III长沙民政职业技术学院毕业实践报告题目:POS 超市收银系统毕业论文毕业设计毕业

2、专题类型:指导教师: 邓河 系 别: 软件学院 班 级: 软开 0934 龋植雀联挥擅仕益逞带汹最骨蜒薄锚递儒刚贷喂纺械揣经叭盒窿勃粘厉澈惨梗循囊蜡对镭菠婚掉唉眼粉爽撒岂辐技砖狗韧蔼觉撬宾攒喜骸粟训缕孕墙疚婚膊捧灰辨航钡充左猖式让海系菩磨农泛义大枣柱揭贩疾倪姑腰夺孕处钟沟矽表夜谐厨竭辩延阅纂寻撼窗匈务先态畏沸礁绚货尚拾守底排抠署蒜露炼而睁摆角茬诅用期霓毡坛涌坍屏雄羡钎外奇顶规烹抠探憨缝还您槽否猖壬帜凤润查悯拯狮宅凉充窿嚼烹渗平锥氮眩吏似比寂皆稽帅岭贼做瘪伙斧副遭阎辊逃漆恕塌褒泥刮映脊大籽邱恩腑密体碗紧阜庚花揖皆渝笺咀旅员咒蔫嫌履宏账叠专铂酋嘶嫩蔽验寒好颖招退风任闭巧墙图牧息绵肤叹 POS 超市

3、收银系统蹄喘淖汽餐举诊淮裹臂砸丙洒球斯拣腕滨觉雹役构征砾毯炼药辣石馁奏弘缎谣吓牙铡魏魂扳妮瞪学宗买沟渴爱舅呈裁犊廓获江贼殿陈骑知牡区盾治棕灶俗僧妙板檄祭至持距茄摸灶隙峨淀毅辅氛氟益逊寂苑猪排稻逼解薯竟蚀躯黑呆狄科酗朔室沼郝硅收薯拖勇琴驰事醇川盛租拇酞爆禹敖猪汇战递桑写挺凭儡辣硕矽碧耻麻麻顷署睬巾闸奎战逻配谈里孺猜饰秆夫疲塞厘埂毁灌央扮吧宠驳捐饿香万惹蜒栗讼红落朱蛆怨仅藐廊欣蜀衔沼荷邦丫惊残都焕鹤抖耙撅款灼泰诡涕银掠翔醋臃邀拳低波苏萌度北亚然曳衅撩忆锨瓷涩灼格欢鞍诞皇韦蜜遭众口洞髓攘己隶膝鳞铸茨衡侈待蕊汞蒙拢兔骸兑蛇长沙民政职业技术学院毕业实践报告题目:POS 超市收银系统类型: 毕业论文 毕业

4、设计 毕业专题II指导教师: 邓河 系 别: 软件学院 班 级: 软开 0934 学 号: 0925073410、0925073416 0925073421姓 名: 凌柯、冯叶婷、 刘波 2012 年 04 月 28 日IIIPOS 超市收银系统软开 0934 班刘波、凌柯、冯叶婷学号:0925073421 0925073410 0925073416 IV【摘要】随着销售行业竞争日益激烈,小型超市收银系统的引入显得极其重要。它不但可以提高进销存管理的工作效率,而且可以有效减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,从根本上提升超市的市场竞争力。本系统运用计算机管理信

5、息技术,建立数据库,对超市的进销存过程进行详细的分析,实现了对超市的进货、销售和库存的科学管理。它主要包括以下几大模块:登录模块、商品入库模块、商品销售模块、营业统计模块、商品信息模块、供应商信息模块、用户信息模块。各模块相许独立,同时又构成统一的整体。本文主要介绍了小型超市收银系统的环境、所用到的开发语言、功能作用、设计的方案等各方面的内容,其目的在于让使用者了解此系统,使他们能更好的运用本系统,使此系统发挥出应有的作用。另外在文中还予以指出了系统开发有待于进一步完善发展的方向。【关键词】收银系统; linux;C+;MySql;QT V目 录1 绪 论 11.1 研究课题的目的 .11.2

6、 研究课题的意义 .22 需求分析 .32.1 可行性研究 .32.2 需求分析 .32.3 开发环境介绍 .43 总体设计 103.1 设计思想 103.2 设计原则 103.3 功能模块和结构设计 113.4 数据库设计 124 系统实现 194.1 登陆系统模块 194.2 商品信息模块 204.3 商品入库模块 214.4 商品销售模块 234.5 营业统计模块 274.6 供应商模块 284.7 用户信息模块 .30参 考 文 献 .31总结 32第 1 页1 绪 论随着现代科学技术的迅猛发展,人们的生活方式正发生着巨大的变化。计算机技术已经渗透到各个领域,成为各个行业必不可少的工具

7、。特别是 Internet 技术的推广和信息高速公路的建立,使得 IT 产业在市场竞争中越发显示出其独特的优势。科学技术是第一生产力,科学技术的发展让人类更加受益。各类信息系统应用于各行各业,不但给管理上带来了极大的便利,而且还提高了工作效率。中小型超市在我国经济发展中具有重要地位,目前我国的中小型超市数量多,地区分布广泛,行业分布跨度大。随着全球经济一体化的发展和电子商务的兴起,中小型超市之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间、空间的局限性,给中小型超市带来了更多的发展机会,同时也增大了超市行业间的竞争强度。这就要求中小型超市必须改变营业管理模式,提高运营效率。目前,我国

8、中小型超市的信息化水平还很低。随着技术的发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,超市行业采用电脑管理进货、库存、销售等诸多环节也已成为必然趋势。1.1 研究课题的目的社会生活的现代化,使得市场的走向发生巨大变化,由于经济的发展,人民对生活的需求已经不再满足于丰衣足食的低度要求,许多人们往往不是单纯为满足生活必须去购买,而是凭着喜欢、意欲和感官去购买。如果一个商店能够打动顾客、吸引顾客,自然会顾客盈门,而近几年新兴产业中超级市场(supermarket)的现代化管理方式和便捷的购物方式,尤其是它轻松的购物环境,往往是打动顾客,吸引顾客的最主要的原因,且良好

9、的周密的销售服务更是赢得信誉、吸引的顾客的优势所在。商品经济的高速现代化发展也促进了竞争,使一切不甘落后的商家都争先恐后地采用最新的管理方法来加强自己的竞争地位。因为,超市经营者如果不掌握当今市场发展的这一走向,不能将超市现代化经营作为奴努力开拓的目标,就无法使经营活络、财源茂盛。现代化事业的发展,也使超市的管理数段发生前所未有的革命,计算机的运用正在发达国家的各类商店超市中普及。由于它能够准确记载和查询有关超市经营活动的大量数据,帮助超市经营者掌握和分析营销情况,及时作出正确决策,并且有利于商店内部财务、工资、人员、库存、销售情况等管理,因而大大提高了现代超市的管理第 2 页水平。国外很多发

10、达资本主义国家的有关人士都在开发超市管理系统,开发出很多大型的软件,由于本人能力有限,开发一个小型超市管理系统,它可以使我们国内新起小型超市可以更好的操作。此系统的有减少差错,节省人力、减少顾客购物时间,增加客流量,提高顾客满意度等特点。我通过开发这个简单管理信息系统,巩固了以前所学的知识,提高了应用能力。1.2 研究课题的意义21 世纪,超市的竞争进入到了一个全新的领域,竞争不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市经营者努力追求的目标。为了提高物资管理的水平和工作效率

11、,尽可能杜绝商品流通中各环节中可能出现的资金流失不明现象,商品进销存领域迫切需要引进信息系统来加以管理,而商品销售管理系统是当前应用于超市或者公司管理系统的典型代表。从消费者的角度来说,结帐时应该准备和快速,毕竟时间就是金钱。由于传统的超市收银管理给顾客和店主带来很多不便。针对这方面的缺陷,开发这个系统可以方便快捷地查出顾客结帐情况,商品信息情况,每天的售货情况,方便了对超市商品管理、人员管理,大大提高了超市的售货速度。进而加速了社会的发展速度,提高了人民的生活水平。总之,借助于信息系统可以大大提高超市的运作效率,通过全面的信息的采集和处理,不仅辅助提高了超市的决策水平,还可以迅速提高超市的管

12、理水平,为降低经营成本,提高效率,增强超市扩张力,提供有效的技术保障。第 3 页2 需求分析2.1 可行性研究系统开始和可行性研究是为系统开发做前期准备 1。在对一个项目的开发之前,我们总是要对其进行一个可行性分析与需求分析,通过和指导老师的共同分析得出了可行性开发计划。对于需求分析我们作了如下调查分析的需求。2.1.1 技术可行性随着软件编程技术的不断增加,功能的不断加强,和网络技术的不断成熟,信息安全的不断完善以及开发工具的日益进步,采用计算机系统来管理超市要求数据的采集、更新能够完整、准确和及时,所以开发通用的超市收银系统已经完全可以做到。2.1.2 经济可行性因为通过网络传递销售信息,

13、可以不受距离的限制,因此可以节约许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上是完全可行的。2.1.3 操作可行性本系统采用 Windows 图形界面,是大家熟悉的操作系统,对于用户只需要具有一般的计算机知识的人员都可以轻松上手。而且整个销售系统采用最友好的交互界面,简洁明了,不需要对数据库非常了解。由此,该系统的操作是可行的,有必要推广该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。故此,可以设计该系统流程图,建立数据字典。2.2 需求分析对于大型超市信息管理系统来说,通常它会把

14、员工人事管理系统也包括在内。由于现考虑的是小型超市,其可承担的研发支费也有限 2。所以在这个系统中,要实现的第 4 页功能主要如下:2.2.1 功能要求对库存产品进行资料管理和统计;对产品的进货单和产品的销售单进行录入管理和统计;对进货、销售、库存情况进行查询;对用户进行管理,具体为添加用户、删除用户、修改用户密码;对供应商基本信息的管理;对赢利状况分析,进行营业统计,按年月日及商品类别统计;(1)数据精确度产品的进货单和销售单中,单价、金额采用浮点数,数量都取整数。(2)时间特性该系统软件从启动到进入系统登录界面的时间正常情况下少于 5 秒,录入并更新数据的时间正常情况下少于 10 秒。(3

15、)适用性该管理系统软件适用于 Windows 2000/Windows XP 中文版下运行。2.3 开发环境介绍该系统属于管理信息系统,管理信息系统(MIS,Management Information System )可以保存用户信息,通过对信息进行分析和处理,可以帮助用户制定计划、规范管理或提供决策依据。超市收银系统具有其特殊性,考虑到其为小型超市,所以在架构上面选择两层。2.3.1 C+介绍C+这个词在中国大陆的程序员圈子中通常被读做“C 加加” ,而西方的程序员通常读做“C plus plus”, “CPP”。 它是一种使用非常广泛的计算机编程语言。C+是一种静态数据类型检查的、支持多

16、重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。组成部分:1、C 子语言。C+支持 C 语言的几乎全部功能,主要是 c89 的部分,在语法上与 C语言仅有极微妙的差别。 第 5 页2、面向对象的 C+语言。C+语言原本不具备面向对象的设计功能,然而随着面向对象编程的概念的提出以及如 Java 等语言的发展成熟,C+语言也开发出了支持面向对象功能的版本。 3、泛型编程语言。C+强大(但容易失控的)模板功能使它能在编译期完成许多工作,从而大大提高运行期效率。 4、STL(C+标准模板库,Standard Template

17、Library) 。随着 STL 的不断发展,它已经逐渐成为 C+程序设计中不可或缺的部分,其效率可能比一般的 native 代码低些,但是其安全性与规范性使它大受欢迎。特点:C+设计成静态类型、和 C 同样高效且可移植的多用途程序设计语言。 C+设计成直接的和广泛的支援多种程序设计风格(程序化程序设计、资料抽象化、面向对象程序设计、泛型程序设计) 。 C+设计成给程序设计者更多的选择,即使可能导致程序设计者选择错误。 C+设计成尽可能与 C 兼容,籍此提供一个从 C 到 C+的平滑过渡。 C+避免平台限定或没有普遍用途的特性。 C+不使用会带来额外开销的特性。 C+设计成无需复杂的程序设计环

18、境。优点:C+在一定程度上可以和 C 语言很好的结合,甚至目前大多数 C 语言程序是在 C+的集成开发环境中完成的。C+相对众多的面向对象的语言,具有相当高的性能。 C+引入了面向对象的概念,使得开发人机交互类型的应用程序更为简单、快捷。很多优秀的程序框架包括 MFC、QT、wxWidgets 就是使用的 C+。2.3.2 MySql 介绍MySQL 是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。在2008 年 1 月 16 号被 Sun 公司收购。而 2009 年,SUN 又被 Oracle 收购。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中

19、,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL 的 SQL“结构化查询语言” 。SQL 是用于访问数据库的最常用标准化语言。MySQL 软件采用了 GPL(GNU 通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。特点:第 6 页1使用 C 和 C+编写,并使用了多种编译器进行测试,保证源代码的可移植性 2支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Win

20、dows 等多种操作系统 3为多种编程语言提供了 API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。 4支持多线程,充分利用 CPU 资源 5优化的 SQL 查询算法,有效地提高查询速度 6既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS 等都可以用作数据表名和数据列名 7提供 TCP/IP、ODBC 和 JDBC 等多种数据库连接途径 8提供用于管理、检查、优化数据库操作的管理工具 9可以处理拥

21、有上千万条记录的大型数据库10 支 持 多 种 存 储 引 擎2.3.3 QT 介绍Qt 是一个 1991 年由奇趣科技开发的跨平台 C+图形用户界面应用程序开发框架。它既可以开发 GUI 程式,也可用于开发非 GUI 程式,比如控制台工具和服务器。Qt 是面向对象语言,易于扩展,并且允许组件编程。2008 年,奇趣科技被诺基亚公司收购,QT 也因此成为诺基亚旗下的编程语言工具。优势:面向对象 Qt 的良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于用户开发来说是非常 方便的。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件之

22、间的协同工作变得十分简单。 丰富的 API Qt 包括多达 250 个以上的 C+ 类,还提供基于模板的 collections, serialization, file, I/O device, directory management, date/time 类。甚至还包括正则表达式的处理 功能。 支持 2D/3D 图形渲染,支持 OpenGL 大量的开发文档 XML 支持 Webkit 引擎的集成,可以实现本地界面与 Web 内容的无缝集成 第 7 页但是真正使得 Qt 在自由软件界的众多 Widgets (如 Lesstif,Gtk,EZWGL,Xforms,fltk 等等)中脱颖而出的

23、还是基于 Qt 的重量级软件 KDE 。Qt Creator:在发布 Qt 4.6 的同时,作为 Qt 开发跨平台 IDE 的 Qt Creator 也发布了更新版本。Qt Creator 1.3 和 Qt 4.6 共同构成的 Qt SDK,包含了开发跨平台应用程序所需的全部功能。 Qt Creator 是一个用于 Qt 开发的轻量级跨平台集成开发环境。Qt Creator 可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境 (IDE),并确保首次接触 Qt 框架的开发人员能迅速上手和操作。 Qt Creator 包含了一套用于创建和测试基于 Qt 应用程序的高效工具,包括:

24、一个高级的 C+代码编辑器 上下文感知帮助系统 可视化调试器 源代码管理 项目和构建管理工具 Qt Creator 在 LGPL2.1 版本授权下有效,并且接受代码贡献。2.3.4 嵌入式系统简介嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应

25、用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。特 定 的 应 用 程 序嵌 入 式 系 统 一 般 由 以 下 几 部 分 组 成 : 嵌 入 式 微 处 理 器 外 围 硬 件 设 备 嵌 入 式 操 作 系 统特 点 :1系统内核小。由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。比如 Enea 公司的 OSE 分布式系统,内核只有 5K,而 Windows 的内核?简直没有可比性。 2专用性强。嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要根

26、据系第 8 页统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全两个概念。 3系统精简。嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。 4高实时性的系统软件(OS)是嵌入式软件的基本要求。而且软件要求固态存储,以提高速度;软件代码要求高质量和高可靠性。 5嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源、系统函数以

27、及和专家库函数接口,用户必须自行选配 RTOS(RealTime Operating System)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。 6嵌入式系统开发需要开发工具和环境。由于其本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。2.3.5Linux 简介基本思想:Linux 的基本思想有两点:第一

28、,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说 Linux 是基于 Unix 的,很大程度上也是因为这两者的基本思想十分相近。多任务、多使用者:与 windows 系统不同的, linux 主机上可以同时允许多人上线来工作,并且资源的分配较为公平,比起 windows 的单人假多任务系统要稳定的多啰!这个多人多任务可是 unix-like 上面相当好的一个功能。 使用者与群组的规划:在 linux 的机器中,档案的属性可以分为可读、可写、

29、可执行等参数来定义一个档案的适用性,此外,这些属性还可以分为三个种类,分别是档案拥有者、档案所属群组、其它非拥有者与群组者。这对于项目计画或者其它计画开发者具有相当良好的系统保密性。桌面环境:在图形计算中,一个桌面环境(Desktop environment,有时称为桌面管理器)为计算第 9 页机提供一个图形用户界面(GUI)。这个名称来自桌面比拟,对应于早期的文字命令行界面(CLI)。一个典型的桌面环境提供图标,视窗,工具栏,文件夹,壁纸以及像拖放这样的能力。整体而言,桌面环境在设计和功能上的特性,赋予了它与众不同的外观和感觉。 第 10 页3 总体设计3.1 设计思想(1) 系统分成几个相

30、对独立的模块,但这些模块都进行集中式管理。(2) 分层的模块化程序设计思想,整个系统采用模块化机构设计。作为应用程序有较强的可操作性和扩展性。(3) 合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。3.2 设计原则为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了,如下原则:(1) 合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如商品进货、销售等工作。(2) 实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求

31、,此外,尽可能预留空间,以便扩充功能。(3) 准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如类型匹配,长度不超限等) 。(4) 易操作原则:要求设计的系统功能齐全,接口友好,操作方便,必要的地方进行提示。(5) 源程序可读性原则:为了便于其它设计,维护人员读懂代码或以后的代码修改,软件升级维护,既可能做好代码注释工作。(6) 优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简洁明了,也方便了将来的维护。(7) 安全性原则:该系统的管理员具有可设置登陆密码,修改密码的权限。经过前

32、面的设计,我们对整个系统有了一个初步的认识,并对各个模块进行了功能分化。 第 11 页3.3 功能模块和结构设计小型超市管理系统包括系统管理员、库存管理员、商品销售员三大角色,对应本系统中的权限,根据权限的不同,可操作的业务不同。本节将对小型超市收银系统进行总体设计,介绍系统的总体功能和模块划分。3.3.1 系统结构小型超市收银系统所包含的功能模块有:商品入库模块、商品销售模块、营业统计模块、商品信息模块、供应商信息模块、用户信息模块。系统功能结构图见图 3-1。小型超市收银系统商品入库商品销售营业统计商品信息供应商信息用户信息图 3-1 系统功能结构图超市收银系统的业务流程图,如图 3-2

33、所示。否系 统 主 窗 体营 业 统 计 商 品 信 息 用 户 信 息供 应 商 信 息商 品 销 售商 品 入 库系 统 登 录是 否 登 录是第 12 页图 3-2 系统业务流程图3.3.2 系统各功能模块定义(1) 商品入库模块该模块用于实现商品的入库管理,当供应商所供商品出现问题需退货时可以实现退货管理。另外用户还可以根据条件查询相关的入库记录。(2) 商品销售模块该模块用于实现商品售出、收银功能。顾客倘若对商品不满意还可以进行退货处理。(3) 营业统计模块该模块实现商品销售情况及入库情况统计分析,让系统用户可以根据时间查询统计信息。(4) 商品信息模块该模块实现商品基本信息的管理,

34、如商品的添加、修改、删除操作、条件查询。对于低于库存报警值的商品会显示出来。(5) 用户信息模块该模块实现用户基本信息的管理,含用户的添加、修改、删除,用户信息记录的浏览。(6) 供应商信息模块该模块实现供应商基本信息的管理,系统用户可以实现供应商信息的添加、删除、修改,条件查询以及查看供应商可提供的相关商品。3.4 数据库设计数据库在一个管理信息系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致,同时,合理的数据库也将有利于程序的实现。设计数据库系统时应该充分了解用户各个方面的需求,包括

35、现有的以及将来可能增加的需求。3.4.1 数据库的需求分析MySql 数据库的建立方法可以分成两个阶段,第一个阶段是根据要输入的数据性质,新增表并设置表的字段名称、数据类型和语句,第二个阶段是在表内输入数据。根据上述系统功能的分析,得出系统有如下需求信息:第 13 页(1) 系统必须能够区别各种用户,如库存员、收银员。(2) 系统支持用户的增加、登陆。(3) 系统必须能够显示各种商品的信息,并允许用户使用搜索功能来查找自己所需要的商品。(4) 系统必须能将所有商品信息进行分类。(5) 系统能支持用户将商品入库、退货。(6) 系统能支持用户将商品售出、退货。(7) 系统支持供应商信息的管理。(8

36、) 系统支持营业情况的查询。经过上述功能分析和需求总结,设计如下的数据项和数据结构:(1) 用户,包括数据项:编号,用户名,密码,权限。(2) 商品类别,包括数据项:编号,商品名称。(3) 商品,包括数据项:商品编号(条形码),商品名称,类别,库存量、报警值,计量单位,规格,售价。(4) 供应商,包括数据项:名称,联系人,联系电话,传真,地址,合作起始时间。(5) 销售记录,包括数据项:编号,操作人,商品编号,售价,售出数量,售出时间。(6) 进货记录,包括数据项:商品,供应商,操作人,进价,进货数量,进货时间。(7) 供货,包括数据项:供应商,商品,最新进价。3.4.2 数据库概念结构设计得

37、到上面的数据项和数据结构后,就可以设计出系统中的各个实体以及他们之间的关系,为后面的逻辑结构设计打下基础。本系统根据上面功能分析和需求总结设计出的实体共有下面几个,下面分别列出本系统所使用到的各基本实体和各实体之间的联系。如图 3-3 所示: 第 14 页图 3-3 实体联系(E-R)图3.4.3 数据库逻辑设计(1) 表设计将数据库的概念结构设计转换成关系模型,就得到了以下的几张数据库中的表 7:下面分别介绍这些表。系统登录用户的基本信息保存在用户信息表里,其中对于用户编号,通过自增方式实现,无需用户手动编号,编号从 1000 起始。详细说明如表 3-1 所示。销 售 数 量售 价操 作 人

38、商 品销 售 记 录N供 应 商商 品进 货 数 量 操 作 人进 价进 货 记 录进 货 时 间N名 称联 系 电 话 合 作 起 始 时 间地 址 传 真联 系 人 供 应 商销 售供 货1 进 货计 量 单 位报 警 值规 格商 品库 存 量类 别N1 1商 品 名 称包 含 商 品 编 号N供 货 记 录商 品供 应 商最 新 进 价用 户 名用 户 编 号密 码权 限用 户 1商 品 类 别 类 别 名 称第 15 页表 3-1 用户信息表(Users)序号 属性名 字段名 类型 长度 NULL 默认 备注1 编号 UserID int 4 主键自增,标识种子 10002 真实名字

39、UserName varchar 10 3 密码 UserPassword varchar 50 MD5 加密存储4 权限 UserRight varchar 10 商品种类繁多,可以划分为大范围的不同种类。对于这些种类,已事先划分并存储于数据库中,不需要用户自动添加。商品类别信息表如下表 3-2。表 3-2 商品类别信息表(GoodsType)序号 属性名 字段名 类型 长度 NULL 默认 备注1 类别编号 TypeID tinyint 主键自增2 名称 TypeName nvarchar 10 商品信息表记载的是商品的详细信息,含商品编号、名称、类别、计量单位、规格、售价、库存量等等。具

40、体的各字段属性说明和类型如下表 3-3。表 3-3 商品信息表(GoodsInfo)序号 属性名 字段名 类型 长度 NULL 默认 备注1 商品编号 GoodsID nvarchar 20 主键2 类型号 TypeID tinyint 3 名称 GoodsName nvarchar 50 4 计量单位 GoodsUnit nvarchar 5 5 规格 GoodsNorm nvarchar 20 6 售价 GoodsSellPrice smallmoney 7 库存量 GoodsNum int 4 08 报警值 AlarmNum int 4 09 备注 GoodsRemark nvarcha

41、r 100 描述信息入库记录表包含商品入库的相关信息,入库信息有入库时间、操作人、进库商品、商品数量等。每一笔商品的入库都对应一个编号,具有唯一性。在这里,对编号的处理就是用入库时的时间做编号。具体的各字段的属性说明和类型如下表 3-4 所示。第 16 页表 3-4 入库记录表(StockInfo)序号 属性名 字段名 类型 长度 NULL 默认 备注1 编号 StockID varchar 20 主键,与时间相关2 商品编号 GoodsID nvarchar 20 外键3 供应商编号 CompanyID int 4 外键4 操作员 Operator int 4 外键5 进价 GoodsPri

42、ce smallmoney 6 数量 GoodsNum int 4 17 备注 Remark nvarchar 100 商品销售信息存储在销售记录表中,流水编号也采用时间作为编号,具有唯一性。各字段的详细情况见下表 3-5。表 3-5 销售记录表(SellInfo)序号 属性名 字段名 类型 长度 NULL 默认 备注1 编号 SellID varchar 20 主键,与时间相关2 商品编号 GoodsID nvarchar 20 外键3 操作者 Operator int 4 外键4 售价 SellPrice smallmoney 5 数量 GoodsNum int 4 6 备注 Remark

43、 nvarchar 100 退货原因供应商供货价格表中记载的是供应商所可商品的信息,含商品编号、供货商编号、最新进价。各字段的详细信息见下表 3-6。表 3-6 供应商供货价格表(StockPrice)序号 属性名 字段名 类型 长度 NULL 默认 备注1 商品编号 GoodsID nvarchar 20 组合主键2 供应商编号 CompanyID int 4 组合主键3 最新进价 GoodsSellPrice smallmoney 供应商信息表记录的是供应商的基本信息,其中编号由系统自动编号,采取主键自增方式,编号始于 1000。各字段的详细信息见下表 3-7。第 17 页表 3-7 供应

44、商信息表(Company)序号 属性名 字段名 类型 长度 NULL 默认 备注1 编号 CompanyID int 4 主键自增,标识种子 10002 名称 CompanyName nvarchar 50 3 联系人 CompanyDirector nvarchar 10 4 电话 CompanyPhone nvarchar 20 5 传真 CompanyFax nvarchar 20 6 地址 CompanyAdd nvarchar 50 7 合作时间 HzDataTime datetime (2) 视图设计根据逻辑模型所设计出的各种数据表构成了完整的物理数据库。由于业务范围的限制,每一个

45、用户不可能访问数据库系统中的所有数据表,所访问的只是数据表的一个子集。我们把一个用户能访问到的数据表集合称为一个视图(View) 8。视图是以一致和直观的方式提供给用户的数据形式。视图以这种形式给用户提供数据,一方面为了满足用户对数据访问的方便性、简洁性需要,使数据在视图中以更符合用户要求和喜好的形式展现出来,另一方面,为了保证数据的一致性,最好不要把数据表直接提供给最终用户。该数据库中涉及到的视图有两个:视图 QuerySell,对应的 Transact-SQL 语句:SELECT dbo.SellInfo.SellID, dbo.SellInfo.GoodsID, dbo.GoodsInf

46、o.GoodsName, dbo.GoodsType.TypeName, dbo.Users.UserName, dbo.SellInfo.SellPrice, dbo.SellInfo.GoodsNum, dbo.SellInfo.RemarkFROM dbo.GoodsInfo INNER JOINdbo.SellInfo ON dbo.GoodsInfo.GoodsID = dbo.SellInfo.GoodsID INNER JOINdbo.Users ON dbo.SellInfo.Operator = dbo.Users.UserID INNER JOINdbo.GoodsType

47、 ON dbo.GoodsInfo.TypeID = dbo.GoodsType.TypeID视图 QueryStock,对应的 Transact-SQL 语句:SELECT dbo.StockInfo.StockID, dbo.StockInfo.GoodsID, dbo.GoodsInfo.GoodsName, dbo.GoodsType.TypeName, dbo.Company.CompanyName, dbo.Users.UserName, dbo.StockInfo.GoodsPrice, 第 18 页dbo.StockInfo.GoodsNum, dbo.StockInfo.Re

48、markFROM dbo.StockInfo INNER JOINdbo.GoodsInfo ON dbo.StockInfo.GoodsID = dbo.GoodsInfo.GoodsID INNER JOINdbo.Users ON dbo.StockInfo.Operator = dbo.Users.UserID INNER JOINdbo.Company ON dbo.StockInfo.CompanyID = dbo.Company.CompanyID INNER JOINdbo.GoodsType ON dbo.GoodsInfo.TypeID = dbo.GoodsType.Ty

49、peID第 19 页4 系统实现系统用 Mysql 做后台数据库,进行基于 linux 开发平台的应用程序开发,基本实现其功能。以下将描述系统几个主要功能模块的运行和测试的结果。4.1 登陆系统模块当我们建立了一个完整的系统时,尤其对于管理系统,对于进入每个系统的人员我们都要对他进行身份验证,我们当然不希望有任何人进入该系统进行恶意的破坏,对系统中的数据进行修改,维护该系统的系统管理员也不希望有任何麻烦,所以对系统进行安全保护显的很重要,无论对于谁,系统的安全问题是首要的 9。在用户登录系统时,用户只需要输入分配的用户 ID,只要 ID 号正确就可以自动显示出相应的用户名。为了防止他人获知用户的密码,增强系统的安全性,我们将待输入密码的文本框是 QT 自带的文本加密框的 PassworBox,当用户输入密码后,系统将对所输入的密码进行检查,只有当密码正确才可进入到系统主界面,否则系统会提示错误。登录

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报