C#因无打印机系统报错,模拟打印避免弹错
2018-01-26 14:58
288 查看
在开发过程中,因为有的门店没有置办打印机,所以下单自动打印总是弹出报错。
经过总结和讨论,最终决定使用模拟打印这一招,既避免了用户的误会。
public class NormalPrinter : IPosPrinter
{
PosPrinter printer = new PosPrinter();
public SingleResult<bool> Print( PrintReq para)
{
SingleResult<bool> result = new SingleResult<bool>();
result.Data = true;
result.Code = "1";
IList<OrderSubEntity> subList = new List<OrderSubEntity>();
if (para.SubList != null)
subList = subList.Concat(para.SubList).ToList();
if (para.RtnSubList != null)
subList = subList.Concat(para.RtnSubList).ToList();
switch (para.ServiceType)
{
case ServiceType.None:
case ServiceType.Change:
printer.Printer(para.BASEREQ, para.Order, subList, para.PayList);
break;
case ServiceType.Return:
printer.Printer(para.BASEREQ, para.Service, subList);
break;
default:
break;
}
return result;
}
public SingleResult<bool> OpenDrawer()
{
SingleResult<bool> result = new SingleResult<bool>();
result.Data = true;
result.Code = "1";
new IPrinter.IPrinter(IPrinter.Enums.PortType.Serial).OpenDrawer();
return result;
}
}
}
经过总结和讨论,最终决定使用模拟打印这一招,既避免了用户的误会。
public class NormalPrinter : IPosPrinter
{
PosPrinter printer = new PosPrinter();
public SingleResult<bool> Print( PrintReq para)
{
SingleResult<bool> result = new SingleResult<bool>();
result.Data = true;
result.Code = "1";
IList<OrderSubEntity> subList = new List<OrderSubEntity>();
if (para.SubList != null)
subList = subList.Concat(para.SubList).ToList();
if (para.RtnSubList != null)
subList = subList.Concat(para.RtnSubList).ToList();
switch (para.ServiceType)
{
case ServiceType.None:
case ServiceType.Change:
printer.Printer(para.BASEREQ, para.Order, subList, para.PayList);
break;
case ServiceType.Return:
printer.Printer(para.BASEREQ, para.Service, subList);
break;
default:
break;
}
return result;
}
public SingleResult<bool> OpenDrawer()
{
SingleResult<bool> result = new SingleResult<bool>();
result.Data = true;
result.Code = "1";
new IPrinter.IPrinter(IPrinter.Enums.PortType.Serial).OpenDrawer();
return result;
}
}
}
相关文章推荐
- C# 调用系统API函数直接连接pos打印机 打印
- C#直接发送打印机命令到打印机及ZPL常用打印命令 - 条码打印机
- 基于C#的登录系统模拟
- C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)
- C#调用TSC条码打印机打印二维码
- C#模拟窗体系统菜单
- 求高手帮忙做ATM模拟系统代码,最好是用MyEclipse 或者C# ····
- C# 热敏打印机 小票打印机 打印图片
- C# winform 窗体接收命令行参数自动登录进行系统,模拟600个WCF客户端的并发压力测试
- Head First C# (蜂巢模拟系统)
- C# Winform简单模拟水果店结账系统
- C# Lpt 并口热敏小票打印机打印位图
- C#调用TSC条码打印机打印条码
- 模拟打印机排队打印
- JAVA调用系统打印机打印字符串
- C#打印操作 页面设置 打印机选择 打印预览
- [转]C# 系统应用之鼠标模拟技术及自动操作鼠标
- c#调用打印机打印水晶报表
- C#遍历系统所安装的打印机,使用WMI方式获取打印机的所有属性
- c#通过程序将文件直接送到打印机打印