getStrRoomTypeIDs()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 0
cts 4
cp 0
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 0
crap 2
1
<?php
2
3
namespace Gueststream\PMS\IQWare\API;
4
5
class getAllRoomsAvailabilityCalendar
6
{
7
8
    /**
9
     * @var int $guid
10
     */
11
    protected $guid = null;
12
13
    /**
14
     * @var string $strRoomIDs
15
     */
16
    protected $strRoomIDs = null;
17
18
    /**
19
     * @var string $strRoomTypeIDs
20
     */
21
    protected $strRoomTypeIDs = null;
22
23
    /**
24
     * @var \DateTime $ArrivalDate
25
     */
26
    protected $ArrivalDate = null;
27
28
    /**
29
     * @var \DateTime $DepartureDate
30
     */
31
    protected $DepartureDate = null;
32
33
    /**
34
     * @param int $guid
35
     * @param string $strRoomIDs
36
     * @param string $strRoomTypeIDs
37
     * @param \DateTime $ArrivalDate
38
     * @param \DateTime $DepartureDate
39
     */
40
    public function __construct($guid, $strRoomIDs, $strRoomTypeIDs, \DateTime $ArrivalDate, \DateTime $DepartureDate)
41
    {
42
        $this->guid = $guid;
43
        $this->strRoomIDs = $strRoomIDs;
44
        $this->strRoomTypeIDs = $strRoomTypeIDs;
45
        $this->ArrivalDate = $ArrivalDate->format(\DateTime::ATOM);
0 ignored issues
show
Documentation Bug introduced by
It seems like $ArrivalDate->format(\DateTime::ATOM) of type string is incompatible with the declared type object<DateTime> of property $ArrivalDate.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
46
        $this->DepartureDate = $DepartureDate->format(\DateTime::ATOM);
0 ignored issues
show
Documentation Bug introduced by
It seems like $DepartureDate->format(\DateTime::ATOM) of type string is incompatible with the declared type object<DateTime> of property $DepartureDate.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
47
    }
48
49
    /**
50
     * @return int
51
     */
52
    public function getGuid()
53
    {
54
        return $this->guid;
55
    }
56
57
    /**
58
     * @param int $guid
59
     * @return \Gueststream\PMS\IQWare\API\getAllRoomsAvailabilityCalendar
60
     */
61
    public function setGuid($guid)
62
    {
63
        $this->guid = $guid;
64
        return $this;
65
    }
66
67
    /**
68
     * @return string
69
     */
70
    public function getStrRoomIDs()
71
    {
72
        return $this->strRoomIDs;
73
    }
74
75
    /**
76
     * @param string $strRoomIDs
77
     * @return \Gueststream\PMS\IQWare\API\getAllRoomsAvailabilityCalendar
78
     */
79
    public function setStrRoomIDs($strRoomIDs)
80
    {
81
        $this->strRoomIDs = $strRoomIDs;
82
        return $this;
83
    }
84
85
    /**
86
     * @return string
87
     */
88
    public function getStrRoomTypeIDs()
89
    {
90
        return $this->strRoomTypeIDs;
91
    }
92
93
    /**
94
     * @param string $strRoomTypeIDs
95
     * @return \Gueststream\PMS\IQWare\API\getAllRoomsAvailabilityCalendar
96
     */
97
    public function setStrRoomTypeIDs($strRoomTypeIDs)
98
    {
99
        $this->strRoomTypeIDs = $strRoomTypeIDs;
100
        return $this;
101
    }
102
103
    /**
104
     * @return \DateTime
105
     */
106
    public function getArrivalDate()
107
    {
108
        if ($this->ArrivalDate == null) {
109
            return null;
110
        } else {
111
            try {
112
                return new \DateTime($this->ArrivalDate);
113
            } catch (\Exception $e) {
114
                return false;
115
            }
116
        }
117
    }
118
119
    /**
120
     * @param \DateTime $ArrivalDate
121
     * @return \Gueststream\PMS\IQWare\API\getAllRoomsAvailabilityCalendar
122
     */
123
    public function setArrivalDate(\DateTime $ArrivalDate)
124
    {
125
        $this->ArrivalDate = $ArrivalDate->format(\DateTime::ATOM);
0 ignored issues
show
Documentation Bug introduced by
It seems like $ArrivalDate->format(\DateTime::ATOM) of type string is incompatible with the declared type object<DateTime> of property $ArrivalDate.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
126
        return $this;
127
    }
128
129
    /**
130
     * @return \DateTime
131
     */
132
    public function getDepartureDate()
133
    {
134
        if ($this->DepartureDate == null) {
135
            return null;
136
        } else {
137
            try {
138
                return new \DateTime($this->DepartureDate);
139
            } catch (\Exception $e) {
140
                return false;
141
            }
142
        }
143
    }
144
145
    /**
146
     * @param \DateTime $DepartureDate
147
     * @return \Gueststream\PMS\IQWare\API\getAllRoomsAvailabilityCalendar
148
     */
149
    public function setDepartureDate(\DateTime $DepartureDate)
150
    {
151
        $this->DepartureDate = $DepartureDate->format(\DateTime::ATOM);
0 ignored issues
show
Documentation Bug introduced by
It seems like $DepartureDate->format(\DateTime::ATOM) of type string is incompatible with the declared type object<DateTime> of property $DepartureDate.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
152
        return $this;
153
    }
154
}
155