resource.go 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. // 留存分布
  2. package controllers
  3. import (
  4. "box-gm/events"
  5. "box-gm/models"
  6. "box-gm/utils"
  7. "log"
  8. "time"
  9. "github.com/astaxie/beego"
  10. )
  11. type ResourceController struct {
  12. beego.Controller
  13. }
  14. // 主界面
  15. // 通过c.Data[key]返回数据
  16. // ace模板文件通过{{.key}}获取数据
  17. func (c *ResourceController) Get() {
  18. userinfo := c.GetSession("user")
  19. if userinfo == nil {
  20. c.Ctx.Redirect(302, "/accountlogin")
  21. return
  22. }
  23. c.Data["username"] = userinfo.(*LoginInfo).Username
  24. c.Data["token"] = models.GetToken()
  25. userPermission := models.GetPermission(userinfo.(*LoginInfo).Username)
  26. if (userPermission & (1 << uint(models.ModelStatment))) == 0 {
  27. c.Ctx.Redirect(302, "/accountlogin")
  28. return
  29. }
  30. currTime := time.Now()
  31. // if c.GetString("querydata") == "resource" {
  32. // uid, _ := c.GetInt("uid")
  33. // itemId, _ := c.GetInt("item_id")
  34. // startTime := c.GetString("start_time")
  35. // endTime := c.GetString("end_time")
  36. // log.Printf("查询玩家资源变化 uid[%d] itemId[%d] startTime[%s] endTime[%s]", uid, itemId, startTime, endTime)
  37. // _startTime := utils.GetTime(startTime + " 00:00:00")
  38. // _endTime := utils.GetTime(endTime+ " 23:59:59")
  39. // filename := events.Resource_get_records(uid, _startTime, _endTime, itemId)
  40. // c.Ctx.Output.Download(filename)
  41. // }else {
  42. // c.Data["Player_id"] = 1001000001
  43. // c.Data["Item_id"] = 104
  44. // c.Data["Start_time"] = currTime.Format("2006-01-02")
  45. // c.Data["End_time"] = currTime.Format("2006-01-02")
  46. // //界面模板文件
  47. // c.TplName = "resource.tpl"
  48. // }
  49. filename := ""
  50. if c.GetString("action") == "query" || c.GetString("querydata") == "resource" {
  51. uid, _ := c.GetInt("uid")
  52. itemId, _ := c.GetInt("item_id")
  53. startTime := c.GetString("start_time")
  54. endTime := c.GetString("end_time")
  55. log.Printf("查询玩家资源变化 uid[%d] itemId[%d] startTime[%s] endTime[%s]", uid, itemId, startTime, endTime)
  56. _startTime := utils.GetTime(startTime + " 00:00:00")
  57. _endTime := utils.GetTime(endTime + " 23:59:59")
  58. eventList := events.Resource_get_records(uid, _startTime, _endTime, itemId)
  59. filename = events.Save_resource_records(eventList, userinfo.(*LoginInfo).Username)
  60. c.Data["Events"] = eventList
  61. c.Data["Player_id"] = uid
  62. c.Data["Item_id"] = itemId
  63. c.Data["Start_time"] = startTime
  64. c.Data["End_time"] = endTime
  65. } else {
  66. c.Data["Start_time"] = currTime.Format("2006-01-02")
  67. c.Data["End_time"] = currTime.Format("2006-01-02")
  68. }
  69. if c.GetString("querydata") == "resource" {
  70. c.Ctx.Output.Download(filename)
  71. } else {
  72. //界面模板文件
  73. c.TplName = "resource.tpl"
  74. }
  75. }