PenUnidadeRN.php
3.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<?php
require_once dirname(__FILE__) . '/../../../SEI.php';
/**
* Description of PenUnidadeEnvioRN
*
* @author Join Tecnologia (Thiago Farias)
*/
class PenUnidadeRN extends InfraRN {
/**
* Inicializa o obj do banco da Infra
* @return obj
*/
protected function inicializarObjInfraIBanco(){
return BancoSEI::getInstance();
}
/**
* Método para buscar apenas as unidades que já estão em uso
* @param PenUnidadeDTO $objFiltroDTO
* @return arrayDTO
*/
public function getIdUnidadeEmUso(PenUnidadeDTO $objFiltroDTO){
$objDTO = new PenUnidadeDTO();
$objDTO->setDistinct(true);
$objDTO->retNumIdUnidade();
if($objFiltroDTO->isSetNumIdUnidade()) {
$objDTO->setNumIdUnidade($objFiltroDTO->getNumIdUnidade(), InfraDTO::$OPER_DIFERENTE);
}
$arrObjDTO = $this->listar($objDTO);
$arrIdUnidade = array();
if(!empty($arrObjDTO)) {
$arrIdUnidade = InfraArray::converterArrInfraDTO($arrObjDTO, 'IdUnidade');
}
return $arrIdUnidade;
}
/**
* Método utilizado para listagem de dados.
* @param UnidadeDTO $objUnidadeDTO
* @return array
* @throws InfraException
*/
protected function listarConectado(UnidadeDTO $objPenUnidadeDTO) {
try {
//Valida Permissao
SessaoSEI::getInstance()->validarAuditarPermissao('pen_map_unidade_listar',__METHOD__,$objUnidadeDTO);
$objPenUnidadeBD = new PenUnidadeBD($this->getObjInfraIBanco());
return $objPenUnidadeBD->listar($objPenUnidadeDTO);
}catch(Exception $e){
throw new InfraException('Erro listando Unidades.',$e);
}
}
/**
* Método utilizado para alteração de dados.
* @param UnidadeDTO $objDTO
* @return array
* @throws InfraException
*/
protected function alterarConectado(UnidadeDTO $objPenUnidadeDTO){
try {
$objPenUnidadeBD = new PenUnidadeBD($this->inicializarObjInfraIBanco());
return $objPenUnidadeBD->alterar($objPenUnidadeDTO);
}
catch (Exception $e) {
throw new InfraException('Erro alterando mapeamento de unidades.', $e);
}
}
/**
* Método utilizado para cadastro de dados.
* @param UnidadeDTO $objDTO
* @return array
* @throws InfraException
*/
protected function cadastrarConectado(UnidadeDTO $objDTO){
try {
$objBD = new PenUnidadeBD($this->inicializarObjInfraIBanco());
return $objBD->cadastrar($objDTO);
}
catch (Exception $e) {
throw new InfraException('Erro cadastrando mapeamento de unidades.', $e);
}
}
/**
* Método utilizado para exclusão de dados.
* @param UnidadeDTO $objDTO
* @return array
* @throws InfraException
*/
protected function excluirConectado(UnidadeDTO $objDTO){
try {
$objBD = new PenUnidadeBD($this->inicializarObjInfraIBanco());
return $objBD->excluir($objDTO);
}
catch (Exception $e) {
throw new InfraException('Erro excluindo mapeamento de unidades.', $e);
}
}
/**
* Método utilizado para contagem de unidades mapeadas
* @param UnidadeDTO $objUnidadeDTO
* @return array
* @throws InfraException
*/
protected function contarConectado(PenUnidadeDTO $objPenUnidadeDTO) {
try {
//Valida Permissao
$objPenUnidadeBD = new PenUnidadeBD($this->getObjInfraIBanco());
return $objPenUnidadeBD->contar($objPenUnidadeDTO);
}
catch(Exception $e){
throw new InfraException('Erro contando mapeamento de unidades.',$e);
}
}
}