CasesDataTransformer   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 41
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 1
dl 0
loc 41
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A transform() 0 25 1
A reverseTransform() 0 4 1
1
<?php
2
namespace OmnideskBundle\DataTransformer\Model;
3
4
use OmnideskBundle\DataTransformer\DataTransformerInterface;
5
use OmnideskBundle\Model\Cases;
6
7
/**
8
 * Class CasesDataTransformer
9
 * @package OmnideskBundle\DataTransformer\Request
10
 */
11
class CasesDataTransformer implements DataTransformerInterface
12
{
13
    /**
14
     * @param array $value
15
     * @return Cases
16
     */
17
    public function transform($value)
18
    {
19
        $model = new Cases();
20
        $model
21
            ->setId($value['case_id'])
22
            ->setNumber($value['case_number'])
23
            ->setSubject($value['subject'])
24
            ->setUserId($value['user_id'])
25
            ->setStaffId($value['staff_id'])
26
            ->setGroupId($value['group_id'])
27
            ->setStatus($value['status'])
28
            ->setPriority($value['priority'])
29
            ->setChanel($value['channel'])
30
            ->setRecipient($value['recipient'])
31
            ->setDeleted($value['deleted'])
32
            ->setSpam($value['spam'])
33
            ->setCreatedAt(new \DateTime($value['created_at']))
34
            ->setUpdatedAt(new \DateTime($value['updated_at']))
35
            ->setClosingSpeed($value['closing_speed'] ?? null)
36
            ->setLanguageId($value['language_id'])
37
            ->setPriority($value['priority'])
38
            ->setLabels($value['labels']);
39
40
        return $model;
41
    }
42
43
    /**
44
     * @param array $value
45
     * @return array
46
     */
47
    public function reverseTransform($value)
48
    {
49
        throw new \LogicException('Method not implemented.');
50
    }
51
}
52