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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 | 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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 @@ |
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 | + | ... | ... |