JobfairCompanyService.php 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: wuzhenke
  5. * Date: 2019/1/24
  6. * Time: 17:31
  7. */
  8. namespace App\Services\Jobfair;
  9. use App\Exceptions\ResponseException;
  10. use App\Repositories\Jobfair\JobfairCompanyRepository;
  11. use App\Repositories\Jobfair\JobfairPutJobRepository;
  12. class JobfairCompanyService
  13. {
  14. protected $jobfairCompanyRepository;
  15. protected $jobfairPutJobRepository;
  16. /**
  17. * JobfairCompanyService constructor.
  18. * @param JobfairCompanyRepository $jobfairCompanyRepository
  19. * @param JobfairPutJobRepository $jobfairPutJobRepository
  20. */
  21. public function __construct(JobfairCompanyRepository $jobfairCompanyRepository, JobfairPutJobRepository $jobfairPutJobRepository)
  22. {
  23. $this->jobfairCompanyRepository = $jobfairCompanyRepository;
  24. $this->jobfairPutJobRepository = $jobfairPutJobRepository;
  25. }
  26. public function jobfairEnact($user)
  27. {
  28. $enactList = $this->jobfairCompanyRepository->findList($user->id);
  29. return [
  30. 'enactList' => $enactList,
  31. ];
  32. }
  33. public function jobfairEnactfind($id)
  34. {
  35. return $this->jobfairCompanyRepository->find($id);
  36. }
  37. public function jobfairList($user)
  38. {
  39. $jobfairList = $this->jobfairCompanyRepository->findListOption($user->id);
  40. return $jobfairList;
  41. }
  42. public function oneJobfairCompany($user,$jobfair_id)
  43. {
  44. $where = [
  45. 'company_id'=>$user->id,
  46. 'jobfair_id'=>$jobfair_id,
  47. ];
  48. return $this->jobfairCompanyRepository->findOneCom($where);
  49. }
  50. public function isOwn($id,$user)
  51. {
  52. $jobfairCom = $this->jobfairCompanyRepository->getOne(['id'=>$id]);
  53. if(!$jobfairCom)
  54. {
  55. throw new ResponseException('参数错误!');
  56. }
  57. if($jobfairCom->company_id != $user->id)
  58. {
  59. throw new ResponseException('抱歉,您只能操作自己的招聘会职位!');
  60. }
  61. }
  62. public function isOwnArr($exidArr,$user)
  63. {
  64. $allIds = $this->jobfairCompanyRepository->getPluck(['company_id'=>$user->id],'id')->toArray();
  65. if(array_diff($exidArr,$allIds))
  66. {
  67. throw new ResponseException('抱歉,您只能操作自己的招聘会职位!');
  68. }
  69. }
  70. public function isPositionOwn($position_id,$jobfair_id,$company_id,$jid)
  71. {
  72. $jobfairCom = $this->jobfairCompanyRepository->getOne(['position_id'=>$position_id,'audit'=>1]);
  73. if($jobfairCom->jobfair_id != $jobfair_id || $jobfairCom->company_id != $company_id) {
  74. throw new ResponseException('抱歉,您只能操作自己的招聘会职位1!');
  75. }
  76. $putJobs = $this->jobfairPutJobRepository->editJob($jid);
  77. if($putJobs->position_id != $position_id)
  78. {
  79. throw new ResponseException('抱歉,您只能操作自己的招聘会职位2!');
  80. }
  81. }
  82. }