Completed
Push — master ( 91d607...0132ab )
by Milan
01:47
created

DataProvider::setTIN()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 7
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 5
nc 1
nop 1
1
<?php
2
3
namespace h4kuna\Ares;
4
5
use DateTime,
6
	DateTimeZone;
7
8
/**
9
 * @author Milan Matějček
10
 */
11
class DataProvider
12
{
13
14
	/** @var IDataFactory */
15
	private $dataFactory;
16
17
	/** @var IData */
18
	private $data;
19
20
	public function __construct(IDataFactory $dataFactory)
21
	{
22
		$this->dataFactory = $dataFactory;
23
	}
24
25
	/** @return IData */
26
	public function getData()
27
	{
28
		return $this->data;
29
	}
30
31
	public function prepareData()
32
	{
33
		$this->setData($this->dataFactory->create());
34
		return $this;
35
	}
36
37
	/**
38
	 * @param string $s
39
	 * @return self
40
	 */
41
	public function setActive($s)
42
	{
43
		$this->data->setActive(strval($s) == 'Aktivní');
44
		return $this;
45
	}
46
47
	public function setCity($s)
48
	{
49
		$this->data->setCity(strval($s));
50
		return $this;
51
	}
52
53
	public function setCompany($s)
54
	{
55
		$this->data->setCompany(strval($s));
56
		return $this;
57
	}
58
59
	public function setCourt($s)
60
	{
61
		$this->data->setCourt(strval($s));
62
		return $this;
63
	}
64
65
	public function setCreated($s)
66
	{
67
		$this->data->setCreated(new DateTime($s, new DateTimeZone('Europe/Prague')));
68
		return $this;
69
	}
70
71
	public function setFileNumber($s)
72
	{
73
		$this->data->setFileNumber(strval($s));
74
		return $this;
75
	}
76
77
	public function setIN($s)
78
	{
79
		$this->data->setIn(strval($s));
80
		return $this;
81
	}
82
83
	public function setPerson($s)
84
	{
85
		$this->data->setPerson(strval($s) <= '108');
86
		return $this;
87
	}
88
89
	public function setStreet($uc, $nco, $co)
90
	{
91
		$street = strval($uc);
92
		if (is_numeric($street)) {
93
			$street = $nco . ' ' . $street;
94
		}
95
96
		if ($co) {
97
			$street .= '/' . $co;
98
		}
99
100
		$this->data->setStreet($street);
101
		return $this;
102
	}
103
104
	public function setTIN($s)
105
	{
106
		$tin = strval($s);
107
		$this->data->setTIN($tin);
108
		$this->data->setVatpay((bool) $tin);
109
		return $this;
110
	}
111
112
	public function setZip($s)
113
	{
114
		$this->data->setZip(strval($s));
115
		return $this;
116
	}
117
118
	protected function setData(IData $data)
119
	{
120
		$this->data = $data;
121
	}
122
123
}
124