diff --git a/services/reward/operator.go b/services/reward/operator.go index c9f00b1bf..b66810c70 100644 --- a/services/reward/operator.go +++ b/services/reward/operator.go @@ -276,22 +276,5 @@ func generateOperateSerialNo(operateType models.RewardOperateType, rewardType mo return "", err } - - switch operateType { - case models.OperateTypeIncrease: - s += "1" - case models.OperateTypeDecrease: - s += "2" - default: - s += "9" - } - - switch rewardType { - case models.RewardTypePoint: - s += "1" - default: - s += "9" - } - return s, nil } diff --git a/services/reward/serial.go b/services/reward/serial.go index b6a47bbc3..349da1266 100644 --- a/services/reward/serial.go +++ b/services/reward/serial.go @@ -11,13 +11,14 @@ import ( func GetSerialNoByRedis() (string, error) { now := time.Now() - n, err := redis_client.IncrBy(redis_key.RewardSerialCounter(now), 1) + r := int64(rand.Intn(4)) + 1 + n, err := redis_client.IncrBy(redis_key.RewardSerialCounter(now), r) if err != nil { log.Error("GetSerialNoByRedis RewardSerialCounter error. %v", err) return "", err } - if n == 1 { - redis_client.Expire(redis_key.RewardSerialCounter(now), 5*time.Minute) + if n == r { + redis_client.Expire(redis_key.RewardSerialCounter(now), 2*time.Minute) } - return now.Format("200601021504") + fmt.Sprint(rand.Intn(10)) + fmt.Sprintf("%02d", n), nil + return now.Format("200601021504") + fmt.Sprintf("%03d", n) + fmt.Sprint(rand.Intn(10)), nil }