transaction.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package redpoint
  2. import (
  3. "bet24.com/database"
  4. "bet24.com/log"
  5. "bet24.com/servers/common"
  6. "bet24.com/servers/coreservice/dbengine"
  7. "runtime/debug"
  8. )
  9. // 获取小红点数据
  10. func load(userId int) *pointInfo {
  11. defer func() {
  12. if err := recover(); err != nil {
  13. log.Error("transaction recover err %v", err)
  14. log.Error("%s", debug.Stack())
  15. }
  16. }()
  17. info := new(pointInfo)
  18. statement := database.NewStatement()
  19. statement.SetNeedReturnValue(false)
  20. statement.SetOpenRecordSet(true)
  21. statement.SetProcName("WS_RedPoint_Check")
  22. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
  23. sqlstring := statement.GenSql()
  24. retRows := dbengine.CenterDB.ExecSql(sqlstring)
  25. rowLen := len(retRows)
  26. if rowLen <= 0 {
  27. return info
  28. }
  29. ret := retRows[0]
  30. crdateStr := (ret[0]).(string)
  31. crdate := common.ParseTime(crdateStr)
  32. info.SignTip = !common.IsSameDay(common.GetStamp(crdate), common.GetTimeStamp())
  33. info.MailTip = (ret[1]).(int64) == 1
  34. info.MsgTip = (ret[2]).(int64) == 1
  35. info.SpreadTip = (ret[3]).(int64) == 1
  36. info.ReviewTip = (ret[4]).(int64) == 1
  37. info.AgentUpTip = (ret[5]).(int64) > 0
  38. if len(ret) > 6 {
  39. info.MailVipTip = (ret[6]).(int64) == 1
  40. }
  41. return info
  42. }