transaction.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package levelrewards
  2. import (
  3. "bet24.com/database"
  4. "bet24.com/log"
  5. "bet24.com/servers/coreservice/shop"
  6. pb "bet24.com/servers/micros/activityservice/proto"
  7. dbengine "bet24.com/servers/micros/dbengine/proto"
  8. "encoding/json"
  9. )
  10. // 获取用户任务列表
  11. func transGetUserTaskList(userId int) []pb.UserLevelTaskSchedule {
  12. statement := database.NewStatement()
  13. statement.SetNeedReturnValue(false)
  14. statement.SetOpenRecordSet(true)
  15. statement.SetProcName("WS_LevelRewards_GetUserTaskList")
  16. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
  17. sqlString := statement.GenSql()
  18. //log.Debug(sqlstring)
  19. jsonData := dbengine.Execute(sqlString)
  20. var out []pb.UserLevelTaskSchedule
  21. if err := json.Unmarshal([]byte(jsonData), &out); err != nil {
  22. log.Error("levelrewards.transaction.transGetUserTaskList json unmarshal UserID=%d err %v", userId, err)
  23. }
  24. return out
  25. }
  26. // 是否购买成长礼包
  27. func transIsPurchaseGrowthPack(userId int) bool {
  28. statement := database.NewStatement()
  29. statement.SetNeedReturnValue(false)
  30. statement.SetOpenRecordSet(true)
  31. statement.SetProcName("WS_Shop_GetShopTypeCount")
  32. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
  33. statement.AddParamter("@ShopType", database.AdParamInput, database.AdInteger, 4, shop.ShopType_LevelRewards)
  34. sqlString := statement.GenSql()
  35. //log.Debug(sqlstring)
  36. retRows := dbengine.ExecuteRs(sqlString)
  37. if len(retRows) <= 0 {
  38. return false
  39. }
  40. count := int(retRows[0][0].(int64))
  41. if count > 0 {
  42. return true
  43. }
  44. return false
  45. }
  46. // 更新用户任务
  47. func transUpdateUserTask(userId int, taskInfo pb.UserLevelTaskSchedule) {
  48. statement := database.NewStatement()
  49. statement.SetNeedReturnValue(false)
  50. statement.SetOpenRecordSet(true)
  51. statement.SetProcName("WS_LevelRewards_UpdateUserTask")
  52. statement.AddParamter("@UserID", database.AdParamInput, database.AdInteger, 4, userId)
  53. statement.AddParamter("@Level", database.AdParamInput, database.AdInteger, 4, taskInfo.Level)
  54. statement.AddParamter("@PaidPack", database.AdParamInput, database.AdTinyInt, 4, taskInfo.PaidPack)
  55. statement.AddParamter("@ClaimStatus", database.AdParamInput, database.AdTinyInt, 4, taskInfo.ClaimStatus)
  56. statement.AddParamter("@CreateDayIndex", database.AdParamInput, database.AdInteger, 4, taskInfo.CreateDayIndex)
  57. sqlString := statement.GenSql()
  58. dbengine.Execute(sqlString)
  59. }