| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283 |
- package database
- import (
- "encoding/json"
- "runtime/debug"
- "bet24.com/database"
- "bet24.com/log"
- pb "bet24.com/servers/micros/audioroom/proto"
- dbengine "bet24.com/servers/micros/dbengine/proto"
- )
- // 获取房间
- func GetRoom(roomId int) pb.RoomInfo {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var ret []pb.RoomInfo
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_AudioRoom_GetInfo")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- sqlString := statement.GenSql()
- jsonData := dbengine.Execute(sqlString)
- if err := json.Unmarshal([]byte(jsonData), &ret); err != nil {
- // log.Error("transaction.getRoom json unmarshal roomId=%d err %v", roomId, err)
- return pb.RoomInfo{}
- }
- if len(ret) <= 0 {
- // log.Debug("transaction.getRoom roomId=%d is not exist", roomId)
- return pb.RoomInfo{}
- }
- return ret[0]
- }
- // 查找房间
- func SearchRoom(roomName string) []pb.RoomInfo {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var ret []pb.RoomInfo
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_AudioRoom_Search")
- statement.AddParamter("@RoomName", database.AdParamInput, database.AdNVarChar, 32, roomName)
- sqlString := statement.GenSql()
- jsonData := dbengine.Execute(sqlString)
- if err := json.Unmarshal([]byte(jsonData), &ret); err != nil {
- log.Error("transaction.searchRoom json unmarshal roomName=%s err %v", roomName, err)
- return nil
- }
- return ret
- }
- // 创建房间
- func CreateRoom(r *pb.RoomInfo) 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_AudioRoom_Create")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, r.RoomId)
- statement.AddParamter("@RoomName", database.AdParamInput, database.AdNVarChar, 32, r.RoomName)
- statement.AddParamter("@RoomImg", database.AdParamInput, database.AdVarChar, 256, r.RoomImg)
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, r.UserId)
- statement.AddParamter("@Family", database.AdParamInput, database.AdNVarChar, 32, r.Family)
- statement.AddParamter("@Country", database.AdParamInput, database.AdNVarChar, 32, r.Country)
- statement.AddParamter("@Language", database.AdParamInput, database.AdNVarChar, 32, r.Language)
- statement.AddParamter("@MicCount", database.AdParamInput, database.AdInteger, 4, r.MicCount)
- statement.AddParamter("@MicMode", database.AdParamInput, database.AdInteger, 4, r.MicMode)
- statement.AddParamter("@JoinFee", database.AdParamInput, database.AdInteger, 4, r.JoinFee)
- statement.AddParamter("@Announce", database.AdParamInput, database.AdNVarChar, 256, r.Announce)
- statement.AddParamter("@Tag", database.AdParamInput, database.AdNVarChar, 32, r.Tag)
- statement.AddParamter("@MemberCount", database.AdParamInput, database.AdInteger, 4, r.MemberCount)
- statement.AddParamter("@Crdate", database.AdParamInput, database.AdVarChar, 20, r.Crdate)
- statement.AddParamter("@Level", database.AdParamInput, database.AdInteger, 4, r.Level)
- sqlString := statement.GenSql()
- retRows := dbengine.ExecuteRs(sqlString)
- if len(retRows) <= 0 {
- return 0
- }
- return int(retRows[0][0].(int64))
- }
- // 修改房间
- func UpdateRoom(r *pb.RoomInfo) {
- 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_AudioRoom_Update")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, r.RoomId)
- statement.AddParamter("@RoomName", database.AdParamInput, database.AdNVarChar, 32, r.RoomName)
- statement.AddParamter("@RoomImg", database.AdParamInput, database.AdVarChar, 256, r.RoomImg)
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, r.UserId)
- statement.AddParamter("@Family", database.AdParamInput, database.AdNVarChar, 32, r.Family)
- statement.AddParamter("@Country", database.AdParamInput, database.AdNVarChar, 32, r.Country)
- statement.AddParamter("@Language", database.AdParamInput, database.AdNVarChar, 32, r.Language)
- statement.AddParamter("@MicCount", database.AdParamInput, database.AdInteger, 4, r.MicCount)
- statement.AddParamter("@MicMode", database.AdParamInput, database.AdInteger, 4, r.MicMode)
- statement.AddParamter("@JoinFee", database.AdParamInput, database.AdInteger, 4, r.JoinFee)
- statement.AddParamter("@Announce", database.AdParamInput, database.AdNVarChar, 256, r.Announce)
- statement.AddParamter("@Tag", database.AdParamInput, database.AdNVarChar, 32, r.Tag)
- sqlString := statement.GenSql()
- dbengine.ExecuteRs(sqlString)
- }
- // 获取语音房进入条件
- func GetEnterCondition(roomId int) pb.EnterCondition {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var info pb.EnterCondition
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_AudioRoom_GetEnterCondition")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- sqlString := statement.GenSql()
- retRows := dbengine.ExecuteRs(sqlString)
- if len(retRows) <= 0 {
- return info
- }
- ret := retRows[0]
- info.InviteOnly = int(ret[0].(int64)) == 1
- info.Password = ret[1].(string)
- info.PwdExpire = int(ret[2].(int64))
- info.IsHide = int(ret[3].(int64)) > 0
- return info
- }
- // 设置语音房进入条件
- func SetEnterCondition(roomId int, info pb.EnterCondition) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- inviteOnly := 0
- if info.InviteOnly {
- inviteOnly = 1
- }
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_AudioRoom_SetEnterCondition")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- statement.AddParamter("@InviteOnly", database.AdParamInput, database.AdInteger, 4, inviteOnly)
- statement.AddParamter("@Password", database.AdParamInput, database.AdVarChar, 16, info.Password)
- statement.AddParamter("@PwdExpire", database.AdParamInput, database.AdInteger, 4, info.PwdExpire)
- statement.AddParamter("@IsHide", database.AdParamInput, database.AdInteger, 4, info.IsHide)
- sqlString := statement.GenSql()
- retRows := dbengine.ExecuteRs(sqlString)
- if len(retRows) <= 0 {
- return 0
- }
- return int(retRows[0][0].(int64))
- }
- // 更新经验
- func UpdateExps(roomId, level, exps 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_AudioRoom_UpdateExps")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- statement.AddParamter("@Level", database.AdParamInput, database.AdInteger, 4, level)
- statement.AddParamter("@Exps", database.AdParamInput, database.AdInteger, 4, exps)
- sqlString := statement.GenSql()
- dbengine.Execute(sqlString)
- return
- }
- // 获取扩展信息
- func GetExtInfo(roomId int) pb.RoomExtInfo {
- defer func() {
- if err := recover(); err != nil {
- log.Error("transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- var ret []pb.RoomExtInfo
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_AudioRoom_GetExtInfo")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- sqlString := statement.GenSql()
- jsonData := dbengine.Execute(sqlString)
- if err := json.Unmarshal([]byte(jsonData), &ret); err != nil {
- return pb.RoomExtInfo{}
- }
- if len(ret) <= 0 {
- return pb.RoomExtInfo{}
- }
- return ret[0]
- }
- // 更新扩展信息
- func UpdateExtInfo(roomId int, info *pb.RoomExtInfo) {
- 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_AudioRoom_UpdateExt")
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- statement.AddParamter("@DayExps", database.AdParamInput, database.AdInteger, 4, info.DayExps)
- statement.AddParamter("@CollectDiamond", database.AdParamInput, database.AdInteger, 4, info.CollectDiamond)
- statement.AddParamter("@ScreenLock", database.AdParamInput, database.AdTinyInt, 4, info.ScreenLock)
- statement.AddParamter("@UpdateTime", database.AdParamInput, database.AdInteger, 4, info.UpdateTime)
- sqlString := statement.GenSql()
- dbengine.Execute(sqlString)
- return
- }
- // 房间经验日志
- func AddRoomExpLog(userId, roomId, exps 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_AudioRoom_AddRoomExpLog")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@RoomID", database.AdParamInput, database.AdInteger, 4, roomId)
- statement.AddParamter("@Exps", database.AdParamInput, database.AdInteger, 4, exps)
- sqlString := statement.GenSql()
- dbengine.Execute(sqlString)
- return
- }
|