From 827b4f2f29701b5ebef9acf83cc96de1db967986 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 12 Aug 2022 14:16:55 +0800 Subject: [PATCH] 1 --- business/jxutils/netprinter/netprinter.go | 2 ++ business/partner/partner_printer.go | 2 +- business/partner/printer/feie/feie.go | 2 +- business/partner/printer/jxprint/jxprint.go | 18 +++++++++++++----- .../partner/printer/jxprint/jxprint_const.go | 15 ++++++++++++--- business/partner/printer/xiaowm/xiaowm.go | 2 +- .../partner/printer/yilianyun/yilianyun.go | 2 +- business/partner/printer/zhongwu/zhongwu.go | 2 +- 8 files changed, 32 insertions(+), 13 deletions(-) diff --git a/business/jxutils/netprinter/netprinter.go b/business/jxutils/netprinter/netprinter.go index b3fe380d0..32db6f0cc 100644 --- a/business/jxutils/netprinter/netprinter.go +++ b/business/jxutils/netprinter/netprinter.go @@ -89,6 +89,8 @@ func PrintOrderByOrder4Store(ctx *jxcontext.Context, order *model.GoodsOrder, st BrandIsPrint: model.NO, } } + bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID) + printResult, err = handler.PrintOrder(ctx, store, storeDetail, order) if err == nil { dao.SetOrderPrintFlag(db, ctx.GetUserName(), order.VendorOrderID, order.VendorID, true) diff --git a/business/partner/partner_printer.go b/business/partner/partner_printer.go index e7697f3f0..bc990e5a8 100644 --- a/business/partner/partner_printer.go +++ b/business/partner/partner_printer.go @@ -62,7 +62,7 @@ type IPrinterHandler interface { BindPrinter(ctx *jxcontext.Context, mapData map[string]interface{}) (bindResult *BindPrinterResult, err error) RebindPrinter(ctx *jxcontext.Context, lastBindResult *BindPrinterResult) (bindResult *BindPrinterResult, err error) - PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *PrinterStatus, err error) + PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string) (printerStatus *PrinterStatus, err error) PrintCancelOrRefundOrder(ctx *jxcontext.Context, printType int, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *PrinterStatus, err error) EmptyPrintList(ctx *jxcontext.Context, id1, id2 string) (err error) diff --git a/business/partner/printer/feie/feie.go b/business/partner/printer/feie/feie.go index 750f5537d..e6360a1e6 100644 --- a/business/partner/printer/feie/feie.go +++ b/business/partner/printer/feie/feie.go @@ -251,7 +251,7 @@ func (c *PrinterHandler) GetPrinterStatus(ctx *jxcontext.Context, printerSN, pri return printerStatus, err } -func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) { +func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string) (printerStatus *partner.PrinterStatus, err error) { globals.SugarLogger.Debugf("feie PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID) if len(order.Skus) == 0 { return diff --git a/business/partner/printer/jxprint/jxprint.go b/business/partner/printer/jxprint/jxprint.go index 204548cb2..ea59a08e7 100644 --- a/business/partner/printer/jxprint/jxprint.go +++ b/business/partner/printer/jxprint/jxprint.go @@ -234,12 +234,12 @@ func (c *PrinterHandler) getOrderContentByTemplate(order *model.GoodsOrder, stor return "" } -func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) { +func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string) (printerStatus *partner.PrinterStatus, err error) { globals.SugarLogger.Debugf("jxprint PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID) if len(order.Skus) == 0 { return } - printData := ManagerOrderAndStore(order, store.Tel1, storeDetail) + printData := ManagerOrderPrint(order, store.Tel1, storeDetail) //printData[BigFont] = "small" //if store.PrinterFontSize == partner.PrinterFontSizeBig || store.PrinterFontSize == partner.PrinterFontSizeBig2 { // printData[BigFont] = "big" @@ -249,9 +249,17 @@ func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, //if store.PrinterFontSize == partner.PrinterFontSizeBig2 || store.PrinterFontSize == partner.PrinterFontSizeNormal2 { // printData[PrintNumber] = utils.Int2Str(2) //} - printData[AppID] = "1000" // 菜市应用 - printData[OrderStatus] = utils.Int2Str(order.Status) // 订单状态 - printData[WayBillStatus] = order.VendorStatus // 运单状态 + printData[AppID] = "1000" // 菜市应用 + switch printType { + case "order": + printData[OrderStatus] = utils.Int2Str(order.Status) // 订单状态 + case "wayBill": + printData[WayBillStatus] = order.VendorStatus // 运单状态 + case "store": + printData[StoreStatus] = utils.Int2Str(store.Status) // 运单状态 + case "reminder": + printData[ReminderStatus] = "1" // 催单 + } orderPrint, err := json.Marshal(printData) if err != nil { return nil, err diff --git a/business/partner/printer/jxprint/jxprint_const.go b/business/partner/printer/jxprint/jxprint_const.go index 7737c2ef2..db91815cd 100644 --- a/business/partner/printer/jxprint/jxprint_const.go +++ b/business/partner/printer/jxprint/jxprint_const.go @@ -6,6 +6,7 @@ import ( "git.rosy.net.cn/jx-callback/business/jxutils" "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/model/dao" + "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/globals" ) @@ -39,9 +40,11 @@ const ( PrintNumber = "printNumber" // 打印次数 AppID = "appId" // 应用id // 状态对应打印设置的变化 - OrderStatus = "orderStatus" // 订单状态 - WayBillStatus = "wayBillStatus" // 运单状态 - StoreStatus = "storeStatus" // 门店状态 + OrderStatus = "orderStatus" // 订单状态 + WayBillStatus = "wayBillStatus" // 运单状态 + StoreStatus = "storeStatus" // 门店状态 + ReminderStatus = "reminderStatus" // 催单状态 + RiderVendorId = "riderVendorId" // 骑手所属平台id RiderName = "riderName" // 骑手名称 RiderPhone = "riderPhone" // 骑手电话 @@ -107,6 +110,12 @@ func ManagerOrderPrint(order *model.GoodsOrder, storeTel string, storeDetail *da printOrder[StoreName] = order.StoreName printOrder[StoreTel] = storeTel printOrder[OfficialName] = globals.StoreName + + bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID) + printOrder[StoreStatus] = utils.Int2Str(storeDetail.Status) + printOrder[RiderVendorId] = utils.Int2Str(bill.WaybillVendorID) + printOrder[RiderName] = bill.CourierName + printOrder[RiderPhone] = bill.CourierMobile return printOrder } diff --git a/business/partner/printer/xiaowm/xiaowm.go b/business/partner/printer/xiaowm/xiaowm.go index e0d933ffb..dd91f7c20 100644 --- a/business/partner/printer/xiaowm/xiaowm.go +++ b/business/partner/printer/xiaowm/xiaowm.go @@ -292,7 +292,7 @@ func (c *PrinterHandler) GetPrinterStatus(ctx *jxcontext.Context, printerNumber, return printerStatus, err } -func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) { +func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string) (printerStatus *partner.PrinterStatus, err error) { globals.SugarLogger.Debugf("xiaowm PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID) var content string if isV500(store.PrinterSN) { diff --git a/business/partner/printer/yilianyun/yilianyun.go b/business/partner/printer/yilianyun/yilianyun.go index 99cbf896d..3199a5495 100644 --- a/business/partner/printer/yilianyun/yilianyun.go +++ b/business/partner/printer/yilianyun/yilianyun.go @@ -395,7 +395,7 @@ func (c *PrinterHandler) GetPrinterStatus(ctx *jxcontext.Context, machineCode, p return printerStatus, err } -func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) { +func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string) (printerStatus *partner.PrinterStatus, err error) { globals.SugarLogger.Debugf("yilianyun PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID) if len(order.Skus) == 0 { return diff --git a/business/partner/printer/zhongwu/zhongwu.go b/business/partner/printer/zhongwu/zhongwu.go index bb74419a5..d0b0ac062 100644 --- a/business/partner/printer/zhongwu/zhongwu.go +++ b/business/partner/printer/zhongwu/zhongwu.go @@ -219,7 +219,7 @@ func (c *PrinterHandler) GetPrinterStatus(ctx *jxcontext.Context, deviceID, devi return printerStatus, err } -func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) { +func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string) (printerStatus *partner.PrinterStatus, err error) { globals.SugarLogger.Debugf("zhongwu PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID) content := "" if store.PrinterFontSize == partner.PrinterFontSizeBig {