案例超市收银系统_
- 格式:ppt
- 大小:1.42 MB
- 文档页数:29
软件工程课程设计题目:超市前台POS销售系统及后台管理系统专业:班级:学号:姓名:指导老师:目录:一、问题定义 (3)1.系统开发目的 (3)2.背景说明 (3)3.项目确立 (3)4.应用范围 (3)5.名词定义 (3)二、可行性研究 (4)1.管理可行性分析 (4)2.经济可行性分析 (4)3.技术可行性分析 (4)4. 系统初步ER图 (5)5.可行性研究结论 (5)三、需求分析 (5)1. 用户需求分析 (5)2. 系统功能分析 (6)3. 系统结构 (7)4. 流程图 (7)5. 系统ER图 (9)四、设计 (1)1.系统模型: (1)2.模块子系统结构: (3)五、测试 (5)1. 测试过程分析: (5)2 .测试方案: (6)4. 测试结果 (9)5. 评估和建议 (9)六、实现 (10)七、维护 (10)八、总结 (10)一、问题定义1.系统开发目的1.大大提高超市的运作效率;2.通过全面的信息采集和处理,辅助提高超市的决策水平;3.使用本系统,可以迅速提升超市的管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效的技术保障。
2.背景说明21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。
技术的提升和管理的升级是超市业的竞争核心。
零售领域目前呈多元发展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。
如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。
3.项目确立针对超市的特点,为了帮助超市解决现在面临的问题,提高小型超市的竞争力,我们将开发以下系统:前台POS销售系统、后台管理系统,其中这两个子系统又包含其它一些子功能。
4.应用范围本系统适应于各种超市。
5.名词定义①商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码。
②交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号。
超市POS收银系统方案系统项目概述一、总概述1.概述目前,平价商场、超市日益盛行----在城市普及之后正逐渐向城乡结合部发展。
这些商场、超市因货物品种繁多且购物的人流量大,所以迫切需要一套系统以实现商品的进、销、存,财务及人员等的一体化、自动化管理,以降低管理费用、经营成本,最终达到以最小的投资实现最大的利润目的。
电子信息技术的应用发展,使计算机在各行各业得到普及,在商场,超市等零售行业也充分发挥着作用。
在这一行业,计算机的应用已成为一个专门的行业---POS(收款机)系统。
对于零售业的物品价格管理,销售打单,以及采购销售及库存的各种报表,数据的汇总起着不可替代的作用。
本软件具有这方面的专业技术能力,能够为您提供最佳的解决方案及技术支持。
2.适用对象即将开超市或超市已经营业但缺乏POS软件管理或原POS软件不合适的各类批发及批零兼营的商场、百货超市、医药连锁、书店、化工、五金及化妆品等行业。
3.超市规模可适用于各类中小型超市及大型超市,大中型零售或批零兼营的商品流通企业,如商场、超市、连锁店。
4.工作方式对于各类大中小型超市来说,在局域网内就可以通过前后台连网的方式进行操作,而对于一些连锁经营方式的超市来说,可以通过互联网的方式将前台与后台服务器进行连接,从而将各连锁店的经营数据传送到总部的服务器上。
5. 使用目的提高整体工作效率,节约人工成本,加强内部控制,迅速获取正确的决策信息,以期达到加快资金周转、提高企业经营效益的最终目的。
6.原则规划实用性作为商家,实用性理所当然首先考虑的问题。
要求软件功能齐全,操作方便;且针对不同的用户,最好能满足对方一些特殊需要。
可靠性无论硬件还是软件,可靠性是非常重要的。
硬件的性能配置不一定非常高,但要求非常稳定;同时要求软件不能出错,不能死机。
安全性对商场POS管理信息系统而言,安全保密十分重要。
在系统中要充分利用软件及硬件所提供的各种安全措施,既要保证资料的共享,又要提放秘密的泄露。
超市收银管理系统方案超市收银管理系统是指利用计算机技术和网络技术对超市销售数据进行自动化管理的方案。
通过系统化的收银管理,可以提高超市的销售效率,减少错误和漏项,提升服务质量。
下面是一个超市收银管理系统的方案,包括系统的设计、功能、实施计划等。
一、系统设计1.收银台管理:包括商品扫描、价格显示、支付方式选择、找零计算等功能。
2.商品管理:包括商品录入、价格修改、库存管理、商品查询等功能。
3.销售统计:包括销售额统计、销售量统计、销售额排名等功能。
4.会员管理:包括会员注册、会员等级管理、积分管理等功能。
5.库存管理:包括库存查询、入库管理、出库管理等功能。
6.数据分析:包括销售趋势分析、销售额预测、优惠活动分析等功能。
二、系统功能1.收银台管理:实现商品扫描、自动识别商品信息、自动计算价格和找零。
2.商品管理:实现商品信息录入、价格修改、库存管理等功能,确保商品信息的准确性和可靠性。
3.销售统计:实时统计销售额、销售量、销售额排名等数据,并生成相应报表,为超市经营决策提供依据。
4.会员管理:实现会员注册、积分管理、等级管理等功能,提供个性化的优惠政策和服务。
5.库存管理:实时监控库存情况,确保货架上的商品充足,避免缺货现象发生。
6.数据分析:通过对销售数据进行深度分析和预测,提供优惠活动的决策支持,提升销售效益。
三、系统实施计划1.需求分析:与超市相关人员协商,明确系统需求和功能,梳理业务流程。
2.系统设计:完成系统的整体设计和数据库设计,确定系统开发技术和工具。
3.系统开发:根据设计要求,编写系统代码,实现系统的各项功能和界面。
4.测试调试:对系统进行全面测试和调试,确保系统的稳定性和使用性。
5.安装部署:将系统部署到超市的服务器上,并进行相应的配置和设置。
6.培训上线:对超市员工进行系统培训,确保其熟悉系统操作,上线使用。
四、预期效果1.提高销售效率:通过自动化的收银过程,提高超市的销售效率,减少排队等待时间。
(店铺管理)梅西百货超市收银系统设计与实现毕业设计说明书设计课题:重庆梅西百货有限公司外包项目超市收银系统设计与实现院(系):信息工程系专业:姓名:学号:指导教师:二〇一五年一月十五日设计课题任务书声明本人郑重声明:所呈交的毕业设计说明书,是在指导教师的指导下,进行独立工作取得的成果。
除了文中特别加以标注引用的内容外,本说明书中不包含任何其他个人或集体已经发表或撰写过的作品成果。
本人完全明确本声明的法律责任,对本说明书导致的所有问题承担全部责任。
学生签名:日期:年月日重庆梅西百货有限公司外包项目超市收银系统设计与实现【摘要】:随着销售行业竞争日益激烈,超市收银系统的引入显得非常重要。
它不但可以提高进销存管理的工作效率,而且可以有效减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,从根本上提升超市的市场竞争力。
本系统运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细的分析,实现了对超市的进货、销售和库存的科学管理。
它主要包括以下几大模块:登录模块、商品入库模块、商品销售模块、营业统计模块、商品信息模块、用户信息模块。
各模块相许独立,同时又构成统一的整体。
本文主要介绍了小型超市收银系统的环境、所用到的开发语言、功能作用、设计的方案等各方面的内容,其目的在于让使用者了解此系统,使他们能更好的运用本系统,使此系统发挥出应有的作用。
另外在文中还予以指出了系统开发有待于进一步完善发展的方向。
【关键词】:收银系统;控件;窗体;.NET平台;Macy's outsourcing projects in Chongqing Co.supermarket cashier system design andimplementation【Abstract】:With the increasingly fierce competition in sales industry, The introduction of small supermarket cashier system is very important. It can not only improve the working efficiency of the purchase-sell-stock management, but also can ef fectively reduce the blind procurement, reduce procurement cost, have the rea sonable control of inventory, reduce capital that takes up and improve market sensitivity, fundamentally ascending supermarket market competitiveness.This system uses computer-information-management technology, establis h the database of supermarket. With a detailed analysis of the supermarket, it achieves the functions of purchasing and the scientific management of sales a nd stock. It includes the following major modules: login module, storage mod ule of goods, merchandise sales module, operating statistics module, product i nformation module, the module supplier information, user information modul e. Phase allowed to independently of each module, at the same time constitut e a unified whole.In this paper, a small supermarket cash register system environment, the la nguage used in the development, function, design and other aspects of the pr ogram, which aims to allow users to understand this system so they can better use the system, so that This system play its due role. Also in the article we pointed out that the system should be with further improved development. 【KEY WORD】: the cashier system ; Control ;Form ; The platform ;目录前言 (1)第1部分课题分析 (2)1.1 课题目的 (2)1.2 课题意义 (2)第2部分可行性分析 (4)2.1 可行性研究 (4)2.2 开发环境介绍 (4)2.3 需求分析 (6)2.4 软件功能的划分与概述 (7)第3部分系统设计 (8)3.1 设计思想 (8)3.2 设计原则 (8)3.3 功能模块和结构设计 (9)3.4 数据库设计 (10)第4部分系统实现 (15)4.1 登陆系统模块 (15)4.2 商品信息模块 (18)4.3 商品入库模块 (19)4.4 商品销售模块 (21)4.5 销售营业统计模块 (24)第5部分系统测试 (27)5.1 测试计划 (27)5.2 测试用例 (27)第6部分课题总结 (32)6.1 课题结论 (32)6.2 课题设计启发 (32)6.3 课题设计优点与不足 (32)第7部分提交资料 (34)致谢 (35)参考文献 (36)前言随着我国成功加入WTO及信息化浪潮的日益临近,商场经营管理机制正在发生着根本性的变化,商场要想在激烈的市场竞争环境下的求得生存,就必须有效地利用人才、时间、信息结合的优势,就必须有效地进行商场内部改革和加强商场管理。
毕业设计说明书设计课题:重庆梅西百货有限公司外包项目超市收银系统设计与实现院 (系):信息工程系专业:姓名:学号:指导教师:二〇一五年一月十五日设计课题任务书声明本人郑重声明:所呈交的毕业设计说明书,是在指导教师的指导下,进行独立工作取得的成果。
除了文中特别加以标注引用的内容外,本说明书中不包含任何其他个人或集体已经发表或撰写过的作品成果。
本人完全明确本声明的法律责任,对本说明书导致的所有问题承担全部责任。
学生签名:日期:年月日重庆梅西百货有限公司外包项目超市收银系统设计与实现【摘要】:随着销售行业竞争日益激烈,超市收银系统的引入显得非常重要。
它不但可以提高进销存管理的工作效率,而且可以有效减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,从根本上提升超市的市场竞争力。
本系统运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细的分析,实现了对超市的进货、销售和库存的科学管理。
它主要包括以下几大模块:登录模块、商品入库模块、商品销售模块、营业统计模块、商品信息模块、用户信息模块。
各模块相许独立,同时又构成统一的整体。
本文主要介绍了小型超市收银系统的环境、所用到的开发语言、功能作用、设计的方案等各方面的内容,其目的在于让使用者了解此系统,使他们能更好的运用本系统,使此系统发挥出应有的作用。
另外在文中还予以指出了系统开发有待于进一步完善发展的方向。
【关键词】:收银系统;控件;窗体;.NET平台;Macy's outsourcing projects in Chongqing Co. supermarket cashier system design and implementation 【Abstract】:With the increasingly fierce competition in sales industry, The introduction of small supe rmarket cashier system is very important. It can not only improve the working efficiency of th e purchase-sell-stock management, but also can effectively reduce the blind procurement, red uce procurement cost, have the reasonable control of inventory, reduce capital that takes up an d improve market sensitivity, fundamentally ascending supermarket market competitiveness.This system uses computer-information-management technology, establish the database of supermarket. With a detailed analysis of the supermarket, it achieves the functions of purch asing and the scientific management of sales and stock. It includes the following major modul es: login module, storage module of goods, merchandise sales module, operating statistics mo dule, product information module, the module supplier information, user information module. Phase allowed to independently of each module, at the same time constitute a unified whole.In this paper, a small supermarket cash register system environment, the language used i n the development, function, design and other aspects of the program, which aims to allow us ers to understand this system so they can better use the system, so that This system play its du e role. Also in the article we pointed out that the system should be with further improved deve lopment.【KEY WORD】: the cashier system ; Control ;Form ; The platform ;目录前言 (1)第1部分课题分析 (2)1.1 课题目的 (2)1.2 课题意义 (2)第2部分可行性分析 (4)2.1 可行性研究 (4)2.2 开发环境介绍 (4)2.3 需求分析 (6)2.4 软件功能的划分与概述 (7)第3部分系统设计 (8)3.1 设计思想 (8)3.2 设计原则 (8)3.3 功能模块和结构设计 (9)3.4 数据库设计 (10)第4部分系统实现 (15)4.1 登陆系统模块 (15)4.2 商品信息模块 (18)4.3 商品入库模块 (19)4.4 商品销售模块 (21)4.5 销售营业统计模块 (24)第5部分系统测试 (27)5.1 测试计划 (27)5.2 测试用例 (27)第6部分课题总结 (32)6.1 课题结论 (32)6.2 课题设计启发 (32)6.3 课题设计优点与不足 (32)第7部分提交资料 (34)致谢 (35)参考文献 (36)前言随着我国成功加入WTO及信息化浪潮的日益临近,商场经营管理机制正在发生着根本性的变化,商场要想在激烈的市场竞争环境下的求得生存,就必须有效地利用人才、时间、信息结合的优势,就必须有效地进行商场内部改革和加强商场管理。
超市收银系统方案1. 引言随着科技的不断发展,零售业也面临着巨大的变革。
超市作为零售业的重要组成部分,收银系统的效率和功能对超市运营管理至关重要。
本文将介绍一种基于电脑和软件的超市收银系统方案,旨在提高超市的商品结算效率、增强数据管理能力和提供更好的用户体验。
2. 硬件需求为了实现高效的超市收银系统,以下是所需的硬件设备: - 电脑:运行收银软件的硬件基础。
- 扫描仪:用于扫描商品条形码,方便商品信息的读取。
- 收银台:提供合适的工作空间,方便收银员进行结算操作。
- 钱箱:安全存储现金和找零。
3. 软件需求超市收银系统的软件需求决定了系统的功能和用户体验。
以下是超市收银系统的核心软件功能: - 商品管理:包括商品信息的录入和编辑,如商品名称、价格、库存等。
- 销售统计:记录每日销售额、销售量、商品热销排行等数据,方便管理者进行经营决策。
- 收银功能:实现商品的扫描、计算并生成购物小票,支持现金、刷卡、扫码支付等多种支付方式。
- 客户管理:记录顾客的购买记录和个人信息,方便超市进行会员管理和精准营销。
- 库存管理:实时更新库存信息,当商品库存低于警戒线时,及时提醒超市补充库存。
4. 系统流程超市收银系统的基本流程如下: 1. 收银员登录系统。
2. 扫描商品条形码或手动录入商品编号。
3. 系统查找商品信息并显示在屏幕上,计算总价。
4. 支付方式选择:现金、刷卡、扫码支付等。
5. 完成支付后,系统生成购物小票。
6. 超市根据销售统计和库存管理数据进行经营决策。
5. 系统优势通过引入电脑和软件的超市收银系统,可以带来许多优势: - 提高工作效率:自动计算商品价格和总价,减少人工计算错误。
- 减少排队时间:快速扫描商品条形码,减少顾客等待时间,提高顾客满意度。
- 简化管理过程:记录销售数据和库存信息,方便管理者进行决策和优化产品供应链。
- 提供更好的用户体验:方便的支付方式选择和自动生成购物小票,提升顾客的购物体验。
基于单片机的简易超市收银系统设计摘要超市作为现代生活中必不可少的组成部分,其收银系统更是关系到超市的日常经营和管理。
本文基于单片机设计了一款简易的超市收银系统,实现了商品数据管理、销售数据统计、售价计算、现金支付等功能。
通过对系统的测试和评估,证明了该系统具有稳定性、可靠性和实用性,可以满足超市的基本需求。
关键词:单片机;收银系统;超市;商品管理;销售统计;现金支付一、研究背景和意义超市作为一个供应商品和服务的商业场所,营业额巨大,其中收银系统是不可或缺的。
随着信息化技术的不断发展,现在大多数超市都采用了计算机收银系统,而在小型超市和杂货店中,单片机收银系统的出现则既简单又实用。
本文旨在探索基于单片机的超市收银系统的设计和实现,以提高超市的管理效率和顾客体验。
二、研究方法和流程本文采用了单片机技术与计算机软件相结合的设计方法,其中包括以下步骤:1. 需求分析:通过实地考察和需求调研,确定超市收银系统的基本功能和需求。
2. 系统设计:根据需求分析,设计超市收银系统的硬件结构、软件架构和程序流程。
3. 硬件实现:通过选型和布局,完成单片机收银系统的硬件部分的制作。
4. 软件实现:根据系统设计,编写程序代码,完成单片机收银系统的软件部分的制作。
5. 测试评估:对系统进行测试、评估和优化,以验证其稳定性、可靠性和实用性。
三、系统设计和实现1. 系统框架图2. 硬件设备本系统采用STC89C52RC单片机作为主控制器,液晶显示屏用于显示商品信息、价格和收银记录,数码管用于显示收银金额。
同时,系统还包括键盘、红外遥控传感器、步进电机和蜂鸣器等部件。
3. 软件程序本系统的程序分为商品管理、销售统计、售价计算和现金支付几个部分,具体实现过程如下:商品管理:通过键盘输入商品信息包括名称、编号、进价和售价,并将其保存在内存中。
商品信息可以通过红外遥控传感器进行修改和删除。
销售统计:每次收银时,将销售商品的信息和金额保存在内存中,并累加到销售统计信息中。
大润发新零售典型案例大润发作为中国最大的零售企业之一,一直致力于创新和转型,尝试应用新零售模式来提升消费者体验和营业额。
以下是大润发的一个典型新零售案例:大润发社区店大润发社区店是大润发在新零售领域的一次创新尝试。
它是基于“社区+零售”的理念,以满足消费者的便捷需求为核心目标。
大润发社区店通过科技与数据的应用,提供智慧化的购物环境和个性化的服务,实现线上线下一体化的购物体验。
1.科技驱动的购物体验大润发社区店融入了许多科技元素,如智能导购机器人、自助收银台、无人货架等。
消费者可以通过智能导购机器人寻找商品的位置和价格,节省购物时间。
自助收银台减少了人员排队和等待时间,提高了结账的效率。
无人货架则提供24小时不间断的服务,满足了消费者的迫切需求。
这些科技应用使购物更加便捷和高效,提升了消费者的购物体验。
2.数据驱动的个性化服务大润发社区店通过运用大数据技术,实现对消费者购买行为和个人偏好的分析,从而为消费者提供个性化的推荐和服务。
消费者在店内选择商品时,智能导购机器人可以根据消费者的历史购买记录和喜好,向其推荐相关商品或优惠活动。
同时,店内的电子广告牌也会根据消费者的兴趣和性别等信息,投放相应的广告,提高广告的精准度和效果。
这些个性化的推荐和广告服务,使得消费者感到被关心和关注,增加了与大润发的互动和忠诚度。
3.线上线下一体化的购物体验大润发社区店将线上线下的购物体验融合在一起,实现了线上线下互通和互动。
消费者可以通过手机App提前下单购买商品,在店内扫码领取,或者通过线下购物后,在手机App上完成支付。
这种线上线下一体化的购物体验,充分利用了移动互联网的优势,提高了消费者的购物便利性和体验。
4.社区服务的延伸大润发社区店不仅仅是一家零售店,还为周围的居民提供社区服务,如代收快递、生鲜配送等。
消费者可以通过大润发社区店方便地寄取和领取快递,节省了等待快递的时间。
同时,店内的生鲜配送服务满足了消费者对新鲜食材的需求。
(店铺管理)模拟超市的收银系统模拟超市的收银系统一、系统分析与设计。
随着计算机的发展,计算机技术已经融入到社会生活的各个角落,把人们从以前繁琐的手工操作中解放出来,从而使信息的管理大大简便起来。
超市日常有大量的数据需要进行处理,包括收银员收银时输入的消费者购买信息、管理员输入的入库商品信息、管理员输入的人员信息、日常销售额的统计等等。
面对如此大的信息量,就需要有相应的计算机管理系统来提高工作的效率和系统管理的安全性。
通过这样的系统,超市就可以由收银员方便的在收银柜台进行销售额的录入,管理员也可以方便地进行管理,从而减小手工操作的工作量,本设计就是为了模拟超市的收银系统。
从需求分析的角度来看,这个超市管理系统的需求如下所示:该系统的功能主要是模拟超市的收银的过程,所以不需要设计数据库,当进入根据系统需求,这个版本的超市管理系统是一个简单的管理系统,三、主要程序清单(见附录)//************************************************************************//*main.cpp 系统主文件//************************************************************************#include"counter.h"//创建一个商店CStore*PrepareStore(){//创建一个空商店CStore*pStore=newCStore();// 为商店配货CGoods*pGoods=newCGoods(1,"西瓜",4.50);pStore->AddGoods(pGoods,1000);pGoods=newCGoods(2,"鸡蛋",5.00);pStore->AddGoods(pGoods,1000);pGoods=newCGoods(3,"牛肉",12.00);pStore->AddGoods(pGoods,1000);pGoods=newCGoods(4," 香蕉 ",4.10);pStore->AddGoods(pGoods,1000);pGoods=newCGoods(5,"空调",3000.00);pStore->AddGoods(pGoods,100);pGoods=newCGoods(6," 大米 ",1.00);pStore->AddGoods(pGoods,10000);pGoods=newCGoods(7," 葡萄 ",5.00);pStore->AddGoods(pGoods,1000);pGoods=newCGoods(8," 面包 ",6.00);pStore->AddGoods(pGoods,1000);pGoods=newCGoods(9,"火腿",15.00);pStore->AddGoods(pGoods,1000); returnpStore;}voidusage(){ cout<<"\n\n"; cout.width(35);cout.fill('*');cout<<right<<"USAGE";cout.width(35);cout<<left<<"*"<<endl;cout<<"*请您按照请示来购买商品,祝您消费愉快!\n"; cout<<"*输入\"-1\",完成购买,去收银台\n"; cout.width(35);cout.fill('*');cout<<right<<"USAGE";cout.width(35);cout<<left<<"*"<<endl;cout.fill('');cout<<"\n\n";}voidmain(){//准备超市储藏室、购物篮、收银台CStore*pStore=PrepareStore();//给超市配货CStore*pBasket=newCStore();CCounterCounter(pBasket);doubledCash=0.0;cout<<"------------------------欢迎光临\"美特好\"超市------------------------\n\n"<<endl;cout<<"******************* 本超市共有以下商品,欢迎您的选购*******************"<<endl;//打印商店的现有商品pStore->Print();usage();//iIndex---用户欲购买商品的索引,iNum ---- 用户欲购买商品的数目intiIndex=0,iNum=0;do{cout<<"请输入商品索引号:";//非法输入if(!(cin>>iIndex)){cout<<"\n\n 你键入了非法的索引号,程序即将退出\n\n";gotoCELEAN;}//购买完毕,退出if(iIndex==-1){ break;}//获取 iIndex 所对应的商品PSTOREELEMENTpSE=pStore->GetGoods(iIndex);//没有此类商品if(pSE==NULL){cout<<"\n 很抱歉,本商店没有索引号为\""<<iIndex<<"\"的商品\n\n";continue;}//购买数量cout<<"请输入要购买数量:";//非法输入if(!(cin>>iNum)){cout<<"\n\n 你键入了非法的购买数目,程序即将退出\n\n";gotoCELEAN;}//商品查询intiStoreNum=pStore->QueryGoods(iIndex);if(iStoreNum<=0){cout<<"很抱歉,你要购买的\""<<pSE->pGoods->GetName()<<"\"商品已经售完,请下次再来购买!\n";}else{ if(iNum>iStoreNum){cout<<"很抱歉,本商店目前仅有\""<<pSE->pGoods->GetName()<<"\""<<iStoreNum<<"件,暂时先购买这么多吧\n";CGoods*pMyGoods=pSE->pGoods->Clone();pBasket->AddGoods(pMyGoods,iStoreNum);//加入购物篮pSE->iNum=0;//卖光了}else{cout<<"恭喜你,成功购买:\n";cout<<"商品:"<<pSE->pGoods->GetName()<<"件数:"<<iNum<<"\n"<<endl;CGoods*pMyGoods=pSE->pGoods->Clone();pBasket->AddGoods(pMyGoods,iNum);//加入购物篮pSE->iNum=iStoreNum-iNum;//超市剩余}}}while(true);if(pBasket->GetAllGoods()->size()==0){ cout<<"\n\n 嗨,什么都没买到,白来一趟;(\n\n"; gotoCELEAN;}else{cout<<"\n\n 购买完毕,今天收获不小啊,购买了如下商品:\n\n";pBasket->Print();}cout<<"\n\n 您好,您本次共计消费"<<Counter.Bill()<<"元\n";cout<<"请交钱:";cin>>dCash;while(Counter.Count(dCash)<0){cout<<"还差:"<<-Counter.Count(0)<<"元\n";cout<<"请交钱:";cin>>dCash;}cout<<"\n\n 共收取您现金:"<<Counter.GetCash()<<"元\n";cout<<"应交纳金额:"<<Counter.Bill()<<"元\n";cout<<" 应找零 :"<<Counter.Count(0)<<" 元 \n\n";cout<<"**********************欢迎您再次光临本店**********************\n"; CELEAN:deletepStore;deletepBasket;return;//counter.cpp:implementationofthesupermarketclass.////////////////////////////////////////////////////////////////////////#include"counter.h"#include<assert.h>//************************************************************************ //*商品类的成员函数定义//************************************************************************ CGoods::CGoods(intiIndex,stringstrName,doubledUnitPrice){//初始化商品m_iIndex=iIndex;m_strName=strName;m_dUnitPrice=dUnitPrice;}CGoods::~CGoods(){}//attributesandoperationsintCGoods::GetIndex(void)const{ returnm_iIndex;}stringCGoods::GetName(void)const{ returnm_strName;}doubleCGoods::GetUnitPrice(void)const{ returnm_dUnitPrice;}voidCGoods::SetUnitPrice(doubledUnitPrice){ m_dUnitPrice=dUnitPrice;}CGoods*CGoods::Clone(){ returnnewCGoods(m_iIndex,m_strName,m_dUnitPrice );}//************************************************************************ //*商品类的成员函数定义结束//************************************************************************ //************************************************************************ //*储藏室类的成员函数定义//************************************************************************ CStore::CStore(){}CStore::~CStore(){DeleteAllGoods();}//往储藏室种添加货物boolCStore::AddGoods(CGoods*pGoods,intiNum){ assert(pGoods!=NULL);intsize=m_vStore.size();boolbIsExist=false;for(inti=0;i<size;i++){PSTOREELEMENTpSE=m_vStore[i];assert(pSE!=NULL);//假如已经有了同类商品在储藏室,那么增加此商品的数目if(pSE->pGoods!=NULL&&pSE->pGoods->GetIndex()==pGoods->GetIndex()){ bIsExist=true;pSE->iNum+=iNum;break;}}//储藏室没有同类商品,直接增加此类商品if(!bIsExist){ PSTOREELEMENTp=newSTOREELEMENT;p->pGoods=pGoods;p->iNum=iNum;m_vStore.push_back(p);}returntrue;}//清空整个储藏室voidCStore::DeleteAllGoods(){intsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELEMENTpSE=m_vStore[i];assert(pSE!=NULL);if(pSE->pGoods!=NULL){ deletepSE->pGoods;//删除商品pSE->pGoods=NULL;}deletepSE;//删除储藏室元素pSE=NULL;}}//删除名为 strName 的货物,iNum 为删除数量intCStore::DeleteGoods(conststring&strName,intiNum){intsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELEMENTpSE=m_vStore[i]; assert(pSE!=NULL);if(pSE->pGoods!=NULL&&pSE->pGoods->GetName()==strName){ if(iNum<=-1||pSE->iNum<=iNum){ deletepSE->pGoods;pSE->iNum=0;deletepSE;//删除储藏室元素pSE=NULL;return0;}else{pSE->iNum-=iNum;returnpSE->iNum;}}}return0;}//删除索引号为 iIndex 的货物,iNum 为删除数量intCStore::DeleteGoods(intiIndex,intiNum){ intsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELEMENTpSE=m_vStore[i]; assert(pSE!=NULL);if(pSE->pGoods!=NULL&&pSE->pGoods->GetIndex()==iIndex){ if(iNum<=-1||pSE->iNum<=iNum){ deletepSE->pGoods;pSE->iNum=0;deletepSE;//删除储藏室元素pSE=NULL;return0;}else{pSE->iNum-=iNum;returnpSE->iNum;}}}return0;}//获取货物清单vector<PSTOREELEMENT>*CStore::GetAllGoods(void){ return&m_vStore;}//获取某类货物PSTOREELEMENTCStore::GetGoods(intiIndex){intsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELEMENTpSE=m_vStore[i]; assert(pSE!=NULL);if(pSE->pGoods!=NULL&&pSE->pGoods->GetIndex()==iIndex){ returnpSE;}}returnNULL;}//获取某类货物PSTOREELEMENTCStore::GetGoods(conststring&strName){ in tsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELEMENTpSE=m_vStore[i]; assert(pSE!=NULL);if(pSE->pGoods!=NULL&&pSE->pGoods->GetName()==strName){ returnpSE;}}returnNULL;}//查询货物intCStore::QueryGoods(conststring&strName){ i ntsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELEMENTpSE =m_vStore[i]; assert(pSE!=NULL);if(pSE->pGoods!=NULL&&pSE->pGoods->GetName()==strName){ returnpSE->iNum;}}return0;}//查询货物intCStore::QueryGoods(intiIndex){intsize=m_vStore.size();for(inti=0;i<size;i++){ PSTOREELE MENTpSE=m_vStore[i];assert(pSE!=NULL);if(pSE->pGoods!=NULL&&pSE->pGoods->GetIndex()==iIndex){ returnpSE->iNum;}}return0;}//打印水单voidCStore::Print(){stringstrTitle[4];strTitle[0]="索引号";strTitle[1]="商品名";strTitle[2]=" 数量 ";strTitle[3]=" 单价 ";for(inti=0;i<4;i++){cout.width(16);cout<<left<<strTitle[i];}cout<<"\n"<<endl;//获取商品种类intsize=m_vStore.size();for(i=0;i<size;i++){ cout.width(16);cout<<left<<m_vStore[i]->pGoods->GetIndex();cout.width(16);cout<<m_vStore[i]->pGoods->GetName();cout.width(16);cout<<m_vStore[i]->iNum;cout.width(16);cout.precision(2);cout<<fixed<<m_vStore[i]->pGoods->GetUnitPrice()<<"\n";}}//************************************************************************ //*储藏室类的成员函数定义结束//************************************************************************ //************************************************************************ //*收银台类的成员函数定义//************************************************************************ CCounter::CCounter(CStore*pBasket){m_pBasket=pBasket;m_dCash=0.0;}CCounter::~CCounter(){}//获取帐单doubleCCounter::Bill(void){doubledTotalPrice=0.0;vector<PSTOREELEMENT>*pvSE=m_pBasket->GetAllGoods();//获取商品种类intsize=pvSE->size();for(inti=0;i<size;i++){PSTOREELEMENTpSE=(*pvSE)[i];dTotalPrice+=pSE->pGoods->GetUnitPrice()*pSE->iNum;}returndTotalPrice;}//收钱及找零doubleCCounter::Count(doubledCash){m_dCash+=dCash;doubledTotal=Bill();returnm_dCash-dTotal;}//收取的现金数doubleCCounter::GetCash(){returnm_dCash;}//************************************************************************//*收银台类的成员函数定义结束//************************************************************************}四、运行结果五、试验体会在这次的设计过程中,我采用的是 VC++,不仅使我对课程有了进一步的强化,还使我的开发能力得到了提高。
超市收银系统(流程图+摘要+任务超市收银系统(流程图+摘要+任务书+开题报告+ER图+源程序)1.1课题背景及目的随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。
随着经济文化水平的显著提高,人们对生活质量及工作环境的要求也越来越高。
为了管理大量的超市商品,超市智能化的实现,超市的管理问题也就提上了日程。
随着超市商品的大量增加,其管理难度也越来越大,如何优化超市的日常管理也就成为了一个大众化的课题。
功能简洁、实用,价格平实:根据客户功能需要的不同,制定相应的版本、相应的价格,让客户最实惠、钱花到实处。
目前,许多连锁超市企业将总部信息系统与连锁超市配送中心信息系统合二为一,即以连锁超市配送中心信息系统为中心与各分店信息系统合起来形成连锁超市企业的信息系统。
总体构成及功能如下:系统的逻辑结构从横向分为营销中心、人员管理中心、库存管理中心和会员管理中心四大模块,他们之间既紧密联系,也可相对独立运作,自成一体。
从纵向看,每个模块又可分为三个层次,即数据管理层、业务处理层和决策分析层。
数据管理层有效保存业务有关的所有原始数据,并对这些数据进行有效的分类管理。
业务处理层主要支持日常业务,解决遇到的日常业务问题。
其主要功能为数据采集、查询、统计及对数据的适当处理,并对业务过程监控优化。
决策分析层主要为业务部门提供决策分析的支持,帮助建立计划机制及控制机制,辅助业务部门进行决策。
收银管理系统是小型超市商品销售及货物管理的主要控制部分,直接影响销售的方便性及管理的规范性。
随着信息时代的发展,对效率的要求日益提高,因而软件控制销售和管理已经取代了传统全手工方式。
小型超市具有自身的特点:商品要求一般齐全,进出货关系较为简单,员工人数种类不多;在软件角度看,数据较少,对存储和速度要求不高。
但正由于员工较少,使用软件控制成为必须。
本系统针对商品销售管理的业务范围及工作特点,设计了基于智能客户端架构的超市收银系统,可以全面实现对商品销售、付款、收款和库存等业务的计算机管理,大大减轻了超市收银工作人员的工作量,全面提高了超市收银管理的管理效率以及服务质量,使管理水平和业务水平跃上了一个新的台阶。
目录1、可行性分析 (2)1.1问题描述 (2)1.2可行性分析研究 (2)1.2.1技术可行性 (2)1.2.2经济可行性 (2)1.2.3操作可行性 (3)2、项目开发计划 (4)2.1编写目的 (4)2.2项目背景 (4)2.3项目概述 (5)2.4项目开发计划 (5)2.5交付期限 (6)3、需求分析 (7)3.1任务需求分析 (7)3.2数据流图、数据字典 (8)3.2.1数据流图 (8)3.2.2数据字典 (10)4、系统概要设计 (14)4.1总体设计 (14)4.2数据库概念设计 (14)4.2.1数据项和数据结构 (14)4.2.2实体联系E-R图 (15)5、详细设计 (17)5.1系统功能模块图 (17)5.2各子系统功能模块图 (18)5.3程序流程图 (21)5.4数据库逻辑结构设计 (22)5.5连接数据库的特点 (28)5.6用户界面设计 (28)5.6.1一般交互设计 (28)5.6.2信息显示设计 (29)5.6.3数据输入界面设计 (30)5.7软件测试 (31)5.7.1测试的方法和步骤 (31)5.7.2测试用例 (32)设计总结 (33)参考文献 (35)致谢 (36)1、可行性分析1.1问题描述超市零售管理系统是小型超市商品销售及货物管理的主要控制部分,直接影响销售的方便性及管理的规范性。
随着信息时代的发展,对效率的要求日益提高,因而软件控制销售和管理已经取代了传统全手工方式。
小型超市具有自身的特点:商品要求一般齐全,进出货关系较为简单,员工人数种类不多;在软件角度看,数据较少,对存储和速度要求不高。
但正由于员工较少,使用软件控制成为必须。
1.2可行性分析研究1.2.1技术可行性技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬、软件配置能否满足开发者需要等。
目前各宾馆均建有局域网,并且采用PC机作为工作台,其容量、速度能满足系统要求。
根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。
前台收银手册如何进入正常收银界面:进入系统后,正常待机界面如下列图:首图上下移动光标,当“首图〞上的“收款机〞三个字变得比其它字体都大〔如果是彩屏,收款机三个字为红色并且字体变大〕的时候,单击“回车〞,出现如图1-1所示的界面:图1-1把光标移到“操作员〔C〕〞项,按上下键选择相应的操作员,点“回车〞,光标跳转到“口令〔K〕〞项,输入相应操作员的口令密码后,单击“回车〞,光标跳转到“日期〞项〔收银员请检查系统显示日期是否为当天实际日期,如果不是当天实际日期,要在收银前告诉电脑部人员及时予以修正〕,如果日期与当天实际日期相符,直接单击“回车〞,光标自动跳转到“班组〞项,按上下键选择相应的班组,单击“回车〞,光标跳转到“确定〔A〕〞,再单击“回车〞。
进入正常收银界面。
如图1-2所示。
条码、商品编号录入栏图1-21、现金收银:当光标停在输入“录入栏〞中闪烁时,可用以下方法录入商品的识别信息:〔1〕扫描平台扫入商品国际条码/店内码;〔2〕手工输入商品编号、商品国际条码/店内码。
然后,单击“回车〞,➢修改数量:系统默认的数量为1。
单击“修改数量〞键,光标自动跳转到商品的数量栏,直接更改商品数量,然后单击“回车〞确认。
数量修改完成。
➢修改单价:系统默认的单价为该商品根本档案中零售价。
如果需要在销售时,更改商品的零售价,可单击“修改单价〞键,光标自动跳转到商品的零售价栏,直接更改商品零售价,然后单击“回车〞确认。
单价修改完成。
此项功能一般禁止对收银人员开放。
➢修改金额:售价金额=零售价X数量。
如果需要在销售时,更改商品的售价金额,可单击“修改金额〞键,光标自动跳转到商品的售价金额栏,直接更改商品售价金额,然后单击“回车〞确认。
单价修改完成。
此项功能一般禁止对收银人员开放。
➢折扣:一般超市的商品不实行对外折扣销售。
如果某些商品需要在对外销售时实行折扣价,可单击“折扣〞键,出现如图1-3所示界面,在输入栏中直接输入该商品的折扣率,然后单击“回车〞,光标自动跳转到商品的“折扣%〞栏,商品单价折扣完成。
- - .课程设计任务书2012—2013学年第2学期一、课程设计题目模拟超市收银系统〔例子〕二、课程设计内容使用文本命令行界面模拟超市收银系统●由收银员输入顾客的会员卡卡号〔假设有卡〕、所购商品的货号等。
从数据库〔或文件〕中取出有关价格信息,再把这些信息返回给收银台。
同时把该收银台的销售总量和有关种类商品的剩余量以及该持卡顾客的消费情况交数据库〔或文件〕存储以供查询。
●另外,对没有卡的消费情况不记录该顾客的消费情况等个人信息。
如果一个未持卡顾客一次性购物满200元,可为其发放一张会员卡,以后在该商场购物可获得9折优惠。
要求:建立会员账户类、商品信息类、文件读写类、界面显示类等以及各相关接口类。
三、进度安排〔1〕1-2学时,选定题目、分析需求、理解需求;〔2〕3-4学时,程序设计,定义数据类型、数据处理方式;〔3〕5-10学时,编写程序、调试、测试;〔4〕11-12学时,编写设计报告;〔5〕13-16学时,辩论。
四、根本要求〔1〕只能使用C++语言,源程序要有适当的注释,使程序容易阅读〔2〕至少采用文本菜单界面〔如果能采用图形菜单界面更好〕〔3〕学生可自动增加新功能模块〔视情况可另外加分〕〔4〕建立银行账户类、文件读写类、界面显示类等以及各相关接口类。
〔例子〕〔5〕写出课程设计报告,应不少于3000字〔不含附录〕,同一组学生只需提交1份,但必须在报告中列明分工。
课程负责人签名:2013年6 月28 日模拟超市收银系统〔例子〕摘要使用文本命令行界面模拟超市收银系统●由收银员输入顾客的会员卡卡号〔假设有卡〕、所购商品的货号等。
从数据库〔或文件〕中取出有关价格信息,再把这些信息返回给收银台。
同时把该收银台的销售总量和有关种类商品的剩余量以及该持卡顾客的消费情况交数据库〔或文件〕存储以供查询。
●另外,对没有卡的消费情况不记录该顾客的消费情况等个人信息。
如果一个未持卡顾客一次性购物满200元,可为其发放一张会员卡,以后在该商场购物可获得9折优惠。