C# 简易POS零售系统架构设计源码(4)
C# 简易POS零售系统架构设计源码(4)
C# Code:
using System; using System.Collections.Generic; using System.Text; using System.Collections; using System.Windows.Forms; namespace CSFramework.Tech2011.PosTerminal { /// <summary> /// 收银台管理类 /// 收银终端设备:PosTerminal /// </summary> public class PosTerminal { private IMonitor _Monitor = null; //收银台监视器 private IPrinter _Printer = null; //小票打印机 private ICashier _Cashier = null; //钱箱 private IStockDataView _StockDataShow = null;//已输入货品清单 public IMonitor PosMonitor { get { return _Monitor; } } public IPrinter PosPrinter { get { return _Printer; } } public ICashier PosCashier { get { return _Cashier; } } public IStockDataView PosStockDataView { get { return _StockDataShow; } } /// <summary> /// 创建一个收银台管理类 /// </summary> public PosTerminal(ICashier cashier, IMonitor monitor, IPrinter printer, IStockDataView stockDataView) { _Monitor = monitor; _Printer = printer; _Cashier = cashier; _StockDataShow = stockDataView; } public bool Pay(decimal amount) { decimal rcv = this._StockDataShow.GetReceivableAmount(); if (amount > rcv) { _Cashier.OpenDoor(); //打开钱箱 _Cashier.AcceptMoney(amount); //收钱 _Cashier.CloseDoor();//关闭钱箱 _StockDataShow.Clear(); //收款收毕清空货品列表,重新启动收钱任务 _Monitor.ShowMessage("Thank you!", "已收:" amount.ToString()); _Printer.Print("Thanks!"); return true; } else { _Monitor.ShowMessage("not enough money!", "应收:" rcv.ToString()); return false; } } /// <summary> /// 检查系统/硬件连接 /// </summary> public void CheckSystem() { if (_Monitor != null) _Monitor.ShowMessage("Welcome!", ""); if (_Printer != null) _Printer.Print("Test Printer.... ok!"); if (_Cashier != null) //检查钱箱 { _Cashier.AcceptMoney(0); _Cashier.OpenDoor(); _Cashier.CloseDoor(); } } public void PrintStockInfo(Stock stock) { if (_Printer != null) _Printer.Print(stock.Name " Price: " stock.Price.ToString()); } /// <summary> /// 当输入一个货品,要显示当前货品名称及应收金额 /// </summary> public void ShowStockInfo(Stock stock) { decimal amt = _StockDataShow.GetReceivableAmount(); _Monitor.ShowMessage(stock.Name " Price: " stock.Price.ToString(), "应收:" amt.ToString()); } /// <summary> /// 输入货品 /// </summary> public void AddStock(Stock stock, int qty) { this.PosStockDataView.AddStock(stock, qty); //加入货品队列 this.PrintStockInfo(stock); //打印小票 this.ShowStockInfo(stock); //显示货品 } /// <summary> /// 重置收银台 /// </summary> public void Reset() { _Monitor.Reset(); _Cashier.Reset(); _Printer.Reset(); _StockDataShow.Clear(); CheckSystem(); } } } //来源:C/S框架网(www.csframework.com) QQ:1980854898
参考文档:
C# 简易POS零售系统架构设计源码(2) C# 简易POS零售系统架构设计源码(1) C# 简易POS零售系统架构设计源码(3) C# 简易POS零售系统架构设计源码(5) C# Winform系统登录(登入/登出)架构设计 CSFrameworkV2.x标准版成功案例 - C# Winform C/S架构MES系统 物流运输管理系统TMS 司机车辆GPS+手机定位设计(C#源码) 软件开发与设计 - MIS-管理信息系统-产品管理系统(三层结构示例项目源码) 软件开发与设计 - POS-销售终端系统(电商-数据库表设计) C#源码-内容管理系统-NetCMS.1.7.0.build1125_src源码下载 C#源码-Xluo大型三层架构短消息系统源码-源码下载 C#源码-友欧ERP进销存系统通用版 2.0-源码下载 C#源码-C.NETBS架构的开源OA的办公系统-源码下载 C#源码-NIKE销售系统源码-源码下载 C#源码-SSM商城后台管理系统源码-源码下载
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |