InvitedNegotiations::invitedInterviews()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 2
1
<?php
2
3
namespace seregazhuk\HeadHunterApi\Traits;
4
5
trait InvitedNegotiations
6
{
7
    /**
8
     * @param string $verb
9
     * @param array $params
10
     * @return mixed
11
     */
12
    abstract public function getResource($verb = '', array $params = []);
13
14
    /**
15
     * @param int $vacancyId
16
     * @param string $status
17
     * @param array $pagination
18
     * @return mixed
19
     */
20
    public function invited($vacancyId, $status = '', array $pagination = [])
21
    {
22
        $params = array_merge(
23
            $pagination,
24
            ['vacancy_id' => $vacancyId]
25
        );
26
27
        return $this->getResource($status, $params);
28
    }
29
30
    /**
31
     * @param int $vacancyId
32
     * @param array $pagination
33
     * @return mixed
34
     */
35
    public function invitedResponses($vacancyId, array $pagination = [])
36
    {
37
        return $this->invited($vacancyId, 'response', $pagination);
38
    }
39
40
    /**
41
     * @param int $vacancyId
42
     * @param array $pagination
43
     * @return mixed
44
     */
45
    public function invitedConsider($vacancyId, array $pagination = [])
46
    {
47
        return $this->invited($vacancyId, 'consider', $pagination);
48
    }
49
50
    /**
51
     * @param int $vacancyId
52
     * @param array $pagination
53
     * @return mixed
54
     */
55
    public function invitedPhoneInterviews($vacancyId, array $pagination = [])
56
    {
57
        return $this->invited($vacancyId, 'phone_interview', $pagination);
58
    }
59
60
    /**
61
     * @param int $vacancyId
62
     * @param array $pagination
63
     * @return mixed
64
     */
65
    public function invitedAssessments($vacancyId, array $pagination = [])
66
    {
67
        return $this->invited($vacancyId, 'assessment', $pagination);
68
    }
69
70
    /**
71
     * @param int $vacancyId
72
     * @param array $pagination
73
     * @return mixed
74
     */
75
    public function invitedInterviews($vacancyId, array $pagination = [])
76
    {
77
        return $this->invited($vacancyId, 'interview', $pagination);
78
    }
79
80
    /**
81
     * @param int $vacancyId
82
     * @param array $pagination
83
     * @return mixed
84
     */
85
    public function invitedOffers($vacancyId, array $pagination = [])
86
    {
87
        return $this->invited($vacancyId, 'offer', $pagination);
88
    }
89
90
    /**
91
     * @param int $vacancyId
92
     * @param array $pagination
93
     * @return mixed
94
     */
95
    public function invitedHired($vacancyId, array $pagination = [])
96
    {
97
        return $this->invited($vacancyId, 'hired', $pagination);
98
    }
99
100
    /**
101
     * @param int $vacancyId
102
     * @param array $pagination
103
     * @return mixed
104
     */
105
    public function invitedDiscardByEmployer($vacancyId, array $pagination = [])
106
    {
107
        return $this->invited($vacancyId, 'discard_by_employer', $pagination);
108
    }
109
}