| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- package signin
- import (
- "encoding/json"
- "runtime/debug"
- "bet24.com/database"
- "bet24.com/log"
- "bet24.com/servers/coreservice/dbengine"
- )
- // 系统签到数值列表
- func getSignList() []Signin {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction sign.getSignList err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_Sign_GetList")
- sqlstring := statement.GenSql()
- log.Debug(sqlstring)
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- rowLen := len(retRows)
- var signs []Signin
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out Signin
- out.Id = int((ret[0]).(int64))
- award := (ret[1]).(string)
- out.DoubleVipLevel = int((ret[2]).(int64))
- if award != "" {
- if err := json.Unmarshal([]byte(award), &out.Award); err != nil {
- log.Error("sign.getSignList unmarshal err %v ==>Id=%d award=%s", err, out.Id, award)
- return nil
- }
- }
- signs = append(signs, out)
- }
- return signs
- }
- // 系统连续签到数值列表
- func getContinueAwardList() []*ContinueAward {
- defer func() {
- if err := recover(); err != nil {
- log.Error("sign.getContinueAwardList transaction err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_Sign_GetContinueList")
- sqlstring := statement.GenSql()
- log.Debug(sqlstring)
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- rowLen := len(retRows)
- var awards []*ContinueAward
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out ContinueAward
- out.Day = int((ret[0]).(int64))
- award := (ret[1]).(string)
- if award != "" {
- if err := json.Unmarshal([]byte(award), &out.Award); err != nil {
- log.Error("sign.getContinueAwardList unmarshal err %v", err)
- return nil
- }
- }
- awards = append(awards, &out)
- }
- return awards
- }
- // 用户签到列表
- func userSignList(userId int) []*Signin {
- defer func() {
- if err := recover(); err != nil {
- log.Error("sign.userSignList transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserSign_GetList")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlstring := statement.GenSql()
- log.Debug(sqlstring)
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- rowLen := len(retRows)
- var signs []*Signin
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out Signin
- out.Id = int((ret[0]).(int64))
- out.SignTime = int((ret[1]).(int64))
- if out.SignTime < 0 {
- out.SignTime = 0
- }
- signs = append(signs, &out)
- }
- return signs
- }
- // 更新用户签到信息
- func updateUserSign(userId, signId, signTime int) {
- defer func() {
- if err := recover(); err != nil {
- log.Error("sign.updateUserSign transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserSign_Update")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@SignID", database.AdParamInput, database.AdInteger, 4, signId)
- statement.AddParamter("@SignTime", database.AdParamInput, database.AdInteger, 4, signTime)
- sqlstring := statement.GenSql()
- log.Debug(sqlstring)
- dbengine.CenterDB.ExecSql(sqlstring)
- }
- // 用户连续签到信息
- func userContinueSignList(userId int) []*ContinueAward {
- defer func() {
- if err := recover(); err != nil {
- log.Error("sign.userContinueSignList transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserSign_GetContinueList")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlstring := statement.GenSql()
- log.Debug(sqlstring)
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- rowLen := len(retRows)
- var continues []*ContinueAward
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out ContinueAward
- out.Day = int((ret[0]).(int64))
- out.Status = int((ret[1]).(int64))
- continues = append(continues, &out)
- }
- return continues
- }
- // 更新用户连续签到信息
- func updateUserSignContinue(userId, day, status int) {
- defer func() {
- if err := recover(); err != nil {
- log.Error("sign.updateUserSignContinue transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserSign_UpdateContinue")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@Day", database.AdParamInput, database.AdInteger, 4, day)
- statement.AddParamter("@Status", database.AdParamInput, database.AdInteger, 4, status)
- sqlstring := statement.GenSql()
- //log.Debug(sqlstring)
- dbengine.CenterDB.ExecSql(sqlstring)
- }
|