trans_bindTel.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package transaction
  2. import (
  3. "runtime/debug"
  4. item "bet24.com/servers/micros/item_inventory/proto"
  5. "bet24.com/database"
  6. "bet24.com/log"
  7. )
  8. // 绑定手机号
  9. type (
  10. trans_bindTel_in struct {
  11. UserID int // 用户ID
  12. Tel string // 手机号
  13. SMSCode string // 验证码
  14. }
  15. trans_bindTel_out struct {
  16. RetCode int // 操作结果
  17. Items []item.ItemPack
  18. }
  19. trans_bindTel struct {
  20. database.Trans_base
  21. In trans_bindTel_in
  22. Out trans_bindTel_out
  23. }
  24. )
  25. func NewTransBindTel() *trans_bindTel {
  26. return &trans_bindTel{}
  27. }
  28. func (this *trans_bindTel) DoAction() {
  29. defer func() {
  30. if err := recover(); err != nil {
  31. log.Error("transaction recover err %v", err)
  32. log.Error("%s", debug.Stack())
  33. }
  34. }()
  35. statement := database.NewStatement()
  36. statement.SetNeedReturnValue(false)
  37. statement.SetOpenRecordSet(true)
  38. statement.SetProcName("WS_UserTel_Bind")
  39. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, this.In.UserID)
  40. statement.AddParamter("@Tel", database.AdParamInput, database.AdVarChar, 32, this.In.Tel)
  41. statement.AddParamter("@RetCode", database.AdParamOutput, database.AdInteger, 4, this.Out.RetCode)
  42. sqlstring := statement.GenSql()
  43. retRows := CenterDB.ExecSql(sqlstring)
  44. if len(retRows) <= 0 {
  45. return
  46. }
  47. this.Out.RetCode = int((retRows[0][0]).(int64))
  48. }