| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367 |
- package agent
- import (
- "encoding/json"
- "runtime/debug"
- "bet24.com/servers/coreservice/dbengine"
- "bet24.com/database"
- "bet24.com/log"
- )
- // 申请
- func apply(userId int, memo string) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_Apply")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@Memo", database.AdParamInput, database.AdNVarChar, 4000, memo)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return 0
- }
- return int((retRows[0][0]).(int64))
- }
- // 绑码
- func bind(userId, higherUserID int) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_Bind")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@HigherUserID", database.AdParamInput, database.AdInteger, 4, higherUserID)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return 0
- }
- return int((retRows[0][0]).(int64))
- }
- // 代理信息
- func info(userId int) *info_out {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_GetInfo")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return nil
- }
- return &info_out{
- Members: int((retRows[0][0]).(int64)),
- Commission: int((retRows[0][1]).(int64)),
- Profit: int((retRows[0][2]).(int64)),
- Enabled: int((retRows[0][3]).(int64)),
- Crdate: (retRows[0][4]).(string),
- ValidMembers: int((retRows[0][5]).(int64)),
- }
- }
- // 会员列表
- func members(userId, pageIndex, pageSize int) *memberList {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var out memberList
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_GetMembers")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@PageIndex", database.AdParamInput, database.AdInteger, 4, pageIndex)
- statement.AddParamter("@PageSize", database.AdParamInput, database.AdInteger, 4, pageSize)
- statement.AddParamter("@RecordCount", database.AdParamOutput, database.AdInteger, 4, out.RecordCount)
- statement.AddParamter("@OnlineCount", database.AdParamOutput, database.AdInteger, 4, out.OnlineCount)
- sqlString := statement.GenSql()
- // log.Debug(sqlString)
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return &out
- }
- if rowLen > 1 {
- for i := 0; i < rowLen-1; i++ {
- ret := retRows[i]
- var info memberInfo
- info.UserID = int((ret[0]).(int64))
- info.BindTime = (ret[1]).(string)
- info.IsOnline = int((ret[2]).(int64))
- out.List = append(out.List, info)
- }
- }
- out.RecordCount = int((retRows[rowLen-1][0]).(int64))
- out.OnlineCount = int((retRows[rowLen-1][1]).(int64))
- return &out
- }
- // 代理统计
- func commissionStat(userId, pageIndex, pageSize int) *stat_out {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var out stat_out
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_CommissionStat")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@PageIndex", database.AdParamInput, database.AdInteger, 4, pageIndex)
- statement.AddParamter("@PageSize", database.AdParamInput, database.AdInteger, 4, pageSize)
- statement.AddParamter("@Commission", database.AdParamOutput, database.AdInteger, 4, out.Commission)
- statement.AddParamter("@Profit", database.AdParamOutput, database.AdInteger, 4, out.Profit)
- statement.AddParamter("@RecordCount", database.AdParamOutput, database.AdInteger, 4, out.RecordCount)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return &out
- }
- if rowLen > 1 {
- for i := 0; i < rowLen-1; i++ {
- ret := retRows[i]
- var info statModel
- info.DateFlag = (ret[0]).(string)
- info.Commission = int((ret[1]).(int64))
- info.Direct = int((ret[2]).(int64))
- out.List = append(out.List, info)
- }
- }
- out.Commission = int((retRows[rowLen-1][0]).(int64))
- out.Profit = int((retRows[rowLen-1][1]).(int64))
- out.RecordCount = int((retRows[rowLen-1][2]).(int64))
- return &out
- }
- // 收益记录
- func commissionLog(userId, fromUserId int, pageIndex, pageSize int) *commission_out {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- out := &commission_out{}
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_CommissionLog")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@FromUserID", database.AdParamInput, database.AdInteger, 4, fromUserId)
- statement.AddParamter("@PageIndex", database.AdParamInput, database.AdInteger, 4, pageIndex)
- statement.AddParamter("@PageSize", database.AdParamInput, database.AdInteger, 4, pageSize)
- statement.AddParamter("@Commission", database.AdParamOutput, database.AdInteger, 4, out.Commission)
- statement.AddParamter("@RecordCount", database.AdParamOutput, database.AdInteger, 4, out.RecordCount)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return out
- }
- if rowLen > 1 {
- out.List = make([]commissionInfo, rowLen-1)
- for i := 0; i < rowLen-1; i++ {
- ret := retRows[i]
- info := &out.List[i]
- info.ChineseName = (ret[0]).(string)
- info.FromUserID = int((ret[1]).(int64))
- info.WantCommission = int((ret[2]).(int64))
- info.Crdate = (ret[3]).(string)
- }
- }
- out.Commission = int((retRows[rowLen-1][0]).(int64))
- out.RecordCount = int((retRows[rowLen-1][1]).(int64))
- return out
- }
- // 代理配置
- func getConfigInfo() *configInfo {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_ConfigInfo")
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return nil
- }
- ret := retRows[0]
- return &configInfo{
- IsOpen: int((ret[0]).(int64)),
- BindSend: int((ret[1]).(int64)),
- BetOneDirect: int((ret[2]).(int64)),
- BetTwoDirect: int((ret[3]).(int64)),
- TaxOneDirect: int((ret[4]).(int64)),
- TaxTwoDirect: int((ret[5]).(int64)),
- PayOneDirect: int((ret[6]).(int64)),
- PayTwoDirect: int((ret[7]).(int64)),
- }
- }
- // 提取收益
- func commissionToAmount(userId int, ipAddress string) (int, int) {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_CommissionToAmount")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@IPAddress", database.AdParamInput, database.AdVarChar, 16, ipAddress)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return 0, 0
- }
- ret := retRows[0]
- retCode := int((ret[0]).(int64))
- commission := int((ret[1]).(int64))
- return retCode, commission
- }
- // 获取组信息
- func getGroup(userId int) []*linkInfo {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var list []*linkInfo
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_GetGroup")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- if len(retRows) <= 0 {
- return list
- }
- info := (retRows[0][0]).(string)
- if info == "" {
- return list
- }
- if err := json.Unmarshal([]byte(info), &list); err != nil {
- log.Error("agent.transaction.getGroup info=%s err=%v", info, err)
- }
- return list
- }
- // 修改数组信息
- func updateGroup(userId int, info string) {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_UpdateGroup")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@Info", database.AdParamInput, database.AdNVarChar, 4000, info)
- sqlString := statement.GenSql()
- log.Debug(sqlString)
- dbengine.CenterDB.ExecSql(sqlString)
- }
- // 有效会员奖励
- func getBindAwards() []*bindAward {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var list []*bindAward
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserAgent_BindAwards")
- sqlString := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlString)
- rowLen := len(retRows)
- if rowLen <= 0 {
- return list
- }
- for i := 0; i < rowLen; i++ {
- ret := retRows[i]
- var out bindAward
- out.Members = int((ret[0]).(int64))
- out.Profit = int((ret[1]).(int64))
- list = append(list, &out)
- }
- return list
- }
|