package call import ( "github.com/liangdas/mqant/log" "server/common" "server/db" "server/pb" "time" ) func GetPddData(uid int) (result *common.PddDataNew, err error) { pdd := GetConfigPdd() err = db.Mysql().C().Model(&common.PddDataNew{}).Where("uid = ?", uid).Find(&result).Error if err != nil { log.Error("get pdd data err, %s", err.Error()) return } now := time.Now() if result.ID == 0 { result = &common.PddDataNew{ UID: uid, Time: now.Unix(), Spin: pdd.FreeCount, ExpiredAt: now.AddDate(0, 0, pdd.Cycle).Unix(), FreeSpinAt: now.Unix(), } err = db.Mysql().C().Model(&common.PddDataNew{}).Create(result).Error if err != nil { log.Error("create pdd data err, %s", err.Error()) return } } else { if result.ExpiredAt < now.Unix() { // 重置 updatesValue := map[string]interface{}{ "amount": "", "spin": pdd.FreeCount, "expired_at": now.AddDate(0, 0, pdd.Cycle).Unix(), "inviter_amount": 0, "free_spin_at": now.Unix(), } err = db.Mysql().C().Model(&common.PddDataNew{}).Where("id = ?", result.ID). Updates(updatesValue).Error if err != nil { log.Error("update pdd data err, %s", err.Error()) return } } } return } func GetWeekCardData(uid int) (result *common.WeekCardData, err error) { err = db.Mysql().C().Model(&common.WeekCardData{}).Where("uid = ?", uid).Find(&result).Error if err != nil { log.Error("get week card data err, %s", err.Error()) return } return } func CheckPdd(uid int) { pddData, err := GetPddData(uid) if err != nil { return } if pddData.Spin > 0 { PushRed(uid, pb.RedPointModule_RedPointPdd, uint32(pddData.Spin)) } }