From 7c44c939b90b015faa6dba596ddcee4e7773fb15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 10 Feb 2026 10:35:36 +0800 Subject: [PATCH] 1 --- business/jxutils/netprinter/netprinter.go | 13 ++++++++++--- business/model/const.go | 7 ++++--- business/model/dao/dao_order.go | 9 +++------ 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/business/jxutils/netprinter/netprinter.go b/business/jxutils/netprinter/netprinter.go index 4b204abbc..1d6fccd94 100644 --- a/business/jxutils/netprinter/netprinter.go +++ b/business/jxutils/netprinter/netprinter.go @@ -132,9 +132,9 @@ func PrintStoreStatus(ctx *jxcontext.Context, storeDetail *dao.StoreDetail, vend // PrintRefundOrCancelOrder 打印退单或取消订单信息 func PrintRefundOrCancelOrder(ctx *jxcontext.Context, printType int, order *model.GoodsOrder, storeID int) (printResult *partner.PrinterStatus, err error) { db := dao.GetDB() - list, _ := dao.GetOrderStatusList(order.VendorOrderID, model.OrderTypeAfsOrder, order.VendorID) - if len(list) > 1 { - return nil, nil + list, _ := dao.GetOrderStatusList(order.VendorOrderID, model.OrderTypePrintAfsOrder, order.VendorID) + if list != nil && list[0].VendorOrderID != "" { + return nil, err } store, err := getStore4Print(db, storeID) if err == nil { @@ -149,6 +149,13 @@ func PrintRefundOrCancelOrder(ctx *jxcontext.Context, printType int, order *mode printResult, err = handler.PrintCancelOrRefundOrder(ctx, printType, store, storeDetail, order) if err == nil { dao.SetOrderPrintFlag(db, ctx.GetUserName(), order.VendorOrderID, order.VendorID, true) + orderStatus := model.Order2Status(order) + orderStatus.OrderType = model.OrderTypePrintAfsOrder + orderStatus.StatusTime = time.Now() + orderStatus.Status = model.AfsOrderStatusFinished + orderStatus.VendorStatus = "success" + orderStatus.Remark = fmt.Sprintf("%d[1取消/0售后],打印推送完成", printType) + dao.CreateEntity(dao.GetDB(), orderStatus) } } if err != nil { diff --git a/business/model/const.go b/business/model/const.go index b69367f78..94c7fb08b 100644 --- a/business/model/const.go +++ b/business/model/const.go @@ -229,9 +229,10 @@ var ( ) const ( - OrderTypeOrder = 1 // 新订单 - OrderTypeWaybill = 2 // 运单 - OrderTypeAfsOrder = 3 // 售后单 + OrderTypeOrder = 1 // 新订单 + OrderTypeWaybill = 2 // 运单 + OrderTypeAfsOrder = 3 // 售后单 + OrderTypePrintAfsOrder = 4 // 售后打印 ) // https://blog.csdn.net/a13570320979/article/details/51366355 diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go index fab6c83fc..c9e06ebe3 100644 --- a/business/model/dao/dao_order.go +++ b/business/model/dao/dao_order.go @@ -2106,14 +2106,11 @@ type StoreOrderRank struct { TotalOrders int `json:"total_orders"` } -func GetOrderStatusList(vendorOrderId string, orderType, vendorId int) ([]*model.OrderStatus, error) { - sql := ` SELECT * FROM order_status WHERE ref_vendor_order_id = ? AND vendor_id = ? AND order_type = ? ` +func GetOrderStatusList(vendorOrderId string, orderType, vendorId int) (orderStatus []*model.OrderStatus, err error) { + sql := ` SELECT * FROM order_status WHERE ref_vendor_order_id = ? AND vendor_id = ? AND order_type = ? ORDER BY status_time asc ` param := []interface{}{vendorOrderId, vendorId, orderType} - - orderStatus := make([]*model.OrderStatus, 0, 0) - if err := GetRows(GetDB(), &orderStatus, sql, param); err != nil { + if err = GetRows(GetDB(), &orderStatus, sql, param); err != nil { return nil, err } - return orderStatus, nil }