trans_getUserInfo.go 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package transaction
  2. import (
  3. "runtime/debug"
  4. "bet24.com/database"
  5. "bet24.com/log"
  6. )
  7. // 玩家大厅基本信息
  8. type trans_getInfo_in struct {
  9. UserID int `binding:"required"`
  10. }
  11. type trans_getInfo_out struct {
  12. UserID int //用户ID
  13. NickName string //昵称
  14. ServerName string //服务器名
  15. FaceID int //头像ID
  16. }
  17. type trans_getInfo struct {
  18. database.Trans_base
  19. In trans_getInfo_in
  20. Out trans_getInfo_out
  21. }
  22. func NewTransGetInfo() *trans_getInfo {
  23. obj := new(trans_getInfo)
  24. return obj
  25. }
  26. func (this *trans_getInfo) DoAction(ch chan<- interface{}) {
  27. defer func() {
  28. if err := recover(); err != nil {
  29. log.Release("transaction recover %v", err)
  30. log.Release("%s", debug.Stack())
  31. }
  32. if ch != nil {
  33. ch <- this
  34. }
  35. }()
  36. statement := database.NewStatement()
  37. statement.SetNeedReturnValue(false)
  38. statement.SetOpenRecordSet(true)
  39. statement.SetProcName("WS_AllUser_GetInfo")
  40. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, this.In.UserID)
  41. sqlstring := statement.GenSql()
  42. //log.Debug(sqlstring)
  43. retRows := CenterDB.ExecSql(sqlstring)
  44. if len(retRows) <= 0 {
  45. this.State = false
  46. return
  47. }
  48. this.State = true
  49. ret := retRows[0]
  50. this.Out.UserID = int((ret[0]).(int64))
  51. this.Out.NickName = (ret[1]).(string)
  52. this.Out.ServerName = (ret[2]).(string)
  53. this.Out.FaceID = int((ret[3]).(int64))
  54. }