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