Commit cc86dcee authored by JiebinHu's avatar JiebinHu

fix:date

parent cc964ebf
...@@ -100,7 +100,7 @@ func Test(c *gin.Context) (*mycontext.MyContext, error) { ...@@ -100,7 +100,7 @@ func Test(c *gin.Context) (*mycontext.MyContext, error) {
} }
type GroupPowerDayStar struct { type GroupPowerDayStar struct {
Date string Date time.Time
GroupPowerId uint64 GroupPowerId uint64
Type groupPower_e.GroupPowerStarType Type groupPower_e.GroupPowerStarType
UserId uint64 UserId uint64
...@@ -133,27 +133,30 @@ func SyncStar(c *gin.Context) (*mycontext.MyContext, error) { ...@@ -133,27 +133,30 @@ func SyncStar(c *gin.Context) (*mycontext.MyContext, error) {
"week": time.Hour * 24 * 7 * 30, "week": time.Hour * 24 * 7 * 30,
"month": time.Hour * 24 * 7 * 30 * 2, "month": time.Hour * 24 * 7 * 30 * 2,
} }
num := len(stars)
for _, star := range stars { for _, star := range stars {
date, err := time.Parse("2006-01-02", star.Date)
if err != nil {
model.Log.Errorf("SyncStar date fail:%v", err)
continue
}
for _, period := range []string{"day", "week", "month"} { for _, period := range []string{"day", "week", "month"} {
var dateStr string var dateStr string
switch period { switch period {
case "day": case "day":
dateStr = date.Format("2006-01-02") dateStr = star.Date.Format("2006-01-02")
case "week": case "week":
dateStr = now.With(date).BeginningOfWeek().Format("2006-01-02") dateStr = now.With(star.Date).BeginningOfWeek().Format("2006-01-02")
case "month": case "month":
dateStr = now.With(date).BeginningOfMonth().Format("2006-01-02") dateStr = now.With(star.Date).BeginningOfMonth().Format("2006-01-02")
} }
key := groupPower_k.GetGroupPowerStarRankKey(star.Type, period, star.GroupPowerId, dateStr) key := groupPower_k.GetGroupPowerStarRankKey(star.Type, period, star.GroupPowerId, dateStr)
model.RedisCluster.ZIncrBy(model, key, float64(star.Score), fmt.Sprintf("%d", star.UserId)) model.RedisCluster.ZIncrBy(model, key, float64(star.Score), fmt.Sprintf("%d", star.UserId))
model.RedisCluster.Expire(model, key, ttl[period]) model.RedisCluster.Expire(model, key, ttl[period])
} }
} }
resp.ResponseOk(c, time.Now().Sub(t).Seconds()) type res struct {
Num int
Cost float64
}
resp.ResponseOk(c, res{
Num: num,
Cost: time.Now().Sub(t).Seconds(),
})
return myCtx, nil return myCtx, nil
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment