70 lines
2.4 KiB
JavaScript
70 lines
2.4 KiB
JavaScript
|
import * as Esc from "@/utils/EscPostUtils.js";
|
||
|
|
||
|
const testObj = {
|
||
|
mer_name: "莲花农贸市场", //商户名称
|
||
|
service_phone: "0830-2669767", //客服电话
|
||
|
number: "PF171568087790938356", //单号
|
||
|
create_time: "2024-5-15 18:00:32", //下单时间
|
||
|
total_price: "29.96", //总价
|
||
|
pay_price: "29.96", //实付
|
||
|
pay_type: "微信支付", //支付方式
|
||
|
pay_number: "4200002159202405159003084211", //支付单号
|
||
|
goods: [
|
||
|
{
|
||
|
name: "白菜 大白菜", //商品名称
|
||
|
sell: "236.60", //单价
|
||
|
nums: "13", //数量
|
||
|
unit_name: "kg", //单位
|
||
|
total: "2896.34" //小计
|
||
|
},
|
||
|
{
|
||
|
name: "小黄鸭", //商品名称
|
||
|
sell: "9.56", //单价
|
||
|
nums: "2", //数量
|
||
|
unit_name: "只", //单位
|
||
|
total: "19.38" //小计
|
||
|
},
|
||
|
{
|
||
|
name: "卷心菜", //商品名称
|
||
|
sell: "15.37", //单价
|
||
|
nums: "8", //数量
|
||
|
unit_name: "斤", //单位
|
||
|
total: "134.38" //小计
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
|
||
|
export const printTicket = (obj = {}, test = false) => {
|
||
|
let str = "";
|
||
|
if(!obj || !obj.number) obj = testObj;
|
||
|
str += Esc.Size2(0) + Esc.Center() + Esc.boldFontOn() + obj.mer_name + "\n";
|
||
|
str += Esc.fillLine(" ") + Esc.boldFontOff() + "\n";
|
||
|
str += Esc.Left() + "单号: " + obj.number + "\n";
|
||
|
str += Esc.Left() + "下单时间: " + obj.create_time + "\n";
|
||
|
|
||
|
// 商品信息
|
||
|
str += Esc.fillLine("=") + "\n";
|
||
|
|
||
|
str += Esc.inline3("单价", "数量", "小计", " ", 1) + "\n";
|
||
|
obj.goods.forEach(item => {
|
||
|
str += Esc.Left() + item.name + "\n";
|
||
|
str += Esc.inline3(`${item.sell}元`, `${item.nums}${item.unit_name}`, `${item.total}元`, " ", 1) + "\n";
|
||
|
})
|
||
|
|
||
|
str += Esc.fillLine("=") + "\n";
|
||
|
|
||
|
str += Esc.Left() + "应付款: " + obj.total_price + "元" + "\n";
|
||
|
str += Esc.Left() + "实付款: " + obj.pay_price + "元" + "\n";
|
||
|
str += Esc.Left() + "支付方式: " + obj.pay_type + "\n";
|
||
|
str += Esc.Left() + "支付单号: " + obj.pay_number + "\n";
|
||
|
str += Esc.Left() + "联系电话: " + obj.service_phone + "\n";
|
||
|
str += Esc.fillLine("=") + "\n";
|
||
|
|
||
|
// 票尾
|
||
|
str += Esc.fillLine(" ") + "\n";
|
||
|
str += Esc.Center() + "欢迎下次光临!" + "\n";
|
||
|
str += Esc.feedLines(" ") + "\n";
|
||
|
// 切纸
|
||
|
str += Esc.cutPaper();
|
||
|
return str;
|
||
|
}
|