personal.go 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * @desc:xxxx功能描述
  3. * @company:云南奇讯科技有限公司
  4. * @Author: yixiaohu<yxh669@qq.com>
  5. * @Date: 2022/11/3 10:32
  6. */
  7. package controller
  8. import (
  9. "context"
  10. "github.com/gogf/gf/v2/crypto/gmd5"
  11. "github.com/gogf/gf/v2/frame/g"
  12. "github.com/gogf/gf/v2/util/gconv"
  13. "github.com/tiger1103/gfast/v3/api/v1/system"
  14. "github.com/tiger1103/gfast/v3/internal/app/system/service"
  15. "github.com/tiger1103/gfast/v3/library/libUtils"
  16. )
  17. var Personal = new(personalController)
  18. type personalController struct {
  19. }
  20. func (c *personalController) GetPersonal(ctx context.Context, req *system.PersonalInfoReq) (res *system.PersonalInfoRes, err error) {
  21. res, err = service.Personal().GetPersonalInfo(ctx, req)
  22. return
  23. }
  24. func (c *personalController) EditPersonal(ctx context.Context, req *system.PersonalEditReq) (res *system.PersonalEditRes, err error) {
  25. ip := libUtils.GetClientIp(ctx)
  26. userAgent := libUtils.GetUserAgent(ctx)
  27. res = new(system.PersonalEditRes)
  28. res.UserInfo, err = service.Personal().EditPersonal(ctx, req)
  29. if err != nil {
  30. return
  31. }
  32. key := gconv.String(res.UserInfo.Id) + "-" + gmd5.MustEncryptString(res.UserInfo.UserName) + gmd5.MustEncryptString(res.UserInfo.UserPassword)
  33. if g.Cfg().MustGet(ctx, "gfToken.multiLogin").Bool() {
  34. key = gconv.String(res.UserInfo.Id) + "-" + gmd5.MustEncryptString(res.UserInfo.UserName) + gmd5.MustEncryptString(res.UserInfo.UserPassword+ip+userAgent)
  35. }
  36. res.UserInfo.UserPassword = ""
  37. res.Token, err = service.GfToken().GenerateToken(ctx, key, res.UserInfo)
  38. return
  39. }
  40. func (c *personalController) ResetPwdPersonal(ctx context.Context, req *system.PersonalResetPwdReq) (res *system.PersonalResetPwdRes, err error) {
  41. res, err = service.Personal().ResetPwdPersonal(ctx, req)
  42. return
  43. }