UserInterface.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace App\Repositories\Contracts;
  3. /**
  4. * 用户
  5. * @author lilin
  6. *
  7. */
  8. interface UserInterface
  9. {
  10. const TYPENAME='用户 ';
  11. /**
  12. * 获取指定用户登陆详情
  13. *
  14. * @param string $token
  15. */
  16. public function findLoginBy($token);
  17. /**
  18. * 查找一个用户
  19. *
  20. * @param array $conditions
  21. * @param array $fields
  22. */
  23. public function findBy(array $conditions, array $fields);
  24. /**
  25. * 登陆或者注册
  26. *
  27. * @param string $code 用户网页授权用的code
  28. */
  29. public function wxWebLoginOrReg(string $code, string $ip, $wxUserInfo);
  30. /**
  31. * 微信公众号登录方法
  32. *
  33. * 本方法用于处理微信公众号用户的登录流程,通过微信服务器提供的code参数进行处理
  34. *
  35. * @param string $code 微信服务器在用户同意授权后回调页面时携带的code参数,用于换取session
  36. *
  37. *
  38. */
  39. public function wxMPLogin(string $code);
  40. /**
  41. * 微信公众号用户注册/绑定接口
  42. * 本函数用于在用户首次登录小程序时进行用户注册/绑定操作,通过微信提供的code和用户信息完成绑定逻辑。
  43. *
  44. * @param string $code 微信授权码,用于获取用户基本信息
  45. * @param array $wxUserInfo 包含用户基本信息的数组
  46. */
  47. public function wxMPRegister(string $code, array $wxUserInfo);
  48. /**
  49. * app 登陆或者注册
  50. *
  51. * @param string $username 用户名
  52. * @param string $password 密码
  53. * @param string $loginIp ip
  54. * @param int $platform 平台
  55. */
  56. public function appLoginOrReg(string $username, string $password, string $loginIp, int $platform);
  57. /**
  58. * 退出登陆
  59. *
  60. * @param string $token
  61. */
  62. public function loginOut(string $token);
  63. /**
  64. * 修改
  65. *
  66. * @param array $conditions
  67. * @param array $data
  68. */
  69. public function updateBy(array $conditions, array $data);
  70. }