MemberService.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. namespace App\Services\Person;
  3. use App\Exceptions\ResponseException;
  4. use App\Models\Member;
  5. use App\Repositories\MemberRepository;
  6. use App\Repositories\ResumeRepository;
  7. use Illuminate\Support\Facades\Hash;
  8. class MemberService
  9. {
  10. /**
  11. * @var MemberRepository
  12. * @var ResumeRepository
  13. */
  14. protected $MemberRepository;
  15. protected $ResumeRepository;
  16. /**
  17. * MemberService constructor.
  18. * @param MemberRepository $MemberRepository
  19. * @param ResumeRepository $ResumeRepository
  20. */
  21. public function __construct(MemberRepository $MemberRepository,ResumeRepository $ResumeRepository)
  22. {
  23. $this->MemberRepository = $MemberRepository;
  24. $this->ResumeRepository = $ResumeRepository;
  25. }
  26. public function getMemberById($user)
  27. {
  28. return $this->MemberRepository->getMemberById($user->id);
  29. }
  30. public function findByField($id, $mobile)
  31. {
  32. return $this->MemberRepository->findByField(['id'=>$id, 'mobile'=>$mobile, 'mobile_audit'=>1]);
  33. }
  34. public function findByEmail($id, $email)
  35. {
  36. return $this->MemberRepository->findByField(['id'=>$id, 'email'=>$email, 'email_audit'=>1]);
  37. }
  38. public function loginMobile($mobile, $type=null)
  39. {
  40. if(!$type){
  41. $member = Member::where(['mobile'=>$mobile])->first();
  42. if (!$member) {
  43. throw new ResponseException('该手机号还未注册!');
  44. }
  45. }
  46. return true;
  47. }
  48. public function registerMobile($mobile)
  49. {
  50. $data['username']=uniqid();
  51. $data['utype']=2;
  52. $data['mobile']=$mobile;
  53. $data['mobile_audit']=1;
  54. $data['password']=Hash::make(123456);
  55. $data['reg_time']=time();
  56. $data['reg_ip']=ip2long(request()->ip());
  57. $data['reg_type']=1;
  58. $data['reg_source']=1;
  59. $data['reg_source_cn']='网页端';
  60. $data['subsite_id']=get_subsite_id();
  61. $member=$this->MemberRepository->create($data);
  62. return $member;
  63. }
  64. //判断是否有简历,返回姓名或用户名
  65. public function getName()
  66. {
  67. $user = auth('web-member')->user();
  68. $resume = $this->ResumeRepository->getResumeInfo(['uid'=>$user->id]);
  69. if($resume) {
  70. return $resume->fullname;
  71. } else{
  72. return $user->username;
  73. }
  74. }
  75. }