Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 16791 | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
16770 efrain 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace LeadersLinked\Form\Organization;
6
 
7
use Laminas\InputFilter\InputFilter;
8
use Laminas\Db\Adapter\AdapterInterface;
9
use LeadersLinked\Mapper\CompetencyTypeMapper;
17002 efrain 10
use LeadersLinked\Mapper\MicrolearningTopicMapper;
11
use LeadersLinked\Model\MicrolearningTopic;
16770 efrain 12
use LeadersLinked\Mapper\JobDescriptionMapper;
13
use LeadersLinked\Mapper\UserMapper;
14
 
15
class PositionFilter extends InputFilter
16
{
17
 
18
    /**
19
     *
20
     * @param AdapterInterface $adapter
21
     */
22
    public function __construct(AdapterInterface $adapter)
23
    {
16791 efrain 24
 
25
 
26
        $this->add([
27
            'name' => 'job_description_id',
28
            'required' => true,
29
            'validators' => [
30
                [
31
                    'name' => \Laminas\Validator\NotEmpty::class,
32
                ],
33
                [
34
                    'name' => \Laminas\Validator\Db\RecordExists::class,
35
                    'options' => [
36
                        'adapter' => $adapter,
37
                        'table' => JobDescriptionMapper::_TABLE,
38
                        'field' => 'uuid'
39
                    ]
40
                ]
41
            ],
42
        ]);
16770 efrain 43
 
44
 
45
        $this->add([
16791 efrain 46
            'name' => 'employee_id',
16770 efrain 47
            'required' => true,
48
            'validators' => [
49
                [
50
                    'name' => \Laminas\Validator\NotEmpty::class,
51
                ],
52
                [
53
                    'name' => \Laminas\Validator\Db\RecordExists::class,
54
                    'options' => [
55
                        'adapter' => $adapter,
56
                        'table' => UserMapper::_TABLE,
57
                        'field' => 'uuid'
58
                    ]
59
                ]
60
            ],
61
        ]);
16791 efrain 62
 
63
        $this->add([
64
            'name' => 'boss_id',
65
            'required' => false,
66
            'validators' => [
67
                [
68
                    'name' => \Laminas\Validator\NotEmpty::class,
69
                ],
70
                [
71
                    'name' => \Laminas\Validator\Db\RecordExists::class,
72
                    'options' => [
73
                        'adapter' => $adapter,
74
                        'table' => UserMapper::_TABLE,
75
                        'field' => 'uuid'
76
                    ]
77
                ]
78
            ],
79
        ]);
16770 efrain 80
 
81
 
82
        $this->add([
83
            'name' => 'status',
84
            'required' => false,
85
            'filters' => [
86
                ['name' => \Laminas\Filter\StripTags::class],
87
                ['name' => \Laminas\Filter\StringTrim::class],
88
            ],
89
            'validators' =>[
90
                [
91
                    'name' =>\Laminas\Validator\NotEmpty::class,
92
                ],
93
            ]
94
        ]);
95
 
96
    }
97
}