Commit 1589c59d8c50040183da20285db5697e4c63a65f
0 parents
Exists in
master
enviando arquivos da branch de unificação tarefa-4005
Showing
388 changed files
with
17970 additions
and
0 deletions
Show diff stats
Too many changes.
To preserve performance only 100 of 388 files displayed.
1 | +++ a/.project | ||
@@ -0,0 +1,17 @@ | @@ -0,0 +1,17 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<projectDescription> | ||
3 | + <name>cit-alcada</name> | ||
4 | + <comment></comment> | ||
5 | + <projects> | ||
6 | + </projects> | ||
7 | + <buildSpec> | ||
8 | + <buildCommand> | ||
9 | + <name>org.eclipse.m2e.core.maven2Builder</name> | ||
10 | + <arguments> | ||
11 | + </arguments> | ||
12 | + </buildCommand> | ||
13 | + </buildSpec> | ||
14 | + <natures> | ||
15 | + <nature>org.eclipse.m2e.core.maven2Nature</nature> | ||
16 | + </natures> | ||
17 | +</projectDescription> |
1 | +++ a/cit-alcada-api/.classpath | ||
@@ -0,0 +1,32 @@ | @@ -0,0 +1,32 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<classpath> | ||
3 | + <classpathentry including="**/*.java" kind="src" output="target/classes" path="src/main/java"> | ||
4 | + <attributes> | ||
5 | + <attribute name="optional" value="true"/> | ||
6 | + <attribute name="maven.pomderived" value="true"/> | ||
7 | + </attributes> | ||
8 | + </classpathentry> | ||
9 | + <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"> | ||
10 | + <attributes> | ||
11 | + <attribute name="maven.pomderived" value="true"/> | ||
12 | + </attributes> | ||
13 | + </classpathentry> | ||
14 | + <classpathentry kind="src" output="target/test-classes" path="src/test/java"> | ||
15 | + <attributes> | ||
16 | + <attribute name="optional" value="true"/> | ||
17 | + <attribute name="maven.pomderived" value="true"/> | ||
18 | + </attributes> | ||
19 | + </classpathentry> | ||
20 | + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"> | ||
21 | + <attributes> | ||
22 | + <attribute name="maven.pomderived" value="true"/> | ||
23 | + </attributes> | ||
24 | + </classpathentry> | ||
25 | + <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> | ||
26 | + <attributes> | ||
27 | + <attribute name="maven.pomderived" value="true"/> | ||
28 | + <attribute name="org.eclipse.jst.component.nondependency" value=""/> | ||
29 | + </attributes> | ||
30 | + </classpathentry> | ||
31 | + <classpathentry kind="output" path="target/classes"/> | ||
32 | +</classpath> |
1 | +++ a/cit-alcada-api/.project | ||
@@ -0,0 +1,36 @@ | @@ -0,0 +1,36 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<projectDescription> | ||
3 | + <name>cit-alcada-api</name> | ||
4 | + <comment></comment> | ||
5 | + <projects> | ||
6 | + </projects> | ||
7 | + <buildSpec> | ||
8 | + <buildCommand> | ||
9 | + <name>org.eclipse.wst.common.project.facet.core.builder</name> | ||
10 | + <arguments> | ||
11 | + </arguments> | ||
12 | + </buildCommand> | ||
13 | + <buildCommand> | ||
14 | + <name>org.eclipse.jdt.core.javabuilder</name> | ||
15 | + <arguments> | ||
16 | + </arguments> | ||
17 | + </buildCommand> | ||
18 | + <buildCommand> | ||
19 | + <name>org.eclipse.wst.validation.validationbuilder</name> | ||
20 | + <arguments> | ||
21 | + </arguments> | ||
22 | + </buildCommand> | ||
23 | + <buildCommand> | ||
24 | + <name>org.eclipse.m2e.core.maven2Builder</name> | ||
25 | + <arguments> | ||
26 | + </arguments> | ||
27 | + </buildCommand> | ||
28 | + </buildSpec> | ||
29 | + <natures> | ||
30 | + <nature>org.eclipse.jem.workbench.JavaEMFNature</nature> | ||
31 | + <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature> | ||
32 | + <nature>org.eclipse.jdt.core.javanature</nature> | ||
33 | + <nature>org.eclipse.m2e.core.maven2Nature</nature> | ||
34 | + <nature>org.eclipse.wst.common.project.facet.core.nature</nature> | ||
35 | + </natures> | ||
36 | +</projectDescription> |
cit-alcada-api/.settings/org.eclipse.core.resources.prefs
0 → 100644
1 | +++ a/cit-alcada-api/.settings/org.eclipse.jdt.core.prefs | ||
@@ -0,0 +1,8 @@ | @@ -0,0 +1,8 @@ | ||
1 | +eclipse.preferences.version=1 | ||
2 | +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | ||
3 | +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 | ||
4 | +org.eclipse.jdt.core.compiler.compliance=1.7 | ||
5 | +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | ||
6 | +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | ||
7 | +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning | ||
8 | +org.eclipse.jdt.core.compiler.source=1.7 |
cit-alcada-api/.settings/org.eclipse.wst.common.component
0 → 100644
1 | +++ a/cit-alcada-api/.settings/org.eclipse.wst.common.component | ||
@@ -0,0 +1,6 @@ | @@ -0,0 +1,6 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0"> | ||
2 | + <wb-module deploy-name="cit-alcada-api"> | ||
3 | + <wb-resource deploy-path="/" source-path="/src/main/java"/> | ||
4 | + <wb-resource deploy-path="/" source-path="/src/main/resources"/> | ||
5 | + </wb-module> | ||
6 | +</project-modules> |
cit-alcada-api/.settings/org.eclipse.wst.common.project.facet.core.xml
0 → 100644
cit-alcada-api/.settings/org.eclipse.wst.validation.prefs
0 → 100644
1 | +++ a/cit-alcada-api/bin/.project | ||
@@ -0,0 +1,36 @@ | @@ -0,0 +1,36 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<projectDescription> | ||
3 | + <name>cit-alcada-api</name> | ||
4 | + <comment></comment> | ||
5 | + <projects> | ||
6 | + </projects> | ||
7 | + <buildSpec> | ||
8 | + <buildCommand> | ||
9 | + <name>org.eclipse.wst.common.project.facet.core.builder</name> | ||
10 | + <arguments> | ||
11 | + </arguments> | ||
12 | + </buildCommand> | ||
13 | + <buildCommand> | ||
14 | + <name>org.eclipse.jdt.core.javabuilder</name> | ||
15 | + <arguments> | ||
16 | + </arguments> | ||
17 | + </buildCommand> | ||
18 | + <buildCommand> | ||
19 | + <name>org.eclipse.wst.validation.validationbuilder</name> | ||
20 | + <arguments> | ||
21 | + </arguments> | ||
22 | + </buildCommand> | ||
23 | + <buildCommand> | ||
24 | + <name>org.eclipse.m2e.core.maven2Builder</name> | ||
25 | + <arguments> | ||
26 | + </arguments> | ||
27 | + </buildCommand> | ||
28 | + </buildSpec> | ||
29 | + <natures> | ||
30 | + <nature>org.eclipse.jem.workbench.JavaEMFNature</nature> | ||
31 | + <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature> | ||
32 | + <nature>org.eclipse.jdt.core.javanature</nature> | ||
33 | + <nature>org.eclipse.m2e.core.maven2Nature</nature> | ||
34 | + <nature>org.eclipse.wst.common.project.facet.core.nature</nature> | ||
35 | + </natures> | ||
36 | +</projectDescription> |
cit-alcada-api/bin/.settings/org.eclipse.core.resources.prefs
0 → 100644
1 | +++ a/cit-alcada-api/bin/.settings/org.eclipse.jdt.core.prefs | ||
@@ -0,0 +1,5 @@ | @@ -0,0 +1,5 @@ | ||
1 | +eclipse.preferences.version=1 | ||
2 | +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 | ||
3 | +org.eclipse.jdt.core.compiler.compliance=1.7 | ||
4 | +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning | ||
5 | +org.eclipse.jdt.core.compiler.source=1.7 |
1 | +++ a/cit-alcada-api/bin/pom.xml | ||
@@ -0,0 +1,61 @@ | @@ -0,0 +1,61 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<!-- ******************************************************************************************************************** --> | ||
3 | +<!-- * LICENCA*GPLv2 * --> | ||
4 | +<!-- * Copyright [2011,2012,2013,2014,2015] da CentralIT Tecnologia da Informação Ltda (www.centralit.com.br) * --> | ||
5 | +<!-- * * --> | ||
6 | +<!-- * Este arquivo é parte do programa/software: Citsmart (www.citsmart.com.br) * --> | ||
7 | +<!-- * * --> | ||
8 | +<!-- * O Citsmart é um software livre; você pode redistribui-lo e/ou modificá-lo dentro dos termos da Licença * --> | ||
9 | +<!-- * Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença. * --> | ||
10 | +<!-- * * --> | ||
11 | +<!-- * Este programa/software é distribuído na esperança que possa ser útil, mas SEM NENHUMA GARANTIA; sem uma * --> | ||
12 | +<!-- * garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral * --> | ||
13 | +<!-- * GNU/GPL em português para maiores detalhes. * --> | ||
14 | +<!-- * * --> | ||
15 | +<!-- * Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título 'LICENCA.txt', junto com este * --> | ||
16 | +<!-- * programa/software, se não, acesse o Portal do Software Público Brasileiro no endereço www.softwarepublico.gov.br * --> | ||
17 | +<!-- * ou escreva para a Fundação do Software Livre (FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,USA * --> | ||
18 | +<!-- ******************************************************************************************************************** --> | ||
19 | +<project | ||
20 | + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" | ||
21 | + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||
22 | + <modelVersion>4.0.0</modelVersion> | ||
23 | + | ||
24 | + <parent> | ||
25 | + <groupId>br.com.centralit</groupId> | ||
26 | + <artifactId>cit-alcada</artifactId> | ||
27 | + <version>1.8.0-SNAPSHOT</version> | ||
28 | + </parent> | ||
29 | + | ||
30 | + <artifactId>cit-alcada-api</artifactId> | ||
31 | + <name>cit-alcada-api</name> | ||
32 | + | ||
33 | + <properties> | ||
34 | + <findbugs.config.path>${project.parent.parent.parent.basedir}/filterfile.xml</findbugs.config.path> | ||
35 | + <license.config.path>${project.parent.parent.basedir}/src/licensing</license.config.path> | ||
36 | + <maven-antrun-plugin.phase>package</maven-antrun-plugin.phase> | ||
37 | + </properties> | ||
38 | + | ||
39 | + <dependencies> | ||
40 | + <dependency> | ||
41 | + <groupId>br.com.centralit</groupId> | ||
42 | + <artifactId>cit-core</artifactId> | ||
43 | + <version>${cit-core.version}</version> | ||
44 | + </dependency> | ||
45 | + <dependency> | ||
46 | + <groupId>br.com.centralit</groupId> | ||
47 | + <artifactId>cit-portal-api</artifactId> | ||
48 | + <version>${project.version}</version> | ||
49 | + </dependency> | ||
50 | + <dependency> | ||
51 | + <groupId>br.com.centralit</groupId> | ||
52 | + <artifactId>cit-tabelas-corp-api</artifactId> | ||
53 | + <version>${project.version}</version> | ||
54 | + </dependency> | ||
55 | + <dependency> | ||
56 | + <groupId>org.json</groupId> | ||
57 | + <artifactId>json</artifactId> | ||
58 | + </dependency> | ||
59 | + </dependencies> | ||
60 | +</project> | ||
61 | + |
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/CentroResultadoDelegacaoDao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoAlcadaDao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoDao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoNivelAutoridadeDao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoValorDao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/SolicitacaoAlcadaDao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/impl/CentroResultadoDelegacaoDaoHibernate.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoAlcadaDaoHibernate.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoDaoHibernate.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoNivelAutoridadeDaoHibernate.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoValorDaoHibernate.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/dao/impl/SolicitacaoAlcadaDaoHibernate.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/framework/json/ViewsAlcada$AlcadaView.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/framework/json/ViewsAlcada$LimiteAprovacaoView.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/framework/json/ViewsAlcada$RecuperacaoAlcadaView.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/framework/json/ViewsAlcada.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/LimiteAprovacao.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/LimiteAprovacaoAlcada.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/LimiteAprovacaoNivelAutoridade.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/LimiteAprovacaoValor.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/ResponsavelAlcada.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/SolicitacaoAlcada.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/model/ValorAcumulado.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/package-info.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/CentroResultadoDelegacaoService.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/LimiteAprovacaoAlcadaService.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/LimiteAprovacaoNivelAutoridadeService.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/LimiteAprovacaoService.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/LimiteAprovacaoValorService.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/SolicitacaoAlcadaService.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/CentroResultadoDelegacaoServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/InicializarAlcadaServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoAlcadaServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoNivelAutoridadeServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoValorServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/impl/SolicitacaoAlcadaServiceImpl.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/validation/CentroResultadoDelegacaoValidator.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoAlcadaValidator.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoNivelAutoridadeValidator.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoValidator.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoValorValidator.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/src/main/java/br/com/centralit/api/service/validation/SolicitacaoAlcadaValidator.class
0 → 100644
No preview for this file type
cit-alcada-api/bin/target/classes/META-INF/maven/br.com.centralit/cit-alcada-api/pom.properties
0 → 100644
1 | +++ a/cit-alcada-api/bin/target/classes/META-INF/maven/br.com.centralit/cit-alcada-api/pom.properties | ||
@@ -0,0 +1,7 @@ | @@ -0,0 +1,7 @@ | ||
1 | +#Generated by Maven Integration for Eclipse | ||
2 | +#Thu Mar 17 13:13:12 BRT 2016 | ||
3 | +version=1.8.0-SNAPSHOT | ||
4 | +groupId=br.com.centralit | ||
5 | +m2e.projectName=cit-alcada-api | ||
6 | +m2e.projectLocation=D\:\\repositorios_git\\citsmartgrp\\cit-alcada\\cit-alcada-api | ||
7 | +artifactId=cit-alcada-api |
cit-alcada-api/bin/target/classes/META-INF/maven/br.com.centralit/cit-alcada-api/pom.xml
0 → 100644
1 | +++ a/cit-alcada-api/bin/target/classes/META-INF/maven/br.com.centralit/cit-alcada-api/pom.xml | ||
@@ -0,0 +1,61 @@ | @@ -0,0 +1,61 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<!-- ******************************************************************************************************************** --> | ||
3 | +<!-- * LICENCA*GPLv2 * --> | ||
4 | +<!-- * Copyright [2011,2012,2013,2014,2015] da CentralIT Tecnologia da Informação Ltda (www.centralit.com.br) * --> | ||
5 | +<!-- * * --> | ||
6 | +<!-- * Este arquivo é parte do programa/software: Citsmart (www.citsmart.com.br) * --> | ||
7 | +<!-- * * --> | ||
8 | +<!-- * O Citsmart é um software livre; você pode redistribui-lo e/ou modificá-lo dentro dos termos da Licença * --> | ||
9 | +<!-- * Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença. * --> | ||
10 | +<!-- * * --> | ||
11 | +<!-- * Este programa/software é distribuído na esperança que possa ser útil, mas SEM NENHUMA GARANTIA; sem uma * --> | ||
12 | +<!-- * garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral * --> | ||
13 | +<!-- * GNU/GPL em português para maiores detalhes. * --> | ||
14 | +<!-- * * --> | ||
15 | +<!-- * Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título 'LICENCA.txt', junto com este * --> | ||
16 | +<!-- * programa/software, se não, acesse o Portal do Software Público Brasileiro no endereço www.softwarepublico.gov.br * --> | ||
17 | +<!-- * ou escreva para a Fundação do Software Livre (FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,USA * --> | ||
18 | +<!-- ******************************************************************************************************************** --> | ||
19 | +<project | ||
20 | + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" | ||
21 | + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||
22 | + <modelVersion>4.0.0</modelVersion> | ||
23 | + | ||
24 | + <parent> | ||
25 | + <groupId>br.com.centralit</groupId> | ||
26 | + <artifactId>cit-alcada</artifactId> | ||
27 | + <version>1.8.0-SNAPSHOT</version> | ||
28 | + </parent> | ||
29 | + | ||
30 | + <artifactId>cit-alcada-api</artifactId> | ||
31 | + <name>cit-alcada-api</name> | ||
32 | + | ||
33 | + <properties> | ||
34 | + <findbugs.config.path>${project.parent.parent.parent.basedir}/filterfile.xml</findbugs.config.path> | ||
35 | + <license.config.path>${project.parent.parent.basedir}/src/licensing</license.config.path> | ||
36 | + <maven-antrun-plugin.phase>package</maven-antrun-plugin.phase> | ||
37 | + </properties> | ||
38 | + | ||
39 | + <dependencies> | ||
40 | + <dependency> | ||
41 | + <groupId>br.com.centralit</groupId> | ||
42 | + <artifactId>cit-core</artifactId> | ||
43 | + <version>${cit-core.version}</version> | ||
44 | + </dependency> | ||
45 | + <dependency> | ||
46 | + <groupId>br.com.centralit</groupId> | ||
47 | + <artifactId>cit-portal-api</artifactId> | ||
48 | + <version>${project.version}</version> | ||
49 | + </dependency> | ||
50 | + <dependency> | ||
51 | + <groupId>br.com.centralit</groupId> | ||
52 | + <artifactId>cit-tabelas-corp-api</artifactId> | ||
53 | + <version>${project.version}</version> | ||
54 | + </dependency> | ||
55 | + <dependency> | ||
56 | + <groupId>org.json</groupId> | ||
57 | + <artifactId>json</artifactId> | ||
58 | + </dependency> | ||
59 | + </dependencies> | ||
60 | +</project> | ||
61 | + |
1 | +++ a/cit-alcada-api/pom.xml | ||
@@ -0,0 +1,61 @@ | @@ -0,0 +1,61 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<!-- ******************************************************************************************************************** --> | ||
3 | +<!-- * LICENCA*GPLv2 * --> | ||
4 | +<!-- * Copyright [2011,2012,2013,2014,2015] da CentralIT Tecnologia da Informação Ltda (www.centralit.com.br) * --> | ||
5 | +<!-- * * --> | ||
6 | +<!-- * Este arquivo é parte do programa/software: Citsmart (www.citsmart.com.br) * --> | ||
7 | +<!-- * * --> | ||
8 | +<!-- * O Citsmart é um software livre; você pode redistribui-lo e/ou modificá-lo dentro dos termos da Licença * --> | ||
9 | +<!-- * Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença. * --> | ||
10 | +<!-- * * --> | ||
11 | +<!-- * Este programa/software é distribuído na esperança que possa ser útil, mas SEM NENHUMA GARANTIA; sem uma * --> | ||
12 | +<!-- * garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral * --> | ||
13 | +<!-- * GNU/GPL em português para maiores detalhes. * --> | ||
14 | +<!-- * * --> | ||
15 | +<!-- * Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título 'LICENCA.txt', junto com este * --> | ||
16 | +<!-- * programa/software, se não, acesse o Portal do Software Público Brasileiro no endereço www.softwarepublico.gov.br * --> | ||
17 | +<!-- * ou escreva para a Fundação do Software Livre (FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,USA * --> | ||
18 | +<!-- ******************************************************************************************************************** --> | ||
19 | +<project | ||
20 | + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" | ||
21 | + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||
22 | + <modelVersion>4.0.0</modelVersion> | ||
23 | + | ||
24 | + <parent> | ||
25 | + <groupId>br.com.centralit</groupId> | ||
26 | + <artifactId>cit-alcada</artifactId> | ||
27 | + <version>1.8.0-SNAPSHOT</version> | ||
28 | + </parent> | ||
29 | + | ||
30 | + <artifactId>cit-alcada-api</artifactId> | ||
31 | + <name>cit-alcada-api</name> | ||
32 | + | ||
33 | + <properties> | ||
34 | + <findbugs.config.path>${project.parent.parent.parent.basedir}/filterfile.xml</findbugs.config.path> | ||
35 | + <license.config.path>${project.parent.parent.basedir}/src/licensing</license.config.path> | ||
36 | + <maven-antrun-plugin.phase>package</maven-antrun-plugin.phase> | ||
37 | + </properties> | ||
38 | + | ||
39 | + <dependencies> | ||
40 | + <dependency> | ||
41 | + <groupId>br.com.centralit</groupId> | ||
42 | + <artifactId>cit-core</artifactId> | ||
43 | + <version>${cit-core.version}</version> | ||
44 | + </dependency> | ||
45 | + <dependency> | ||
46 | + <groupId>br.com.centralit</groupId> | ||
47 | + <artifactId>cit-portal-api</artifactId> | ||
48 | + <version>${project.version}</version> | ||
49 | + </dependency> | ||
50 | + <dependency> | ||
51 | + <groupId>br.com.centralit</groupId> | ||
52 | + <artifactId>cit-tabelas-corp-api</artifactId> | ||
53 | + <version>${project.version}</version> | ||
54 | + </dependency> | ||
55 | + <dependency> | ||
56 | + <groupId>org.json</groupId> | ||
57 | + <artifactId>json</artifactId> | ||
58 | + </dependency> | ||
59 | + </dependencies> | ||
60 | +</project> | ||
61 | + |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/CentroResultadoDelegacaoDao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/CentroResultadoDelegacaoDao.java | ||
@@ -0,0 +1,60 @@ | @@ -0,0 +1,60 @@ | ||
1 | +package br.com.centralit.api.dao; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import br.com.centralit.api.model.CentroResultadoDelegacao; | ||
6 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
7 | + | ||
8 | +/** | ||
9 | + * <p> | ||
10 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
11 | + * </p> | ||
12 | + * | ||
13 | + * <p> | ||
14 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
15 | + * </p> | ||
16 | + * | ||
17 | + * <p> | ||
18 | + * <b>Title: </b> | ||
19 | + * </p> | ||
20 | + * | ||
21 | + * <p> | ||
22 | + * <b>Description: </b> | ||
23 | + * </p> | ||
24 | + * | ||
25 | + * <p> | ||
26 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
27 | + * </p> | ||
28 | + * | ||
29 | + * <p> | ||
30 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
31 | + * </p> | ||
32 | + * | ||
33 | + * @since 30/06/2015 - 14:10:25 | ||
34 | + * | ||
35 | + * @version 1.0.0 | ||
36 | + * | ||
37 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
38 | + * | ||
39 | + */ | ||
40 | +public interface CentroResultadoDelegacaoDao extends CitGenericDAO { | ||
41 | + | ||
42 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoes(Long idCentroResultado); | ||
43 | + | ||
44 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoesUsuario(Long idUsuario); | ||
45 | + | ||
46 | + /** | ||
47 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
48 | + * | ||
49 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
50 | + * | ||
51 | + * Método responsável por verificar se ja existe delegacao para o delegado selecionado para a alcada e o periodo selecionado | ||
52 | + * | ||
53 | + * @author renato.jesus | ||
54 | + * | ||
55 | + * @param centroResultadoDelegacao | ||
56 | + * @return | ||
57 | + */ | ||
58 | + public boolean existeDelegacaoParaDelegadoNaAlcadaENoPeriodoSeleciona(CentroResultadoDelegacao centroResultadoDelegacao); | ||
59 | + | ||
60 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoAlcadaDao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoAlcadaDao.java | ||
@@ -0,0 +1,45 @@ | @@ -0,0 +1,45 @@ | ||
1 | +package br.com.centralit.api.dao; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import br.com.centralit.api.model.Alcada; | ||
6 | +import br.com.centralit.api.model.LimiteAprovacaoAlcada; | ||
7 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
8 | + | ||
9 | +/** | ||
10 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
11 | + * | ||
12 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
13 | + * | ||
14 | + * <p><b>Title: </b></p> | ||
15 | + * | ||
16 | + * <p><b>Description: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
19 | + * | ||
20 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
21 | + * | ||
22 | + * @since 30/06/2015 - 13:55:59 | ||
23 | + * | ||
24 | + * @version 1.0.0 | ||
25 | + * | ||
26 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
27 | + * | ||
28 | + */ | ||
29 | +public interface LimiteAprovacaoAlcadaDao extends CitGenericDAO { | ||
30 | + | ||
31 | + /** | ||
32 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
33 | + * | ||
34 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
35 | + * | ||
36 | + * Método responsável por retornar todos os limites de aprovação de uma determinada alçada | ||
37 | + * | ||
38 | + * @author Carlos | ||
39 | + * | ||
40 | + * @param alcada | ||
41 | + * @return | ||
42 | + */ | ||
43 | + public List<LimiteAprovacaoAlcada> findByAlcada(Alcada alcada); | ||
44 | + | ||
45 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoDao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoDao.java | ||
@@ -0,0 +1,27 @@ | @@ -0,0 +1,27 @@ | ||
1 | +package br.com.centralit.api.dao; | ||
2 | + | ||
3 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
4 | + | ||
5 | +/** | ||
6 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
7 | + * | ||
8 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
9 | + * | ||
10 | + * <p><b>Title: </b></p> | ||
11 | + * | ||
12 | + * <p><b>Description: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
15 | + * | ||
16 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
17 | + * | ||
18 | + * @since 18/06/2015 - 16:57:53 | ||
19 | + * | ||
20 | + * @version 1.0.0 | ||
21 | + * | ||
22 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
23 | + * | ||
24 | + */ | ||
25 | +public interface LimiteAprovacaoDao extends CitGenericDAO { | ||
26 | + | ||
27 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoNivelAutoridadeDao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoNivelAutoridadeDao.java | ||
@@ -0,0 +1,25 @@ | @@ -0,0 +1,25 @@ | ||
1 | +package br.com.centralit.api.dao; | ||
2 | + | ||
3 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
4 | + | ||
5 | +/** | ||
6 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
7 | + * | ||
8 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
9 | + * | ||
10 | + * <p><b>Title: </b></p> | ||
11 | + * | ||
12 | + * <p><b>Description: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
15 | + * | ||
16 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
17 | + * | ||
18 | + * @since 30/06/2015 - 13:56:31 | ||
19 | + * | ||
20 | + * @version 1.0.0 | ||
21 | + * | ||
22 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
23 | + * | ||
24 | + */ | ||
25 | +public interface LimiteAprovacaoNivelAutoridadeDao extends CitGenericDAO {} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoValorDao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/LimiteAprovacaoValorDao.java | ||
@@ -0,0 +1,25 @@ | @@ -0,0 +1,25 @@ | ||
1 | +package br.com.centralit.api.dao; | ||
2 | + | ||
3 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
4 | + | ||
5 | +/** | ||
6 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
7 | + * | ||
8 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
9 | + * | ||
10 | + * <p><b>Title: </b></p> | ||
11 | + * | ||
12 | + * <p><b>Description: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
15 | + * | ||
16 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
17 | + * | ||
18 | + * @since 18/06/2015 - 16:57:15 | ||
19 | + * | ||
20 | + * @version 1.0.0 | ||
21 | + * | ||
22 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
23 | + * | ||
24 | + */ | ||
25 | +public interface LimiteAprovacaoValorDao extends CitGenericDAO {} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/SolicitacaoAlcadaDao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/SolicitacaoAlcadaDao.java | ||
@@ -0,0 +1,35 @@ | @@ -0,0 +1,35 @@ | ||
1 | +package br.com.centralit.api.dao; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.Alcada; | ||
4 | +import br.com.centralit.api.model.CentroResultado; | ||
5 | +import br.com.centralit.api.model.NivelAutoridade; | ||
6 | +import br.com.centralit.api.model.SolicitacaoAlcada; | ||
7 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAO; | ||
8 | +import br.com.centralit.framework.model.Dominio; | ||
9 | + | ||
10 | +/** | ||
11 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
12 | + * | ||
13 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
14 | + * | ||
15 | + * <p><b>Title: </b></p> * | ||
16 | + * <p><b>Description: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
19 | + * | ||
20 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
21 | + * | ||
22 | + * @since 18/06/2015 - 16:57:15 | ||
23 | + * | ||
24 | + * @version 1.0.0 | ||
25 | + * | ||
26 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
27 | + * | ||
28 | + */ | ||
29 | +public interface SolicitacaoAlcadaDao extends CitGenericDAO { | ||
30 | + | ||
31 | + public Float getValorAcumulado(final Integer ano, final Integer mes, final Alcada alcada, final CentroResultado centroResultado, Dominio tipoUtilizacao, NivelAutoridade nivelAutoridade); | ||
32 | + | ||
33 | + public SolicitacaoAlcada recuperaPeloIdentificador(Alcada alcada, String identificadorOrigem); | ||
34 | + | ||
35 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/CentroResultadoDelegacaoDaoHibernate.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/CentroResultadoDelegacaoDaoHibernate.java | ||
@@ -0,0 +1,87 @@ | @@ -0,0 +1,87 @@ | ||
1 | +package br.com.centralit.api.dao.impl; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import org.springframework.stereotype.Repository; | ||
6 | + | ||
7 | +import br.com.centralit.api.dao.CentroResultadoDelegacaoDao; | ||
8 | +import br.com.centralit.api.model.CentroResultadoDelegacao; | ||
9 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | ||
10 | +import br.com.centralit.framework.dao.arquitetura.SearchSeven; | ||
11 | + | ||
12 | +import com.googlecode.genericdao.search.Search; | ||
13 | + | ||
14 | +/** | ||
15 | + * <p> | ||
16 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
17 | + * </p> | ||
18 | + * | ||
19 | + * <p> | ||
20 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
21 | + * </p> | ||
22 | + * | ||
23 | + * <p> | ||
24 | + * <b>Title: </b> | ||
25 | + * </p> | ||
26 | + * | ||
27 | + * <p> | ||
28 | + * <b>Description: </b> | ||
29 | + * </p> | ||
30 | + * | ||
31 | + * <p> | ||
32 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
33 | + * </p> | ||
34 | + * | ||
35 | + * <p> | ||
36 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
37 | + * </p> | ||
38 | + * | ||
39 | + * @since 30/06/2015 - 14:10:22 | ||
40 | + * | ||
41 | + * @version 1.0.0 | ||
42 | + * | ||
43 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
44 | + * | ||
45 | + */ | ||
46 | +@Repository("centroResultadoDelegacaoDao") | ||
47 | +public class CentroResultadoDelegacaoDaoHibernate extends CitGenericDAOImpl implements CentroResultadoDelegacaoDao { | ||
48 | + | ||
49 | + public CentroResultadoDelegacaoDaoHibernate() { | ||
50 | + | ||
51 | + super(CentroResultadoDelegacao.class); | ||
52 | + } | ||
53 | + | ||
54 | + @Override | ||
55 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoes(Long idCentroResultado) { | ||
56 | + | ||
57 | + Search search = new Search(); | ||
58 | + | ||
59 | + search.addFilterEqual("centroResultadoResponsavelAlcada.centroResultadoResponsavel.centroResultado.id", idCentroResultado); | ||
60 | + | ||
61 | + return this.search(search, CentroResultadoDelegacao.class); | ||
62 | + } | ||
63 | + | ||
64 | + @Override | ||
65 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoesUsuario(Long idUsuario) { | ||
66 | + | ||
67 | + Search search = new Search(); | ||
68 | + | ||
69 | + search.addFilterEqual("centroResultadoResponsavelAlcada.centroResultadoResponsavel.responsavel.pessoa.usuario.id", idUsuario); | ||
70 | + | ||
71 | + return this.search(search, CentroResultadoDelegacao.class); | ||
72 | + } | ||
73 | + | ||
74 | + @Override | ||
75 | + public boolean existeDelegacaoParaDelegadoNaAlcadaENoPeriodoSeleciona(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
76 | + | ||
77 | + SearchSeven search = new SearchSeven(); | ||
78 | + | ||
79 | + search.addFilterEmpty("dataRevogacao"); | ||
80 | + search.addFilterEqual("centroResultadoResponsavelAlcada.id", centroResultadoDelegacao.getCentroResultadoResponsavelAlcada().getId()); | ||
81 | + search.addFilterEqual("delegado.id", centroResultadoDelegacao.getDelegado().getId()); | ||
82 | + search.addFilterGreaterOrEqual("dataFimDelegacao", centroResultadoDelegacao.getDataInicioDelegacao()); | ||
83 | + | ||
84 | + return this.searchAndCount(search).getTotalCount() > 0; | ||
85 | + } | ||
86 | + | ||
87 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoAlcadaDaoHibernate.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoAlcadaDaoHibernate.java | ||
@@ -0,0 +1,64 @@ | @@ -0,0 +1,64 @@ | ||
1 | +package br.com.centralit.api.dao.impl; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import org.springframework.stereotype.Repository; | ||
6 | + | ||
7 | +import br.com.centralit.api.dao.LimiteAprovacaoAlcadaDao; | ||
8 | +import br.com.centralit.api.model.Alcada; | ||
9 | +import br.com.centralit.api.model.LimiteAprovacaoAlcada; | ||
10 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | ||
11 | +import br.com.centralit.framework.dao.arquitetura.SearchSeven; | ||
12 | + | ||
13 | +/** | ||
14 | + * <p> | ||
15 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
16 | + * </p> | ||
17 | + * | ||
18 | + * <p> | ||
19 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
20 | + * </p> | ||
21 | + * | ||
22 | + * <p> | ||
23 | + * <b>Title: </b> | ||
24 | + * </p> | ||
25 | + * | ||
26 | + * <p> | ||
27 | + * <b>Description: </b> | ||
28 | + * </p> | ||
29 | + * | ||
30 | + * <p> | ||
31 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
32 | + * </p> | ||
33 | + * | ||
34 | + * <p> | ||
35 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
36 | + * </p> | ||
37 | + * | ||
38 | + * @since 30/06/2015 - 13:55:55 | ||
39 | + * | ||
40 | + * @version 1.0.0 | ||
41 | + * | ||
42 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
43 | + * | ||
44 | + */ | ||
45 | +@Repository("limiteAprovacaoAlcadaDao") | ||
46 | +public class LimiteAprovacaoAlcadaDaoHibernate extends CitGenericDAOImpl implements LimiteAprovacaoAlcadaDao { | ||
47 | + | ||
48 | + public LimiteAprovacaoAlcadaDaoHibernate() { | ||
49 | + | ||
50 | + super(LimiteAprovacaoAlcada.class); | ||
51 | + } | ||
52 | + | ||
53 | + @Override | ||
54 | + public List<LimiteAprovacaoAlcada> findByAlcada(Alcada alcada) { | ||
55 | + | ||
56 | + SearchSeven search = new SearchSeven(); | ||
57 | + | ||
58 | + search.addFilterEqual("alcada", alcada); | ||
59 | + | ||
60 | + search.addFilterEmpty("dataInativo"); | ||
61 | + | ||
62 | + return this.search(search, LimiteAprovacaoAlcada.class); | ||
63 | + } | ||
64 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoDaoHibernate.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoDaoHibernate.java | ||
@@ -0,0 +1,35 @@ | @@ -0,0 +1,35 @@ | ||
1 | +package br.com.centralit.api.dao.impl; | ||
2 | + | ||
3 | +import org.springframework.stereotype.Repository; | ||
4 | + | ||
5 | +import br.com.centralit.api.dao.LimiteAprovacaoDao; | ||
6 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
7 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | ||
8 | + | ||
9 | +/** | ||
10 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
11 | + * | ||
12 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
13 | + * | ||
14 | + * <p><b>Title: </b></p> | ||
15 | + * | ||
16 | + * <p><b>Description: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
19 | + * | ||
20 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
21 | + * | ||
22 | + * @since 18/06/2015 - 16:57:49 | ||
23 | + * | ||
24 | + * @version 1.0.0 | ||
25 | + * | ||
26 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
27 | + * | ||
28 | + */ | ||
29 | +@Repository("limiteAprovacaoDao") | ||
30 | +public class LimiteAprovacaoDaoHibernate extends CitGenericDAOImpl implements LimiteAprovacaoDao { | ||
31 | + public LimiteAprovacaoDaoHibernate() { | ||
32 | + super(LimiteAprovacao.class); | ||
33 | + } | ||
34 | + | ||
35 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoNivelAutoridadeDaoHibernate.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoNivelAutoridadeDaoHibernate.java | ||
@@ -0,0 +1,34 @@ | @@ -0,0 +1,34 @@ | ||
1 | +package br.com.centralit.api.dao.impl; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacaoNivelAutoridade; | ||
4 | +import br.com.centralit.api.dao.LimiteAprovacaoNivelAutoridadeDao; | ||
5 | + | ||
6 | +import org.springframework.stereotype.Repository; | ||
7 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | ||
8 | + | ||
9 | +/** | ||
10 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
11 | + * | ||
12 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
13 | + * | ||
14 | + * <p><b>Title: </b></p> | ||
15 | + * | ||
16 | + * <p><b>Description: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
19 | + * | ||
20 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
21 | + * | ||
22 | + * @since 30/06/2015 - 13:56:28 | ||
23 | + * | ||
24 | + * @version 1.0.0 | ||
25 | + * | ||
26 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
27 | + * | ||
28 | + */ | ||
29 | +@Repository("limiteAprovacaoNivelAutoridadeDao") | ||
30 | +public class LimiteAprovacaoNivelAutoridadeDaoHibernate extends CitGenericDAOImpl implements LimiteAprovacaoNivelAutoridadeDao { | ||
31 | + public LimiteAprovacaoNivelAutoridadeDaoHibernate() { | ||
32 | + super(LimiteAprovacaoNivelAutoridade.class); | ||
33 | + } | ||
34 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoValorDaoHibernate.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/LimiteAprovacaoValorDaoHibernate.java | ||
@@ -0,0 +1,34 @@ | @@ -0,0 +1,34 @@ | ||
1 | +package br.com.centralit.api.dao.impl; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacaoValor; | ||
4 | +import br.com.centralit.api.dao.LimiteAprovacaoValorDao; | ||
5 | + | ||
6 | +import org.springframework.stereotype.Repository; | ||
7 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | ||
8 | + | ||
9 | +/** | ||
10 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
11 | + * | ||
12 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
13 | + * | ||
14 | + * <p><b>Title: </b></p> | ||
15 | + * | ||
16 | + * <p><b>Description: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
19 | + * | ||
20 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
21 | + * | ||
22 | + * @since 18/06/2015 - 16:57:12 | ||
23 | + * | ||
24 | + * @version 1.0.0 | ||
25 | + * | ||
26 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
27 | + * | ||
28 | + */ | ||
29 | +@Repository("limiteAprovacaoValorDao") | ||
30 | +public class LimiteAprovacaoValorDaoHibernate extends CitGenericDAOImpl implements LimiteAprovacaoValorDao { | ||
31 | + public LimiteAprovacaoValorDaoHibernate() { | ||
32 | + super(LimiteAprovacaoValor.class); | ||
33 | + } | ||
34 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/SolicitacaoAlcadaDaoHibernate.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/dao/impl/SolicitacaoAlcadaDaoHibernate.java | ||
@@ -0,0 +1,94 @@ | @@ -0,0 +1,94 @@ | ||
1 | +package br.com.centralit.api.dao.impl; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import javax.persistence.Query; | ||
6 | + | ||
7 | +import org.springframework.stereotype.Repository; | ||
8 | + | ||
9 | +import br.com.centralit.api.dao.SolicitacaoAlcadaDao; | ||
10 | +import br.com.centralit.api.model.Alcada; | ||
11 | +import br.com.centralit.api.model.CentroResultado; | ||
12 | +import br.com.centralit.api.model.NivelAutoridade; | ||
13 | +import br.com.centralit.api.model.SolicitacaoAlcada; | ||
14 | +import br.com.centralit.framework.dao.arquitetura.CitGenericDAOImpl; | ||
15 | +import br.com.centralit.framework.dao.arquitetura.SearchSeven; | ||
16 | +import br.com.centralit.framework.model.Dominio; | ||
17 | + | ||
18 | +/** | ||
19 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
20 | + * | ||
21 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
22 | + * | ||
23 | + * <p><b>Title: </b></p> | ||
24 | + * | ||
25 | + * <p><b>Description: </b></p> | ||
26 | + * | ||
27 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
28 | + * | ||
29 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
30 | + * | ||
31 | + * @since 18/06/2015 - 16:57:12 | ||
32 | + * | ||
33 | + * @version 1.0.0 | ||
34 | + * | ||
35 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
36 | + * | ||
37 | + */ | ||
38 | +@Repository("solicitacaoAlcadaDao") | ||
39 | +public class SolicitacaoAlcadaDaoHibernate extends CitGenericDAOImpl implements SolicitacaoAlcadaDao { | ||
40 | + public SolicitacaoAlcadaDaoHibernate() { | ||
41 | + super(SolicitacaoAlcada.class); | ||
42 | + } | ||
43 | + | ||
44 | + @SuppressWarnings("unchecked") | ||
45 | + @Override | ||
46 | + public Float getValorAcumulado(final Integer ano, final Integer mes, Alcada alcada, CentroResultado centroResultado, Dominio tipoUtilizacao, NivelAutoridade nivelAutoridade) { | ||
47 | + String queryString = "select solicitacaoAlcada from SolicitacaoAlcada as solicitacaoAlcada" | ||
48 | + + " where alcada.id = :alcada_id " | ||
49 | + + " and centroResultado.id = :centroResultado_id " | ||
50 | + + " and tipoUtilizacao.id = :tipoUtilizacao_id " | ||
51 | + + " and situacao.nome = 'APROVADA' " | ||
52 | + + " and dataInativo is null " | ||
53 | + + " and aprovador.nivelAutoridade.id = :nivelAutoridade_id " | ||
54 | + + " and ano = :ano "; | ||
55 | + if (mes != null) { | ||
56 | + queryString += " and mes = :mes "; | ||
57 | + } | ||
58 | + Query query = em().createQuery(queryString); | ||
59 | + query.setParameter("alcada_id", alcada.getId()); | ||
60 | + query.setParameter("centroResultado_id", centroResultado.getId()); | ||
61 | + query.setParameter("tipoUtilizacao_id", tipoUtilizacao.getId()); | ||
62 | + query.setParameter("nivelAutoridade_id", nivelAutoridade.getId()); | ||
63 | + query.setParameter("ano", ano); | ||
64 | + if (mes != null) { | ||
65 | + query.setParameter("mes", mes); | ||
66 | + } | ||
67 | + | ||
68 | + List<SolicitacaoAlcada> solicitacoes = query.getResultList(); | ||
69 | + | ||
70 | + float valor = 0; | ||
71 | + for (SolicitacaoAlcada solicitacaoAlcada : solicitacoes) { | ||
72 | + valor += solicitacaoAlcada.getValor().floatValue(); | ||
73 | + } | ||
74 | + | ||
75 | + return valor; | ||
76 | + } | ||
77 | + | ||
78 | + @Override | ||
79 | + public SolicitacaoAlcada recuperaPeloIdentificador(Alcada alcada, String identificadorUnico) { | ||
80 | + SearchSeven search = new SearchSeven(); | ||
81 | + | ||
82 | + search.addFilterEqual("alcada.identificador", alcada.getIdentificador()); | ||
83 | + search.addFilterEqual("identificador", identificadorUnico); | ||
84 | + | ||
85 | + search.addFilterEmpty("dataInativo"); | ||
86 | + | ||
87 | + search.addSort("id", true); | ||
88 | + | ||
89 | + search.setMaxResults(1); | ||
90 | + | ||
91 | + return this.searchUnique(search, SolicitacaoAlcada.class); | ||
92 | + } | ||
93 | + | ||
94 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/framework/json/ViewsAlcada.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/framework/json/ViewsAlcada.java | ||
@@ -0,0 +1,33 @@ | @@ -0,0 +1,33 @@ | ||
1 | +package br.com.centralit.api.framework.json; | ||
2 | + | ||
3 | +import br.com.centralit.framework.json.Views; | ||
4 | + | ||
5 | +/** | ||
6 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
7 | + * | ||
8 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
9 | + * | ||
10 | + * <p><b>Title: </b></p> | ||
11 | + * | ||
12 | + * <p><b>Description: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
15 | + * | ||
16 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
17 | + * | ||
18 | + * @since 22/06/2015 - 15:10:43 | ||
19 | + * | ||
20 | + * @version 1.0.0 | ||
21 | + * | ||
22 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
23 | + * | ||
24 | + */ | ||
25 | +public class ViewsAlcada extends Views { | ||
26 | + | ||
27 | + public static class AlcadaView extends Views.GrupoEditView {}; | ||
28 | + | ||
29 | + public static class LimiteAprovacaoView extends GenericView {}; | ||
30 | + | ||
31 | + public static class RecuperacaoAlcadaView extends GenericView {}; | ||
32 | + | ||
33 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacao.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacao.java | ||
@@ -0,0 +1,219 @@ | @@ -0,0 +1,219 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import java.util.Collection; | ||
4 | + | ||
5 | +import javax.persistence.CascadeType; | ||
6 | +import javax.persistence.Entity; | ||
7 | +import javax.persistence.FetchType; | ||
8 | +import javax.persistence.GeneratedValue; | ||
9 | +import javax.persistence.GenerationType; | ||
10 | +import javax.persistence.Id; | ||
11 | +import javax.persistence.ManyToOne; | ||
12 | +import javax.persistence.OneToMany; | ||
13 | + | ||
14 | +import br.com.centralit.api.framework.json.ViewsAlcada; | ||
15 | +import br.com.centralit.framework.model.Dominio; | ||
16 | +import br.com.centralit.framework.model.arquitetura.PersistentObjectAuditOrganizacao; | ||
17 | + | ||
18 | +import com.fasterxml.jackson.annotation.JsonView; | ||
19 | + | ||
20 | +/** | ||
21 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
22 | + * | ||
23 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
24 | + * | ||
25 | + * <p><b>Title: </b></p> | ||
26 | + * | ||
27 | + * <p><b>Description: </b></p> | ||
28 | + * | ||
29 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
30 | + * | ||
31 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
32 | + * | ||
33 | + * @since 18/06/2015 - 16:58:14 | ||
34 | + * | ||
35 | + * @version 1.0.0 | ||
36 | + * | ||
37 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
38 | + * | ||
39 | + */ | ||
40 | +@Entity | ||
41 | +public class LimiteAprovacao extends PersistentObjectAuditOrganizacao { | ||
42 | + | ||
43 | + /** Atributo serialVersionUID. */ | ||
44 | + private static final long serialVersionUID = 1L; | ||
45 | + | ||
46 | + /** Atributo id. */ | ||
47 | + @Id | ||
48 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
49 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
50 | + private Long id; | ||
51 | + | ||
52 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
53 | + private String identificacao; | ||
54 | + | ||
55 | + @ManyToOne(fetch = FetchType.LAZY) | ||
56 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
57 | + private Dominio dominioTipoAbrangencia; | ||
58 | + | ||
59 | + @ManyToOne(fetch = FetchType.LAZY) | ||
60 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
61 | + private Dominio dominioTipoLimite; | ||
62 | + | ||
63 | + @OneToMany(fetch = FetchType.LAZY, mappedBy = "limiteAprovacao", cascade = CascadeType.ALL) | ||
64 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
65 | + private Collection<LimiteAprovacaoValor> limitesAprovacoesValores; | ||
66 | + | ||
67 | + @OneToMany(fetch = FetchType.LAZY, mappedBy = "limiteAprovacao", cascade = CascadeType.ALL, orphanRemoval = true) | ||
68 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
69 | + private Collection<LimiteAprovacaoNivelAutoridade> niveisAutoridades; | ||
70 | + | ||
71 | + @OneToMany(fetch = FetchType.LAZY, mappedBy = "limiteAprovacao", cascade = CascadeType.ALL, orphanRemoval = true) | ||
72 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
73 | + private Collection<LimiteAprovacaoAlcada> alcadas; | ||
74 | + | ||
75 | + | ||
76 | + /** | ||
77 | + * Retorna o valor do atributo <code>id</code> | ||
78 | + * | ||
79 | + * @return <code>Long</code> | ||
80 | + */ | ||
81 | + public Long getId() { | ||
82 | + | ||
83 | + return id; | ||
84 | + } | ||
85 | + | ||
86 | + /** | ||
87 | + * Define o valor do atributo <code>id</code>. | ||
88 | + * | ||
89 | + * @param id | ||
90 | + */ | ||
91 | + public void setId(Long id) { | ||
92 | + | ||
93 | + this.id = id; | ||
94 | + } | ||
95 | + | ||
96 | + /** | ||
97 | + * Retorna o valor do atributo <code>identificacao</code> | ||
98 | + * | ||
99 | + * @return <code>String</code> | ||
100 | + */ | ||
101 | + public String getIdentificacao() { | ||
102 | + | ||
103 | + return identificacao; | ||
104 | + } | ||
105 | + | ||
106 | + /** | ||
107 | + * Define o valor do atributo <code>identificacao</code>. | ||
108 | + * | ||
109 | + * @param identificacao | ||
110 | + */ | ||
111 | + public void setIdentificacao(String identificacao) { | ||
112 | + | ||
113 | + this.identificacao = identificacao; | ||
114 | + } | ||
115 | + | ||
116 | + | ||
117 | + /** | ||
118 | + * Retorna o valor do atributo <code>limitesAprovacoesValores</code> | ||
119 | + * | ||
120 | + * @return <code>Collection<LimiteAprovacaoValor></code> | ||
121 | + */ | ||
122 | + public Collection<LimiteAprovacaoValor> getLimitesAprovacoesValores() { | ||
123 | + | ||
124 | + return limitesAprovacoesValores; | ||
125 | + } | ||
126 | + | ||
127 | + | ||
128 | + /** | ||
129 | + * Define o valor do atributo <code>limitesAprovacoesValores</code>. | ||
130 | + * | ||
131 | + * @param limitesAprovacoesValores | ||
132 | + */ | ||
133 | + public void setLimitesAprovacoesValores(Collection<LimiteAprovacaoValor> limitesAprovacoesValores) { | ||
134 | + | ||
135 | + this.limitesAprovacoesValores = limitesAprovacoesValores; | ||
136 | + } | ||
137 | + | ||
138 | + /** | ||
139 | + * Retorna o valor do atributo <code>dominioTipoAbrangencia</code> | ||
140 | + * | ||
141 | + * @return <code>Dominio</code> | ||
142 | + */ | ||
143 | + public Dominio getDominioTipoAbrangencia() { | ||
144 | + | ||
145 | + return dominioTipoAbrangencia; | ||
146 | + } | ||
147 | + | ||
148 | + /** | ||
149 | + * Define o valor do atributo <code>dominioTipoAbrangencia</code>. | ||
150 | + * | ||
151 | + * @param dominioTipoAbrangencia | ||
152 | + */ | ||
153 | + public void setDominioTipoAbrangencia(Dominio dominioTipoAbrangencia) { | ||
154 | + | ||
155 | + this.dominioTipoAbrangencia = dominioTipoAbrangencia; | ||
156 | + } | ||
157 | + | ||
158 | + /** | ||
159 | + * Retorna o valor do atributo <code>dominioTipoLimite</code> | ||
160 | + * | ||
161 | + * @return <code>Dominio</code> | ||
162 | + */ | ||
163 | + public Dominio getDominioTipoLimite() { | ||
164 | + | ||
165 | + return dominioTipoLimite; | ||
166 | + } | ||
167 | + | ||
168 | + /** | ||
169 | + * Define o valor do atributo <code>dominioTipoLimite</code>. | ||
170 | + * | ||
171 | + * @param dominioTipoLimite | ||
172 | + */ | ||
173 | + public void setDominioTipoLimite(Dominio dominioTipoLimite) { | ||
174 | + | ||
175 | + this.dominioTipoLimite = dominioTipoLimite; | ||
176 | + } | ||
177 | + | ||
178 | + /** | ||
179 | + * Retorna o valor do atributo <code>niveisAutoridades</code> | ||
180 | + * | ||
181 | + * @return <code>Collection<LimiteAprovacaoNivelAutoridade></code> | ||
182 | + */ | ||
183 | + public Collection<LimiteAprovacaoNivelAutoridade> getNiveisAutoridades() { | ||
184 | + | ||
185 | + return niveisAutoridades; | ||
186 | + } | ||
187 | + | ||
188 | + /** | ||
189 | + * Define o valor do atributo <code>niveisAutoridades</code>. | ||
190 | + * | ||
191 | + * @param niveisAutoridades | ||
192 | + */ | ||
193 | + public void setNiveisAutoridades(Collection<LimiteAprovacaoNivelAutoridade> niveisAutoridades) { | ||
194 | + | ||
195 | + this.niveisAutoridades = niveisAutoridades; | ||
196 | + } | ||
197 | + | ||
198 | + /** | ||
199 | + * Retorna o valor do atributo <code>alcadas</code> | ||
200 | + * | ||
201 | + * @return <code>Collection<LimiteAprovacaoAlcada></code> | ||
202 | + */ | ||
203 | + public Collection<LimiteAprovacaoAlcada> getAlcadas() { | ||
204 | + | ||
205 | + return alcadas; | ||
206 | + } | ||
207 | + | ||
208 | + /** | ||
209 | + * Define o valor do atributo <code>alcadas</code>. | ||
210 | + * | ||
211 | + * @param alcadas | ||
212 | + */ | ||
213 | + public void setAlcadas(Collection<LimiteAprovacaoAlcada> alcadas) { | ||
214 | + | ||
215 | + this.alcadas = alcadas; | ||
216 | + } | ||
217 | + | ||
218 | + | ||
219 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacaoAlcada.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacaoAlcada.java | ||
@@ -0,0 +1,127 @@ | @@ -0,0 +1,127 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import javax.persistence.Entity; | ||
4 | +import javax.persistence.FetchType; | ||
5 | +import javax.persistence.GeneratedValue; | ||
6 | +import javax.persistence.GenerationType; | ||
7 | +import javax.persistence.Id; | ||
8 | +import javax.persistence.ManyToOne; | ||
9 | + | ||
10 | +import br.com.centralit.api.framework.json.ViewsAlcada; | ||
11 | +import br.com.centralit.framework.model.arquitetura.PersistentObject; | ||
12 | + | ||
13 | +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | ||
14 | +import com.fasterxml.jackson.annotation.JsonView; | ||
15 | + | ||
16 | +/** | ||
17 | + * <p> | ||
18 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
19 | + * </p> | ||
20 | + * | ||
21 | + * <p> | ||
22 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
23 | + * </p> | ||
24 | + * | ||
25 | + * <p> | ||
26 | + * <b>Title: </b> | ||
27 | + * </p> | ||
28 | + * | ||
29 | + * <p> | ||
30 | + * <b>Description: </b> | ||
31 | + * </p> | ||
32 | + * | ||
33 | + * <p> | ||
34 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
35 | + * </p> | ||
36 | + * | ||
37 | + * <p> | ||
38 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
39 | + * </p> | ||
40 | + * | ||
41 | + * @since 30/06/2015 - 13:56:03 | ||
42 | + * | ||
43 | + * @version 1.0.0 | ||
44 | + * | ||
45 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
46 | + * | ||
47 | + */ | ||
48 | +@Entity | ||
49 | +@JsonIgnoreProperties({ "$selected", "$index" }) | ||
50 | +public class LimiteAprovacaoAlcada extends PersistentObject { | ||
51 | + | ||
52 | + /** Atributo serialVersionUID. */ | ||
53 | + private static final long serialVersionUID = 1L; | ||
54 | + | ||
55 | + /** Atributo id. */ | ||
56 | + @Id | ||
57 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
58 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
59 | + private Long id; | ||
60 | + | ||
61 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
62 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
63 | + private Alcada alcada; | ||
64 | + | ||
65 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
66 | + private LimiteAprovacao limiteAprovacao; | ||
67 | + | ||
68 | + /** | ||
69 | + * Retorna o valor do atributo <code>alcada</code> | ||
70 | + * | ||
71 | + * @return <code>Alcada</code> | ||
72 | + */ | ||
73 | + public Alcada getAlcada() { | ||
74 | + | ||
75 | + return alcada; | ||
76 | + } | ||
77 | + | ||
78 | + /** | ||
79 | + * Define o valor do atributo <code>alcada</code>. | ||
80 | + * | ||
81 | + * @param alcada | ||
82 | + */ | ||
83 | + public void setAlcada(Alcada alcada) { | ||
84 | + | ||
85 | + this.alcada = alcada; | ||
86 | + } | ||
87 | + | ||
88 | + /** | ||
89 | + * Retorna o valor do atributo <code>limiteAprovacao</code> | ||
90 | + * | ||
91 | + * @return <code>LimiteAprovacao</code> | ||
92 | + */ | ||
93 | + public LimiteAprovacao getLimiteAprovacao() { | ||
94 | + | ||
95 | + return limiteAprovacao; | ||
96 | + } | ||
97 | + | ||
98 | + /** | ||
99 | + * Define o valor do atributo <code>limiteAprovacao</code>. | ||
100 | + * | ||
101 | + * @param limiteAprovacao | ||
102 | + */ | ||
103 | + public void setLimiteAprovacao(LimiteAprovacao limiteAprovacao) { | ||
104 | + | ||
105 | + this.limiteAprovacao = limiteAprovacao; | ||
106 | + } | ||
107 | + | ||
108 | + /** | ||
109 | + * Retorna o valor do atributo <code>id</code> | ||
110 | + * | ||
111 | + * @return <code>Long</code> | ||
112 | + */ | ||
113 | + public Long getId() { | ||
114 | + | ||
115 | + return id; | ||
116 | + } | ||
117 | + | ||
118 | + /** | ||
119 | + * Define o valor do atributo <code>id</code>. | ||
120 | + * | ||
121 | + * @param id | ||
122 | + */ | ||
123 | + public void setId(Long id) { | ||
124 | + | ||
125 | + this.id = id; | ||
126 | + } | ||
127 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacaoNivelAutoridade.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacaoNivelAutoridade.java | ||
@@ -0,0 +1,118 @@ | @@ -0,0 +1,118 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import javax.persistence.Entity; | ||
4 | +import javax.persistence.FetchType; | ||
5 | +import javax.persistence.GeneratedValue; | ||
6 | +import javax.persistence.GenerationType; | ||
7 | +import javax.persistence.Id; | ||
8 | +import javax.persistence.ManyToOne; | ||
9 | + | ||
10 | +import br.com.centralit.api.framework.json.ViewsAlcada; | ||
11 | +import br.com.centralit.framework.model.arquitetura.PersistentObject; | ||
12 | + | ||
13 | +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | ||
14 | +import com.fasterxml.jackson.annotation.JsonView; | ||
15 | + | ||
16 | +/** | ||
17 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
18 | + * | ||
19 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
20 | + * | ||
21 | + * <p><b>Title: </b></p> | ||
22 | + * | ||
23 | + * <p><b>Description: </b></p> | ||
24 | + * | ||
25 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
26 | + * | ||
27 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
28 | + * | ||
29 | + * @since 30/06/2015 - 13:56:36 | ||
30 | + * | ||
31 | + * @version 1.0.0 | ||
32 | + * | ||
33 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
34 | + * | ||
35 | + */ | ||
36 | +@Entity | ||
37 | +@JsonIgnoreProperties({"$selected","$index"}) | ||
38 | +public class LimiteAprovacaoNivelAutoridade extends PersistentObject { | ||
39 | + | ||
40 | + /** Atributo serialVersionUID. */ | ||
41 | + private static final long serialVersionUID = 1L; | ||
42 | + | ||
43 | + /** Atributo id. */ | ||
44 | + @Id | ||
45 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
46 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
47 | + private Long id; | ||
48 | + | ||
49 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
50 | + private LimiteAprovacao limiteAprovacao; | ||
51 | + | ||
52 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
53 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
54 | + private NivelAutoridade nivelAutoridade; | ||
55 | + | ||
56 | + | ||
57 | + /** | ||
58 | + * Retorna o valor do atributo <code>limiteAprovacao</code> | ||
59 | + * | ||
60 | + * @return <code>LimiteAprovacao</code> | ||
61 | + */ | ||
62 | + public LimiteAprovacao getLimiteAprovacao() { | ||
63 | + | ||
64 | + return limiteAprovacao; | ||
65 | + } | ||
66 | + | ||
67 | + /** | ||
68 | + * Define o valor do atributo <code>limiteAprovacao</code>. | ||
69 | + * | ||
70 | + * @param limiteAprovacao | ||
71 | + */ | ||
72 | + public void setLimiteAprovacao(LimiteAprovacao limiteAprovacao) { | ||
73 | + | ||
74 | + this.limiteAprovacao = limiteAprovacao; | ||
75 | + } | ||
76 | + | ||
77 | + /** | ||
78 | + * Retorna o valor do atributo <code>nivelAutoridade</code> | ||
79 | + * | ||
80 | + * @return <code>NivelAutoridade</code> | ||
81 | + */ | ||
82 | + public NivelAutoridade getNivelAutoridade() { | ||
83 | + | ||
84 | + return nivelAutoridade; | ||
85 | + } | ||
86 | + | ||
87 | + /** | ||
88 | + * Define o valor do atributo <code>nivelAutoridade</code>. | ||
89 | + * | ||
90 | + * @param nivelAutoridade | ||
91 | + */ | ||
92 | + public void setNivelAutoridade(NivelAutoridade nivelAutoridade) { | ||
93 | + | ||
94 | + this.nivelAutoridade = nivelAutoridade; | ||
95 | + } | ||
96 | + | ||
97 | + /** | ||
98 | + * Retorna o valor do atributo <code>id</code> | ||
99 | + * | ||
100 | + * @return <code>Long</code> | ||
101 | + */ | ||
102 | + public Long getId() { | ||
103 | + | ||
104 | + return id; | ||
105 | + } | ||
106 | + | ||
107 | + /** | ||
108 | + * Define o valor do atributo <code>id</code>. | ||
109 | + * | ||
110 | + * @param id | ||
111 | + */ | ||
112 | + public void setId(Long id) { | ||
113 | + | ||
114 | + this.id = id; | ||
115 | + } | ||
116 | + | ||
117 | + | ||
118 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacaoValor.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/LimiteAprovacaoValor.java | ||
@@ -0,0 +1,219 @@ | @@ -0,0 +1,219 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import java.math.BigDecimal; | ||
4 | +import java.util.ArrayList; | ||
5 | +import java.util.Collection; | ||
6 | + | ||
7 | +import javax.persistence.Column; | ||
8 | +import javax.persistence.Entity; | ||
9 | +import javax.persistence.FetchType; | ||
10 | +import javax.persistence.GeneratedValue; | ||
11 | +import javax.persistence.GenerationType; | ||
12 | +import javax.persistence.Id; | ||
13 | +import javax.persistence.ManyToOne; | ||
14 | +import javax.persistence.Transient; | ||
15 | + | ||
16 | +import br.com.centralit.api.framework.json.ViewsAlcada; | ||
17 | +import br.com.centralit.framework.json.MoneyDeserializer; | ||
18 | +import br.com.centralit.framework.model.Dominio; | ||
19 | +import br.com.centralit.framework.model.arquitetura.PersistentObject; | ||
20 | + | ||
21 | +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | ||
22 | +import com.fasterxml.jackson.annotation.JsonView; | ||
23 | +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; | ||
24 | + | ||
25 | +/** | ||
26 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
27 | + * | ||
28 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
29 | + * | ||
30 | + * <p><b>Title: </b></p> | ||
31 | + * | ||
32 | + * <p><b>Description: </b></p> | ||
33 | + * | ||
34 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
35 | + * | ||
36 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
37 | + * | ||
38 | + * @since 18/06/2015 - 16:57:20 | ||
39 | + * | ||
40 | + * @version 1.0.0 | ||
41 | + * | ||
42 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
43 | + * | ||
44 | + */ | ||
45 | +@Entity | ||
46 | +@JsonIgnoreProperties({ "$index" }) | ||
47 | +public class LimiteAprovacaoValor extends PersistentObject { | ||
48 | + | ||
49 | + /** Atributo serialVersionUID. */ | ||
50 | + private static final long serialVersionUID = 1L; | ||
51 | + | ||
52 | + /** Atributo id. */ | ||
53 | + @Id | ||
54 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
55 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
56 | + private Long id; | ||
57 | + | ||
58 | + @ManyToOne | ||
59 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
60 | + private Dominio dominioTipoLimiteValor; | ||
61 | + | ||
62 | + @ManyToOne | ||
63 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
64 | + private Dominio dominioTipoUtilizacao; | ||
65 | + | ||
66 | + @Column(precision = 20, scale = 2) | ||
67 | + @JsonDeserialize(using = MoneyDeserializer.class) | ||
68 | + @JsonView({ ViewsAlcada.LimiteAprovacaoView.class }) | ||
69 | + private BigDecimal valorLimite; | ||
70 | + | ||
71 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
72 | + private LimiteAprovacao limiteAprovacao; | ||
73 | + | ||
74 | + @Transient | ||
75 | + private Collection<ValorAcumulado> valoresAcumulados = new ArrayList<ValorAcumulado>(); | ||
76 | + | ||
77 | + /** | ||
78 | + * Retorna o valor do atributo <code>dominioTipoLimiteValor</code> | ||
79 | + * | ||
80 | + * @return <code>Dominio</code> | ||
81 | + */ | ||
82 | + public Dominio getDominioTipoLimiteValor() { | ||
83 | + | ||
84 | + return dominioTipoLimiteValor; | ||
85 | + } | ||
86 | + | ||
87 | + /** | ||
88 | + * Define o valor do atributo <code>dominioTipoLimiteValor</code>. | ||
89 | + * | ||
90 | + * @param dominioTipoLimiteValor | ||
91 | + */ | ||
92 | + public void setDominioTipoLimiteValor(Dominio dominioTipoAbrangencia) { | ||
93 | + | ||
94 | + this.dominioTipoLimiteValor = dominioTipoAbrangencia; | ||
95 | + } | ||
96 | + | ||
97 | + /** | ||
98 | + * Retorna o valor do atributo <code>dominioTipoUtilizacao</code> | ||
99 | + * | ||
100 | + * @return <code>Dominio</code> | ||
101 | + */ | ||
102 | + public Dominio getDominioTipoUtilizacao() { | ||
103 | + | ||
104 | + return dominioTipoUtilizacao; | ||
105 | + } | ||
106 | + | ||
107 | + /** | ||
108 | + * Define o valor do atributo <code>dominioTipoUtilizacao</code>. | ||
109 | + * | ||
110 | + * @param dominioTipoUtilizacao | ||
111 | + */ | ||
112 | + public void setDominioTipoUtilizacao(Dominio dominioTipoUtilizacao) { | ||
113 | + | ||
114 | + this.dominioTipoUtilizacao = dominioTipoUtilizacao; | ||
115 | + } | ||
116 | + | ||
117 | + /** | ||
118 | + * Retorna o valor do atributo <code>valorLimite</code> | ||
119 | + * | ||
120 | + * @return <code>BigDecimal</code> | ||
121 | + */ | ||
122 | + public BigDecimal getValorLimite() { | ||
123 | + | ||
124 | + return valorLimite; | ||
125 | + } | ||
126 | + | ||
127 | + /** | ||
128 | + * Define o valor do atributo <code>valorLimite</code>. | ||
129 | + * | ||
130 | + * @param valorLimite | ||
131 | + */ | ||
132 | + public void setValorLimite(BigDecimal valorLimite) { | ||
133 | + | ||
134 | + this.valorLimite = valorLimite; | ||
135 | + } | ||
136 | + | ||
137 | + /** | ||
138 | + * Retorna o valor do atributo <code>id</code> | ||
139 | + * | ||
140 | + * @return <code>Long</code> | ||
141 | + */ | ||
142 | + public Long getId() { | ||
143 | + | ||
144 | + return id; | ||
145 | + } | ||
146 | + | ||
147 | + /** | ||
148 | + * Define o valor do atributo <code>id</code>. | ||
149 | + * | ||
150 | + * @param id | ||
151 | + */ | ||
152 | + public void setId(Long id) { | ||
153 | + | ||
154 | + this.id = id; | ||
155 | + } | ||
156 | + | ||
157 | + | ||
158 | + /** | ||
159 | + * Retorna o valor do atributo <code>limiteAprovacao</code> | ||
160 | + * | ||
161 | + * @return <code>LimiteAprovacao</code> | ||
162 | + */ | ||
163 | + public LimiteAprovacao getLimiteAprovacao() { | ||
164 | + | ||
165 | + return limiteAprovacao; | ||
166 | + } | ||
167 | + | ||
168 | + | ||
169 | + /** | ||
170 | + * Define o valor do atributo <code>limiteAprovacao</code>. | ||
171 | + * | ||
172 | + * @param limiteAprovacao | ||
173 | + */ | ||
174 | + public void setLimiteAprovacao(LimiteAprovacao limiteAprovacao) { | ||
175 | + | ||
176 | + this.limiteAprovacao = limiteAprovacao; | ||
177 | + } | ||
178 | + | ||
179 | + /** | ||
180 | + * Retorna o valor do atributo <code>valoresAcumulados</code> | ||
181 | + * | ||
182 | + * @return <code>Collection<ValorAcumulado></code> | ||
183 | + */ | ||
184 | + public Collection<ValorAcumulado> getValoresAcumulados() { | ||
185 | + | ||
186 | + return valoresAcumulados; | ||
187 | + } | ||
188 | + | ||
189 | + | ||
190 | + /** | ||
191 | + * Define o valor do atributo <code>valoresAcumulados</code>. | ||
192 | + * | ||
193 | + * @param valoresAcumulados | ||
194 | + */ | ||
195 | + public void setValoresAcumulados(Collection<ValorAcumulado> valoresAcumulados) { | ||
196 | + | ||
197 | + this.valoresAcumulados = valoresAcumulados; | ||
198 | + } | ||
199 | + | ||
200 | + public ValorAcumulado adicionaValorAcumulado(NivelAutoridade nivelAutoridade, Float valor) { | ||
201 | + ValorAcumulado valorAcumulado = null; | ||
202 | + for (ValorAcumulado valorAcumuladoAux : this.getValoresAcumulados()) { | ||
203 | + if (valorAcumuladoAux.getNivelAutoridade().getId().equals(nivelAutoridade.getId())) { | ||
204 | + valorAcumulado = valorAcumuladoAux; | ||
205 | + break; | ||
206 | + } | ||
207 | + } | ||
208 | + | ||
209 | + if (valorAcumulado == null) { | ||
210 | + valorAcumulado = new ValorAcumulado(nivelAutoridade); | ||
211 | + this.getValoresAcumulados().add(valorAcumulado); | ||
212 | + } | ||
213 | + | ||
214 | + valorAcumulado.setValor(valorAcumulado.getValor() + valor); | ||
215 | + return valorAcumulado; | ||
216 | + } | ||
217 | + | ||
218 | + | ||
219 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/ResponsavelAlcada.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/ResponsavelAlcada.java | ||
@@ -0,0 +1,311 @@ | @@ -0,0 +1,311 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import java.util.ArrayList; | ||
4 | +import java.util.List; | ||
5 | + | ||
6 | +import javax.persistence.CascadeType; | ||
7 | +import javax.persistence.Column; | ||
8 | +import javax.persistence.Entity; | ||
9 | +import javax.persistence.FetchType; | ||
10 | +import javax.persistence.GeneratedValue; | ||
11 | +import javax.persistence.GenerationType; | ||
12 | +import javax.persistence.Id; | ||
13 | +import javax.persistence.JoinColumn; | ||
14 | +import javax.persistence.JoinTable; | ||
15 | +import javax.persistence.ManyToMany; | ||
16 | +import javax.persistence.ManyToOne; | ||
17 | + | ||
18 | +import br.com.centralit.api.framework.json.ViewsAlcada; | ||
19 | +import br.com.centralit.api.framework.json.ViewsTabelasCorp; | ||
20 | +import br.com.centralit.framework.json.Views; | ||
21 | +import br.com.centralit.framework.model.Dominio; | ||
22 | +import br.com.centralit.framework.model.Usuario; | ||
23 | +import br.com.centralit.framework.model.arquitetura.PersistentObject; | ||
24 | + | ||
25 | +import com.fasterxml.jackson.annotation.JsonIgnore; | ||
26 | +import com.fasterxml.jackson.annotation.JsonView; | ||
27 | + | ||
28 | +/** | ||
29 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
30 | + * | ||
31 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
32 | + * | ||
33 | + * <p><b>Title: </b></p> | ||
34 | + * | ||
35 | + * <p><b>Description: </b></p> | ||
36 | + * | ||
37 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
38 | + * | ||
39 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
40 | + * | ||
41 | + * @since 14/07/2015 - 13:57:20 | ||
42 | + * | ||
43 | + * @version 1.0.0 | ||
44 | + * | ||
45 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
46 | + * | ||
47 | + */ | ||
48 | +@Entity | ||
49 | +public class ResponsavelAlcada extends PersistentObject { | ||
50 | + | ||
51 | + /** Atributo serialVersionUID. */ | ||
52 | + private static final long serialVersionUID = 1L; | ||
53 | + | ||
54 | + /** Atributo id. */ | ||
55 | + @Id | ||
56 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
57 | + @JsonView({ Views.GenericView.class }) | ||
58 | + private Long id; | ||
59 | + | ||
60 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
61 | + @JsonIgnore | ||
62 | + private SolicitacaoAlcada solicitacaoAlcada; | ||
63 | + | ||
64 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
65 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class }) | ||
66 | + private Colaborador colaborador; | ||
67 | + | ||
68 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
69 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class }) | ||
70 | + private Usuario usuario; | ||
71 | + | ||
72 | + @ManyToOne(fetch = FetchType.LAZY, optional = true) | ||
73 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class }) | ||
74 | + private NivelAutoridade nivelAutoridade; | ||
75 | + | ||
76 | + @Column(nullable = false) | ||
77 | + @JsonView({ Views.GenericView.class }) | ||
78 | + protected Boolean delegacao; | ||
79 | + | ||
80 | + @ManyToOne(fetch = FetchType.LAZY, optional = true) | ||
81 | + @JsonIgnore | ||
82 | + private CentroResultadoDelegacao centroResultadoDelegacao; | ||
83 | + | ||
84 | + @Column(nullable = false) | ||
85 | + @JsonView({ Views.GenericView.class }) | ||
86 | + protected Boolean habilitado; | ||
87 | + | ||
88 | + @JsonView({ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class} ) | ||
89 | + @ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY) | ||
90 | + @JoinTable(name="MotivoRejeicaoAlcada", | ||
91 | + joinColumns= @JoinColumn( name = "autorizadorAlcada_id"), | ||
92 | + inverseJoinColumns= @JoinColumn(name = "motivoRejeicao_id") ) | ||
93 | + private List<Dominio> motivosRejeicao; | ||
94 | + | ||
95 | + public ResponsavelAlcada() { | ||
96 | + | ||
97 | + } | ||
98 | + | ||
99 | + public ResponsavelAlcada(SolicitacaoAlcada solicitacaoAlcada, Colaborador colaborador, NivelAutoridade nivelAutoridade, CentroResultadoDelegacao centroResultadoDelegacao) { | ||
100 | + this.solicitacaoAlcada = solicitacaoAlcada; | ||
101 | + this.habilitado = true; | ||
102 | + this.colaborador = colaborador; | ||
103 | + this.nivelAutoridade = nivelAutoridade; | ||
104 | + this.usuario = colaborador.getPessoa().getUsuario(); | ||
105 | + this.centroResultadoDelegacao = centroResultadoDelegacao; | ||
106 | + this.setDelegacao(centroResultadoDelegacao != null); | ||
107 | + } | ||
108 | + | ||
109 | + /** | ||
110 | + * Retorna o valor do atributo <code>solicitacaoAlcada</code> | ||
111 | + * | ||
112 | + * @return <code>SolicitacaoAlcada</code> | ||
113 | + */ | ||
114 | + public SolicitacaoAlcada getSolicitacaoAlcada() { | ||
115 | + | ||
116 | + return solicitacaoAlcada; | ||
117 | + } | ||
118 | + | ||
119 | + | ||
120 | + /** | ||
121 | + * Define o valor do atributo <code>solicitacaoAlcada</code>. | ||
122 | + * | ||
123 | + * @param solicitacaoAlcada | ||
124 | + */ | ||
125 | + public void setSolicitacaoAlcada(SolicitacaoAlcada solicitacaoAlcada) { | ||
126 | + | ||
127 | + this.solicitacaoAlcada = solicitacaoAlcada; | ||
128 | + } | ||
129 | + | ||
130 | + | ||
131 | + /** | ||
132 | + * Retorna o valor do atributo <code>colaborador</code> | ||
133 | + * | ||
134 | + * @return <code>Colaborador</code> | ||
135 | + */ | ||
136 | + public Colaborador getColaborador() { | ||
137 | + | ||
138 | + return colaborador; | ||
139 | + } | ||
140 | + | ||
141 | + | ||
142 | + /** | ||
143 | + * Define o valor do atributo <code>colaborador</code>. | ||
144 | + * | ||
145 | + * @param colaborador | ||
146 | + */ | ||
147 | + public void setColaborador(Colaborador colaborador) { | ||
148 | + | ||
149 | + this.colaborador = colaborador; | ||
150 | + } | ||
151 | + | ||
152 | + | ||
153 | + /** | ||
154 | + * Retorna o valor do atributo <code>usuario</code> | ||
155 | + * | ||
156 | + * @return <code>Usuario</code> | ||
157 | + */ | ||
158 | + public Usuario getUsuario() { | ||
159 | + | ||
160 | + return usuario; | ||
161 | + } | ||
162 | + | ||
163 | + | ||
164 | + /** | ||
165 | + * Define o valor do atributo <code>usuario</code>. | ||
166 | + * | ||
167 | + * @param usuario | ||
168 | + */ | ||
169 | + public void setUsuario(Usuario usuario) { | ||
170 | + | ||
171 | + this.usuario = usuario; | ||
172 | + } | ||
173 | + | ||
174 | + | ||
175 | + /** | ||
176 | + * Retorna o valor do atributo <code>nivelAutoridade</code> | ||
177 | + * | ||
178 | + * @return <code>NivelAutoridade</code> | ||
179 | + */ | ||
180 | + public NivelAutoridade getNivelAutoridade() { | ||
181 | + | ||
182 | + return nivelAutoridade; | ||
183 | + } | ||
184 | + | ||
185 | + | ||
186 | + /** | ||
187 | + * Define o valor do atributo <code>nivelAutoridade</code>. | ||
188 | + * | ||
189 | + * @param nivelAutoridade | ||
190 | + */ | ||
191 | + public void setNivelAutoridade(NivelAutoridade nivelAutoridade) { | ||
192 | + | ||
193 | + this.nivelAutoridade = nivelAutoridade; | ||
194 | + } | ||
195 | + | ||
196 | + | ||
197 | + /** | ||
198 | + * Retorna o valor do atributo <code>delegacao</code> | ||
199 | + * | ||
200 | + * @return <code>Boolean</code> | ||
201 | + */ | ||
202 | + public Boolean getDelegacao() { | ||
203 | + | ||
204 | + return delegacao; | ||
205 | + } | ||
206 | + | ||
207 | + | ||
208 | + /** | ||
209 | + * Define o valor do atributo <code>delegacao</code>. | ||
210 | + * | ||
211 | + * @param delegacao | ||
212 | + */ | ||
213 | + public void setDelegacao(Boolean delegacao) { | ||
214 | + | ||
215 | + this.delegacao = delegacao; | ||
216 | + } | ||
217 | + | ||
218 | + | ||
219 | + /** | ||
220 | + * Retorna o valor do atributo <code>centroResultadoDelegacao</code> | ||
221 | + * | ||
222 | + * @return <code>CentroResultadoDelegacao</code> | ||
223 | + */ | ||
224 | + public CentroResultadoDelegacao getCentroResultadoDelegacao() { | ||
225 | + | ||
226 | + return centroResultadoDelegacao; | ||
227 | + } | ||
228 | + | ||
229 | + | ||
230 | + /** | ||
231 | + * Define o valor do atributo <code>centroResultadoDelegacao</code>. | ||
232 | + * | ||
233 | + * @param centroResultadoDelegacao | ||
234 | + */ | ||
235 | + public void setCentroResultadoDelegacao(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
236 | + | ||
237 | + this.centroResultadoDelegacao = centroResultadoDelegacao; | ||
238 | + } | ||
239 | + | ||
240 | + | ||
241 | + /** | ||
242 | + * Retorna o valor do atributo <code>habilitado</code> | ||
243 | + * | ||
244 | + * @return <code>Boolean</code> | ||
245 | + */ | ||
246 | + public Boolean getHabilitado() { | ||
247 | + | ||
248 | + return habilitado; | ||
249 | + } | ||
250 | + | ||
251 | + | ||
252 | + /** | ||
253 | + * Define o valor do atributo <code>habilitado</code>. | ||
254 | + * | ||
255 | + * @param habilitado | ||
256 | + */ | ||
257 | + public void setHabilitado(Boolean habilitado) { | ||
258 | + | ||
259 | + this.habilitado = habilitado; | ||
260 | + } | ||
261 | + | ||
262 | + | ||
263 | + /** | ||
264 | + * Retorna o valor do atributo <code>motivosRejeicao</code> | ||
265 | + * | ||
266 | + * @return <code>List<Dominio></code> | ||
267 | + */ | ||
268 | + public List<Dominio> getMotivosRejeicao() { | ||
269 | + | ||
270 | + return motivosRejeicao; | ||
271 | + } | ||
272 | + | ||
273 | + | ||
274 | + /** | ||
275 | + * Define o valor do atributo <code>motivosRejeicao</code>. | ||
276 | + * | ||
277 | + * @param motivosRejeicao | ||
278 | + */ | ||
279 | + public void setMotivosRejeicao(List<Dominio> motivosRejeicao) { | ||
280 | + | ||
281 | + this.motivosRejeicao = motivosRejeicao; | ||
282 | + } | ||
283 | + | ||
284 | + | ||
285 | + /** | ||
286 | + * Define o valor do atributo <code>id</code>. | ||
287 | + * | ||
288 | + * @param id | ||
289 | + */ | ||
290 | + public void setId(Long id) { | ||
291 | + | ||
292 | + this.id = id; | ||
293 | + } | ||
294 | + | ||
295 | + @Override | ||
296 | + public Long getId() { | ||
297 | + return this.id; | ||
298 | + } | ||
299 | + | ||
300 | + public void adicionaMotivoRejeicao(Dominio motivoRejeicao) { | ||
301 | + if (this.getMotivosRejeicao() == null) { | ||
302 | + this.setMotivosRejeicao(new ArrayList<Dominio>()); | ||
303 | + } | ||
304 | + | ||
305 | + this.setHabilitado(false); | ||
306 | + this.getMotivosRejeicao().add(motivoRejeicao); | ||
307 | + } | ||
308 | + | ||
309 | + | ||
310 | + | ||
311 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/SolicitacaoAlcada.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/SolicitacaoAlcada.java | ||
@@ -0,0 +1,506 @@ | @@ -0,0 +1,506 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import java.math.BigDecimal; | ||
4 | +import java.util.Calendar; | ||
5 | +import java.util.List; | ||
6 | + | ||
7 | +import javax.persistence.CascadeType; | ||
8 | +import javax.persistence.Column; | ||
9 | +import javax.persistence.Entity; | ||
10 | +import javax.persistence.FetchType; | ||
11 | +import javax.persistence.GeneratedValue; | ||
12 | +import javax.persistence.GenerationType; | ||
13 | +import javax.persistence.Id; | ||
14 | +import javax.persistence.ManyToOne; | ||
15 | +import javax.persistence.OneToMany; | ||
16 | +import javax.persistence.PrePersist; | ||
17 | +import javax.persistence.Temporal; | ||
18 | +import javax.persistence.TemporalType; | ||
19 | +import javax.persistence.Transient; | ||
20 | + | ||
21 | +import br.com.centralit.api.framework.json.ViewsAlcada; | ||
22 | +import br.com.centralit.api.framework.json.ViewsTabelasCorp; | ||
23 | +import br.com.centralit.framework.json.JsonCalendarSimpleDateDeserializer; | ||
24 | +import br.com.centralit.framework.json.JsonCalendarSimpleDateSerializer; | ||
25 | +import br.com.centralit.framework.json.MoneyDeserializer; | ||
26 | +import br.com.centralit.framework.json.Views; | ||
27 | +import br.com.centralit.framework.model.Dominio; | ||
28 | +import br.com.centralit.framework.model.Usuario; | ||
29 | +import br.com.centralit.framework.model.arquitetura.PersistentObjectAudit; | ||
30 | +import br.com.centralit.framework.util.UtilDate; | ||
31 | + | ||
32 | +import com.fasterxml.jackson.annotation.JsonView; | ||
33 | +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; | ||
34 | +import com.fasterxml.jackson.databind.annotation.JsonSerialize; | ||
35 | + | ||
36 | +/** | ||
37 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
38 | + * | ||
39 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
40 | + * | ||
41 | + * <p><b>Title: </b></p> | ||
42 | + * | ||
43 | + * <p><b>Description: </b></p> | ||
44 | + * | ||
45 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
46 | + * | ||
47 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
48 | + * | ||
49 | + * @since 14/07/2015 - 13:57:20 | ||
50 | + * | ||
51 | + * @version 1.0.0 | ||
52 | + * | ||
53 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
54 | + * | ||
55 | + */ | ||
56 | +@Entity | ||
57 | +public class SolicitacaoAlcada extends PersistentObjectAudit { | ||
58 | + | ||
59 | + /** Atributo serialVersionUID. */ | ||
60 | + private static final long serialVersionUID = 1L; | ||
61 | + | ||
62 | + /** Atributo id. */ | ||
63 | + @Id | ||
64 | + @GeneratedValue(strategy = GenerationType.AUTO) | ||
65 | + @JsonView({ Views.GenericView.class }) | ||
66 | + private Long id; | ||
67 | + | ||
68 | + @JsonView({ Views.GenericView.class }) | ||
69 | + private Integer ano; | ||
70 | + | ||
71 | + @JsonView({ Views.GenericView.class }) | ||
72 | + private Integer mes; | ||
73 | + | ||
74 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
75 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
76 | + private Alcada alcada; | ||
77 | + | ||
78 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
79 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
80 | + private CentroResultado centroResultado; | ||
81 | + | ||
82 | + @ManyToOne(fetch = FetchType.LAZY, optional = true) | ||
83 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
84 | + private Usuario solicitante; | ||
85 | + | ||
86 | + @Column(nullable = false) | ||
87 | + @Temporal(TemporalType.TIMESTAMP) | ||
88 | + @JsonSerialize(using = JsonCalendarSimpleDateSerializer.class) | ||
89 | + @JsonDeserialize(using = JsonCalendarSimpleDateDeserializer.class) | ||
90 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
91 | + private Calendar dataReferencia; | ||
92 | + | ||
93 | + @Column(nullable = false) | ||
94 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
95 | + protected String requisicaoOrigem; | ||
96 | + | ||
97 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
98 | + protected String identificador; | ||
99 | + | ||
100 | + @ManyToOne(fetch = FetchType.LAZY, optional = true) | ||
101 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
102 | + private Dominio tipoUtilizacao; | ||
103 | + | ||
104 | + @Column(nullable = false, precision = 20, scale = 2) | ||
105 | + @JsonDeserialize(using = MoneyDeserializer.class) | ||
106 | + @JsonView({ Views.GenericView.class }) | ||
107 | + private BigDecimal valor; | ||
108 | + | ||
109 | + @ManyToOne(fetch = FetchType.LAZY, optional = false) | ||
110 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class }) | ||
111 | + private Dominio situacao; | ||
112 | + | ||
113 | + @ManyToOne(fetch = FetchType.LAZY, optional = true) | ||
114 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
115 | + private ResponsavelAlcada aprovador; | ||
116 | + | ||
117 | + @OneToMany(fetch = FetchType.LAZY, mappedBy = "solicitacaoAlcada", cascade = CascadeType.ALL) | ||
118 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class }) | ||
119 | + private List<ResponsavelAlcada> responsaveis; | ||
120 | + | ||
121 | + @Transient | ||
122 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class, ViewsAlcada.RecuperacaoAlcadaView.class }) | ||
123 | + private String usernameAprovador; | ||
124 | + | ||
125 | + @Transient | ||
126 | + @JsonView({ ViewsTabelasCorp.SolicitacaoAlcadaView.class }) | ||
127 | + private Usuario usuarioAprovador; | ||
128 | + | ||
129 | + @Override | ||
130 | + public Long getId() { | ||
131 | + return this.id; | ||
132 | + } | ||
133 | + | ||
134 | + public SolicitacaoAlcada() { | ||
135 | + | ||
136 | + } | ||
137 | + | ||
138 | + public SolicitacaoAlcada( final Alcada alcada, final CentroResultado centroResultado, final Usuario solicitante | ||
139 | + , final Calendar dataReferencia, String requisicaoOrigem, Dominio tipoUtilizacao, BigDecimal valor) { | ||
140 | + this.alcada = alcada; | ||
141 | + this.centroResultado = centroResultado; | ||
142 | + this.solicitante = solicitante; | ||
143 | + this.dataReferencia = dataReferencia; | ||
144 | + this.requisicaoOrigem = requisicaoOrigem; | ||
145 | + this.tipoUtilizacao = tipoUtilizacao; | ||
146 | + this.valor = valor; | ||
147 | + } | ||
148 | + | ||
149 | + /** | ||
150 | + * Retorna o valor do atributo <code>alcada</code> | ||
151 | + * | ||
152 | + * @return <code>Alcada</code> | ||
153 | + */ | ||
154 | + public Alcada getAlcada() { | ||
155 | + | ||
156 | + return alcada; | ||
157 | + } | ||
158 | + | ||
159 | + | ||
160 | + /** | ||
161 | + * Define o valor do atributo <code>alcada</code>. | ||
162 | + * | ||
163 | + * @param alcada | ||
164 | + */ | ||
165 | + public void setAlcada(Alcada alcada) { | ||
166 | + | ||
167 | + this.alcada = alcada; | ||
168 | + } | ||
169 | + | ||
170 | + | ||
171 | + /** | ||
172 | + * Retorna o valor do atributo <code>centroResultado</code> | ||
173 | + * | ||
174 | + * @return <code>CentroResultado</code> | ||
175 | + */ | ||
176 | + public CentroResultado getCentroResultado() { | ||
177 | + | ||
178 | + return centroResultado; | ||
179 | + } | ||
180 | + | ||
181 | + | ||
182 | + /** | ||
183 | + * Define o valor do atributo <code>centroResultado</code>. | ||
184 | + * | ||
185 | + * @param centroResultado | ||
186 | + */ | ||
187 | + public void setCentroResultado(CentroResultado centroResultado) { | ||
188 | + | ||
189 | + this.centroResultado = centroResultado; | ||
190 | + } | ||
191 | + | ||
192 | + | ||
193 | + /** | ||
194 | + * Retorna o valor do atributo <code>solicitante</code> | ||
195 | + * | ||
196 | + * @return <code>Usuario</code> | ||
197 | + */ | ||
198 | + public Usuario getSolicitante() { | ||
199 | + | ||
200 | + return solicitante; | ||
201 | + } | ||
202 | + | ||
203 | + | ||
204 | + /** | ||
205 | + * Define o valor do atributo <code>solicitante</code>. | ||
206 | + * | ||
207 | + * @param solicitante | ||
208 | + */ | ||
209 | + public void setSolicitante(Usuario solicitante) { | ||
210 | + | ||
211 | + this.solicitante = solicitante; | ||
212 | + } | ||
213 | + | ||
214 | + | ||
215 | + /** | ||
216 | + * Retorna o valor do atributo <code>dataReferencia</code> | ||
217 | + * | ||
218 | + * @return <code>Calendar</code> | ||
219 | + */ | ||
220 | + public Calendar getDataReferencia() { | ||
221 | + | ||
222 | + return dataReferencia; | ||
223 | + } | ||
224 | + | ||
225 | + | ||
226 | + /** | ||
227 | + * Define o valor do atributo <code>dataReferencia</code>. | ||
228 | + * | ||
229 | + * @param dataReferencia | ||
230 | + */ | ||
231 | + public void setDataReferencia(Calendar dataReferencia) { | ||
232 | + | ||
233 | + this.dataReferencia = dataReferencia; | ||
234 | + } | ||
235 | + | ||
236 | + | ||
237 | + /** | ||
238 | + * Retorna o valor do atributo <code>requisicaoOrigem</code> | ||
239 | + * | ||
240 | + * @return <code>String</code> | ||
241 | + */ | ||
242 | + public String getRequisicaoOrigem() { | ||
243 | + | ||
244 | + return requisicaoOrigem; | ||
245 | + } | ||
246 | + | ||
247 | + | ||
248 | + /** | ||
249 | + * Define o valor do atributo <code>requisicaoOrigem</code>. | ||
250 | + * | ||
251 | + * @param requisicaoOrigem | ||
252 | + */ | ||
253 | + public void setRequisicaoOrigem(String requisicaoOrigem) { | ||
254 | + | ||
255 | + this.requisicaoOrigem = requisicaoOrigem; | ||
256 | + } | ||
257 | + | ||
258 | + | ||
259 | + /** | ||
260 | + * Retorna o valor do atributo <code>tipoUtilizacao</code> | ||
261 | + * | ||
262 | + * @return <code>Dominio</code> | ||
263 | + */ | ||
264 | + public Dominio getTipoUtilizacao() { | ||
265 | + | ||
266 | + return tipoUtilizacao; | ||
267 | + } | ||
268 | + | ||
269 | + | ||
270 | + /** | ||
271 | + * Define o valor do atributo <code>tipoUtilizacao</code>. | ||
272 | + * | ||
273 | + * @param tipoUtilizacao | ||
274 | + */ | ||
275 | + public void setTipoUtilizacao(Dominio tipoUtilizacao) { | ||
276 | + | ||
277 | + this.tipoUtilizacao = tipoUtilizacao; | ||
278 | + } | ||
279 | + | ||
280 | + | ||
281 | + /** | ||
282 | + * Retorna o valor do atributo <code>valor</code> | ||
283 | + * | ||
284 | + * @return <code>BigDecimal</code> | ||
285 | + */ | ||
286 | + public BigDecimal getValor() { | ||
287 | + | ||
288 | + return valor; | ||
289 | + } | ||
290 | + | ||
291 | + | ||
292 | + /** | ||
293 | + * Define o valor do atributo <code>valor</code>. | ||
294 | + * | ||
295 | + * @param valor | ||
296 | + */ | ||
297 | + public void setValor(BigDecimal valor) { | ||
298 | + | ||
299 | + this.valor = valor; | ||
300 | + } | ||
301 | + | ||
302 | + | ||
303 | + /** | ||
304 | + * Retorna o valor do atributo <code>situacao</code> | ||
305 | + * | ||
306 | + * @return <code>Dominio</code> | ||
307 | + */ | ||
308 | + public Dominio getSituacao() { | ||
309 | + | ||
310 | + return situacao; | ||
311 | + } | ||
312 | + | ||
313 | + | ||
314 | + /** | ||
315 | + * Define o valor do atributo <code>situacao</code>. | ||
316 | + * | ||
317 | + * @param situacao | ||
318 | + */ | ||
319 | + public void setSituacao(Dominio situacao) { | ||
320 | + | ||
321 | + this.situacao = situacao; | ||
322 | + } | ||
323 | + | ||
324 | + | ||
325 | + /** | ||
326 | + * Retorna o valor do atributo <code>aprovador</code> | ||
327 | + * | ||
328 | + * @return <code>ResponsavelAlcada</code> | ||
329 | + */ | ||
330 | + public ResponsavelAlcada getAprovador() { | ||
331 | + | ||
332 | + return aprovador; | ||
333 | + } | ||
334 | + | ||
335 | + | ||
336 | + /** | ||
337 | + * Retorna o valor do atributo <code>responsaveis</code> | ||
338 | + * | ||
339 | + * @return <code>Collection<ResponsavelAlcada></code> | ||
340 | + */ | ||
341 | + public List<ResponsavelAlcada> getResponsaveis() { | ||
342 | + | ||
343 | + return responsaveis; | ||
344 | + } | ||
345 | + | ||
346 | + | ||
347 | + /** | ||
348 | + * Define o valor do atributo <code>responsaveis</code>. | ||
349 | + * | ||
350 | + * @param responsaveis | ||
351 | + */ | ||
352 | + public void setResponsaveis(List<ResponsavelAlcada> responsaveis) { | ||
353 | + | ||
354 | + this.responsaveis = responsaveis; | ||
355 | + } | ||
356 | + | ||
357 | + | ||
358 | + /** | ||
359 | + * Define o valor do atributo <code>id</code>. | ||
360 | + * | ||
361 | + * @param id | ||
362 | + */ | ||
363 | + public void setId(Long id) { | ||
364 | + | ||
365 | + this.id = id; | ||
366 | + } | ||
367 | + | ||
368 | + | ||
369 | + | ||
370 | + /** | ||
371 | + * Retorna o valor do atributo <code>ano</code> | ||
372 | + * | ||
373 | + * @return <code>Integer</code> | ||
374 | + */ | ||
375 | + public Integer getAno() { | ||
376 | + | ||
377 | + return ano; | ||
378 | + } | ||
379 | + | ||
380 | + | ||
381 | + | ||
382 | + /** | ||
383 | + * Define o valor do atributo <code>ano</code>. | ||
384 | + * | ||
385 | + * @param ano | ||
386 | + */ | ||
387 | + public void setAno(Integer ano) { | ||
388 | + | ||
389 | + this.ano = ano; | ||
390 | + } | ||
391 | + | ||
392 | + | ||
393 | + | ||
394 | + /** | ||
395 | + * Retorna o valor do atributo <code>mes</code> | ||
396 | + * | ||
397 | + * @return <code>Integer</code> | ||
398 | + */ | ||
399 | + public Integer getMes() { | ||
400 | + | ||
401 | + return mes; | ||
402 | + } | ||
403 | + | ||
404 | + | ||
405 | + | ||
406 | + /** | ||
407 | + * Define o valor do atributo <code>mes</code>. | ||
408 | + * | ||
409 | + * @param mes | ||
410 | + */ | ||
411 | + public void setMes(Integer mes) { | ||
412 | + | ||
413 | + this.mes = mes; | ||
414 | + } | ||
415 | + | ||
416 | + @PrePersist | ||
417 | + protected void onPrePersist() { | ||
418 | + super.onPrePersist(); | ||
419 | + if(this.dataReferencia != null){ | ||
420 | + int ano = new Integer(UtilDate.getAno(this.getDataReferencia().getTime())); | ||
421 | + int mes = new Integer(UtilDate.getMes(this.getDataReferencia().getTime())); | ||
422 | + | ||
423 | + this.setMes(mes); | ||
424 | + this.setAno(ano); | ||
425 | + } | ||
426 | + } | ||
427 | + | ||
428 | + | ||
429 | + /** | ||
430 | + * Retorna o valor do atributo <code>usernameAprovador</code> | ||
431 | + * | ||
432 | + * @return <code>String</code> | ||
433 | + */ | ||
434 | + public String getUsernameAprovador() { | ||
435 | + | ||
436 | + return usernameAprovador; | ||
437 | + } | ||
438 | + | ||
439 | + | ||
440 | + /** | ||
441 | + * Define o valor do atributo <code>usernameAprovador</code>. | ||
442 | + * | ||
443 | + * @param usernameAprovador | ||
444 | + */ | ||
445 | + public void setUsernameAprovador(String usernameAprovador) { | ||
446 | + | ||
447 | + this.usernameAprovador = usernameAprovador; | ||
448 | + } | ||
449 | + | ||
450 | + | ||
451 | + /** | ||
452 | + * Retorna o valor do atributo <code>usuarioAprovador</code> | ||
453 | + * | ||
454 | + * @return <code>Usuario</code> | ||
455 | + */ | ||
456 | + public Usuario getUsuarioAprovador() { | ||
457 | + | ||
458 | + return usuarioAprovador; | ||
459 | + } | ||
460 | + | ||
461 | + | ||
462 | + /** | ||
463 | + * Define o valor do atributo <code>usuarioAprovador</code>. | ||
464 | + * | ||
465 | + * @param usuarioAprovador | ||
466 | + */ | ||
467 | + public void setUsuarioAprovador(Usuario usuarioAprovador) { | ||
468 | + | ||
469 | + this.usuarioAprovador = usuarioAprovador; | ||
470 | + } | ||
471 | + | ||
472 | + | ||
473 | + /** | ||
474 | + * Retorna o valor do atributo <code>identificador</code> | ||
475 | + * | ||
476 | + * @return <code>String</code> | ||
477 | + */ | ||
478 | + public String getIdentificador() { | ||
479 | + | ||
480 | + return identificador; | ||
481 | + } | ||
482 | + | ||
483 | + | ||
484 | + /** | ||
485 | + * Define o valor do atributo <code>identificador</code>. | ||
486 | + * | ||
487 | + * @param identificador | ||
488 | + */ | ||
489 | + public void setIdentificador(String identificador) { | ||
490 | + | ||
491 | + this.identificador = identificador; | ||
492 | + } | ||
493 | + | ||
494 | + | ||
495 | + /** | ||
496 | + * Define o valor do atributo <code>aprovador</code>. | ||
497 | + * | ||
498 | + * @param aprovador | ||
499 | + */ | ||
500 | + public void setAprovador(ResponsavelAlcada aprovador) { | ||
501 | + | ||
502 | + this.aprovador = aprovador; | ||
503 | + } | ||
504 | + | ||
505 | + | ||
506 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/model/ValorAcumulado.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/model/ValorAcumulado.java | ||
@@ -0,0 +1,109 @@ | @@ -0,0 +1,109 @@ | ||
1 | +package br.com.centralit.api.model; | ||
2 | + | ||
3 | +import java.io.Serializable; | ||
4 | + | ||
5 | +/** | ||
6 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
7 | + * | ||
8 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
9 | + * | ||
10 | + * <p><b>Title: </b></p> | ||
11 | + * | ||
12 | + * <p><b>Description: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
15 | + * | ||
16 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
17 | + * | ||
18 | + * @since 18/06/2015 - 16:57:20 | ||
19 | + * | ||
20 | + * @version 1.0.0 | ||
21 | + * | ||
22 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
23 | + * | ||
24 | + */ | ||
25 | +public class ValorAcumulado implements Serializable { | ||
26 | + | ||
27 | + /** Atributo serialVersionUID. */ | ||
28 | + private static final long serialVersionUID = 1L; | ||
29 | + | ||
30 | + private NivelAutoridade nivelAutoridade; | ||
31 | + | ||
32 | + private float valor; | ||
33 | + | ||
34 | + private boolean rejeitado; | ||
35 | + | ||
36 | + public ValorAcumulado(NivelAutoridade nivelAutoridade) { | ||
37 | + this.nivelAutoridade = nivelAutoridade; | ||
38 | + this.valor = 0; | ||
39 | + this.rejeitado = false; | ||
40 | + } | ||
41 | + | ||
42 | + /** | ||
43 | + * Retorna o valor do atributo <code>valor</code> | ||
44 | + * | ||
45 | + * @return <code>Float</code> | ||
46 | + */ | ||
47 | + public float getValor() { | ||
48 | + | ||
49 | + return valor; | ||
50 | + } | ||
51 | + | ||
52 | + | ||
53 | + /** | ||
54 | + * Define o valor do atributo <code>valor</code>. | ||
55 | + * | ||
56 | + * @param valor | ||
57 | + */ | ||
58 | + public void setValor(float valor) { | ||
59 | + | ||
60 | + this.valor = valor; | ||
61 | + } | ||
62 | + | ||
63 | + | ||
64 | + /** | ||
65 | + * Retorna o valor do atributo <code>nivelAutoridade</code> | ||
66 | + * | ||
67 | + * @return <code>NivelAutoridade</code> | ||
68 | + */ | ||
69 | + public NivelAutoridade getNivelAutoridade() { | ||
70 | + | ||
71 | + return nivelAutoridade; | ||
72 | + } | ||
73 | + | ||
74 | + | ||
75 | + /** | ||
76 | + * Define o valor do atributo <code>nivelAutoridade</code>. | ||
77 | + * | ||
78 | + * @param nivelAutoridade | ||
79 | + */ | ||
80 | + public void setNivelAutoridade(NivelAutoridade nivelAutoridade) { | ||
81 | + | ||
82 | + this.nivelAutoridade = nivelAutoridade; | ||
83 | + } | ||
84 | + | ||
85 | + | ||
86 | + | ||
87 | + /** | ||
88 | + * Retorna o valor do atributo <code>rejeitado</code> | ||
89 | + * | ||
90 | + * @return <code>boolean</code> | ||
91 | + */ | ||
92 | + public boolean isRejeitado() { | ||
93 | + | ||
94 | + return rejeitado; | ||
95 | + } | ||
96 | + | ||
97 | + | ||
98 | + /** | ||
99 | + * Define o valor do atributo <code>rejeitado</code>. | ||
100 | + * | ||
101 | + * @param rejeitado | ||
102 | + */ | ||
103 | + public void setRejeitado(boolean rejeitado) { | ||
104 | + | ||
105 | + this.rejeitado = rejeitado; | ||
106 | + } | ||
107 | + | ||
108 | + | ||
109 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/package-info.java
0 → 100644
cit-alcada-api/src/main/java/br/com/centralit/api/service/CentroResultadoDelegacaoService.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/CentroResultadoDelegacaoService.java | ||
@@ -0,0 +1,36 @@ | @@ -0,0 +1,36 @@ | ||
1 | +package br.com.centralit.api.service; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import br.com.centralit.api.model.CentroResultadoDelegacao; | ||
6 | +import br.com.centralit.framework.service.arquitetura.GenericService; | ||
7 | + | ||
8 | +/** | ||
9 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
10 | + * | ||
11 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
12 | + * | ||
13 | + * <p><b>Title: </b></p> | ||
14 | + * | ||
15 | + * <p><b>Description: </b></p> | ||
16 | + * | ||
17 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
18 | + * | ||
19 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
20 | + * | ||
21 | + * @since 30/06/2015 - 14:10:14 | ||
22 | + * | ||
23 | + * @version 1.0.0 | ||
24 | + * | ||
25 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
26 | + * | ||
27 | + */ | ||
28 | +public interface CentroResultadoDelegacaoService extends GenericService<CentroResultadoDelegacao, Long> { | ||
29 | + | ||
30 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoes(Long idCentroResultado); | ||
31 | + | ||
32 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoesUsuario(Long idUsuario); | ||
33 | + | ||
34 | + public CentroResultadoDelegacao revogar(Long idCentroResultadoDelegacao); | ||
35 | + | ||
36 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoAlcadaService.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoAlcadaService.java | ||
@@ -0,0 +1,79 @@ | @@ -0,0 +1,79 @@ | ||
1 | +package br.com.centralit.api.service; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import br.com.centralit.api.model.Alcada; | ||
6 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
7 | +import br.com.centralit.api.model.LimiteAprovacaoAlcada; | ||
8 | +import br.com.centralit.framework.service.arquitetura.GenericService; | ||
9 | + | ||
10 | +/** | ||
11 | + * <p> | ||
12 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
13 | + * </p> | ||
14 | + * | ||
15 | + * <p> | ||
16 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
17 | + * </p> | ||
18 | + * | ||
19 | + * <p> | ||
20 | + * <b>Title: </b> | ||
21 | + * </p> | ||
22 | + * | ||
23 | + * <p> | ||
24 | + * <b>Description: </b> | ||
25 | + * </p> | ||
26 | + * | ||
27 | + * <p> | ||
28 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
29 | + * </p> | ||
30 | + * | ||
31 | + * <p> | ||
32 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
33 | + * </p> | ||
34 | + * | ||
35 | + * @since 23/06/2015 - 15:12:53 | ||
36 | + * | ||
37 | + * @version 1.0.0 | ||
38 | + * | ||
39 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
40 | + * | ||
41 | + */ | ||
42 | +public interface LimiteAprovacaoAlcadaService extends GenericService<LimiteAprovacaoAlcada, Long> { | ||
43 | + | ||
44 | + /** | ||
45 | + * <p> | ||
46 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
47 | + * </p> | ||
48 | + * | ||
49 | + * <p> | ||
50 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
51 | + * </p> | ||
52 | + * | ||
53 | + * Método responsável por | ||
54 | + * | ||
55 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
56 | + * | ||
57 | + * @param limiteAprovacao | ||
58 | + */ | ||
59 | + public void montarLimiteAprovacaoAlcada(LimiteAprovacao limiteAprovacao); | ||
60 | + | ||
61 | + /** | ||
62 | + * <p> | ||
63 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
64 | + * </p> | ||
65 | + * | ||
66 | + * <p> | ||
67 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
68 | + * </p> | ||
69 | + * | ||
70 | + * Método responsável por | ||
71 | + * | ||
72 | + * @author renato.jesus | ||
73 | + * | ||
74 | + * @param alcada | ||
75 | + * @return | ||
76 | + */ | ||
77 | + List<LimiteAprovacaoAlcada> findByAlcada(Alcada alcada); | ||
78 | + | ||
79 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoNivelAutoridadeService.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoNivelAutoridadeService.java | ||
@@ -0,0 +1,42 @@ | @@ -0,0 +1,42 @@ | ||
1 | +package br.com.centralit.api.service; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
4 | +import br.com.centralit.api.model.LimiteAprovacaoNivelAutoridade; | ||
5 | +import br.com.centralit.framework.service.arquitetura.GenericService; | ||
6 | + | ||
7 | +/** | ||
8 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
9 | + * | ||
10 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
11 | + * | ||
12 | + * <p><b>Title: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Description: </b></p> | ||
15 | + * | ||
16 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
17 | + * | ||
18 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
19 | + * | ||
20 | + * @since 23/06/2015 - 15:17:07 | ||
21 | + * | ||
22 | + * @version 1.0.0 | ||
23 | + * | ||
24 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
25 | + * | ||
26 | + */ | ||
27 | +public interface LimiteAprovacaoNivelAutoridadeService extends GenericService<LimiteAprovacaoNivelAutoridade, Long> { | ||
28 | + | ||
29 | + /** | ||
30 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
31 | + * | ||
32 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
33 | + * | ||
34 | + * Método responsável por | ||
35 | + * | ||
36 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
37 | + * | ||
38 | + * @param limiteAprovacao | ||
39 | + */ | ||
40 | + public void montarLimiteAprovacaoNivelAutoridade(LimiteAprovacao limiteAprovacao); | ||
41 | + | ||
42 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoService.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoService.java | ||
@@ -0,0 +1,26 @@ | @@ -0,0 +1,26 @@ | ||
1 | +package br.com.centralit.api.service; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
4 | +import br.com.centralit.framework.service.arquitetura.GenericService; | ||
5 | + | ||
6 | +/** | ||
7 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
8 | + * | ||
9 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
10 | + * | ||
11 | + * <p><b>Title: </b></p> | ||
12 | + * | ||
13 | + * <p><b>Description: </b></p> | ||
14 | + * | ||
15 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
16 | + * | ||
17 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
18 | + * | ||
19 | + * @since 18/06/2015 - 16:57:38 | ||
20 | + * | ||
21 | + * @version 1.0.0 | ||
22 | + * | ||
23 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
24 | + * | ||
25 | + */ | ||
26 | +public interface LimiteAprovacaoService extends GenericService<LimiteAprovacao, Long> {} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoValorService.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/LimiteAprovacaoValorService.java | ||
@@ -0,0 +1,42 @@ | @@ -0,0 +1,42 @@ | ||
1 | +package br.com.centralit.api.service; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
4 | +import br.com.centralit.api.model.LimiteAprovacaoValor; | ||
5 | +import br.com.centralit.framework.service.arquitetura.GenericService; | ||
6 | + | ||
7 | +/** | ||
8 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
9 | + * | ||
10 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
11 | + * | ||
12 | + * <p><b>Title: </b></p> | ||
13 | + * | ||
14 | + * <p><b>Description: </b></p> | ||
15 | + * | ||
16 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
17 | + * | ||
18 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
19 | + * | ||
20 | + * @since 18/06/2015 - 16:57:07 | ||
21 | + * | ||
22 | + * @version 1.0.0 | ||
23 | + * | ||
24 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
25 | + * | ||
26 | + */ | ||
27 | +public interface LimiteAprovacaoValorService extends GenericService<LimiteAprovacaoValor, Long> { | ||
28 | + | ||
29 | + /** | ||
30 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
31 | + * | ||
32 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
33 | + * | ||
34 | + * Método responsável por | ||
35 | + * | ||
36 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
37 | + * | ||
38 | + * @param limiteAprovacao | ||
39 | + */ | ||
40 | + public void montarLimiteAprovacaoValor(LimiteAprovacao limiteAprovacao); | ||
41 | + | ||
42 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/SolicitacaoAlcadaService.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/SolicitacaoAlcadaService.java | ||
@@ -0,0 +1,116 @@ | @@ -0,0 +1,116 @@ | ||
1 | +package br.com.centralit.api.service; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import br.com.centralit.api.model.Alcada; | ||
6 | +import br.com.centralit.api.model.ResponsavelAlcada; | ||
7 | +import br.com.centralit.api.model.SolicitacaoAlcada; | ||
8 | +import br.com.centralit.framework.model.Usuario; | ||
9 | +import br.com.centralit.framework.service.arquitetura.GenericService; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 18/06/2015 - 16:57:07 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +public interface SolicitacaoAlcadaService extends GenericService<SolicitacaoAlcada, Long> { | ||
32 | + | ||
33 | + /** | ||
34 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
35 | + * | ||
36 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
37 | + * | ||
38 | + * Método responsável por retornar os autorizadores de uma solicitação de alçada | ||
39 | + * | ||
40 | + * @author Carlos | ||
41 | + * | ||
42 | + * @param solicitacaoAlcada | ||
43 | + * @return | ||
44 | + */ | ||
45 | + public List<ResponsavelAlcada> getResponsaveis(SolicitacaoAlcada solicitacaoAlcada); | ||
46 | + | ||
47 | + /** | ||
48 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
49 | + * | ||
50 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
51 | + * | ||
52 | + * Método responsável por autorizar um pedido de alçada | ||
53 | + * | ||
54 | + * @author Carlos | ||
55 | + * | ||
56 | + * @param solicitacaoAlcada | ||
57 | + * @return | ||
58 | + */ | ||
59 | + public SolicitacaoAlcada aprovaSolicitacao(SolicitacaoAlcada solicitacaoAlcada, Usuario aprovador); | ||
60 | + | ||
61 | + /** | ||
62 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
63 | + * | ||
64 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
65 | + * | ||
66 | + * Método responsável por cancelar a autorização de um pedido de alçada | ||
67 | + * | ||
68 | + * @author Carlos | ||
69 | + * | ||
70 | + * @param voucher | ||
71 | + */ | ||
72 | + public SolicitacaoAlcada cancelaAprovacao(SolicitacaoAlcada solicitacaoAlcada); | ||
73 | + | ||
74 | + /** | ||
75 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
76 | + * | ||
77 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
78 | + * | ||
79 | + * Método responsável por autorizar um pedido de alçada | ||
80 | + * | ||
81 | + * @author Carlos | ||
82 | + * | ||
83 | + * @param solicitacaoAlcada | ||
84 | + * @return | ||
85 | + */ | ||
86 | + public SolicitacaoAlcada aprovaPeloIdentificador(SolicitacaoAlcada solicitacaoAlcada); | ||
87 | + | ||
88 | + /** | ||
89 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
90 | + * | ||
91 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
92 | + * | ||
93 | + * Método responsável por recuperar uma alçada pelo identificador único | ||
94 | + * | ||
95 | + * @author Carlos | ||
96 | + * | ||
97 | + * @param solicitacaoAlcada | ||
98 | + * @return | ||
99 | + */ | ||
100 | + public SolicitacaoAlcada recuperaSolicitacao(Alcada alcada, String identificadorUnico); | ||
101 | + | ||
102 | + /** | ||
103 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
104 | + * | ||
105 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
106 | + * | ||
107 | + * Método responsável por autorizar um pedido de alçada | ||
108 | + * | ||
109 | + * @author Carlos | ||
110 | + * | ||
111 | + * @param solicitacaoAlcada | ||
112 | + * @return | ||
113 | + */ | ||
114 | + public Object cancelaAprovacaoPeloIdentificador(SolicitacaoAlcada solicitacaoAlcada); | ||
115 | + | ||
116 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/CentroResultadoDelegacaoServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/CentroResultadoDelegacaoServiceImpl.java | ||
@@ -0,0 +1,217 @@ | @@ -0,0 +1,217 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import java.util.ArrayList; | ||
4 | +import java.util.List; | ||
5 | + | ||
6 | +import org.springframework.beans.factory.annotation.Autowired; | ||
7 | +import org.springframework.beans.factory.annotation.Qualifier; | ||
8 | +import org.springframework.stereotype.Service; | ||
9 | +import org.springframework.validation.Validator; | ||
10 | + | ||
11 | +import br.com.centralit.api.dao.CentroResultadoDelegacaoDao; | ||
12 | +import br.com.centralit.api.model.Alcada; | ||
13 | +import br.com.centralit.api.model.CentroResultadoDelegacao; | ||
14 | +import br.com.centralit.api.model.CentroResultadoDelegacaoRequisicao; | ||
15 | +import br.com.centralit.api.model.Colaborador; | ||
16 | +import br.com.centralit.api.service.CentroResultadoDelegacaoService; | ||
17 | +import br.com.centralit.api.service.CentroResultadoResponsavelAlcadaService; | ||
18 | +import br.com.centralit.api.service.ColaboradorService; | ||
19 | +import br.com.centralit.framework.esi.enumerated.VariableTypeEnum; | ||
20 | +import br.com.centralit.framework.esi.environment.EnvironmentVariable; | ||
21 | +import br.com.centralit.framework.exception.BusinessException; | ||
22 | +import br.com.centralit.framework.exception.CodigoErro; | ||
23 | +import br.com.centralit.framework.model.Usuario; | ||
24 | +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
25 | +import br.com.centralit.framework.util.UtilColecao; | ||
26 | +import br.com.centralit.framework.util.UtilDate; | ||
27 | +import br.com.centralit.framework.util.UtilObjeto; | ||
28 | +import br.com.centralit.framework.util.UtilString; | ||
29 | + | ||
30 | +/** | ||
31 | + * <p> | ||
32 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
33 | + * </p> | ||
34 | + * | ||
35 | + * <p> | ||
36 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
37 | + * </p> | ||
38 | + * | ||
39 | + * <p> | ||
40 | + * <b>Title: </b> | ||
41 | + * </p> | ||
42 | + * | ||
43 | + * <p> | ||
44 | + * <b>Description: </b> | ||
45 | + * </p> | ||
46 | + * | ||
47 | + * <p> | ||
48 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
49 | + * </p> | ||
50 | + * | ||
51 | + * <p> | ||
52 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
53 | + * </p> | ||
54 | + * | ||
55 | + * @since 30/06/2015 - 14:10:09 | ||
56 | + * | ||
57 | + * @version 1.0.0 | ||
58 | + * | ||
59 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
60 | + * | ||
61 | + */ | ||
62 | +@Service("centroResultadoDelegacaoService") | ||
63 | +public class CentroResultadoDelegacaoServiceImpl extends GenericServiceImpl<CentroResultadoDelegacao, Long> implements CentroResultadoDelegacaoService { | ||
64 | + | ||
65 | + /** Atributo centroResultadoResponsavelAlcadaService. */ | ||
66 | + @Autowired | ||
67 | + private CentroResultadoResponsavelAlcadaService centroResultadoResponsavelAlcadaService; | ||
68 | + | ||
69 | + @Autowired | ||
70 | + private ColaboradorService colaboradorService; | ||
71 | + | ||
72 | + private CentroResultadoDelegacaoDao centroResultadoDelegacaoDao; | ||
73 | + | ||
74 | + private void disparaFluxoDelegacao(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
75 | + | ||
76 | + Alcada alcada = centroResultadoDelegacao.getCentroResultadoResponsavelAlcada().getAlcada(); | ||
77 | + if (!UtilString.isNullOrEmpty(alcada.getFluxoDelegacao())) { | ||
78 | + Usuario usuario = centroResultadoDelegacao.getCentroResultadoResponsavelAlcada().getCentroResultadoResponsavel().getResponsavel().getPessoa().getUsuario(); | ||
79 | + if (!UtilObjeto.isReferencia(usuario)) { | ||
80 | + throw new BusinessException("MSG.USUARIO_NAO_ASSOCIADO_RESPONSAVEL", CodigoErro.REGRA_NEGOCIO.getValue()); | ||
81 | + } | ||
82 | + String responsavel = usuario.getUsername(); | ||
83 | + | ||
84 | + Colaborador colaborador = colaboradorService.getReference(centroResultadoDelegacao.getDelegado().getId()); | ||
85 | + usuario = colaborador.getPessoa().getUsuario(); | ||
86 | + if (!UtilObjeto.isReferencia(usuario)) { | ||
87 | + throw new BusinessException("MSG.USUARIO_NAO_ASSOCIADO_DELEGACAO", CodigoErro.REGRA_NEGOCIO.getValue()); | ||
88 | + } | ||
89 | + String delegado = usuario.getUsername(); | ||
90 | + | ||
91 | + String abrangencia = centroResultadoDelegacao.getDominioTipoAbrangenciaDelegacao().getNome(); | ||
92 | + | ||
93 | + List<EnvironmentVariable> variaveis = new ArrayList<EnvironmentVariable>(); | ||
94 | + variaveis.add(new EnvironmentVariable("alcada", VariableTypeEnum.TEXT, alcada.getIdentificador(), false)); | ||
95 | + variaveis.add(new EnvironmentVariable("responsavel", VariableTypeEnum.TEXT, responsavel, false)); | ||
96 | + variaveis.add(new EnvironmentVariable("delegado", VariableTypeEnum.TEXT, delegado, false)); | ||
97 | + variaveis.add(new EnvironmentVariable("abrangencia", VariableTypeEnum.TEXT, abrangencia, false)); | ||
98 | + variaveis.add(new EnvironmentVariable("requisicoes", VariableTypeEnum.JAVAOBJECT, centroResultadoDelegacao.getRequisicoesStr(), false)); | ||
99 | + | ||
100 | + this.startProcess(alcada.getFluxoDelegacao(), variaveis); | ||
101 | + } | ||
102 | + } | ||
103 | + | ||
104 | + @Autowired | ||
105 | + public CentroResultadoDelegacaoServiceImpl( CentroResultadoDelegacaoDao centroResultadoDelegacaoDao, @Qualifier("centroResultadoDelegacaoValidator") Validator validator ) { | ||
106 | + | ||
107 | + this.dao = centroResultadoDelegacaoDao; | ||
108 | + this.centroResultadoDelegacaoDao = centroResultadoDelegacaoDao; | ||
109 | + this.validator = validator; | ||
110 | + } | ||
111 | + | ||
112 | + @Override | ||
113 | + public CentroResultadoDelegacao save(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
114 | + | ||
115 | + // VALIDA CAMPO OBRIGATÓRIO DA ENTIDADE | ||
116 | + if (UtilObjeto.isReferencia(this.validator)) { | ||
117 | + this.validarEntidade(centroResultadoDelegacao, this.validator); | ||
118 | + } | ||
119 | + | ||
120 | + this.existeDelegacaoParaDelegadoNaAlcadaENoPeriodoSeleciona(centroResultadoDelegacao); | ||
121 | + | ||
122 | + montaCentroResultadoDelegacao(centroResultadoDelegacao); | ||
123 | + | ||
124 | + // SALVA A TRANSFERÊNCIA | ||
125 | + CentroResultadoDelegacao entitySaved = (CentroResultadoDelegacao) this.centroResultadoDelegacaoDao.save(centroResultadoDelegacao); | ||
126 | + | ||
127 | + this.disparaFluxoDelegacao(entitySaved); | ||
128 | + | ||
129 | + return entitySaved; | ||
130 | + } | ||
131 | + | ||
132 | + @Override | ||
133 | + public CentroResultadoDelegacao merge(CentroResultadoDelegacao entity) { | ||
134 | + | ||
135 | + return super.merge(entity); | ||
136 | + } | ||
137 | + | ||
138 | + @Override | ||
139 | + public List<CentroResultadoDelegacao> saveList(List<CentroResultadoDelegacao> centroResultadoDelegacaoList) { | ||
140 | + | ||
141 | + if (!UtilColecao.isVazio(centroResultadoDelegacaoList)) { | ||
142 | + for (CentroResultadoDelegacao centroResultadoDelegacao : centroResultadoDelegacaoList) { | ||
143 | + | ||
144 | + this.save(centroResultadoDelegacao); | ||
145 | + | ||
146 | + } | ||
147 | + | ||
148 | + return super.saveList(centroResultadoDelegacaoList); | ||
149 | + } | ||
150 | + | ||
151 | + return new ArrayList<CentroResultadoDelegacao>(); | ||
152 | + } | ||
153 | + | ||
154 | + private void existeDelegacaoParaDelegadoNaAlcadaENoPeriodoSeleciona(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
155 | + | ||
156 | + if (this.centroResultadoDelegacaoDao.existeDelegacaoParaDelegadoNaAlcadaENoPeriodoSeleciona(centroResultadoDelegacao)) { | ||
157 | + throw new BusinessException("MSG.EXISTE_DELEGACAO_RESPONSAVEL_ALCADA_SELECIONADA", CodigoErro.REGRA_NEGOCIO.getValue()); | ||
158 | + } | ||
159 | + } | ||
160 | + | ||
161 | + private void montaCentroResultadoDelegacao(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
162 | + | ||
163 | + // MONTA OS DADOS DO OBJETO CENTRORESULTADODELEGACAO | ||
164 | + centroResultadoDelegacao.setCentroResultadoResponsavelAlcada(this.centroResultadoResponsavelAlcadaService.find(centroResultadoDelegacao.getCentroResultadoResponsavelAlcada().getId())); | ||
165 | + | ||
166 | + this.resolveReferenciaCentroResultadoDelegacaoInCentroResultadoDelegacaoRequisicoes(centroResultadoDelegacao); | ||
167 | + } | ||
168 | + | ||
169 | + /** | ||
170 | + * <p> | ||
171 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
172 | + * </p> | ||
173 | + * | ||
174 | + * <p> | ||
175 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
176 | + * </p> | ||
177 | + * | ||
178 | + * Método responsável por | ||
179 | + * | ||
180 | + * @author renato.jesus | ||
181 | + * | ||
182 | + * @param centroResultadoDelegacao | ||
183 | + */ | ||
184 | + private void resolveReferenciaCentroResultadoDelegacaoInCentroResultadoDelegacaoRequisicoes(CentroResultadoDelegacao centroResultadoDelegacao) { | ||
185 | + | ||
186 | + if (!UtilColecao.isVazio(centroResultadoDelegacao.getRequisicoes())) { | ||
187 | + for (CentroResultadoDelegacaoRequisicao centroResultadoDelegacaoRequisicao : centroResultadoDelegacao.getRequisicoes()) { | ||
188 | + centroResultadoDelegacaoRequisicao.setCentroResultadoDelegacao(centroResultadoDelegacao); | ||
189 | + } | ||
190 | + } | ||
191 | + } | ||
192 | + | ||
193 | + @Override | ||
194 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoes(Long idCentroResultado) { | ||
195 | + | ||
196 | + return centroResultadoDelegacaoDao.buscaHistoricoDelegacoes(idCentroResultado); | ||
197 | + } | ||
198 | + | ||
199 | + @Override | ||
200 | + public List<CentroResultadoDelegacao> buscaHistoricoDelegacoesUsuario(Long idUsuario) { | ||
201 | + | ||
202 | + return centroResultadoDelegacaoDao.buscaHistoricoDelegacoesUsuario(idUsuario); | ||
203 | + } | ||
204 | + | ||
205 | + @Override | ||
206 | + public CentroResultadoDelegacao revogar(Long idCentroResultadoDelegacao) { | ||
207 | + | ||
208 | + CentroResultadoDelegacao centroResultadoDelegacao = this.find(idCentroResultadoDelegacao); | ||
209 | + centroResultadoDelegacao.setRevogada(true); | ||
210 | + centroResultadoDelegacao.setResponsavelRevogacao(this.getUsuario()); | ||
211 | + centroResultadoDelegacao.setDataRevogacao(UtilDate.getDataAtualCalendar()); | ||
212 | + | ||
213 | + CentroResultadoDelegacao entityUpdated = merge(centroResultadoDelegacao); | ||
214 | + return entityUpdated; | ||
215 | + } | ||
216 | + | ||
217 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/InicializarAlcadaServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/InicializarAlcadaServiceImpl.java | ||
@@ -0,0 +1,252 @@ | @@ -0,0 +1,252 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import java.io.IOException; | ||
4 | +import java.sql.Connection; | ||
5 | +import java.sql.SQLException; | ||
6 | +import java.sql.Statement; | ||
7 | +import java.util.List; | ||
8 | + | ||
9 | +import javax.sql.DataSource; | ||
10 | + | ||
11 | +import net.sf.jasperreports.engine.JRException; | ||
12 | + | ||
13 | +import org.apache.log4j.Logger; | ||
14 | +import org.springframework.beans.factory.annotation.Autowired; | ||
15 | +import org.springframework.stereotype.Service; | ||
16 | + | ||
17 | +import br.com.centralit.api.service.DefaultFileService; | ||
18 | +import br.com.centralit.api.service.DominioService; | ||
19 | +import br.com.centralit.api.service.MenuService; | ||
20 | +import br.com.centralit.api.service.ModuloService; | ||
21 | +import br.com.centralit.api.service.PaginaService; | ||
22 | +import br.com.centralit.framework.model.Menu; | ||
23 | +import br.com.centralit.framework.model.MenuFile; | ||
24 | +import br.com.centralit.framework.model.Pagina; | ||
25 | +import br.com.centralit.framework.model.UtilStartup; | ||
26 | + | ||
27 | +@SuppressWarnings("unused") | ||
28 | +@Service("inicializarAlcadaService") | ||
29 | +public class InicializarAlcadaServiceImpl extends UtilStartup { | ||
30 | + | ||
31 | + @Autowired | ||
32 | + private ModuloService moduloService; | ||
33 | + | ||
34 | + @Autowired | ||
35 | + private DataSource citDataSource; | ||
36 | + | ||
37 | + /** Atributo menuService. */ | ||
38 | + @Autowired | ||
39 | + private MenuService menuService; | ||
40 | + | ||
41 | + /** Atributo dominioService. */ | ||
42 | + @Autowired | ||
43 | + private DominioService dominioService; | ||
44 | + | ||
45 | + /** Atributo paginaService. */ | ||
46 | + @Autowired | ||
47 | + private PaginaService paginaService; | ||
48 | + | ||
49 | + /** Atributo defaultFileService. */ | ||
50 | + @Autowired | ||
51 | + private DefaultFileService defaultFileService; | ||
52 | + | ||
53 | + /** Atributo menuModuloAlcada. */ | ||
54 | + private Menu menuModuloAlcada; | ||
55 | + | ||
56 | + static final Logger LOG = Logger.getLogger(InicializarAlcadaServiceImpl.class); | ||
57 | + | ||
58 | + public void gerarCarga() { | ||
59 | + criarPaginasMenus(); | ||
60 | + } | ||
61 | + | ||
62 | + /** | ||
63 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
64 | + * | ||
65 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
66 | + * | ||
67 | + * Método responsável por criar paginas e menus do modulo | ||
68 | + * | ||
69 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
70 | + * | ||
71 | + */ | ||
72 | + private void criarPaginasMenus() { | ||
73 | + | ||
74 | + dominioJS = this.dominioService.findByChaveAndNome(TIPO_FILE, TIPO_FILE_JS); | ||
75 | + moduloSelecionado = this.moduloService.getModuloPorBaseUrl(BASE_URL_ALCADA, null); | ||
76 | + | ||
77 | + // Menu pai Alçadas | ||
78 | + this.menuModuloAlcada = new Menu("Alçadas", null, null, null, 6, COR_ALCADA, CSS_MENU_ALCADA, OPACIDADE_MENU_ALCADA, CLASSE_ALCADA, ICONE_MENU_ALCADA, moduloSelecionado); | ||
79 | + this.menuModuloAlcada = this.menuService.mergeIfNotExist(this.menuModuloAlcada); | ||
80 | + | ||
81 | + // Submenu Cadastros | ||
82 | + Menu menuCadastros = new Menu("Cadastros", null, menuModuloAlcada, 0, 1, null, null, null, null, moduloSelecionado); | ||
83 | + menuCadastros = this.menuService.mergeIfNotExist(menuCadastros); | ||
84 | + | ||
85 | + Pagina pgAlcada = new Pagina("Alçada", "/cit-alcada-web/html/alcada/alcada.html"); | ||
86 | + pgAlcada = this.paginaService.saveIfNotExist(pgAlcada); | ||
87 | + Menu menuAlcada = new Menu("Alçada", pgAlcada, menuCadastros, null, 2, null, null, null, null, moduloSelecionado); | ||
88 | + menuAlcada.setIncludes(this.gerarArquivosMenu(menuAlcada, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "Alcada", true, true, true)); | ||
89 | + this.menuService.mergeIfNotExist(menuAlcada); | ||
90 | + // Menu Alçada | ||
91 | + Pagina pgCentroResultado = new Pagina("Centro de resultado", "/cit-alcada-web/html/centroResultado/centroResultado.html"); | ||
92 | + pgCentroResultado = this.paginaService.saveIfNotExist(pgCentroResultado); | ||
93 | + Menu menuCentroResultado = new Menu("Centro de resultado", pgCentroResultado, menuCadastros, null, 3, null, null, null, null, moduloSelecionado); | ||
94 | + List<MenuFile> filesMenuFileCentroResultado = this.gerarArquivosMenu(menuCentroResultado, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "CentroResultado", true, true, true); | ||
95 | + filesMenuFileCentroResultado.addAll(this.gerarArquivosMenu(menuCentroResultado, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "CentroResultadoAlcadaResponsavel", true, true, true)); | ||
96 | + filesMenuFileCentroResultado.add(new MenuFile(CIT_ALCADA_WEB_ANGULAR_CUSTOM + "repository/CentroResultadoResponsavelRepository.js", this.dominioJS, menuCentroResultado)); | ||
97 | + filesMenuFileCentroResultado.add(new MenuFile(CIT_ALCADA_WEB_ANGULAR_CUSTOM + "repository/CentroResultadoResponsavelRepository.min.js", this.dominioJS, menuCentroResultado)); | ||
98 | + menuCentroResultado.setIncludes(filesMenuFileCentroResultado); | ||
99 | + this.menuService.mergeIfNotExist(menuCentroResultado); | ||
100 | + // Menu Alçada | ||
101 | + Pagina pgLimiteAprovacao = new Pagina("Limite de aprovação", "/cit-alcada-web/html/limiteAprovacao/limiteAprovacao.html"); | ||
102 | + pgLimiteAprovacao = this.paginaService.saveIfNotExist(pgLimiteAprovacao); | ||
103 | + Menu menuLimiteAprovacao = new Menu("Limite de aprovação", pgLimiteAprovacao, menuCadastros, null, 4, null, null, null, null, moduloSelecionado); | ||
104 | + menuLimiteAprovacao.setIncludes(this.gerarArquivosMenu(menuLimiteAprovacao, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "LimiteAprovacao", true, true, true)); | ||
105 | + this.menuService.mergeIfNotExist(menuLimiteAprovacao); | ||
106 | + | ||
107 | + // Submenu Delegação | ||
108 | + Menu menuDelegacao = new Menu("Delegação", null, menuModuloAlcada, 0, 2, null, null, null, null, moduloSelecionado); | ||
109 | + menuDelegacao = this.menuService.mergeIfNotExist(menuDelegacao); | ||
110 | + // Menu Delegação de alçada | ||
111 | + Pagina pgCentroResultadoDelegacao = new Pagina("Delegação por Centro de Resultado", "/cit-alcada-web/html/centroResultadoDelegacao/centroResultadoDelegacao.html"); | ||
112 | + pgCentroResultadoDelegacao = this.paginaService.saveIfNotExist(pgCentroResultadoDelegacao); | ||
113 | + Menu menuCentroResultadoDelegacao = new Menu("Delegação por Centro de Resultado", pgCentroResultadoDelegacao, menuDelegacao, null, 1, null, null, null, null, moduloSelecionado); | ||
114 | + List<MenuFile> filesMenuFileCentroResultadoDelegacao = this.gerarArquivosMenu(menuCentroResultadoDelegacao, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "CentroResultadoDelegacao", true, false, true); | ||
115 | + filesMenuFileCentroResultadoDelegacao.add(new MenuFile(CIT_ALCADA_WEB_ANGULAR_CUSTOM + "repository/CentroResultadoResponsavelAlcadaRepository.js", this.dominioJS, menuCentroResultadoDelegacao)); | ||
116 | + filesMenuFileCentroResultadoDelegacao.add(new MenuFile(CIT_ALCADA_WEB_ANGULAR_CUSTOM + "repository/CentroResultadoResponsavelAlcadaRepository.min.js", this.dominioJS, menuCentroResultadoDelegacao)); | ||
117 | + filesMenuFileCentroResultadoDelegacao.add(new MenuFile(CIT_ALCADA_WEB_ANGULAR_CUSTOM + "repository/SolicitacaoAlcadaRepository.js", this.dominioJS, menuCentroResultadoDelegacao)); | ||
118 | + filesMenuFileCentroResultadoDelegacao.add(new MenuFile(CIT_ALCADA_WEB_ANGULAR_CUSTOM + "repository/SolicitacaoAlcadaRepository.min.js", this.dominioJS, menuCentroResultadoDelegacao)); | ||
119 | + menuCentroResultadoDelegacao.setIncludes(filesMenuFileCentroResultadoDelegacao); | ||
120 | + this.menuService.mergeIfNotExist(menuCentroResultadoDelegacao); | ||
121 | + | ||
122 | + // Menu Delegação de alçada pelo Responsável | ||
123 | + Pagina pgCentroResultadoDelegacaoResponsavel = new Pagina("Delegação pelo Responsável", "/cit-alcada-web/html/centroResultadoDelegacaoResponsavel/centroResultadoDelegacaoResponsavel.html"); | ||
124 | + pgCentroResultadoDelegacaoResponsavel = this.paginaService.saveIfNotExist(pgCentroResultadoDelegacaoResponsavel); | ||
125 | + Menu menuCentroResultadoDelegacaoResponsavel = new Menu("Delegação pelo Responsável", pgCentroResultadoDelegacaoResponsavel, menuDelegacao, null, 2, null, null, null, null, moduloSelecionado); | ||
126 | + List<MenuFile> filesMenuFileCentroResultadoDelegacaoResponsavel = this.gerarArquivosMenu(menuCentroResultadoDelegacaoResponsavel, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "CentroResultadoDelegacaoResponsavel", true, false, false); | ||
127 | + menuCentroResultadoDelegacaoResponsavel.setIncludes(filesMenuFileCentroResultadoDelegacaoResponsavel); | ||
128 | + this.menuService.mergeIfNotExist(menuCentroResultadoDelegacaoResponsavel); | ||
129 | + | ||
130 | + // Submenu Substituicao | ||
131 | + Menu menuSubstituicao = new Menu("Substituição", null, menuModuloAlcada, 0, 3, null, null, null, null, moduloSelecionado); | ||
132 | + menuSubstituicao = this.menuService.mergeIfNotExist(menuSubstituicao); | ||
133 | + | ||
134 | + // Menu Substituição | ||
135 | + Pagina pgCentroResultadoSubstituicao = new Pagina("Substituição de Responsável", "/cit-alcada-web/html/centroResultadoSubstituicao/centroResultadoSubstituicao.html"); | ||
136 | + pgCentroResultadoSubstituicao = this.paginaService.saveIfNotExist(pgCentroResultadoSubstituicao); | ||
137 | + Menu menuCentroResultadoSubstituicao = new Menu("Substituição de Responsável", pgCentroResultadoSubstituicao, menuSubstituicao, null, 3, null, null, null, null, moduloSelecionado); | ||
138 | + List<MenuFile> filesMenuFileCentroResultadoSubstituicao = this.gerarArquivosMenu(menuCentroResultadoSubstituicao, CIT_ALCADA_WEB_ANGULAR_CUSTOM, "CentroResultadoSubstituicao", true, false, true); | ||
139 | + menuCentroResultadoSubstituicao.setIncludes(filesMenuFileCentroResultadoSubstituicao); | ||
140 | + this.menuService.mergeIfNotExist(menuCentroResultadoSubstituicao); | ||
141 | + Logger.getLogger(InicializarAlcadaServiceImpl.class).info("Menu executado - InicializarAlcadaServiceImpl!"); | ||
142 | + } | ||
143 | + | ||
144 | + /** | ||
145 | + * Método responsável por criar a view | ||
146 | + * | ||
147 | + * @author t.lucaseugenio | ||
148 | + * | ||
149 | + * @throws SQLException | ||
150 | + * @throws JRException | ||
151 | + * @throws IOException | ||
152 | + */ | ||
153 | + private void criarView() { | ||
154 | + | ||
155 | + Connection conn = null; | ||
156 | + Statement stmt = null; | ||
157 | + | ||
158 | + try { | ||
159 | + | ||
160 | + conn = getConnection(); | ||
161 | + if(conn != null){ | ||
162 | + stmt = conn.createStatement(); | ||
163 | + | ||
164 | + StringBuilder sql = new StringBuilder(); | ||
165 | + | ||
166 | + sql.append("CREATE VIEW vw_centroresultadoresponsavel"); | ||
167 | + sql.append("SELECT Alcada.identificador as alcada, cast(replace(CentroResultado.codigo,'.','') as integer) as centro_resultado, seguranca_usuario.username as usuario, CentroResultadoResponsavel.dataInativo as data_inativo, "); | ||
168 | + sql.append(" NivelAutoridade.nome as nivel_autoridade "); | ||
169 | + sql.append("FROM CentroResultadoResponsavel INNER JOIN "); | ||
170 | + sql.append(" CentroResultado ON CentroResultado.id = CentroResultadoResponsavel.centroResultado_id INNER JOIN "); | ||
171 | + sql.append(" CentroResultadoResponsavelAlcada ON "); | ||
172 | + sql.append(" CentroResultadoResponsavelAlcada.centroResultadoResponsavel_id = CentroResultadoResponsavel.id INNER JOIN "); | ||
173 | + sql.append(" Alcada ON Alcada.id = CentroResultadoResponsavelAlcada.alcada_id INNER JOIN "); | ||
174 | + sql.append(" Parceiro ON Parceiro.id = CentroResultadoResponsavel.responsavel_id INNER JOIN "); | ||
175 | + sql.append(" Pessoa ON Pessoa.id = Parceiro.pessoa_id INNER JOIN "); | ||
176 | + sql.append(" seguranca_usuario ON seguranca_usuario.id = Pessoa.usuario_id INNER JOIN "); | ||
177 | + sql.append(" AlcadaNivelAutoridade ON AlcadaNivelAutoridade.alcada_id = Alcada.id INNER JOIN "); | ||
178 | + sql.append(" NivelAutoridade ON NivelAutoridade.id = AlcadaNivelAutoridade.nivelAutoridade_id "); | ||
179 | + sql.append("where NivelAutoridade.hierarquia = "); | ||
180 | + sql.append("(select min(t1.hierarquia) "); | ||
181 | + sql.append("from NivelAutoridade t1 "); | ||
182 | + sql.append("inner join AlcadaNivelAutoridade t2 on t2.nivelautoridade_id = t1.id "); | ||
183 | + sql.append("and t2.alcada_id = Alcada.id "); | ||
184 | + sql.append("inner join NivelAutoridadeGrupo t3 ON t3.nivelAutoridade_id = t1.id "); | ||
185 | + sql.append("INNER JOIN GrupoUsuario t4 ON t4.usuario_id = seguranca_usuario.id AND t4.grupo_id = t3.grupo_id) "); | ||
186 | + sql.append("union all "); | ||
187 | + sql.append("SELECT Alcada.identificador as alcada, cast(replace(CentroResultado.codigo,'.','') as integer) as centro_resultado, seguranca_usuario.username as usuario, CentroResultadoResponsavel.dataInativo as data_inativo, "); | ||
188 | + sql.append(" NivelAutoridade.nome as nivel_autoridade "); | ||
189 | + sql.append("FROM centroresultadodelegacao inner join "); | ||
190 | + sql.append("CentroResultadoResponsavelAlcada on centroresultadodelegacao.centroResultadoResponsavelAlcada_id "); | ||
191 | + sql.append("= CentroResultadoResponsavelAlcada.id "); | ||
192 | + sql.append("INNER JOIN CentroResultadoResponsavel on CentroResultadoResponsavel.id = CentroResultadoResponsavelAlcada.centroresultadoresponsavel_id inner join CentroResultado ON CentroResultado.id = CentroResultadoResponsavel.centroResultado_id INNER JOIN "); | ||
193 | + sql.append(" Alcada ON Alcada.id = CentroResultadoResponsavelAlcada.alcada_id INNER JOIN "); | ||
194 | + sql.append(" Parceiro ON Parceiro.id = centroresultadodelegacao.delegado_id INNER JOIN "); | ||
195 | + sql.append(" Pessoa ON Pessoa.id = Parceiro.pessoa_id INNER JOIN "); | ||
196 | + sql.append(" seguranca_usuario ON seguranca_usuario.id = Pessoa.usuario_id INNER JOIN "); | ||
197 | + sql.append(" AlcadaNivelAutoridade ON AlcadaNivelAutoridade.alcada_id = Alcada.id INNER JOIN "); | ||
198 | + sql.append(" NivelAutoridade ON NivelAutoridade.id = AlcadaNivelAutoridade.nivelAutoridade_id "); | ||
199 | + sql.append("inner join Parceiro parc ON parc.id = centroresultadoresponsavel.responsavel_id INNER JOIN "); | ||
200 | + sql.append(" Pessoa pes ON pes.id = parc.pessoa_id "); | ||
201 | + sql.append("where NivelAutoridade.hierarquia = "); | ||
202 | + sql.append("(select min(t1.hierarquia) "); | ||
203 | + sql.append("from NivelAutoridade t1 "); | ||
204 | + sql.append("inner join AlcadaNivelAutoridade t2 on t2.nivelautoridade_id = t1.id "); | ||
205 | + sql.append("and t2.alcada_id = Alcada.id "); | ||
206 | + sql.append("inner join NivelAutoridadeGrupo t3 ON t3.nivelAutoridade_id = t1.id "); | ||
207 | + sql.append("INNER JOIN GrupoUsuario t4 ON t4.usuario_id = pes.usuario_id AND t4.grupo_id = t3.grupo_id) "); | ||
208 | + | ||
209 | + stmt.executeUpdate(sql.toString()); | ||
210 | + } | ||
211 | + } catch (Exception e) { | ||
212 | + throw new RuntimeException(e); | ||
213 | + } finally { | ||
214 | + closeResources(conn, stmt); | ||
215 | + | ||
216 | + } | ||
217 | + } | ||
218 | + /** | ||
219 | + * Retorna uma conexão | ||
220 | + * | ||
221 | + * */ | ||
222 | + private Connection getConnection(){ | ||
223 | + Connection conn = null; | ||
224 | + try { | ||
225 | + if(citDataSource != null) | ||
226 | + return citDataSource.getConnection(); | ||
227 | + else | ||
228 | + return null; | ||
229 | + } catch (SQLException sqle) { | ||
230 | + LOG.error("N\u00e3o foi poss\u00edvel obter conex\u00e3o com o dataSource do m\u00f3dulo. Veja a exceção para identificar as causas: " + sqle.getCause()); | ||
231 | + } | ||
232 | + return conn; | ||
233 | + } | ||
234 | + | ||
235 | + /** | ||
236 | + * Encerra os recursos usados | ||
237 | + * | ||
238 | + * */ | ||
239 | + protected void closeResources(Connection conn, Statement stmt) { | ||
240 | + try { | ||
241 | + if (conn != null){ | ||
242 | + conn.close(); | ||
243 | + } | ||
244 | + if(stmt != null){ | ||
245 | + stmt.close(); | ||
246 | + } | ||
247 | + } catch (SQLException sqle) { | ||
248 | + LOG.error("Não consegui encerrar os recursos de conexão ao banco de dados. Veja a exceção para identificar as causas. " + sqle.getCause()); | ||
249 | + } | ||
250 | + } | ||
251 | + | ||
252 | +} | ||
0 | \ No newline at end of file | 253 | \ No newline at end of file |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoAlcadaServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoAlcadaServiceImpl.java | ||
@@ -0,0 +1,90 @@ | @@ -0,0 +1,90 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import java.util.List; | ||
4 | + | ||
5 | +import org.springframework.beans.factory.annotation.Autowired; | ||
6 | +import org.springframework.beans.factory.annotation.Qualifier; | ||
7 | +import org.springframework.stereotype.Service; | ||
8 | +import org.springframework.validation.Validator; | ||
9 | + | ||
10 | +import br.com.centralit.api.dao.LimiteAprovacaoAlcadaDao; | ||
11 | +import br.com.centralit.api.model.Alcada; | ||
12 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
13 | +import br.com.centralit.api.model.LimiteAprovacaoAlcada; | ||
14 | +import br.com.centralit.api.service.AlcadaService; | ||
15 | +import br.com.centralit.api.service.LimiteAprovacaoAlcadaService; | ||
16 | +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
17 | + | ||
18 | +/** | ||
19 | + * <p> | ||
20 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
21 | + * </p> | ||
22 | + * | ||
23 | + * <p> | ||
24 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
25 | + * </p> | ||
26 | + * | ||
27 | + * <p> | ||
28 | + * <b>Title: </b> | ||
29 | + * </p> | ||
30 | + * | ||
31 | + * <p> | ||
32 | + * <b>Description: </b> | ||
33 | + * </p> | ||
34 | + * | ||
35 | + * <p> | ||
36 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
37 | + * </p> | ||
38 | + * | ||
39 | + * <p> | ||
40 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
41 | + * </p> | ||
42 | + * | ||
43 | + * @since 23/06/2015 - 15:13:44 | ||
44 | + * | ||
45 | + * @version 1.0.0 | ||
46 | + * | ||
47 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
48 | + * | ||
49 | + */ | ||
50 | +@Service("limiteAprovacaoAlcadaService") | ||
51 | +public class LimiteAprovacaoAlcadaServiceImpl extends GenericServiceImpl<LimiteAprovacaoAlcada, Long> implements LimiteAprovacaoAlcadaService { | ||
52 | + | ||
53 | + /** Atributo alcadaNivelAutoridadeService. */ | ||
54 | + @Autowired | ||
55 | + private AlcadaService alcadaService; | ||
56 | + | ||
57 | + private LimiteAprovacaoAlcadaDao limiteAprovacaoAlcadaDao; | ||
58 | + | ||
59 | + @Autowired | ||
60 | + public LimiteAprovacaoAlcadaServiceImpl( LimiteAprovacaoAlcadaDao limiteAprovacaoAlcadaDao, @Qualifier("limiteAprovacaoAlcadaValidator") Validator validator ) { | ||
61 | + | ||
62 | + this.dao = limiteAprovacaoAlcadaDao; | ||
63 | + this.limiteAprovacaoAlcadaDao = limiteAprovacaoAlcadaDao; | ||
64 | + this.validator = validator; | ||
65 | + } | ||
66 | + | ||
67 | + /** | ||
68 | + * {@inheritDoc} | ||
69 | + */ | ||
70 | + @Override | ||
71 | + public List<LimiteAprovacaoAlcada> findByAlcada(Alcada alcada) { | ||
72 | + | ||
73 | + return this.limiteAprovacaoAlcadaDao.findByAlcada(alcada); | ||
74 | + } | ||
75 | + | ||
76 | + /** | ||
77 | + * | ||
78 | + */ | ||
79 | + @Override | ||
80 | + public void montarLimiteAprovacaoAlcada(LimiteAprovacao limiteAprovacao) { | ||
81 | + | ||
82 | + // PERCORRE A LISTA DE LIMITEAPROVACAOALCADA | ||
83 | + for (LimiteAprovacaoAlcada limiteAprovacaoAlcada : limiteAprovacao.getAlcadas()) { | ||
84 | + // CARREGA O OBJETO LIMITEAPROVACAOALCADA | ||
85 | + limiteAprovacaoAlcada.setAlcada(this.alcadaService.getReference(limiteAprovacaoAlcada.getAlcada().getId())); | ||
86 | + limiteAprovacaoAlcada.setLimiteAprovacao(limiteAprovacao); | ||
87 | + } | ||
88 | + } | ||
89 | + | ||
90 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoNivelAutoridadeServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoNivelAutoridadeServiceImpl.java | ||
@@ -0,0 +1,62 @@ | @@ -0,0 +1,62 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import org.springframework.beans.factory.annotation.Autowired; | ||
4 | +import org.springframework.beans.factory.annotation.Qualifier; | ||
5 | +import org.springframework.stereotype.Service; | ||
6 | +import org.springframework.validation.Validator; | ||
7 | + | ||
8 | +import br.com.centralit.api.dao.LimiteAprovacaoNivelAutoridadeDao; | ||
9 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
10 | +import br.com.centralit.api.model.LimiteAprovacaoNivelAutoridade; | ||
11 | +import br.com.centralit.api.service.LimiteAprovacaoNivelAutoridadeService; | ||
12 | +import br.com.centralit.api.service.NivelAutoridadeService; | ||
13 | +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
14 | + | ||
15 | +/** | ||
16 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
17 | + * | ||
18 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
19 | + * | ||
20 | + * <p><b>Title: </b></p> | ||
21 | + * | ||
22 | + * <p><b>Description: </b></p> | ||
23 | + * | ||
24 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
25 | + * | ||
26 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
27 | + * | ||
28 | + * @since 23/06/2015 - 15:17:38 | ||
29 | + * | ||
30 | + * @version 1.0.0 | ||
31 | + * | ||
32 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
33 | + * | ||
34 | + */ | ||
35 | +@Service("limiteAprovacaoNivelAutoridadeService") | ||
36 | +public class LimiteAprovacaoNivelAutoridadeServiceImpl extends GenericServiceImpl<LimiteAprovacaoNivelAutoridade, Long> implements LimiteAprovacaoNivelAutoridadeService { | ||
37 | + | ||
38 | + /** Atributo alcadaNivelAutoridadeService. */ | ||
39 | + @Autowired | ||
40 | + private NivelAutoridadeService nivelAutoridadeService; | ||
41 | + | ||
42 | + @Autowired | ||
43 | + public LimiteAprovacaoNivelAutoridadeServiceImpl(LimiteAprovacaoNivelAutoridadeDao limiteAprovacaoNivelAutoridadeDao, @Qualifier("limiteAprovacaoNivelAutoridadeValidator") Validator validator) { | ||
44 | + this.dao = limiteAprovacaoNivelAutoridadeDao; | ||
45 | + this.validator = validator; | ||
46 | + } | ||
47 | + | ||
48 | + /** | ||
49 | + * | ||
50 | + */ | ||
51 | + @Override | ||
52 | + public void montarLimiteAprovacaoNivelAutoridade(LimiteAprovacao limiteAprovacao) { | ||
53 | + | ||
54 | + // TODO Auto-generated method stub | ||
55 | + for(LimiteAprovacaoNivelAutoridade limiteAprovacaoNivelAutoridade : limiteAprovacao.getNiveisAutoridades()) { | ||
56 | + // CARREGA O OBJETO LIMITEAPROVACAONIVELAUTORIDADE | ||
57 | + limiteAprovacaoNivelAutoridade.setNivelAutoridade(this.nivelAutoridadeService.getReference(limiteAprovacaoNivelAutoridade.getNivelAutoridade().getId())); | ||
58 | + limiteAprovacaoNivelAutoridade.setLimiteAprovacao(limiteAprovacao); | ||
59 | + } | ||
60 | + } | ||
61 | + | ||
62 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoServiceImpl.java | ||
@@ -0,0 +1,107 @@ | @@ -0,0 +1,107 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import org.springframework.beans.factory.annotation.Autowired; | ||
4 | +import org.springframework.beans.factory.annotation.Qualifier; | ||
5 | +import org.springframework.stereotype.Service; | ||
6 | +import org.springframework.validation.Validator; | ||
7 | + | ||
8 | +import br.com.centralit.api.dao.LimiteAprovacaoDao; | ||
9 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
10 | +import br.com.centralit.api.service.LimiteAprovacaoAlcadaService; | ||
11 | +import br.com.centralit.api.service.LimiteAprovacaoNivelAutoridadeService; | ||
12 | +import br.com.centralit.api.service.LimiteAprovacaoService; | ||
13 | +import br.com.centralit.api.service.LimiteAprovacaoValorService; | ||
14 | +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
15 | +import br.com.centralit.framework.util.UtilObjeto; | ||
16 | + | ||
17 | +/** | ||
18 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
19 | + * | ||
20 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
21 | + * | ||
22 | + * <p><b>Title: </b></p> | ||
23 | + * | ||
24 | + * <p><b>Description: </b></p> | ||
25 | + * | ||
26 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
27 | + * | ||
28 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
29 | + * | ||
30 | + * @since 18/06/2015 - 16:57:34 | ||
31 | + * | ||
32 | + * @version 1.0.0 | ||
33 | + * | ||
34 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
35 | + * | ||
36 | + */ | ||
37 | +@Service("limiteAprovacaoService") | ||
38 | +public class LimiteAprovacaoServiceImpl extends GenericServiceImpl<LimiteAprovacao, Long> implements LimiteAprovacaoService { | ||
39 | + | ||
40 | + /** Atributo alcadaNivelAutoridadeService. */ | ||
41 | + @Autowired | ||
42 | + private LimiteAprovacaoNivelAutoridadeService limiteAprovacaoNivelAutoridadeService; | ||
43 | + | ||
44 | + /** Atributo alcadaNivelAutoridadeService. */ | ||
45 | + @Autowired | ||
46 | + private LimiteAprovacaoAlcadaService limiteAprovacaoAlcadaService; | ||
47 | + | ||
48 | + /** Atributo alcadaNivelAutoridadeService. */ | ||
49 | + @Autowired | ||
50 | + private LimiteAprovacaoValorService limiteAprovacaoValorService; | ||
51 | + | ||
52 | + private LimiteAprovacaoDao limiteAprovacaoDao; | ||
53 | + | ||
54 | + @Autowired | ||
55 | + public LimiteAprovacaoServiceImpl(LimiteAprovacaoDao limiteAprovacaoDao, @Qualifier("limiteAprovacaoValidator") Validator validator) { | ||
56 | + this.dao = limiteAprovacaoDao; | ||
57 | + this.limiteAprovacaoDao = limiteAprovacaoDao; | ||
58 | + this.validator = validator; | ||
59 | + } | ||
60 | + | ||
61 | + public LimiteAprovacao save(LimiteAprovacao limiteAprovacao) { | ||
62 | + | ||
63 | + // TODO Auto-generated method stub | ||
64 | + // VALIDA CAMPO OBRIGATÓRIO DA ENTIDADE | ||
65 | + if (UtilObjeto.isReferencia(this.validator)) { | ||
66 | + this.validarEntidade(limiteAprovacao, this.validator); | ||
67 | + } | ||
68 | + | ||
69 | + montaLimiteAprovacao(limiteAprovacao); | ||
70 | + | ||
71 | + // SALVA A TRANSFERÊNCIA | ||
72 | + LimiteAprovacao entitySaved = (LimiteAprovacao) this.limiteAprovacaoDao.save(limiteAprovacao); | ||
73 | + | ||
74 | + return entitySaved; | ||
75 | + } | ||
76 | + | ||
77 | + /** | ||
78 | + * | ||
79 | + */ | ||
80 | + @Override | ||
81 | + public LimiteAprovacao merge(LimiteAprovacao limiteAprovacao) { | ||
82 | + | ||
83 | + // TODO Auto-generated method stub | ||
84 | + // VALIDA CAMPO OBRIGATÓRIO DA ENTIDADE | ||
85 | + if (UtilObjeto.isReferencia(this.validator)) { | ||
86 | + this.validarEntidade(limiteAprovacao, this.validator); | ||
87 | + } | ||
88 | + | ||
89 | + montaLimiteAprovacao(limiteAprovacao); | ||
90 | + | ||
91 | + // SALVA A TRANSFERÊNCIA | ||
92 | + LimiteAprovacao entitySaved = (LimiteAprovacao) this.limiteAprovacaoDao.merge(limiteAprovacao); | ||
93 | + | ||
94 | + return entitySaved; | ||
95 | + } | ||
96 | + | ||
97 | + private void montaLimiteAprovacao(LimiteAprovacao limiteAprovacao){ | ||
98 | + // MONTA OS DADOS DO OBJETO LIMITEAPROVACAONIVELAUTORIDADE | ||
99 | + this.limiteAprovacaoNivelAutoridadeService.montarLimiteAprovacaoNivelAutoridade(limiteAprovacao); | ||
100 | + | ||
101 | + // MONTA OS DADOS DO OBJETO LIMITEAPROVACAONIVELAUTORIDADE | ||
102 | + this.limiteAprovacaoAlcadaService.montarLimiteAprovacaoAlcada(limiteAprovacao); | ||
103 | + | ||
104 | + // MONTA OS DADOS DO OBJETO LIMITEAPROVACAONIVELAUTORIDADE | ||
105 | + this.limiteAprovacaoValorService.montarLimiteAprovacaoValor(limiteAprovacao); | ||
106 | + } | ||
107 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoValorServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/LimiteAprovacaoValorServiceImpl.java | ||
@@ -0,0 +1,64 @@ | @@ -0,0 +1,64 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import org.springframework.beans.factory.annotation.Autowired; | ||
4 | +import org.springframework.beans.factory.annotation.Qualifier; | ||
5 | +import org.springframework.stereotype.Service; | ||
6 | +import org.springframework.validation.Validator; | ||
7 | + | ||
8 | +import br.com.centralit.api.dao.LimiteAprovacaoValorDao; | ||
9 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
10 | +import br.com.centralit.api.model.LimiteAprovacaoValor; | ||
11 | +import br.com.centralit.api.service.LimiteAprovacaoService; | ||
12 | +import br.com.centralit.api.service.LimiteAprovacaoValorService; | ||
13 | +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
14 | + | ||
15 | +/** | ||
16 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
17 | + * | ||
18 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
19 | + * | ||
20 | + * <p><b>Title: </b></p> | ||
21 | + * | ||
22 | + * <p><b>Description: </b></p> | ||
23 | + * | ||
24 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
25 | + * | ||
26 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
27 | + * | ||
28 | + * @since 18/06/2015 - 16:57:02 | ||
29 | + * | ||
30 | + * @version 1.0.0 | ||
31 | + * | ||
32 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
33 | + * | ||
34 | + */ | ||
35 | +@Service("limiteAprovacaoValorService") | ||
36 | +public class LimiteAprovacaoValorServiceImpl extends GenericServiceImpl<LimiteAprovacaoValor, Long> implements LimiteAprovacaoValorService { | ||
37 | + | ||
38 | + /** Atributo alcadaNivelAutoridadeService. */ | ||
39 | + @Autowired | ||
40 | + private LimiteAprovacaoService limiteAprovacaoService; | ||
41 | + | ||
42 | + @Autowired | ||
43 | + public LimiteAprovacaoValorServiceImpl(LimiteAprovacaoValorDao limiteAprovacaoValorDao, @Qualifier("limiteAprovacaoValorValidator") Validator validator) { | ||
44 | + this.dao = limiteAprovacaoValorDao; | ||
45 | + this.validator = validator; | ||
46 | + } | ||
47 | + | ||
48 | + /** | ||
49 | + * | ||
50 | + */ | ||
51 | + @Override | ||
52 | + public void montarLimiteAprovacaoValor(LimiteAprovacao limiteAprovacao) { | ||
53 | + | ||
54 | + // TODO Auto-generated method stub | ||
55 | + // PERCORRE A LISTA DE ALCADANIVELAUTORIDADE | ||
56 | + if(limiteAprovacao.getLimitesAprovacoesValores() != null){ | ||
57 | + for(LimiteAprovacaoValor limiteAprovacaoValor : limiteAprovacao.getLimitesAprovacoesValores()) { | ||
58 | + // CARREGA O OBJETO LIMITEAPROVACAOVALOR | ||
59 | + limiteAprovacaoValor.setLimiteAprovacao(limiteAprovacao); | ||
60 | + } | ||
61 | + } | ||
62 | + } | ||
63 | + | ||
64 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/SolicitacaoAlcadaServiceImpl.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/impl/SolicitacaoAlcadaServiceImpl.java | ||
@@ -0,0 +1,833 @@ | @@ -0,0 +1,833 @@ | ||
1 | +package br.com.centralit.api.service.impl; | ||
2 | + | ||
3 | +import java.util.ArrayList; | ||
4 | +import java.util.Collection; | ||
5 | +import java.util.HashMap; | ||
6 | +import java.util.List; | ||
7 | + | ||
8 | +import org.springframework.beans.factory.annotation.Autowired; | ||
9 | +import org.springframework.stereotype.Service; | ||
10 | + | ||
11 | +import br.com.centralit.api.dao.SolicitacaoAlcadaDao; | ||
12 | +import br.com.centralit.api.model.Alcada; | ||
13 | +import br.com.centralit.api.model.AlcadaNivelAutoridade; | ||
14 | +import br.com.centralit.api.model.CentroResultado; | ||
15 | +import br.com.centralit.api.model.CentroResultadoDelegacao; | ||
16 | +import br.com.centralit.api.model.CentroResultadoDelegacaoRequisicao; | ||
17 | +import br.com.centralit.api.model.CentroResultadoResponsavel; | ||
18 | +import br.com.centralit.api.model.CentroResultadoResponsavelAlcada; | ||
19 | +import br.com.centralit.api.model.Colaborador; | ||
20 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
21 | +import br.com.centralit.api.model.LimiteAprovacaoAlcada; | ||
22 | +import br.com.centralit.api.model.LimiteAprovacaoNivelAutoridade; | ||
23 | +import br.com.centralit.api.model.LimiteAprovacaoValor; | ||
24 | +import br.com.centralit.api.model.NivelAutoridade; | ||
25 | +import br.com.centralit.api.model.NivelAutoridadeGrupo; | ||
26 | +import br.com.centralit.api.model.ResponsavelAlcada; | ||
27 | +import br.com.centralit.api.model.SolicitacaoAlcada; | ||
28 | +import br.com.centralit.api.model.ValorAcumulado; | ||
29 | +import br.com.centralit.api.service.AlcadaService; | ||
30 | +import br.com.centralit.api.service.CentroResultadoService; | ||
31 | +import br.com.centralit.api.service.ColaboradorService; | ||
32 | +import br.com.centralit.api.service.DominioService; | ||
33 | +import br.com.centralit.api.service.GrupoUsuarioService; | ||
34 | +import br.com.centralit.api.service.InternacionalizacaoService; | ||
35 | +import br.com.centralit.api.service.LimiteAprovacaoAlcadaService; | ||
36 | +import br.com.centralit.api.service.NivelAutoridadeService; | ||
37 | +import br.com.centralit.api.service.PessoaService; | ||
38 | +import br.com.centralit.api.service.SolicitacaoAlcadaService; | ||
39 | +import br.com.centralit.api.service.UsuarioService; | ||
40 | +import br.com.centralit.framework.exception.BusinessException; | ||
41 | +import br.com.centralit.framework.exception.CodigoErro; | ||
42 | +import br.com.centralit.framework.model.Dominio; | ||
43 | +import br.com.centralit.framework.model.GrupoUsuario; | ||
44 | +import br.com.centralit.framework.model.Usuario; | ||
45 | +import br.com.centralit.framework.service.arquitetura.GenericServiceImpl; | ||
46 | +import br.com.centralit.framework.util.UtilDate; | ||
47 | +import br.com.centralit.framework.util.UtilObjeto; | ||
48 | +import br.com.centralit.framework.util.UtilString; | ||
49 | + | ||
50 | +/** | ||
51 | + * <p> | ||
52 | + * <img src="http://centralit.com.br/images/logo_central.png"> | ||
53 | + * </p> | ||
54 | + * | ||
55 | + * <p> | ||
56 | + * <b>Company: </b> Central IT - Governança Corporativa - | ||
57 | + * </p> | ||
58 | + * | ||
59 | + * <p> | ||
60 | + * <b>Title: </b> | ||
61 | + * </p> | ||
62 | + * | ||
63 | + * <p> | ||
64 | + * <b>Description: </b> | ||
65 | + * </p> | ||
66 | + * | ||
67 | + * <p> | ||
68 | + * <b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a> | ||
69 | + * </p> | ||
70 | + * | ||
71 | + * <p> | ||
72 | + * <b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a> | ||
73 | + * </p> | ||
74 | + * | ||
75 | + * @since 18/06/2015 - 16:57:02 | ||
76 | + * | ||
77 | + * @version 1.0.0 | ||
78 | + * | ||
79 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
80 | + * | ||
81 | + */ | ||
82 | +@Service("solicitacaoAlcadaService") | ||
83 | +public class SolicitacaoAlcadaServiceImpl extends GenericServiceImpl<SolicitacaoAlcada, Long> implements SolicitacaoAlcadaService { | ||
84 | + | ||
85 | + public static final Long FAIXA_VALOR = 1l; | ||
86 | + | ||
87 | + public static final Long QUALQUER_VALOR = 2l; | ||
88 | + | ||
89 | + public static final Long NAO_APLICA = 3l; | ||
90 | + | ||
91 | + public static final Long TODOS = 2l; | ||
92 | + | ||
93 | + public static final Long INDIVIDUAL = 1l; | ||
94 | + | ||
95 | + public static final Long MENSAL = 2l; | ||
96 | + | ||
97 | + public static final Long ANUAL = 3l; | ||
98 | + | ||
99 | + public static final Long LIMITE_VALOR = 1L; | ||
100 | + | ||
101 | + public static final Long HIERARQUIA_SOLICITANTE = 2L; | ||
102 | + | ||
103 | + public static final Long PERMISSAO_AUTORIDADE = 3L; | ||
104 | + | ||
105 | + public static final Long REGRAS_PROCESSO = 4L; | ||
106 | + | ||
107 | + public static final Long USUARIO_NAO_EXISTE = 5L; | ||
108 | + | ||
109 | + public static final Long PERTENCE_GRUPO_RESPONSAVEL = 6L; | ||
110 | + | ||
111 | + public static final Long GRUPO_NAO_ASSOCIADO = 7L; | ||
112 | + | ||
113 | + public static final Long HIERARQUIA_AUTORIDADE = 8L; | ||
114 | + | ||
115 | + public static final String SITUACAO_GERADA = "GERADA"; | ||
116 | + | ||
117 | + public static final String SITUACAO_APROVADA = "APROVADA"; | ||
118 | + | ||
119 | + public static final String SITUACAO_CANCELADA = "CANCELADA"; | ||
120 | + | ||
121 | + @Autowired | ||
122 | + private AlcadaService alcadaService; | ||
123 | + | ||
124 | + @Autowired | ||
125 | + private DominioService dominioService; | ||
126 | + | ||
127 | + @Autowired | ||
128 | + private UsuarioService usuarioService; | ||
129 | + | ||
130 | + @Autowired | ||
131 | + private LimiteAprovacaoAlcadaService limiteAprovacaoAlcadaService; | ||
132 | + | ||
133 | + @Autowired | ||
134 | + private CentroResultadoService centroResultadoService; | ||
135 | + | ||
136 | + @Autowired | ||
137 | + private GrupoUsuarioService grupoUsuarioService; | ||
138 | + | ||
139 | + @Autowired | ||
140 | + private ColaboradorService colaboradorService; | ||
141 | + | ||
142 | + @Autowired | ||
143 | + private PessoaService pessoaService; | ||
144 | + | ||
145 | + @Autowired | ||
146 | + private NivelAutoridadeService nivelAutoridadeService; | ||
147 | + | ||
148 | + @Autowired | ||
149 | + private InternacionalizacaoService internacionalizacaoService; | ||
150 | + | ||
151 | + private SolicitacaoAlcadaDao solicitacaoAlcadaDao; | ||
152 | + | ||
153 | + private Dominio idioma = null; | ||
154 | + | ||
155 | + @Autowired | ||
156 | + public SolicitacaoAlcadaServiceImpl( SolicitacaoAlcadaDao solicitacaoAlcadaDao) { | ||
157 | + | ||
158 | + this.dao = solicitacaoAlcadaDao; | ||
159 | + this.solicitacaoAlcadaDao = solicitacaoAlcadaDao; | ||
160 | + } | ||
161 | + | ||
162 | + @Override | ||
163 | + public SolicitacaoAlcada save(SolicitacaoAlcada solicitacaoAlcada) { | ||
164 | + | ||
165 | + if (solicitacaoAlcada.getIdentificador() != null) { | ||
166 | + SolicitacaoAlcada solicitacaoAlcadaRef = this.recuperaPeloIdentificador(solicitacaoAlcada.getAlcada(), solicitacaoAlcada.getIdentificador()); | ||
167 | + if (UtilObjeto.isReferencia(solicitacaoAlcadaRef)) { | ||
168 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_ALCADA_JA_EXISTE", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
169 | + } | ||
170 | + } | ||
171 | + | ||
172 | + solicitacaoAlcada.setSituacao(dominioService.findByChaveAndNome("situacaoSolicitacaoAlcada", SITUACAO_GERADA)); | ||
173 | + | ||
174 | + List<ResponsavelAlcada> responsaveis = this.getResponsaveis(solicitacaoAlcada); | ||
175 | + | ||
176 | + solicitacaoAlcada.setResponsaveis(responsaveis); | ||
177 | + | ||
178 | + this.verificaAprovacao(solicitacaoAlcada); | ||
179 | + | ||
180 | + solicitacaoAlcada = super.save(solicitacaoAlcada); | ||
181 | + | ||
182 | + return solicitacaoAlcada; | ||
183 | + } | ||
184 | + | ||
185 | + @Override | ||
186 | + public boolean remove(SolicitacaoAlcada solicitacaoAlcada) { | ||
187 | + | ||
188 | + solicitacaoAlcada = this.getReference(solicitacaoAlcada.getId()); | ||
189 | + | ||
190 | + if (solicitacaoAlcada.getSituacao().getNome().equals(SITUACAO_APROVADA)) { | ||
191 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_NAO_PERMITE_EXCLUSAO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
192 | + } | ||
193 | + | ||
194 | + return super.remove(solicitacaoAlcada); | ||
195 | + } | ||
196 | + | ||
197 | + @Override | ||
198 | + public SolicitacaoAlcada aprovaSolicitacao(SolicitacaoAlcada solicitacaoAlcada, Usuario aprovador) { | ||
199 | + | ||
200 | + if (!UtilObjeto.isReferencia(solicitacaoAlcada)) { | ||
201 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_ALCADA_NAO_ENCONTRADA", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
202 | + } | ||
203 | + | ||
204 | + if (solicitacaoAlcada.getSituacao().getNome().equals(SITUACAO_APROVADA)) { | ||
205 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_NAO_PERMITE_AUTORIZACAO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
206 | + } | ||
207 | + | ||
208 | + ResponsavelAlcada responsavel = null; | ||
209 | + for (ResponsavelAlcada responsavelAlcada : solicitacaoAlcada.getResponsaveis()) { | ||
210 | + if (responsavelAlcada.getHabilitado() && responsavelAlcada.getUsuario().getUsername().equalsIgnoreCase(aprovador.getUsername())) { | ||
211 | + responsavel = responsavelAlcada; | ||
212 | + break; | ||
213 | + } | ||
214 | + } | ||
215 | + | ||
216 | + if (responsavel == null) { | ||
217 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.APROVADOR_NAO_ENCONTRADO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
218 | + } | ||
219 | + | ||
220 | + solicitacaoAlcada.setAprovador(responsavel); | ||
221 | + solicitacaoAlcada.setSituacao(dominioService.findByChaveAndNome("situacaoSolicitacaoAlcada", SITUACAO_APROVADA)); | ||
222 | + | ||
223 | + return this.merge(solicitacaoAlcada); | ||
224 | + } | ||
225 | + | ||
226 | + @Override | ||
227 | + public SolicitacaoAlcada aprovaPeloIdentificador(SolicitacaoAlcada solicitacaoAlcada) { | ||
228 | + | ||
229 | + String usernameAprovador = solicitacaoAlcada.getUsernameAprovador(); | ||
230 | + if (UtilString.isNullOrEmpty(solicitacaoAlcada.getUsernameAprovador())) { | ||
231 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.APROVADOR_NAO_ENCONTRADO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
232 | + } | ||
233 | + | ||
234 | + Usuario aprovador = usuarioService.getUserByUsername(usernameAprovador); | ||
235 | + if (!UtilObjeto.isReferencia(aprovador)) { | ||
236 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.APROVADOR_NAO_ENCONTRADO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
237 | + } | ||
238 | + | ||
239 | + SolicitacaoAlcada solicitacaoAlcadaRef = this.recuperaPeloIdentificador(solicitacaoAlcada.getAlcada(), solicitacaoAlcada.getIdentificador()); | ||
240 | + if (!UtilObjeto.isReferencia(solicitacaoAlcadaRef)) { | ||
241 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_ALCADA_NAO_ENCONTRADA", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
242 | + } | ||
243 | + | ||
244 | + if (solicitacaoAlcada.getValor() != null && solicitacaoAlcada.getValor().doubleValue() > 0.0) { | ||
245 | + solicitacaoAlcadaRef.setValor(solicitacaoAlcada.getValor()); | ||
246 | + } | ||
247 | + | ||
248 | + return this.aprovaSolicitacao(solicitacaoAlcadaRef, aprovador); | ||
249 | + } | ||
250 | + | ||
251 | + @Override | ||
252 | + public SolicitacaoAlcada cancelaAprovacaoPeloIdentificador(SolicitacaoAlcada solicitacaoAlcada) { | ||
253 | + | ||
254 | + SolicitacaoAlcada solicitacaoAlcadaRef = this.recuperaPeloIdentificador(solicitacaoAlcada.getAlcada(), solicitacaoAlcada.getIdentificador()); | ||
255 | + if (!UtilObjeto.isReferencia(solicitacaoAlcadaRef)) { | ||
256 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_ALCADA_NAO_ENCONTRADA", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
257 | + } | ||
258 | + | ||
259 | + return this.cancelaAprovacao(solicitacaoAlcadaRef); | ||
260 | + } | ||
261 | + | ||
262 | + @Override | ||
263 | + public SolicitacaoAlcada cancelaAprovacao(SolicitacaoAlcada solicitacaoAlcada) { | ||
264 | + | ||
265 | + if (!UtilObjeto.isReferencia(solicitacaoAlcada)) { | ||
266 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.SOLICITACAO_ALCADA_NAO_ENCONTRADA", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
267 | + } | ||
268 | + | ||
269 | + if (solicitacaoAlcada.getSituacao().getNome().equals(SITUACAO_APROVADA)) { | ||
270 | + solicitacaoAlcada.setAprovador(null); | ||
271 | + solicitacaoAlcada.setSituacao(dominioService.findByChaveAndNome("situacaoSolicitacaoAlcada", SITUACAO_CANCELADA)); | ||
272 | + solicitacaoAlcada.setDataInativo(UtilDate.getDataAtualCalendar()); | ||
273 | + solicitacaoAlcada = this.merge(solicitacaoAlcada); | ||
274 | + } | ||
275 | + | ||
276 | + return solicitacaoAlcada; | ||
277 | + } | ||
278 | + | ||
279 | + @Override | ||
280 | + public List<ResponsavelAlcada> getResponsaveis(SolicitacaoAlcada solicitacaoAlcada) { | ||
281 | + | ||
282 | + this.validaSolicitacao(solicitacaoAlcada); | ||
283 | + | ||
284 | + List<ResponsavelAlcada> responsaveis = this.getResponsaveisCentroResultado(solicitacaoAlcada); | ||
285 | + | ||
286 | + List<LimiteAprovacao> limitesAprovacao = this.getLimitesAprovacao(solicitacaoAlcada); | ||
287 | + | ||
288 | + this.validaResponsaveis(solicitacaoAlcada, limitesAprovacao, responsaveis); | ||
289 | + | ||
290 | + this.trataAlcadasNivelSuperior(solicitacaoAlcada, limitesAprovacao, responsaveis); | ||
291 | + | ||
292 | + return responsaveis; | ||
293 | + } | ||
294 | + | ||
295 | + @Override | ||
296 | + public SolicitacaoAlcada recuperaSolicitacao(Alcada alcada, String identificadorUnico) { | ||
297 | + | ||
298 | + SolicitacaoAlcada solicitacaoAlcada = solicitacaoAlcadaDao.recuperaPeloIdentificador(alcada, identificadorUnico); | ||
299 | + return recuperaRelacionamentos(solicitacaoAlcada); | ||
300 | + } | ||
301 | + | ||
302 | + protected SolicitacaoAlcada recuperaRelacionamentos(SolicitacaoAlcada solicitacaoAlcada) { | ||
303 | + | ||
304 | + if (UtilObjeto.isReferencia(solicitacaoAlcada) && !solicitacaoAlcada.isNew()) { | ||
305 | + solicitacaoAlcada.setSituacao(dominioService.find(solicitacaoAlcada.getSituacao().getId())); | ||
306 | + | ||
307 | + if (solicitacaoAlcada.getAprovador() != null) { | ||
308 | + solicitacaoAlcada.setUsernameAprovador(solicitacaoAlcada.getAprovador().getUsuario().getUsername()); | ||
309 | + } | ||
310 | + for (ResponsavelAlcada responsavelAlcada : solicitacaoAlcada.getResponsaveis()) { | ||
311 | + // finds necessários para resolver problemas na serialização | ||
312 | + Colaborador colaborador = colaboradorService.find(responsavelAlcada.getColaborador().getId()); | ||
313 | + colaborador.setPessoa(pessoaService.find(colaborador.getPessoa().getId())); | ||
314 | + responsavelAlcada.setColaborador(colaborador); | ||
315 | + responsavelAlcada.setUsuario(usuarioService.find(responsavelAlcada.getUsuario().getId())); | ||
316 | + responsavelAlcada.setNivelAutoridade(nivelAutoridadeService.find(responsavelAlcada.getNivelAutoridade().getId())); | ||
317 | + | ||
318 | + if (responsavelAlcada.getMotivosRejeicao() != null) { | ||
319 | + for (Dominio motivo : responsavelAlcada.getMotivosRejeicao()) { | ||
320 | + motivo = dominioService.find(motivo.getId()); | ||
321 | + } | ||
322 | + } | ||
323 | + } | ||
324 | + } | ||
325 | + return solicitacaoAlcada; | ||
326 | + } | ||
327 | + | ||
328 | + protected SolicitacaoAlcada recuperaPeloIdentificador(Alcada alcada, String identificadorUnico) { | ||
329 | + | ||
330 | + return solicitacaoAlcadaDao.recuperaPeloIdentificador(alcada, identificadorUnico); | ||
331 | + } | ||
332 | + | ||
333 | + protected void verificaAprovacao(SolicitacaoAlcada solicitacaoAlcada) { | ||
334 | + | ||
335 | + if (UtilObjeto.isReferencia(solicitacaoAlcada.getUsuarioAprovador())) { | ||
336 | + List<ResponsavelAlcada> responsaveis = solicitacaoAlcada.getResponsaveis(); | ||
337 | + | ||
338 | + // Verifica se aprovador está na lista dos responsáveis | ||
339 | + Usuario aprovador = solicitacaoAlcada.getUsuarioAprovador(); | ||
340 | + ResponsavelAlcada responsavelAprovacao = null; | ||
341 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
342 | + if (responsavelAlcada.getUsuario().getUsername().equalsIgnoreCase(aprovador.getUsername())) { | ||
343 | + responsavelAprovacao = responsavelAlcada; | ||
344 | + break; | ||
345 | + } | ||
346 | + } | ||
347 | + | ||
348 | + if (responsavelAprovacao == null) { | ||
349 | + // Cria aprovador, se não estiver na lista de responsáveis | ||
350 | + Colaborador colaborador = colaboradorService.findPorUsuario(aprovador); | ||
351 | + if (colaborador != null && !this.existeResponsavel(colaborador, responsaveis)) { | ||
352 | + responsavelAprovacao = new ResponsavelAlcada(solicitacaoAlcada, colaborador, null, null); | ||
353 | + this.atribuiNivelAutoridade(solicitacaoAlcada.getAlcada(), responsavelAprovacao); | ||
354 | + responsaveis.add(responsavelAprovacao); | ||
355 | + } | ||
356 | + } | ||
357 | + | ||
358 | + if (responsavelAprovacao == null) { | ||
359 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.APROVADOR_NAO_ENCONTRADO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
360 | + } | ||
361 | + | ||
362 | + solicitacaoAlcada.setAprovador(responsavelAprovacao); | ||
363 | + solicitacaoAlcada.setSituacao(dominioService.findByChaveAndNome("situacaoSolicitacaoAlcada", SITUACAO_APROVADA)); | ||
364 | + } | ||
365 | + } | ||
366 | + | ||
367 | + protected Dominio getIdioma() { | ||
368 | + | ||
369 | + if (this.idioma == null) { | ||
370 | + this.idioma = this.dominioService.findByChaveAndCodigo("tipoIdioma", Dominio.TIPO_IDIOMA_PT_BR_CODIGO); | ||
371 | + } | ||
372 | + return this.idioma; | ||
373 | + } | ||
374 | + | ||
375 | + protected void trataAlcadasNivelSuperior(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis) { | ||
376 | + | ||
377 | + int i = 0; | ||
378 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
379 | + if (responsavelAlcada.getHabilitado()) | ||
380 | + i++; | ||
381 | + } | ||
382 | + | ||
383 | + if (i == 0) { | ||
384 | + for (LimiteAprovacao limiteAprovacao : limitesAprovacao) { | ||
385 | + if (!limiteAprovacao.getDominioTipoLimite().getCodigo().equals(FAIXA_VALOR) && limiteAprovacao.getDominioTipoAbrangencia().getCodigo().equals(TODOS)) { | ||
386 | + for (LimiteAprovacaoNivelAutoridade limiteAprovacaoNivelAutoridade : limiteAprovacao.getNiveisAutoridades()) { | ||
387 | + for (NivelAutoridadeGrupo nivelAutoridadeGrupo : limiteAprovacaoNivelAutoridade.getNivelAutoridade().getGrupos()) { | ||
388 | + Collection<GrupoUsuario> gruposUsuario = grupoUsuarioService.findPorIdGrupo(nivelAutoridadeGrupo.getGrupo().getId()); | ||
389 | + for (GrupoUsuario grupoUsuario : gruposUsuario) { | ||
390 | + Colaborador colaborador = colaboradorService.findPorUsuario(grupoUsuario.getUsuario()); | ||
391 | + if (colaborador != null && !this.existeResponsavel(colaborador, responsaveis)) { | ||
392 | + responsaveis.add(new ResponsavelAlcada(solicitacaoAlcada, colaborador, nivelAutoridadeGrupo.getNivelAutoridade(), null)); | ||
393 | + } | ||
394 | + } | ||
395 | + } | ||
396 | + } | ||
397 | + } | ||
398 | + } | ||
399 | + } | ||
400 | + } | ||
401 | + | ||
402 | + protected void recuperaAlcada(SolicitacaoAlcada solicitacaoAlcada) { | ||
403 | + | ||
404 | + Alcada alcada = solicitacaoAlcada.getAlcada(); | ||
405 | + solicitacaoAlcada.setAlcada(null); | ||
406 | + | ||
407 | + if (alcada.getId() != null) { | ||
408 | + solicitacaoAlcada.setAlcada(alcadaService.getReference(alcada.getId())); | ||
409 | + } else if (alcada.getIdentificador() != null) { | ||
410 | + solicitacaoAlcada.setAlcada(alcadaService.findByIdentificaodr(alcada.getIdentificador())); | ||
411 | + } | ||
412 | + } | ||
413 | + | ||
414 | + protected void recuperaCentroResultado(SolicitacaoAlcada solicitacaoAlcada) { | ||
415 | + | ||
416 | + CentroResultado centroResultado = solicitacaoAlcada.getCentroResultado(); | ||
417 | + CentroResultado centroResultadoAux = null; | ||
418 | + | ||
419 | + if (centroResultado.getId() != null) { | ||
420 | + centroResultadoAux = centroResultadoService.getReference(centroResultado.getId()); | ||
421 | + } | ||
422 | + if (centroResultadoAux == null && centroResultado.getCodigoSistemaOrigem() != null) { | ||
423 | + centroResultadoAux = centroResultadoService.findByCodigoSistemaOrigem(centroResultado.getCodigoSistemaOrigem()); | ||
424 | + } | ||
425 | + if (centroResultadoAux == null && centroResultado.getCodigo() != null) { | ||
426 | + centroResultadoAux = centroResultadoService.findByCodigo(centroResultado.getCodigo()); | ||
427 | + if (centroResultadoAux == null) { | ||
428 | + String codigo = centroResultado.getCodigo().replaceAll(".", ""); | ||
429 | + centroResultadoAux = centroResultadoService.findByCodigoSistemaOrigem(codigo); | ||
430 | + } | ||
431 | + } | ||
432 | + | ||
433 | + solicitacaoAlcada.setCentroResultado(centroResultadoAux); | ||
434 | + } | ||
435 | + | ||
436 | + protected void recuperaSolicitante(SolicitacaoAlcada solicitacaoAlcada) { | ||
437 | + | ||
438 | + Usuario solicitante = solicitacaoAlcada.getSolicitante(); | ||
439 | + solicitacaoAlcada.setSolicitante(null); | ||
440 | + | ||
441 | + if (solicitante.getId() != null) { | ||
442 | + solicitacaoAlcada.setSolicitante(usuarioService.getReference(solicitante.getId())); | ||
443 | + } else if (solicitante.getUsername() != null) { | ||
444 | + solicitacaoAlcada.setSolicitante(usuarioService.getUserByUsername(solicitante.getUsername())); | ||
445 | + } | ||
446 | + } | ||
447 | + | ||
448 | + protected void recuperaTipoSolicitacao(SolicitacaoAlcada solicitacaoAlcada) { | ||
449 | + | ||
450 | + Dominio tipoUtilizacao = solicitacaoAlcada.getTipoUtilizacao(); | ||
451 | + solicitacaoAlcada.setTipoUtilizacao(null); | ||
452 | + | ||
453 | + if (tipoUtilizacao.getId() != null) { | ||
454 | + solicitacaoAlcada.setTipoUtilizacao(dominioService.getReference(tipoUtilizacao.getId())); | ||
455 | + } else if (tipoUtilizacao.getNome() != null) { | ||
456 | + solicitacaoAlcada.setTipoUtilizacao(dominioService.findByChaveAndNome("tipoUtilizacao", tipoUtilizacao.getNome())); | ||
457 | + } | ||
458 | + } | ||
459 | + | ||
460 | + protected void validaAtributos(SolicitacaoAlcada solicitacaoAlcada) { | ||
461 | + | ||
462 | + String msg = ": "+internacionalizacaoService.getTranslate("LABEL.O_CAMPO_OBRIGATORIO", this.getIdioma()); | ||
463 | + | ||
464 | + if (solicitacaoAlcada.getAlcada() == null) { | ||
465 | + throw new BusinessException(internacionalizacaoService.getTranslate("ALCADA.LABEL.ALCADA", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
466 | + } | ||
467 | + if (solicitacaoAlcada.getCentroResultado() == null) { | ||
468 | + throw new BusinessException(internacionalizacaoService.getTranslate("ALCADA.LABEL.CENTRO_RESULTADO", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
469 | + } | ||
470 | + if (solicitacaoAlcada.getValor() == null) { | ||
471 | + throw new BusinessException(internacionalizacaoService.getTranslate("SOLICITACAO_ALCADA.VALOR", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
472 | + } | ||
473 | + if (solicitacaoAlcada.getDataReferencia() == null) { | ||
474 | + throw new BusinessException(internacionalizacaoService.getTranslate("SOLICITACAO_ALCADA.DATA_REFERENCIA", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
475 | + } | ||
476 | + if (solicitacaoAlcada.getTipoUtilizacao() == null) { | ||
477 | + throw new BusinessException(internacionalizacaoService.getTranslate("SOLICITACAO_ALCADA.TIPO_UTILIZACAO", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
478 | + } | ||
479 | + if (UtilString.isNullOrEmpty(solicitacaoAlcada.getRequisicaoOrigem())) { | ||
480 | + throw new BusinessException(internacionalizacaoService.getTranslate("SOLICITACAO_ALCADA.ORIGEM_SOLICITACAO", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
481 | + } | ||
482 | + if (UtilString.isNullOrEmpty(solicitacaoAlcada.getIdentificador())) { | ||
483 | + throw new BusinessException(internacionalizacaoService.getTranslate("SOLICITACAO_ALCADA.ID_ORIGEM_SOLICITACAO", this.getIdioma())+msg, CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue()); | ||
484 | + } | ||
485 | + } | ||
486 | + | ||
487 | + protected void validaSolicitacao(SolicitacaoAlcada solicitacaoAlcada) { | ||
488 | + | ||
489 | + this.validaAtributos(solicitacaoAlcada); | ||
490 | + | ||
491 | + if (!UtilString.isNullOrEmpty(solicitacaoAlcada.getUsernameAprovador())) { | ||
492 | + Usuario aprovador = usuarioService.getUserByUsername(solicitacaoAlcada.getUsernameAprovador()); | ||
493 | + if (!UtilObjeto.isReferencia(aprovador)) { | ||
494 | + throw new BusinessException(internacionalizacaoService.getTranslate("MSG.APROVADOR_NAO_ENCONTRADO", this.getIdioma()), CodigoErro.REGRA_NEGOCIO.getValue()); | ||
495 | + } | ||
496 | + solicitacaoAlcada.setUsuarioAprovador(aprovador); | ||
497 | + } | ||
498 | + | ||
499 | + this.recuperaAlcada(solicitacaoAlcada); | ||
500 | + this.recuperaCentroResultado(solicitacaoAlcada); | ||
501 | + this.recuperaSolicitante(solicitacaoAlcada); | ||
502 | + this.recuperaTipoSolicitacao(solicitacaoAlcada); | ||
503 | + | ||
504 | + this.validaAtributos(solicitacaoAlcada); | ||
505 | + } | ||
506 | + | ||
507 | + protected void atribuiNivelAutoridade(final Alcada alcada, ResponsavelAlcada responsavelAlcada) { | ||
508 | + | ||
509 | + Usuario usuario = null; | ||
510 | + if (UtilObjeto.isReferencia(responsavelAlcada.getUsuario())) { | ||
511 | + usuario = responsavelAlcada.getUsuario(); | ||
512 | + | ||
513 | + // find necessário para resolver problemas na serialização | ||
514 | + responsavelAlcada.setUsuario(usuarioService.find(usuario.getId())); | ||
515 | + | ||
516 | + if (responsavelAlcada.getDelegacao() != null && responsavelAlcada.getDelegacao()) { | ||
517 | + usuario = responsavelAlcada.getCentroResultadoDelegacao().getCentroResultadoResponsavelAlcada().getCentroResultadoResponsavel().getResponsavel().getPessoa().getUsuario(); | ||
518 | + } | ||
519 | + } | ||
520 | + if (usuario != null) { | ||
521 | + for (GrupoUsuario grupoUsuario : usuario.getGrupoUsuarios()) { | ||
522 | + if (!grupoUsuario.isActive()) | ||
523 | + continue; | ||
524 | + | ||
525 | + for (AlcadaNivelAutoridade alcadaNivelAutoridade : alcada.getNiveisAutoridades()) { | ||
526 | + if (!alcadaNivelAutoridade.isActive()) | ||
527 | + continue; | ||
528 | + | ||
529 | + for (NivelAutoridadeGrupo nivelAutoridadeGrupo : alcadaNivelAutoridade.getNivelAutoridade().getGrupos()) { | ||
530 | + if (!nivelAutoridadeGrupo.isActive()) | ||
531 | + continue; | ||
532 | + | ||
533 | + if (nivelAutoridadeGrupo.getGrupo().getId().equals(grupoUsuario.getGrupo().getId())) { | ||
534 | + if (!UtilObjeto.isReferencia(responsavelAlcada.getNivelAutoridade()) || responsavelAlcada.getNivelAutoridade().getHierarquia() > alcadaNivelAutoridade.getNivelAutoridade().getHierarquia()) { | ||
535 | + responsavelAlcada.setNivelAutoridade(alcadaNivelAutoridade.getNivelAutoridade()); | ||
536 | + } | ||
537 | + } | ||
538 | + } | ||
539 | + } | ||
540 | + } | ||
541 | + } | ||
542 | + } | ||
543 | + | ||
544 | + protected void atribuiNivelAutoridade(final Alcada alcada, List<ResponsavelAlcada> responsaveis) { | ||
545 | + | ||
546 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
547 | + this.atribuiNivelAutoridade(alcada, responsavelAlcada); | ||
548 | + } | ||
549 | + } | ||
550 | + | ||
551 | + protected List<ResponsavelAlcada> getResponsaveisCentroResultado(final SolicitacaoAlcada solicitacaoAlcada) { | ||
552 | + | ||
553 | + List<ResponsavelAlcada> responsaveis = new ArrayList<ResponsavelAlcada>(); | ||
554 | + | ||
555 | + for (CentroResultadoResponsavel centroResultadoResponsavel : solicitacaoAlcada.getCentroResultado().getResponsaveis()) { | ||
556 | + if (!centroResultadoResponsavel.isActive()) | ||
557 | + continue; | ||
558 | + | ||
559 | + for (CentroResultadoResponsavelAlcada centroResultadoResponsavelAlcada : centroResultadoResponsavel.getAlcadas()) { | ||
560 | + if (!centroResultadoResponsavelAlcada.isActive()) | ||
561 | + continue; | ||
562 | + | ||
563 | + if (centroResultadoResponsavelAlcada.getAlcada().getId().equals(solicitacaoAlcada.getAlcada().getId())) { | ||
564 | + if (!existeResponsavel(centroResultadoResponsavel.getResponsavel(), responsaveis)) { | ||
565 | + responsaveis.add(new ResponsavelAlcada(solicitacaoAlcada, centroResultadoResponsavel.getResponsavel(), null, null)); | ||
566 | + } | ||
567 | + | ||
568 | + for (CentroResultadoDelegacao centroResultadoDelegacao : centroResultadoResponsavelAlcada.getDelegacoes()) { | ||
569 | + if (( centroResultadoDelegacao.getRevogada() == null || !centroResultadoDelegacao.getRevogada() ) && centroResultadoDelegacao.getDataInicioDelegacao().compareTo(solicitacaoAlcada.getDataReferencia()) <= 0 && centroResultadoDelegacao.getDataFimDelegacao().compareTo(solicitacaoAlcada.getDataReferencia()) >= 0 && !existeResponsavel(centroResultadoDelegacao.getDelegado(), responsaveis)) { | ||
570 | + | ||
571 | + boolean valido = true; | ||
572 | + if (centroResultadoDelegacao.getDominioTipoAbrangenciaDelegacao().getNome().equalsIgnoreCase("ESPECIFICAS")) { | ||
573 | + valido = false; | ||
574 | + for (CentroResultadoDelegacaoRequisicao centroResultadoDelegacaoRequisicao : centroResultadoDelegacao.getRequisicoes()) { | ||
575 | + if (centroResultadoDelegacaoRequisicao.getRequisicao().equals(solicitacaoAlcada.getRequisicaoOrigem())) { | ||
576 | + valido = true; | ||
577 | + break; | ||
578 | + } | ||
579 | + } | ||
580 | + } | ||
581 | + if (valido) { | ||
582 | + // TODO: Descobrir proque o centroResultadoDelegacao causa erro no JSON qdo chamado pelo Citsmart | ||
583 | + responsaveis.add(new ResponsavelAlcada(solicitacaoAlcada, centroResultadoDelegacao.getDelegado(), null, centroResultadoDelegacao)); | ||
584 | + } | ||
585 | + } | ||
586 | + } | ||
587 | + } | ||
588 | + } | ||
589 | + } | ||
590 | + | ||
591 | + this.atribuiNivelAutoridade(solicitacaoAlcada.getAlcada(), responsaveis); | ||
592 | + return responsaveis; | ||
593 | + } | ||
594 | + | ||
595 | + protected boolean existeResponsavel(Colaborador colaborador, List<ResponsavelAlcada> responsaveis) { | ||
596 | + | ||
597 | + boolean result = false; | ||
598 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
599 | + if (responsavelAlcada.getColaborador().getId().equals(colaborador.getId())) { | ||
600 | + result = true; | ||
601 | + break; | ||
602 | + } | ||
603 | + } | ||
604 | + return result; | ||
605 | + } | ||
606 | + | ||
607 | + protected List<LimiteAprovacao> getLimitesAprovacao(SolicitacaoAlcada solicitacaoAlcada) { | ||
608 | + | ||
609 | + List<LimiteAprovacao> limitesAprovacao = new ArrayList<LimiteAprovacao>(); | ||
610 | + | ||
611 | + // Obtem todas as alçadas associadas ao limite | ||
612 | + List<LimiteAprovacaoAlcada> limitesAprovacaoAlcada = limiteAprovacaoAlcadaService.findByAlcada(solicitacaoAlcada.getAlcada()); | ||
613 | + | ||
614 | + if (limitesAprovacaoAlcada != null) { | ||
615 | + // Monta lista dos limites de cada alçada | ||
616 | + for (LimiteAprovacaoAlcada limiteAprovacaoAlcada : limitesAprovacaoAlcada) { | ||
617 | + if (!limitesAprovacao.contains(limiteAprovacaoAlcada.getLimiteAprovacao())) { | ||
618 | + limitesAprovacao.add(limiteAprovacaoAlcada.getLimiteAprovacao()); | ||
619 | + } | ||
620 | + } | ||
621 | + } | ||
622 | + | ||
623 | + // Acumula valores por limite, alçada e nível de autoridade | ||
624 | + for (LimiteAprovacao limiteAprovacao : limitesAprovacao) { | ||
625 | + for (LimiteAprovacaoAlcada limiteAprovacaoAlcada : limiteAprovacao.getAlcadas()) { | ||
626 | + for (LimiteAprovacaoNivelAutoridade limiteAprovacaoNivelAutoridade : limiteAprovacao.getNiveisAutoridades()) { | ||
627 | + this.acumulaValores(solicitacaoAlcada, limiteAprovacaoAlcada.getAlcada(), limiteAprovacao, limiteAprovacaoNivelAutoridade.getNivelAutoridade()); | ||
628 | + } | ||
629 | + } | ||
630 | + } | ||
631 | + | ||
632 | + return limitesAprovacao; | ||
633 | + } | ||
634 | + | ||
635 | + protected void acumulaValores(SolicitacaoAlcada solicitacaoAlcada, Alcada alcada, LimiteAprovacao limiteAprovacao, NivelAutoridade nivelAutoridade) { | ||
636 | + | ||
637 | + if (limiteAprovacao.getDominioTipoLimite().getCodigo().equals(FAIXA_VALOR)) { | ||
638 | + int ano = new Integer(UtilDate.getAno(solicitacaoAlcada.getDataReferencia().getTime())); | ||
639 | + int mes = new Integer(UtilDate.getMes(solicitacaoAlcada.getDataReferencia().getTime())); | ||
640 | + | ||
641 | + Collection<LimiteAprovacaoValor> valores = limiteAprovacao.getLimitesAprovacoesValores(); | ||
642 | + if (valores != null) { | ||
643 | + for (LimiteAprovacaoValor limiteAprovacaoValor : valores) { | ||
644 | + if (!limiteAprovacaoValor.getDominioTipoUtilizacao().getCodigo().equals(solicitacaoAlcada.getTipoUtilizacao().getCodigo())) { | ||
645 | + continue; | ||
646 | + } | ||
647 | + | ||
648 | + float valorAcumulado = 0; | ||
649 | + | ||
650 | + if (!limiteAprovacaoValor.getDominioTipoLimiteValor().getCodigo().equals(INDIVIDUAL)) { | ||
651 | + valorAcumulado = solicitacaoAlcadaDao.getValorAcumulado(ano, limiteAprovacaoValor.getDominioTipoLimiteValor().getCodigo().equals(MENSAL) ? mes : null, alcada, solicitacaoAlcada.getCentroResultado(), solicitacaoAlcada.getTipoUtilizacao(), nivelAutoridade); | ||
652 | + } | ||
653 | + | ||
654 | + limiteAprovacaoValor.adicionaValorAcumulado(nivelAutoridade, valorAcumulado); | ||
655 | + } | ||
656 | + } | ||
657 | + } | ||
658 | + } | ||
659 | + | ||
660 | + protected void validaUsuario(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
661 | + | ||
662 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
663 | + if (!responsavelAlcada.getHabilitado()) | ||
664 | + continue; | ||
665 | + | ||
666 | + if (!UtilObjeto.isReferencia(responsavelAlcada.getUsuario())) { | ||
667 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(USUARIO_NAO_EXISTE)); | ||
668 | + } | ||
669 | + } | ||
670 | + } | ||
671 | + | ||
672 | + protected void validaGrupos(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
673 | + | ||
674 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
675 | + if (!responsavelAlcada.getHabilitado()) | ||
676 | + continue; | ||
677 | + | ||
678 | + if (!UtilObjeto.isReferencia(responsavelAlcada.getNivelAutoridade())) { | ||
679 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(GRUPO_NAO_ASSOCIADO)); | ||
680 | + } | ||
681 | + } | ||
682 | + } | ||
683 | + | ||
684 | + protected void validaLimiteValor(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
685 | + | ||
686 | + for (LimiteAprovacao limiteAprovacao : limitesAprovacao) { | ||
687 | + if (limiteAprovacao.getDominioTipoLimite().getCodigo().equals(FAIXA_VALOR)) { | ||
688 | + for (LimiteAprovacaoValor limiteAprovacaoValor : limiteAprovacao.getLimitesAprovacoesValores()) { | ||
689 | + if (solicitacaoAlcada.getTipoUtilizacao().getCodigo().equals(limiteAprovacaoValor.getDominioTipoUtilizacao().getCodigo())) { | ||
690 | + | ||
691 | + for (ValorAcumulado valorAcumulado : limiteAprovacaoValor.getValoresAcumulados()) { | ||
692 | + double valorRef = 0.0; | ||
693 | + if (limiteAprovacaoValor.getDominioTipoLimiteValor().getCodigo().equals(INDIVIDUAL)) { | ||
694 | + valorRef = solicitacaoAlcada.getValor().doubleValue(); | ||
695 | + } else { | ||
696 | + valorRef = solicitacaoAlcada.getValor().doubleValue() + valorAcumulado.getValor(); | ||
697 | + } | ||
698 | + | ||
699 | + valorAcumulado.setRejeitado(valorRef > limiteAprovacaoValor.getValorLimite().doubleValue()); | ||
700 | + if (valorAcumulado.isRejeitado()) { | ||
701 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
702 | + if (!responsavelAlcada.getHabilitado()) | ||
703 | + continue; | ||
704 | + | ||
705 | + if (responsavelAlcada.getNivelAutoridade().getId().equals(valorAcumulado.getNivelAutoridade().getId())) { | ||
706 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(LIMITE_VALOR)); | ||
707 | + } | ||
708 | + } | ||
709 | + } | ||
710 | + } | ||
711 | + } | ||
712 | + } | ||
713 | + | ||
714 | + } | ||
715 | + } | ||
716 | + } | ||
717 | + | ||
718 | + protected void validaSolicitante(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
719 | + | ||
720 | + if (!UtilObjeto.isReferencia(solicitacaoAlcada.getSolicitante())) | ||
721 | + return; | ||
722 | + | ||
723 | + for (AlcadaNivelAutoridade alcadaNivelAutoridade : solicitacaoAlcada.getAlcada().getNiveisAutoridades()) { | ||
724 | + if (!alcadaNivelAutoridade.isActive()) | ||
725 | + continue; | ||
726 | + | ||
727 | + if (!alcadaNivelAutoridade.getPermiteAprovacaoPropria()) { | ||
728 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
729 | + if (!responsavelAlcada.getHabilitado()) | ||
730 | + continue; | ||
731 | + | ||
732 | + if (responsavelAlcada.getNivelAutoridade().getId().equals(alcadaNivelAutoridade.getNivelAutoridade().getId())) { | ||
733 | + if (responsavelAlcada.getUsuario().getUsername().equalsIgnoreCase(solicitacaoAlcada.getSolicitante().getUsername())) { | ||
734 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(PERMISSAO_AUTORIDADE)); | ||
735 | + } | ||
736 | + } | ||
737 | + } | ||
738 | + } | ||
739 | + } | ||
740 | + } | ||
741 | + | ||
742 | + protected void validaAprovador(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
743 | + | ||
744 | + if (!UtilObjeto.isReferencia(solicitacaoAlcada.getAlcada().getGrupoResponsavel())) | ||
745 | + return; | ||
746 | + | ||
747 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
748 | + if (!responsavelAlcada.getHabilitado()) | ||
749 | + continue; | ||
750 | + | ||
751 | + for (GrupoUsuario grupoUsuario : responsavelAlcada.getUsuario().getGrupoUsuarios()) { | ||
752 | + if (!grupoUsuario.isActive()) | ||
753 | + continue; | ||
754 | + | ||
755 | + if (grupoUsuario.getGrupo().getId().equals(solicitacaoAlcada.getAlcada().getGrupoResponsavel().getId())) { | ||
756 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(PERTENCE_GRUPO_RESPONSAVEL)); | ||
757 | + } | ||
758 | + } | ||
759 | + } | ||
760 | + } | ||
761 | + | ||
762 | + protected void validaHierarquiaSolicitante(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
763 | + | ||
764 | + if (solicitacaoAlcada.getAlcada().getPermiteAprovacaoNivelInferior() == null || solicitacaoAlcada.getAlcada().getPermiteAprovacaoNivelInferior()) | ||
765 | + return; | ||
766 | + | ||
767 | + if (!UtilObjeto.isReferencia(solicitacaoAlcada.getSolicitante())) | ||
768 | + return; | ||
769 | + | ||
770 | + int hierarquia = 0; | ||
771 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
772 | + if (!responsavelAlcada.getUsuario().getUsername().equalsIgnoreCase(solicitacaoAlcada.getSolicitante().getUsername())) | ||
773 | + continue; | ||
774 | + | ||
775 | + hierarquia = responsavelAlcada.getNivelAutoridade().getHierarquia(); | ||
776 | + break; | ||
777 | + } | ||
778 | + | ||
779 | + if (hierarquia > 0) { | ||
780 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
781 | + if (!responsavelAlcada.getHabilitado()) | ||
782 | + continue; | ||
783 | + | ||
784 | + if (responsavelAlcada.getNivelAutoridade().getHierarquia() > hierarquia) { | ||
785 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(HIERARQUIA_SOLICITANTE)); | ||
786 | + } | ||
787 | + } | ||
788 | + } | ||
789 | + } | ||
790 | + | ||
791 | + protected void validaNivelAutoridade(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis, HashMap<Long, Dominio> mapMotivosRejeicao) { | ||
792 | + | ||
793 | + if (solicitacaoAlcada.getAlcada().getSomenteMenorHierarquia() == null || !solicitacaoAlcada.getAlcada().getSomenteMenorHierarquia()) | ||
794 | + return; | ||
795 | + | ||
796 | + int hierarquia = 0; | ||
797 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
798 | + if (!responsavelAlcada.getHabilitado()) | ||
799 | + continue; | ||
800 | + | ||
801 | + if (responsavelAlcada.getNivelAutoridade().getHierarquia() > hierarquia) { | ||
802 | + hierarquia = responsavelAlcada.getNivelAutoridade().getHierarquia(); | ||
803 | + } | ||
804 | + } | ||
805 | + | ||
806 | + for (ResponsavelAlcada responsavelAlcada : responsaveis) { | ||
807 | + if (!responsavelAlcada.getHabilitado()) | ||
808 | + continue; | ||
809 | + | ||
810 | + if (responsavelAlcada.getNivelAutoridade().getHierarquia() < hierarquia) { | ||
811 | + responsavelAlcada.adicionaMotivoRejeicao(mapMotivosRejeicao.get(HIERARQUIA_AUTORIDADE)); | ||
812 | + } | ||
813 | + } | ||
814 | + } | ||
815 | + | ||
816 | + protected void validaResponsaveis(SolicitacaoAlcada solicitacaoAlcada, List<LimiteAprovacao> limitesAprovacao, List<ResponsavelAlcada> responsaveis) { | ||
817 | + | ||
818 | + HashMap<Long, Dominio> mapMotivosRejeicao = new HashMap<Long, Dominio>(); | ||
819 | + Collection<Dominio> motivosRejeicao = dominioService.listarPorChave("motivoRejeicaoAlcada"); | ||
820 | + for (Dominio dominio : motivosRejeicao) { | ||
821 | + mapMotivosRejeicao.put(dominio.getCodigo(), dominio); | ||
822 | + } | ||
823 | + | ||
824 | + this.validaGrupos(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
825 | + this.validaUsuario(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
826 | + this.validaLimiteValor(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
827 | + this.validaSolicitante(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
828 | + this.validaAprovador(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
829 | + this.validaHierarquiaSolicitante(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
830 | + this.validaNivelAutoridade(solicitacaoAlcada, limitesAprovacao, responsaveis, mapMotivosRejeicao); | ||
831 | + } | ||
832 | + | ||
833 | +} |
cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/CentroResultadoDelegacaoValidator.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/CentroResultadoDelegacaoValidator.java | ||
@@ -0,0 +1,55 @@ | @@ -0,0 +1,55 @@ | ||
1 | +package br.com.centralit.api.service.validation; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.CentroResultadoDelegacao; | ||
4 | +import org.springframework.stereotype.Component; | ||
5 | +import org.springframework.validation.Errors; | ||
6 | +import org.springframework.validation.ValidationUtils; | ||
7 | +import org.springframework.validation.Validator; | ||
8 | + | ||
9 | +import br.com.centralit.framework.exception.CodigoErro; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 30/06/2015 - 14:10:06 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +@Component("centroResultadoDelegacaoValidator") | ||
32 | +public class CentroResultadoDelegacaoValidator implements Validator { | ||
33 | + | ||
34 | + @Override | ||
35 | + public boolean supports(Class<?> clazz) { | ||
36 | + | ||
37 | + return CentroResultadoDelegacao.class.isAssignableFrom(clazz); | ||
38 | + } | ||
39 | + | ||
40 | + @Override | ||
41 | + public void validate(Object target, Errors errors) { | ||
42 | + | ||
43 | + ValidationUtils.rejectIfEmpty(errors, "centroResultadoResponsavelAlcada", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALCADA.LABEL.CENTRO_RESULTADO"); | ||
44 | + | ||
45 | + ValidationUtils.rejectIfEmpty(errors, "delegado", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.COLABORADOR"); | ||
46 | + | ||
47 | + ValidationUtils.rejectIfEmpty(errors, "dataInicioDelegacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DATA_INICIO_DELEGACAO"); | ||
48 | + | ||
49 | + ValidationUtils.rejectIfEmpty(errors, "dataFimDelegacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DATA_FIM_DELEGACAO"); | ||
50 | + | ||
51 | + ValidationUtils.rejectIfEmpty(errors, "dominioTipoAbrangenciaDelegacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
52 | + | ||
53 | + } | ||
54 | +} | ||
55 | + |
cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoAlcadaValidator.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoAlcadaValidator.java | ||
@@ -0,0 +1,49 @@ | @@ -0,0 +1,49 @@ | ||
1 | +package br.com.centralit.api.service.validation; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacaoAlcada; | ||
4 | +import org.springframework.stereotype.Component; | ||
5 | +import org.springframework.validation.Errors; | ||
6 | +import org.springframework.validation.ValidationUtils; | ||
7 | +import org.springframework.validation.Validator; | ||
8 | + | ||
9 | +import br.com.centralit.framework.exception.CodigoErro; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 30/06/2015 - 13:55:46 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +@Component("limiteAprovacaoAlcadaValidator") | ||
32 | +public class LimiteAprovacaoAlcadaValidator implements Validator { | ||
33 | + | ||
34 | + @Override | ||
35 | + public boolean supports(Class<?> clazz) { | ||
36 | + | ||
37 | + return LimiteAprovacaoAlcada.class.isAssignableFrom(clazz); | ||
38 | + } | ||
39 | + | ||
40 | + @Override | ||
41 | + public void validate(Object target, Errors errors) { | ||
42 | + | ||
43 | + ValidationUtils.rejectIfEmpty(errors, "alcada", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALCADA.LABEL.ALCADA"); | ||
44 | + | ||
45 | + ValidationUtils.rejectIfEmpty(errors, "limiteAprovacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.LIMITEAPROVACAO"); | ||
46 | + | ||
47 | + } | ||
48 | +} | ||
49 | + |
cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoNivelAutoridadeValidator.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoNivelAutoridadeValidator.java | ||
@@ -0,0 +1,49 @@ | @@ -0,0 +1,49 @@ | ||
1 | +package br.com.centralit.api.service.validation; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacaoNivelAutoridade; | ||
4 | +import org.springframework.stereotype.Component; | ||
5 | +import org.springframework.validation.Errors; | ||
6 | +import org.springframework.validation.ValidationUtils; | ||
7 | +import org.springframework.validation.Validator; | ||
8 | + | ||
9 | +import br.com.centralit.framework.exception.CodigoErro; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 30/06/2015 - 13:56:16 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +@Component("limiteAprovacaoNivelAutoridadeValidator") | ||
32 | +public class LimiteAprovacaoNivelAutoridadeValidator implements Validator { | ||
33 | + | ||
34 | + @Override | ||
35 | + public boolean supports(Class<?> clazz) { | ||
36 | + | ||
37 | + return LimiteAprovacaoNivelAutoridade.class.isAssignableFrom(clazz); | ||
38 | + } | ||
39 | + | ||
40 | + @Override | ||
41 | + public void validate(Object target, Errors errors) { | ||
42 | + | ||
43 | + ValidationUtils.rejectIfEmpty(errors, "limiteAprovacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.LIMITEAPROVACAO"); | ||
44 | + | ||
45 | + ValidationUtils.rejectIfEmpty(errors, "nivelAutoridade", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.NIVELAUTORIDADE"); | ||
46 | + | ||
47 | + } | ||
48 | +} | ||
49 | + |
cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoValidator.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoValidator.java | ||
@@ -0,0 +1,51 @@ | @@ -0,0 +1,51 @@ | ||
1 | +package br.com.centralit.api.service.validation; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacao; | ||
4 | +import org.springframework.stereotype.Component; | ||
5 | +import org.springframework.validation.Errors; | ||
6 | +import org.springframework.validation.ValidationUtils; | ||
7 | +import org.springframework.validation.Validator; | ||
8 | + | ||
9 | +import br.com.centralit.framework.exception.CodigoErro; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 18/06/2015 - 16:57:27 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +@Component("limiteAprovacaoValidator") | ||
32 | +public class LimiteAprovacaoValidator implements Validator { | ||
33 | + | ||
34 | + @Override | ||
35 | + public boolean supports(Class<?> clazz) { | ||
36 | + | ||
37 | + return LimiteAprovacao.class.isAssignableFrom(clazz); | ||
38 | + } | ||
39 | + | ||
40 | + @Override | ||
41 | + public void validate(Object target, Errors errors) { | ||
42 | + | ||
43 | + ValidationUtils.rejectIfEmpty(errors, "identificacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.IDENTIFICACAO"); | ||
44 | + | ||
45 | + ValidationUtils.rejectIfEmpty(errors, "dominioTipoAbrangencia", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
46 | + | ||
47 | + ValidationUtils.rejectIfEmpty(errors, "dominioTipoLimite", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
48 | + | ||
49 | + } | ||
50 | +} | ||
51 | + |
cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoValorValidator.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/LimiteAprovacaoValorValidator.java | ||
@@ -0,0 +1,55 @@ | @@ -0,0 +1,55 @@ | ||
1 | +package br.com.centralit.api.service.validation; | ||
2 | + | ||
3 | +import br.com.centralit.api.model.LimiteAprovacaoValor; | ||
4 | +import org.springframework.stereotype.Component; | ||
5 | +import org.springframework.validation.Errors; | ||
6 | +import org.springframework.validation.ValidationUtils; | ||
7 | +import org.springframework.validation.Validator; | ||
8 | + | ||
9 | +import br.com.centralit.framework.exception.CodigoErro; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 18/06/2015 - 16:56:53 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.ribeiro@centralit.com.br">lucas.ribeiro@centralit.com.br</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +@Component("limiteAprovacaoValorValidator") | ||
32 | +public class LimiteAprovacaoValorValidator implements Validator { | ||
33 | + | ||
34 | + @Override | ||
35 | + public boolean supports(Class<?> clazz) { | ||
36 | + | ||
37 | + return LimiteAprovacaoValor.class.isAssignableFrom(clazz); | ||
38 | + } | ||
39 | + | ||
40 | + @Override | ||
41 | + public void validate(Object target, Errors errors) { | ||
42 | + | ||
43 | + ValidationUtils.rejectIfEmpty(errors, "dominio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
44 | + | ||
45 | + ValidationUtils.rejectIfEmpty(errors, "dominio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
46 | + | ||
47 | + ValidationUtils.rejectIfEmpty(errors, "dominio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
48 | + | ||
49 | + ValidationUtils.rejectIfEmpty(errors, "dominio", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.DOMINIO"); | ||
50 | + | ||
51 | + ValidationUtils.rejectIfEmpty(errors, "valorLimite", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "LABEL.VALORLIMITE"); | ||
52 | + | ||
53 | + } | ||
54 | +} | ||
55 | + |
cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/SolicitacaoAlcadaValidator.java
0 → 100644
1 | +++ a/cit-alcada-api/src/main/java/br/com/centralit/api/service/validation/SolicitacaoAlcadaValidator.java | ||
@@ -0,0 +1,57 @@ | @@ -0,0 +1,57 @@ | ||
1 | +package br.com.centralit.api.service.validation; | ||
2 | + | ||
3 | +import org.springframework.stereotype.Component; | ||
4 | +import org.springframework.validation.Errors; | ||
5 | +import org.springframework.validation.ValidationUtils; | ||
6 | +import org.springframework.validation.Validator; | ||
7 | + | ||
8 | +import br.com.centralit.api.model.SolicitacaoAlcada; | ||
9 | +import br.com.centralit.framework.exception.CodigoErro; | ||
10 | + | ||
11 | +/** | ||
12 | + * <p><img src="http://centralit.com.br/images/logo_central.png"></p> | ||
13 | + * | ||
14 | + * <p><b>Company: </b> Central IT - Governança Corporativa - </p> | ||
15 | + * | ||
16 | + * <p><b>Title: </b></p> | ||
17 | + * | ||
18 | + * <p><b>Description: </b></p> | ||
19 | + * | ||
20 | + * <p><b>Iniciativa(s):</b> <a href="LINK_PORTAL">NUMERO_INICIATIVA</a></p> | ||
21 | + * | ||
22 | + * <p><b>Regra(s) de negócio:</b> <a href="LINK_PORTAL">NUMERO_REGRA_DE_NEGOCIO</a></p> | ||
23 | + * | ||
24 | + * @since 18/06/2015 - 16:56:53 | ||
25 | + * | ||
26 | + * @version 1.0.0 | ||
27 | + * | ||
28 | + * @author lucas.ribeiro - (<a href="mailto:lucas.centralit@gmail.com">lucas.centralit@gmail.com</a>) | ||
29 | + * | ||
30 | + */ | ||
31 | +@Component("solicitacaoAlcadaValidator") | ||
32 | +public class SolicitacaoAlcadaValidator implements Validator { | ||
33 | + | ||
34 | + @Override | ||
35 | + public boolean supports(Class<?> clazz) { | ||
36 | + | ||
37 | + return SolicitacaoAlcada.class.isAssignableFrom(clazz); | ||
38 | + } | ||
39 | + | ||
40 | + @Override | ||
41 | + public void validate(Object target, Errors errors) { | ||
42 | + | ||
43 | + ValidationUtils.rejectIfEmpty(errors, "alcada", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALCADA.LABEL.ALCADA"); | ||
44 | + | ||
45 | + ValidationUtils.rejectIfEmpty(errors, "centroResultado", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "ALCADA.LABEL.CENTRO_RESULTADO"); | ||
46 | + | ||
47 | + ValidationUtils.rejectIfEmpty(errors, "valor", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "SOLICITACAO_ALCADA.VALOR"); | ||
48 | + | ||
49 | + ValidationUtils.rejectIfEmpty(errors, "dataReferencia", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "SOLICITACAO_ALCADA.DATA_REFERENCIA"); | ||
50 | + | ||
51 | + ValidationUtils.rejectIfEmpty(errors, "tipoUtilizacao", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "SOLICITACAO_ALCADA.TIPO_UTILIZACAO"); | ||
52 | + | ||
53 | + ValidationUtils.rejectIfEmpty(errors, "identificador", CodigoErro.VALIDACAO_CAMPOS_OBRIGATORIOS.getValue().toString(), "SOLICITACAO_ALCADA.ID_ORIGEM_SOLICITACAO"); | ||
54 | + | ||
55 | + } | ||
56 | +} | ||
57 | + |