talent_account.go 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. package youngee_talent_service
  2. import (
  3. "fmt"
  4. "youngmini_server/app/dao"
  5. "youngmini_server/app/model/youngee_talent_model"
  6. "youngmini_server/app/utils"
  7. "github.com/gogf/gf/frame/g"
  8. "github.com/gogf/gf/net/ghttp"
  9. )
  10. func GetTalentAccount(r *ghttp.Request) *TalentHttpResult {
  11. //达人id获取
  12. tid, err := utils.SessionTalentInfo.GetTalentIdFromSession(r)
  13. //定义除了youngee_platform_account_info表结构外额外还有info_third_platform的结构体(用表连接)
  14. if err != nil {
  15. return &TalentHttpResult{Code: -1, Msg: "Get talent info failed"}
  16. }
  17. //查找给定达人id之后,该达人绑定了几个平台的账号
  18. res, err := g.DB().Model("youngee_platform_account_info").All("talent_id", tid)
  19. fmt.Println("该账号社媒平台绑定结果为__________:", res)
  20. if err != nil {
  21. return &TalentHttpResult{Code: -2, Msg: "query database error"}
  22. }
  23. if res == nil {
  24. return &TalentHttpResult{Code: -3, Msg: "未绑定任何平台"}
  25. }
  26. return &TalentHttpResult{Code: 0, Msg: "success", Data: res}
  27. }
  28. func GetTalentAccountKuaishou(r *ghttp.Request) *TalentHttpResult {
  29. //达人id获取
  30. tid, err := utils.SessionTalentInfo.GetTalentIdFromSession(r)
  31. if err != nil {
  32. return &TalentHttpResult{Code: -1, Msg: "Get talent info failed"}
  33. }
  34. //查找给定达人id之后,该达人绑定了几个平台的账号
  35. res, err := g.DB().Model("platform_kuaishou_user_info").All("talent_id", tid)
  36. if err != nil {
  37. return &TalentHttpResult{Code: -2, Msg: "query database error"}
  38. }
  39. if res == nil {
  40. return &TalentHttpResult{Code: -3, Msg: "未绑定任何平台"}
  41. }
  42. return &TalentHttpResult{Code: 0, Msg: "success", Data: res}
  43. }
  44. func OnAddTalentAccount(r *ghttp.Request) *TalentHttpResult {
  45. tid, err := utils.SessionTalentInfo.GetTalentIdFromSession(r)
  46. if err != nil {
  47. return &TalentHttpResult{Code: -1, Msg: "Get talent info failed"}
  48. }
  49. account := youngee_talent_model.PlatformAccountInfo{}
  50. err = r.ParseForm(&account)
  51. if err != nil {
  52. return &TalentHttpResult{Code: -2, Msg: err.Error()}
  53. }
  54. // 将达人id存入结构体
  55. account.TalentId = tid
  56. // 插入达人账号信息
  57. _, err = g.Model(dao.YoungeePlatformAccountInfo.Table).Insert(account)
  58. if err != nil {
  59. return &TalentHttpResult{Code: -2, Msg: err.Error()}
  60. }
  61. // 修改talent表字段is_bind_account值为1
  62. _, err = g.Model(dao.YoungeeTalentInfo.Table).Data("is_bind_account=1").Where("id", tid).Update()
  63. if err != nil {
  64. return &TalentHttpResult{Code: -2, Msg: err.Error()}
  65. }
  66. return &TalentHttpResult{Code: 0, Msg: "success"}
  67. }
  68. func OnUpdateTalentAccount(r *ghttp.Request) *TalentHttpResult {
  69. tid, err := utils.SessionTalentInfo.GetTalentIdFromSession(r)
  70. if err != nil {
  71. return &TalentHttpResult{Code: -1, Msg: "Get talent info failed"}
  72. }
  73. account := youngee_talent_model.PlatformAccountInfo{}
  74. err = r.ParseForm(&account)
  75. if err != nil {
  76. return &TalentHttpResult{Code: -2, Msg: err.Error()}
  77. }
  78. account.TalentId = tid
  79. _, err = g.DB().Model(dao.YoungeePlatformAccountInfo.Table).Update(account, "account_id = ? and talent_id = ?", account.AccountId, tid)
  80. if err != nil {
  81. return &TalentHttpResult{Code: -3, Msg: "update failed"}
  82. }
  83. return &TalentHttpResult{Code: 0, Msg: "success"}
  84. }