This commit is contained in:
邹宗楠
2022-08-26 10:36:34 +08:00
parent 96622d9b05
commit 001a539f93
13 changed files with 30 additions and 22 deletions

View File

@@ -42,7 +42,7 @@ func (c *OrderManager) notifyNewFakeJdOrder(order *model.GoodsOrder) (err error)
realStoreID = storeDetail.LinkStoreID
}
notifyWxNewFakeJdOrder(order, realStoreID)
netprinter.PrintOrderByOrder4Store(jxcontext.AdminCtx, order, realStoreID, "")
netprinter.PrintOrderByOrder4Store(jxcontext.AdminCtx, order, realStoreID, "", nil)
return err
}

View File

@@ -392,7 +392,7 @@ func (s *DefScheduler) OnOrderNew(order *model.GoodsOrder, isPending bool, isAut
if order.Flag&model.OrderFlagMaskFake == 0 {
utils.CallFuncAsync(func() {
// order = setFakeActualPayPrice(order)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder, nil)
//目前暂且认为AdjustCount > 0 就是调整单
if order.AdjustCount > 0 {
weixinmsg.NotifyAdjustOrder(order)
@@ -503,7 +503,7 @@ func (s *DefScheduler) OnOrderStatusChanged(order *model.GoodsOrder, status *mod
// 京西云打印机打印数据-如果门店使用京西打印机才使用如下代码块
store, err := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode)
if err == nil && store.PrinterVendorID == model.VendorIDJxprint {
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder, nil)
}
}
}
@@ -1697,7 +1697,7 @@ func (s *DefScheduler) notifyNewOrder(order *model.GoodsOrder, isAuto bool) {
if order.Flag&model.OrderFlagMaskFake == 0 && order.VendorID != model.VendorIDEBAI {
utils.CallFuncAsync(func() {
// order = setFakeActualPayPrice(order)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder, nil)
//目前暂且认为AdjustCount > 0 就是调整单
if order.AdjustCount > 0 {
weixinmsg.NotifyAdjustOrder(order)

View File

@@ -44,7 +44,7 @@ func (s *DefScheduler) OnAfsOrderNew(order *model.AfsOrder, isPending bool) (err
if err2 != nil {
return err
}
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, orderObj, model.PrintAfsOrder)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, orderObj, model.PrintAfsOrder, order)
}
}

View File

@@ -40,13 +40,13 @@ func PrintOrder(ctx *jxcontext.Context, vendorOrderID string, vendorID int) (pri
order.StoreID = storeID
order.JxStoreID = storeID
}
printResult, err = PrintOrderByOrder(ctx, order, "order")
printResult, err = PrintOrderByOrder(ctx, order, "order", nil)
}
return printResult, err
}
func PrintOrderByOrder(ctx *jxcontext.Context, order *model.GoodsOrder, printType string) (printResult *partner.PrinterStatus, err error) {
return PrintOrderByOrder4Store(ctx, order, jxutils.GetSaleStoreIDFromOrder(order), printType)
func PrintOrderByOrder(ctx *jxcontext.Context, order *model.GoodsOrder, printType string, afs *model.AfsOrder) (printResult *partner.PrinterStatus, err error) {
return PrintOrderByOrder4Store(ctx, order, jxutils.GetSaleStoreIDFromOrder(order), printType, afs)
}
func getStore4Print(db *dao.DaoDB, storeID int) (store *model.Store, err error) {
@@ -71,7 +71,7 @@ func getStore4Print(db *dao.DaoDB, storeID int) (store *model.Store, err error)
}
// PrintOrderByOrder4Store 打印订单信息
func PrintOrderByOrder4Store(ctx *jxcontext.Context, order *model.GoodsOrder, storeID int, printType string) (printResult *partner.PrinterStatus, err error) {
func PrintOrderByOrder4Store(ctx *jxcontext.Context, order *model.GoodsOrder, storeID int, printType string, afs *model.AfsOrder) (printResult *partner.PrinterStatus, err error) {
globals.SugarLogger.Debugf("PrintOrderByOrder4Store orderID:%s", order.VendorOrderID)
db := dao.GetDB()
store, err := getStore4Print(db, storeID)
@@ -91,7 +91,7 @@ func PrintOrderByOrder4Store(ctx *jxcontext.Context, order *model.GoodsOrder, st
}
}
printResult, err = handler.PrintOrder(ctx, store, storeDetail, order, printType)
printResult, err = handler.PrintOrder(ctx, store, storeDetail, order, printType, afs)
if err == nil {
dao.SetOrderPrintFlag(db, ctx.GetUserName(), order.VendorOrderID, order.VendorID, true)
}

View File

@@ -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, printType string) (printerStatus *PrinterStatus, err error)
PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (printerStatus *PrinterStatus, err error)
PrintStore(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, vendorId int) (printerStatus *PrinterStatus, err error)
PrintCancelOrRefundOrder(ctx *jxcontext.Context, printType int, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *PrinterStatus, err error)

View File

@@ -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, printType string) (printerStatus *partner.PrinterStatus, err error) {
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (printerStatus *partner.PrinterStatus, err error) {
globals.SugarLogger.Debugf("feie PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID)
if len(order.Skus) == 0 {
return

View File

@@ -238,15 +238,13 @@ 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, printType string) (printerStatus *partner.PrinterStatus, err error) {
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, afs *model.AfsOrder) (printerStatus *partner.PrinterStatus, err error) {
globals.SugarLogger.Debugf("jxprint PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID)
if storeDetail.PrinterVendorID != model.VendorIDJxprint {
return nil, nil
}
if len(order.Skus) == 0 {
return
}
printData := ManagerOrderPrint(order, store.Tel1, storeDetail)
printData := ManagerOrderPrint(order, store.Tel1, storeDetail, printType, afs)
//printData[BigFont] = "small"
//if store.PrinterFontSize == partner.PrinterFontSizeBig || store.PrinterFontSize == partner.PrinterFontSizeBig2 {
// printData[BigFont] = "big"

View File

@@ -63,7 +63,7 @@ type SkuListPrintOrder struct {
}
// ManagerOrderPrint 京西云参数组装(订单参数)
func ManagerOrderPrint(order *model.GoodsOrder, storeTel string, storeDetail *dao.StoreDetail) map[string]string {
func ManagerOrderPrint(order *model.GoodsOrder, storeTel string, storeDetail *dao.StoreDetail, printType string, afsOrder *model.AfsOrder) map[string]string {
printOrder := make(map[string]string, 0)
skuList := make([]*SkuListPrintOrder, 0, 0)
// 获取品牌名称
@@ -122,6 +122,12 @@ func ManagerOrderPrint(order *model.GoodsOrder, storeTel string, storeDetail *da
printOrder[RiderName] = bill.CourierName
printOrder[RiderPhone] = bill.CourierMobile
}
if printType == "afs" {
printOrder[AfsOrderStatus] = utils.Int2Str(afsOrder.Status)
printOrder[RejectionReason] = afsOrder.VendorReasonType
printOrder[AfsOrderStatus] = utils.Int2Str(afsOrder.Status)
printOrder[CustcareRefundReason] = afsOrder.ReasonDesc
}
return printOrder
}

View File

@@ -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, printType string) (printerStatus *partner.PrinterStatus, err error) {
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (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) {

View File

@@ -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, printType string) (printerStatus *partner.PrinterStatus, err error) {
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (printerStatus *partner.PrinterStatus, err error) {
globals.SugarLogger.Debugf("yilianyun PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID)
if len(order.Skus) == 0 {
return

View File

@@ -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, printType string) (printerStatus *partner.PrinterStatus, err error) {
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (printerStatus *partner.PrinterStatus, err error) {
globals.SugarLogger.Debugf("zhongwu PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID)
content := ""
if store.PrinterFontSize == partner.PrinterFontSizeBig {

View File

@@ -3,6 +3,7 @@ package jd
import (
"fmt"
"git.rosy.net.cn/jx-callback/business/jxstore/event"
"git.rosy.net.cn/jx-callback/business/jxutils/netprinter"
"strings"
"time"
@@ -334,6 +335,9 @@ func (c *PurchaseHandler) OnStoreMsg(vendorOrgCode string, msg *jdapi.CallbackOr
vendorStoreID := msg.BillID
if storeStatus, err = c.GetStoreStatus(jxcontext.AdminCtx, vendorOrgCode, 0, vendorStoreID); err == nil {
err = partner.CurStoreManager.OnStoreStatusChanged(vendorStoreID, model.VendorIDJD, storeStatus)
storeDetail, _ := dao.GetStoreDetailByVendorStoreID(dao.GetDB(), vendorStoreID, model.VendorIDEBAI, "")
netprinter.PrintStoreStatus(jxcontext.AdminCtx, storeDetail, model.VendorIDMTWM, -9)
} else {
// 可能在门店删除的情况下会出查不到门店的错误
if errExt, ok := err.(*utils.ErrorWithCode); ok && errExt.IntCode() == 4 {

View File

@@ -560,7 +560,7 @@ func OnPayFinished(orderPay *model.OrderPay) (err error) {
//如果是物料的订单,直接到拣货完成,配送中的状态
if order.OrderType != model.OrderTypeNormal {
if order.OrderType != model.OrderTypeDefendPrice {
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder)
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order, model.PrintTypeOrder, nil)
}
PickupGoods(order, false, "jxadmin")
} else {