role_still.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package jobs
  2. import (
  3. "github.com/sirupsen/logrus"
  4. )
  5. var RoleStill = new(jRoleStill)
  6. type jRoleStill struct{}
  7. type NewDropedRole struct {
  8. ID int64 `json:"id"`
  9. Order int `json:"order"`
  10. //Wear bool `json:"wear"`
  11. }
  12. func (j *jRoleStill) Run() {
  13. logrus.Info("jRoleStill Run.....")
  14. j.saveMaterial()
  15. }
  16. func (j *jRoleStill) saveMaterial() {
  17. // UPDATE `player_material` SET `roles` = '[{\"id\":100000010,\"order\":1}]' WHERE `roles` = '[{\"id\":100000010,\"wear\":true}]'
  18. // Roles string `gorm:"column:roles" json:"roles"`
  19. // .Where(u.ID.Eq(1)) .Where(u.Playerid.Gt(17367))
  20. //var (
  21. // results []*model2.UserAccount
  22. // m = query.Use(config.GDB).PlayerMaterial
  23. // u = query.Use(config.GDB).UserAccount
  24. //)
  25. //err := u.Select(u.ID, m.Roles).
  26. // LeftJoin(m, m.Playerid.EqCol(u.ID)).
  27. // //Where(u.ID.Eq(206)).
  28. // //Where(u.ID.Gt(584915)).
  29. // FindInBatches(&results, 1000, func(tx gen.Dao, batch int) error {
  30. // for _, result := range results {
  31. // logrus.Infof("playerid :%+v", result)
  32. // if result.Roles == "" {
  33. // logrus.Warningf("无Roles,跳过..")
  34. // continue
  35. // }
  36. // if strings.Contains(result.Roles, "order") {
  37. // logrus.Warningf("已转换,跳过..")
  38. // continue
  39. // }
  40. // var (
  41. // oldRole []model.DropedRole
  42. // newRole []NewDropedRole
  43. // )
  44. //
  45. // if err := json.Unmarshal([]byte(result.Roles), &oldRole); err != nil {
  46. // logrus.Warningf("Unmarshal oldRole err:%+v", err)
  47. // panic(err)
  48. // }
  49. //
  50. // if len(oldRole) > 0 {
  51. // for _, v := range oldRole {
  52. // order := 0
  53. // if v.Wear {
  54. // order = 1
  55. // }
  56. // newRole = append(newRole, NewDropedRole{
  57. // ID: v.ID,
  58. // Order: order,
  59. // })
  60. // }
  61. //
  62. // roles, err := json.Marshal(newRole)
  63. // if err != nil {
  64. // logrus.Warningf("json.Marshal newRole err:%+v", err)
  65. // panic(err)
  66. // }
  67. // data := model2.PlayerMaterial{Roles: string(roles)}
  68. // if _, err = query.Use(config.GDB).PlayerMaterial.
  69. // Where(m.Playerid.Eq(result.ID)).
  70. // Updates(&data); err != nil {
  71. // logrus.Warnf("PlayerMaterial Updates err . %v", err)
  72. // panic(err)
  73. // }
  74. // }
  75. // }
  76. // return nil
  77. // })
  78. //
  79. //if err != nil {
  80. // panic(err)
  81. //} else {
  82. // log.Println("update finished")
  83. //}
  84. }