This commit is contained in:
邹宗楠
2026-02-10 10:35:36 +08:00
parent 70465e283e
commit 7c44c939b9
3 changed files with 17 additions and 12 deletions

View File

@@ -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 {

View File

@@ -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

View File

@@ -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
}