transaction.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package signin
  2. import (
  3. "bet24.com/database"
  4. "bet24.com/log"
  5. pb "bet24.com/servers/micros/activityservice/proto"
  6. dbengine "bet24.com/servers/micros/dbengine/proto"
  7. "runtime/debug"
  8. )
  9. // 用户签到列表
  10. func userSignList(userId int) []*pb.Signin {
  11. defer func() {
  12. if err := recover(); err != nil {
  13. log.Error("sign.userSignList transaction recover err %v", err)
  14. log.Error("%s", debug.Stack())
  15. }
  16. }()
  17. statement := database.NewStatement()
  18. statement.SetNeedReturnValue(false)
  19. statement.SetOpenRecordSet(true)
  20. statement.SetProcName("WS_UserSign_GetList")
  21. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
  22. sqlstring := statement.GenSql()
  23. //log.Debug(sqlstring)
  24. retRows := dbengine.ExecuteRs(sqlstring)
  25. rowLen := len(retRows)
  26. var signs []*pb.Signin
  27. for i := 0; i < rowLen; i++ {
  28. ret := retRows[i]
  29. var out pb.Signin
  30. out.Id = int((ret[0]).(int64))
  31. out.SignTime = int((ret[1]).(int64))
  32. if out.SignTime < 0 {
  33. out.SignTime = 0
  34. }
  35. signs = append(signs, &out)
  36. }
  37. return signs
  38. }
  39. // 更新用户签到信息
  40. func updateUserSign(userId, signId, signTime int) {
  41. statement := database.NewStatement()
  42. statement.SetNeedReturnValue(false)
  43. statement.SetOpenRecordSet(true)
  44. statement.SetProcName("WS_UserSign_Update")
  45. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
  46. statement.AddParamter("@SignID", database.AdParamInput, database.AdInteger, 4, signId)
  47. statement.AddParamter("@SignTime", database.AdParamInput, database.AdInteger, 4, signTime)
  48. sqlstring := statement.GenSql()
  49. //log.Debug(sqlstring)
  50. dbengine.Execute(sqlstring)
  51. }