transaction.go 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package label
  2. import (
  3. "runtime/debug"
  4. "bet24.com/database"
  5. "bet24.com/log"
  6. "bet24.com/servers/adminserver/dao"
  7. )
  8. // 获取留存统计
  9. func trans_liveStatList(req request_liveStatList) response_liveStatList {
  10. defer func() {
  11. if err := recover(); err != nil {
  12. log.Error("transaction recover err %v", err)
  13. log.Error("%s", debug.Stack())
  14. }
  15. }()
  16. var result response_liveStatList
  17. statement := database.NewStatement()
  18. statement.SetNeedReturnValue(false)
  19. statement.SetOpenRecordSet(true)
  20. statement.SetProcName("Manage_LabelLiveStat_GetList")
  21. statement.AddParamter("@LabelID", database.AdParamInput, database.AdVarChar, 32, req.LabelID)
  22. statement.AddParamter("@BeginTime", database.AdParamInput, database.AdVarChar, 20, req.BeginTime)
  23. statement.AddParamter("@EndTime", database.AdParamInput, database.AdVarChar, 20, req.EndTime)
  24. statement.AddParamter("@PageIndex", database.AdParamInput, database.AdInteger, 4, req.PageIndex)
  25. statement.AddParamter("@PageSize", database.AdParamInput, database.AdInteger, 4, req.PageSize)
  26. statement.AddParamter("@RecordCount", database.AdParamOutput, database.AdInteger, 4, result.RecordCount)
  27. sqlString := statement.GenSql()
  28. //log.Debug(sqlString)
  29. retRows := dao.CenterDB.ExecSql(sqlString)
  30. rowLen := len(retRows)
  31. if rowLen <= 0 {
  32. return result
  33. }
  34. if rowLen > 1 {
  35. for i := 0; i < rowLen-1; i++ {
  36. ret := retRows[i]
  37. var out liveStatListModel
  38. out.DateFlag = (*ret[0].(*interface{})).(string)
  39. out.LabelID = (*ret[1].(*interface{})).(string)
  40. out.RegCount = int((*ret[2].(*interface{})).(int64))
  41. out.LiveUsers_1 = int((*ret[3].(*interface{})).(int64))
  42. out.LiveUsers_3 = int((*ret[4].(*interface{})).(int64))
  43. out.LiveUsers_5 = int((*ret[5].(*interface{})).(int64))
  44. out.LiveUsers_7 = int((*ret[6].(*interface{})).(int64))
  45. out.LiveUsers_15 = int((*ret[7].(*interface{})).(int64))
  46. out.LiveUsers_30 = int((*ret[8].(*interface{})).(int64))
  47. result.List = append(result.List, out)
  48. }
  49. }
  50. result.RecordCount = int((*retRows[rowLen-1][0].(*interface{})).(int64))
  51. return result
  52. }