| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package transaction
- import (
- "runtime/debug"
- "bet24.com/database"
- "bet24.com/log"
- )
- type trans_robot_login_in struct {
- GameID int
- ServerName string
- MaxBeans int
- MinBeans int
- IsChip bool
- }
- type trans_robot_login_out struct {
- UserID int //用户ID
- Password string //登陆密码(md5密文)
- Levels1 int
- Levels2 int
- Levels3 int
- }
- type trans_robot_login struct {
- database.Trans_base
- In trans_robot_login_in
- Out trans_robot_login_out
- }
- func NewTransRobotLogin() *trans_robot_login {
- return &trans_robot_login{}
- }
- func (this *trans_robot_login) DoAction(ch chan<- interface{}) {
- defer func() {
- if err := recover(); err != nil {
- log.Release("transaction recover %v", err)
- log.Release("%s", debug.Stack())
- }
- if ch != nil {
- ch <- this
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- //游客登陆
- statement.SetProcName("prGS_MachineUserLogin")
- statement.AddParamter("@intGameID", database.AdParamInput, database.AdInteger, 4, this.In.GameID)
- statement.AddParamter("@chvServerName", database.AdParamInput, database.AdNVarChar, 128, this.In.ServerName)
- statement.AddParamter("@intMaxBeans", database.AdParamInput, database.AdBigint, 8, this.In.MaxBeans)
- statement.AddParamter("@intMinBeans", database.AdParamInput, database.AdBigint, 8, this.In.MinBeans)
- statement.AddParamter("@intUserID", database.AdParamOutput, database.AdInteger, 4, this.Out.UserID)
- statement.AddParamter("@chvPwd", database.AdParamOutput, database.AdVarChar, 32, this.Out.Password)
- statement.AddParamter("@intLevels1", database.AdParamOutput, database.AdInteger, 4, this.Out.Levels1)
- statement.AddParamter("@intLevels2", database.AdParamOutput, database.AdInteger, 4, this.Out.Levels2)
- statement.AddParamter("@intLevels3", database.AdParamOutput, database.AdInteger, 4, this.Out.Levels3)
- sqlstring := statement.GenSql()
- //log.Debug(sqlstring)
- retRows := CenterDB.ExecSql(sqlstring)
- if len(retRows) <= 0 {
- this.State = false
- return
- }
- this.State = true
- ret := retRows[0]
- this.Out.UserID = int((ret[0]).(int64))
- this.Out.Password = (ret[1]).(string)
- this.Out.Levels1 = int((ret[2]).(int64))
- this.Out.Levels2 = int((ret[3]).(int64))
- this.Out.Levels3 = int((ret[4]).(int64))
- }
|