| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213 |
- package giftpack
- import (
- "encoding/json"
- "runtime/debug"
- "bet24.com/database"
- "bet24.com/log"
- "bet24.com/servers/coreservice/dbengine"
- )
- // 系统礼包
- func getGiftPackList() map[int]*GiftPack {
- defer func() {
- if err := recover(); err != nil {
- log.Error("giftpack.getGiftPackList transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_GiftPack_GetList")
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- list := make(map[int]*GiftPack)
- for i := 0; i < len(retRows); i++ {
- ret := retRows[i]
- var out GiftPack
- out.Id = int((ret[0]).(int64))
- out.Name = (ret[1]).(string)
- out.Price = int((ret[2]).(int64))
- out.Limit = int((ret[3]).(int64))
- items := (ret[4]).(string)
- if items != "" {
- if err := json.Unmarshal([]byte(items), &out.Items); err != nil {
- log.Error("giftPack.getGiftPackList transaction unmarshal fail %v", err)
- return nil
- }
- }
- out.Type = int((ret[5]).(int64))
- out.Duration = int((ret[6]).(int64))
- out.Group = int((ret[7]).(int64))
- out.GroupIndex = int((ret[8]).(int64))
- out.ProductId = (ret[9]).(string)
- list[out.Id] = &out
- }
- return list
- }
- // 获取用户礼包历史
- func getUserGiftPackHistory(userId int) []*UserGiftPackHistory {
- defer func() {
- if err := recover(); err != nil {
- log.Error("giftPack.getUserGiftPackHistory transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserGiftPack_GetHistory")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- var list []*UserGiftPackHistory
- for i := 0; i < len(retRows); i++ {
- ret := retRows[i]
- var out UserGiftPackHistory
- out.GiftPackId = int((ret[0]).(int64))
- out.LastPhaseTime = int((ret[1]).(int64))
- list = append(list, &out)
- }
- return list
- }
- // 更新用户礼包历史
- func updateUserGiftPackHistory(userId, giftPackId int, lastPhaseTime string) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("giftpack.updateUserGiftPackHistory transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- retCode := 0
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserGiftPack_UpdateHistory")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- statement.AddParamter("@GiftPackId", database.AdParamInput, database.AdInteger, 4, giftPackId)
- statement.AddParamter("@LastPhaseTime", database.AdParamInput, database.AdVarChar, 20, lastPhaseTime)
- statement.AddParamter("@RetCode", database.AdParamOutput, database.AdInteger, 4, retCode)
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- if len(retRows) <= 0 {
- return 0
- }
- return int((retRows[0][0]).(int64))
- }
- // 获取成长礼包
- func getGrowthPackList() []*GrowthPack {
- defer func() {
- if err := recover(); err != nil {
- log.Error("growthPack.getGrowthPackList transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_GrowthPack_GetList")
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- var list []*GrowthPack
- for i := 0; i < len(retRows); i++ {
- ret := retRows[i]
- var out GrowthPack
- out.Id = int((ret[0]).(int64))
- out.Name = (ret[1]).(string)
- out.Price = int((ret[2]).(int64))
- terms := (ret[3]).(string)
- if terms != "" {
- if err := json.Unmarshal([]byte(terms), &out.Terms); err != nil {
- log.Error("growthPack.getGrowthPackList Id[%d] transaction unmarshal data fail %v", out.Id, err)
- return nil
- }
- }
- out.ProductId = (ret[4]).(string)
- list = append(list, &out)
- }
- return list
- }
- // 获取用户成长礼包
- func getUserGrowthPackList(userId int) []*UserGrowthTerm {
- defer func() {
- if err := recover(); err != nil {
- log.Error("growthPack.getUserGrowthPackList transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserGrowthPack_GetList")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- var list []*UserGrowthTerm
- for i := 0; i < len(retRows); i++ {
- ret := retRows[i]
- var out UserGrowthTerm
- out.UserId = userId
- out.GrowthPackId = int((ret[0]).(int64))
- out.TermIndex = int((ret[1]).(int64))
- out.Bullet = int((ret[2]).(int64))
- out.Status = int((ret[3]).(int64))
- list = append(list, &out)
- }
- return list
- }
- // 更新用户成长礼包
- func updateUserGrowthPack(info *UserGrowthTerm) int {
- defer func() {
- if err := recover(); err != nil {
- log.Error("growthPack.updateUserGrowthPack transaction recover err %v", err)
- log.Error("%s", debug.Stack())
- }
- }()
- retCode := 0
- statement := database.NewStatement()
- statement.SetNeedReturnValue(false)
- statement.SetOpenRecordSet(true)
- statement.SetProcName("WS_UserGrowthPack_Update")
- statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, info.UserId)
- statement.AddParamter("@GrowthPackID", database.AdParamInput, database.AdInteger, 4, info.GrowthPackId)
- statement.AddParamter("@TermIndex", database.AdParamInput, database.AdInteger, 4, info.TermIndex)
- statement.AddParamter("@Bullet", database.AdParamInput, database.AdInteger, 4, info.Bullet)
- statement.AddParamter("@Status", database.AdParamInput, database.AdInteger, 4, info.Status)
- statement.AddParamter("@RetCode", database.AdParamOutput, database.AdInteger, 4, retCode)
- sqlstring := statement.GenSql()
- retRows := dbengine.CenterDB.ExecSql(sqlstring)
- if len(retRows) <= 0 {
- return retCode
- }
- retCode = int((retRows[0][0]).(int64))
- return retCode
- }
|