|
|
@ -85,7 +85,7 @@ func GenRedPack(amount, num int) []int { |
|
|
|
} |
|
|
|
|
|
|
|
// 提前生成红包
|
|
|
|
func GenRedEnvelope(aid int64, name string, rid int64, rule *models.ShakeRedEnvelopeRule) error { |
|
|
|
func GenRedEnvelope(aid int64, name string, rid int64, rule *models.ShakeRedEnvelopeRule, archId int) error { |
|
|
|
// 判断红包是否存在
|
|
|
|
// 根据算法提前生成红包
|
|
|
|
r := rand.New(rand.NewSource(time.Now().Unix())) |
|
|
@ -130,11 +130,9 @@ func GenRedEnvelope(aid int64, name string, rid int64, rule *models.ShakeRedEnve |
|
|
|
record.ShakeRedEnvelopeRuleId = rule.Id |
|
|
|
record.Amount = utils.Float64CusDecimal(float64(money)/float64(100), 2) |
|
|
|
record.IsDraw = -1 |
|
|
|
record.IsDelete = false |
|
|
|
record.CreatedAt = time.Now() |
|
|
|
record.UpdatedAt = time.Now() |
|
|
|
record.ArchId = archId |
|
|
|
|
|
|
|
if _, err := core.GetXormAuto().InsertOne(record); err != nil { |
|
|
|
if _, err := models.Add(record); err != nil { |
|
|
|
return err |
|
|
|
} |
|
|
|
sumMoney += money |
|
|
@ -149,10 +147,8 @@ func GenRedEnvelope(aid int64, name string, rid int64, rule *models.ShakeRedEnve |
|
|
|
record.ShakeRedEnvelopeRuleId = rule.Id |
|
|
|
record.Amount = rule.Single |
|
|
|
record.IsDraw = -1 |
|
|
|
record.IsDelete = false |
|
|
|
record.CreatedAt = time.Now() |
|
|
|
record.UpdatedAt = time.Now() |
|
|
|
if _, err := core.GetXormAuto().InsertOne(record); err != nil { |
|
|
|
record.ArchId = archId |
|
|
|
if _, err := models.Add(record); err != nil { |
|
|
|
return err |
|
|
|
} |
|
|
|
} |
|
|
@ -173,9 +169,8 @@ func GenRedEnvelope(aid int64, name string, rid int64, rule *models.ShakeRedEnve |
|
|
|
record.ShakeRedEnvelopeRuleId = rule.Id |
|
|
|
record.Amount = ladder.Single |
|
|
|
record.IsDraw = -1 |
|
|
|
record.CreatedAt = time.Now() |
|
|
|
record.UpdatedAt = time.Now() |
|
|
|
if _, err := core.GetXormAuto().InsertOne(record); err != nil { |
|
|
|
record.ArchId = archId |
|
|
|
if _, err := models.Add(record); err != nil { |
|
|
|
return err |
|
|
|
} |
|
|
|
} |
|
|
|