diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go index 3ea92e52b..e26b5f719 100644 --- a/business/model/dao/dao_order.go +++ b/business/model/dao/dao_order.go @@ -506,6 +506,22 @@ func GetStoreAfsOrderSkuList2(db *DaoDB, vendorOrderIDs []string) (afsSkuList [] return afsSkuList, err } +func GetOrderRefundSkuList(db *DaoDB, vendorOrderIDs []string) (afsSkuList []*model.OrderSkuFinancial, err error) { + sql := ` + SELECT t1.* + FROM order_sku_financial t1 + JOIN afs_order t2 ON t2.vendor_order_id = t1.vendor_order_id AND t2.vendor_id = t1.vendor_id AND t2.afs_order_id = t1.afs_order_id + WHERE t1.is_afs_order = 1 + ` + sqlParams := []interface{}{} + if len(vendorOrderIDs) > 0 { + sql += " AND t2.vendor_order_id IN (" + GenQuestionMarks(len(vendorOrderIDs)) + ")" + sqlParams = append(sqlParams, vendorOrderIDs) + } + err = GetRows(db, &afsSkuList, sql, sqlParams...) + return afsSkuList, err +} + func GetDailyFinishOrderList(db *DaoDB, storeID int, dateTime time.Time) (orderList []*model.OrderPickupTime, err error) { sql := ` SELECT t2.status_time, t1.pick_deadline diff --git a/business/partner/purchase/jx/phpjx/order_afs.go b/business/partner/purchase/jx/phpjx/order_afs.go index 78727962b..058b1f0c6 100644 --- a/business/partner/purchase/jx/phpjx/order_afs.go +++ b/business/partner/purchase/jx/phpjx/order_afs.go @@ -44,9 +44,9 @@ func OnAfsOrderMsg(msg *CallbackMsg) (err error) { func CheckOrderSkuCanRefund(db *dao.DaoDB, afsOrder *Data4AfsOrder) error { // 获取此订单商品吃否存在售后单 - refundFinancial, err := dao.GetStoreAfsOrderSkuList2(db, []string{afsOrder.VendorOrderID}) + refundFinancial, err := dao.GetOrderRefundSkuList(db, []string{afsOrder.VendorOrderID}) if err != nil && !strings.Contains(err.Error(), "no row found") { - return err + return nil } if len(refundFinancial) == model.NO {