1
This commit is contained in:
@@ -38,8 +38,6 @@ func (c *OrderManager) OnAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
|
||||
}
|
||||
|
||||
func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *model.OrderStatus, isAdjust bool) (err error) {
|
||||
globals.SugarLogger.Debugf("afsOrder 1 := %s", utils.Format4Output(afsOrder, false))
|
||||
globals.SugarLogger.Debugf("orderStatus 1 := %s", utils.Format4Output(orderStatus, false))
|
||||
db := dao.GetDB()
|
||||
c.setAfsOrderID(db, orderStatus)
|
||||
if afsOrder.AfsOrderID == "" {
|
||||
@@ -73,7 +71,7 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
|
||||
}()
|
||||
|
||||
isDuplicated, err := addOrderOrWaybillStatus(orderStatus, db)
|
||||
if err != nil || isDuplicated {
|
||||
if err != nil || (isDuplicated && orderStatus.VendorID != model.VendorIDJX) {
|
||||
if err == nil {
|
||||
dao.Commit(db, txDB)
|
||||
}
|
||||
@@ -82,14 +80,10 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
|
||||
|
||||
var existAfsOrder *model.AfsOrder
|
||||
if existAfsOrder, err = c.loadAfsOrder(db, afsOrder.AfsOrderID, afsOrder.VendorID); err != nil {
|
||||
globals.SugarLogger.Debugf("loadAfsOrder 1 := %s", utils.Format4Output(existAfsOrder, false))
|
||||
globals.SugarLogger.Debugf("loadAfsOrder err := %s", utils.Format4Output(err, false))
|
||||
if !dao.IsNoRowsError(err) {
|
||||
return err
|
||||
}
|
||||
}
|
||||
globals.SugarLogger.Debugf("existAfsOrder 1 := %s", utils.Format4Output(existAfsOrder, false))
|
||||
globals.SugarLogger.Debugf("existAfsOrder != nil := %s", utils.Format4Output(existAfsOrder != nil, false))
|
||||
|
||||
if existAfsOrder != nil {
|
||||
// todo 可能导致状态回绕
|
||||
@@ -104,6 +98,9 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
|
||||
if afsOrder.RefundType == model.AfsTypeFullRefund {
|
||||
isAdjust = true
|
||||
}
|
||||
globals.SugarLogger.Debugf("afsOrder 1 := %s", utils.Format4Output(afsOrder, false))
|
||||
globals.SugarLogger.Debugf("orderStatus 1 := %s", utils.Format4Output(orderStatus, false))
|
||||
globals.SugarLogger.Debugf("isAdjust 1 := %s", utils.Format4Output(isAdjust, false))
|
||||
if err = c.SaveAfsOrder(db, afsOrder, isAdjust); err != nil {
|
||||
globals.SugarLogger.Debugf("SaveAfsOrder := %s", utils.Format4Output(err, false))
|
||||
return err
|
||||
@@ -116,6 +113,9 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
|
||||
}
|
||||
|
||||
func (c *OrderManager) SaveAfsOrder(db *dao.DaoDB, afsOrder *model.AfsOrder, isDeleteFirst bool) (err error) {
|
||||
defer func() {
|
||||
globals.SugarLogger.Debugf("===========err defer %v", err)
|
||||
}()
|
||||
if db == nil {
|
||||
db = dao.GetDB()
|
||||
}
|
||||
@@ -156,6 +156,8 @@ func (c *OrderManager) SaveAfsOrder(db *dao.DaoDB, afsOrder *model.AfsOrder, isD
|
||||
afsOrder.RefundMoneyByCal = afsOrder.SkuUserMoney + afsOrder.FreightUserMoney + deductionsByPm - afsOrder.PmRefundMoney
|
||||
// order.TotalMoney += order.SkuJxMoney // 退款单京西补贴部分先不作计算
|
||||
if err = dao.CreateEntity(db, afsOrder); err != nil {
|
||||
globals.SugarLogger.Debugf("=CreateEntity 1 ==========: %v", utils.Format4Output(err, false))
|
||||
globals.SugarLogger.Debugf("=afsOrder 1 ==========: %v", utils.Format4Output(afsOrder, false))
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -165,6 +167,8 @@ func (c *OrderManager) SaveAfsOrder(db *dao.DaoDB, afsOrder *model.AfsOrder, isD
|
||||
utils.Float64TwoInt64(float64(afsOrder.RefundMoneyByCal-afsOrder.PmSkuSubsidyMoney)*float64(orderSku.UserMoney+orderSku.PmSubsidyMoney-orderSku.PmSkuSubsidyMoney)/float64(afsOrder.SkuUserMoney+afsOrder.PmSubsidyMoney-afsOrder.PmSkuSubsidyMoney))
|
||||
afsOrder.Skus[0].RefundMoneyByCal += orderSku.RefundMoneyByCal
|
||||
if err = dao.CreateEntity(db, orderSku); err != nil {
|
||||
globals.SugarLogger.Debugf("=CreateEntity 1 ==========: %v", utils.Format4Output(err, false))
|
||||
globals.SugarLogger.Debugf("=afsOrder 1 ==========: %v", utils.Format4Output(afsOrder, false))
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ func callbackAfsMsg2Status(msg *CallbackMsg) *model.OrderStatus {
|
||||
RefVendorID: model.VendorIDJX,
|
||||
VendorStatus: msg.SubMsgType,
|
||||
Status: int(utils.Str2Int64WithDefault(msg.SubMsgType, 0)),
|
||||
StatusTime: utils.Timestamp2Time(msg.Timestamp),
|
||||
StatusTime: time.Now(),
|
||||
Remark: "",
|
||||
}
|
||||
return orderStatus
|
||||
|
||||
Reference in New Issue
Block a user