- 调整CreateConsumerFromOrders
This commit is contained in:
@@ -161,6 +161,10 @@ func TryAddStoreBossRole4StoreByMobile(ctx *jxcontext.Context, storeID int, mobi
|
|||||||
|
|
||||||
func HandleOrder4Consignee(order *model.GoodsOrder) (err error) {
|
func HandleOrder4Consignee(order *model.GoodsOrder) (err error) {
|
||||||
var user *model.User
|
var user *model.User
|
||||||
|
mobileNumber := jxutils.GetRealMobile4Order(order)
|
||||||
|
if mobileNumber == "" && order.VendorUserID == "" {
|
||||||
|
return fmt.Errorf("订单:%s手机号与平台用户标识都是空", order.VendorOrderID)
|
||||||
|
}
|
||||||
authType := jxutils.GetAuthType4Vendor(order.VendorID)
|
authType := jxutils.GetAuthType4Vendor(order.VendorID)
|
||||||
if authType == "" {
|
if authType == "" {
|
||||||
msg := fmt.Sprintf("平台ID:%d当前不被支持,请联系开发", order.VendorID)
|
msg := fmt.Sprintf("平台ID:%d当前不被支持,请联系开发", order.VendorID)
|
||||||
@@ -169,7 +173,6 @@ func HandleOrder4Consignee(order *model.GoodsOrder) (err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
oeratorName := order.VendorOrderID
|
oeratorName := order.VendorOrderID
|
||||||
mobileNumber := jxutils.GetRealMobile4Order(order)
|
|
||||||
db := dao.GetDB()
|
db := dao.GetDB()
|
||||||
if mobileNumber != "" {
|
if mobileNumber != "" {
|
||||||
userList, _, err2 := dao.GetUsers(db, 0, "", nil, "", mobileNumber, 0, 0)
|
userList, _, err2 := dao.GetUsers(db, 0, "", nil, "", mobileNumber, 0, 0)
|
||||||
|
|||||||
@@ -1045,7 +1045,7 @@ func CreateConsumerFromOrders(ctx *jxcontext.Context, vendorIDs []int, fromDate,
|
|||||||
sqlParams = append(sqlParams, vendorIDs)
|
sqlParams = append(sqlParams, vendorIDs)
|
||||||
}
|
}
|
||||||
if !isForce {
|
if !isForce {
|
||||||
sql += " AND t1.vendor_user_id = ''"
|
sql += " AND t1.user_id = ''"
|
||||||
}
|
}
|
||||||
var orderList []*GoodsOrderWithOriginal
|
var orderList []*GoodsOrderWithOriginal
|
||||||
if err = dao.GetRows(db, &orderList, sql, sqlParams...); err == nil {
|
if err = dao.GetRows(db, &orderList, sql, sqlParams...); err == nil {
|
||||||
@@ -1054,33 +1054,35 @@ func CreateConsumerFromOrders(ctx *jxcontext.Context, vendorIDs []int, fromDate,
|
|||||||
subTask := tasksch.NewParallelTask(fmt.Sprintf("处理日期:%s的订单", utils.Time2DateStr(curDate)), tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(isContinueWhenError), ctx,
|
subTask := tasksch.NewParallelTask(fmt.Sprintf("处理日期:%s的订单", utils.Time2DateStr(curDate)), tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(isContinueWhenError), ctx,
|
||||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
order := batchItemList[0].(*GoodsOrderWithOriginal)
|
order := batchItemList[0].(*GoodsOrderWithOriginal)
|
||||||
if isForce || order.VendorUserID == "" {
|
if isForce || order.UserID == "" {
|
||||||
if handler := partner.GetPurchasePlatformFromVendorID(order.VendorID); handler != nil {
|
if handler := partner.GetPurchasePlatformFromVendorID(order.VendorID); handler != nil {
|
||||||
var order2 *model.GoodsOrder
|
var updateFields []string
|
||||||
if order.OriginalData != "" {
|
if isForce || order.VendorUserID == "" {
|
||||||
var orderData map[string]interface{}
|
var order2 *model.GoodsOrder
|
||||||
if utils.UnmarshalUseNumber([]byte(order.OriginalData), &orderData) == nil {
|
if order.OriginalData != "" {
|
||||||
order2 = handler.Map2Order(orderData)
|
var orderData map[string]interface{}
|
||||||
if order2.VendorUserID == "" {
|
if utils.UnmarshalUseNumber([]byte(order.OriginalData), &orderData) == nil {
|
||||||
order2 = nil
|
order2 = handler.Map2Order(orderData)
|
||||||
|
if order2.VendorUserID == "" {
|
||||||
|
order2 = nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if order2 == nil && order.VendorID == model.VendorIDMTWM && time.Now().Sub(curDate) < 30*24*time.Hour {
|
||||||
|
order2, err = handler.GetOrder(order.VendorOrderID)
|
||||||
|
}
|
||||||
|
if order2 != nil {
|
||||||
|
if order2.VendorUserID != "" && order.VendorUserID != order2.VendorUserID {
|
||||||
|
updateFields = append(updateFields, "VendorUserID")
|
||||||
|
order.VendorUserID = order2.VendorUserID
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if order2 == nil && order.VendorID == model.VendorIDMTWM && time.Now().Sub(curDate) < 30*24*time.Hour {
|
if err = cms.HandleOrder4Consignee(&order.GoodsOrder); err == nil {
|
||||||
order2, err = handler.GetOrder(order.VendorOrderID)
|
updateFields = append(updateFields, "UserID")
|
||||||
}
|
}
|
||||||
if order2 != nil {
|
if len(updateFields) > 0 {
|
||||||
var updateFields []string
|
dao.UpdateEntity(db, &order.GoodsOrder, updateFields...)
|
||||||
if order2.VendorUserID != "" && order.VendorUserID != order2.VendorUserID {
|
|
||||||
updateFields = append(updateFields, "VendorUserID")
|
|
||||||
order.VendorUserID = order2.VendorUserID
|
|
||||||
}
|
|
||||||
if err = cms.HandleOrder4Consignee(&order.GoodsOrder); err == nil {
|
|
||||||
updateFields = append(updateFields, "UserID")
|
|
||||||
}
|
|
||||||
if len(updateFields) > 0 {
|
|
||||||
dao.UpdateEntity(db, &order.GoodsOrder, updateFields...)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user