1、优化优惠券发放数量统计;
This commit is contained in:
parent
cafc26e5bd
commit
6f3fef1e6e
|
@ -458,7 +458,7 @@ func StartCouponIssuanceTask(req *ErpMarketingCouponStartReq, taskList []CouponI
|
|||
}
|
||||
|
||||
// 发放优惠券
|
||||
err = issueCouponsToUsers(users, req.ErpCouponId)
|
||||
count, err := issueCouponsToUsers(users, req.ErpCouponId)
|
||||
if err != nil {
|
||||
log.Printf("发放优惠券失败: %v", err)
|
||||
return err
|
||||
|
@ -466,7 +466,7 @@ func StartCouponIssuanceTask(req *ErpMarketingCouponStartReq, taskList []CouponI
|
|||
|
||||
// 更新任务进度:记录处理到的最后一个用户ID
|
||||
lastUserID = users[len(users)-1].ID
|
||||
nTotalCount += len(users)
|
||||
nTotalCount += count
|
||||
//err = updateTaskProgress(req.ErpCouponId, lastUserID, err.Error())
|
||||
//if err != nil {
|
||||
// log.Printf("更新任务进度失败: %v", err)
|
||||
|
@ -626,14 +626,15 @@ func isEligibleForCoupon(user UserInfo, erpCoupon ErpCoupon) bool {
|
|||
}
|
||||
}
|
||||
|
||||
func issueCouponsToUsers(users []UserInfo, erpCouponId []uint32) error {
|
||||
func issueCouponsToUsers(users []UserInfo, erpCouponId []uint32) (int, error) {
|
||||
var erpCoupon []ErpCoupon
|
||||
err := orm.Eloquent.Table("erp_coupon").Where("id in ?", erpCouponId).Find(&erpCoupon).Error
|
||||
if err != nil || err == RecordNotFound {
|
||||
logger.Error("query erp_coupon err:", logger.Field("err", err))
|
||||
return err
|
||||
return 0, err
|
||||
}
|
||||
|
||||
var nSendCount int
|
||||
for _, user := range users {
|
||||
// 根据条件发放优惠券
|
||||
if isEligibleForCoupon(user, erpCoupon[0]) {
|
||||
|
@ -642,7 +643,7 @@ func issueCouponsToUsers(users []UserInfo, erpCouponId []uint32) error {
|
|||
err = orm.Eloquent.Table("coupon").Where("erp_coupon_id in ?", erpCouponId).Find(&coupons).Error
|
||||
if err != nil {
|
||||
logger.Error("query coupon err:", logger.Field("err", err))
|
||||
return err
|
||||
return 0, err
|
||||
}
|
||||
|
||||
for _, coupon := range coupons {
|
||||
|
@ -669,7 +670,7 @@ func issueCouponsToUsers(users []UserInfo, erpCouponId []uint32) error {
|
|||
if err != nil {
|
||||
log.Printf("更新任务进度失败: %v", err)
|
||||
}
|
||||
return err
|
||||
return 0, err
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -708,9 +709,11 @@ func issueCouponsToUsers(users []UserInfo, erpCouponId []uint32) error {
|
|||
logger.Error(err.Error())
|
||||
}
|
||||
}
|
||||
|
||||
nSendCount++
|
||||
}
|
||||
}
|
||||
return nil
|
||||
return nSendCount, nil
|
||||
}
|
||||
|
||||
func ComposeSMSContent(content string) string {
|
||||
|
|
Loading…
Reference in New Issue
Block a user