Commit e13d17c2a346d83dfa76c05dcf92aa43fc87e76d
1 parent
2da88ff4
Exists in
master
Atualizando implementação do login unico, ajustando issues https://softwarepubli…
…co.gov.br/gitlab/prototocolizacao/protocolizacao/issues/1 https://softwarepublico.gov.br/gitlab/prototocolizacao/protocolizacao/issues/2 e https://softwarepublico.gov.br/gitlab/prototocolizacao/protocolizacao/issues/3
Showing
140 changed files
with
2473 additions
and
1972 deletions
Show diff stats
Too many changes.
To preserve performance only 100 of 140 files displayed.
CHANGELOG
@@ -1,62 +0,0 @@ | @@ -1,62 +0,0 @@ | ||
1 | -# CHANGELOG | ||
2 | - | ||
3 | -## 1.2.0 - (27/10/2017) | ||
4 | ---- | ||
5 | -### Features: | ||
6 | -- Quando um protocolo está em analise ele agora está em uma nova tela chamada "ANALISANDO"; | ||
7 | - | ||
8 | -### Bugfixes: | ||
9 | -- Modal quando o usuário visualiza um documento agora com botão de fechar; | ||
10 | -- Melhorado alguns aspectos de segurança; | ||
11 | -- Tamplate do email modificado; | ||
12 | -- Modificado email na home; | ||
13 | -- Adicionado FAVICON; | ||
14 | -- Permitido apenas caixa alta no nome (cadastro); | ||
15 | - | ||
16 | -## 1.1.4 - (20/10/2017) | ||
17 | ---- | ||
18 | -### Features: | ||
19 | - | ||
20 | -- Criando diretório docker e escondendo variáveis de acesso a banco; | ||
21 | -- Adicionando import do certificado; | ||
22 | -- Adição do diretorio docker já com as configurações padrões para integração continua; | ||
23 | - | ||
24 | -### Bugfixes: | ||
25 | - | ||
26 | - | ||
27 | -## 1.1.3 - (13/10/2017) | ||
28 | ---- | ||
29 | -### Features: | ||
30 | -### Bugfixes: | ||
31 | - | ||
32 | -- Ajustando lista de documentos ativos e inativos | ||
33 | - | ||
34 | -## 1.1.2 - (06/10/2017) | ||
35 | ---- | ||
36 | -### Features: | ||
37 | - | ||
38 | -- Ajustes no controle da modal; | ||
39 | -- Validação de data de pesquisa de protocolo; | ||
40 | -- Apresentação do texto de recusa; | ||
41 | - | ||
42 | -### Bugfixes: | ||
43 | - | ||
44 | -- Dinamização do cadastro do tipo de documento; | ||
45 | - | ||
46 | -## 1.1.1 - (02/10/2017) | ||
47 | ---- | ||
48 | -### Features | ||
49 | - | ||
50 | -- Corrigido Texto "Deseja informar protocolo anterior?" atualizado para "Deseja informar o numero do protocolo anterior?"; | ||
51 | -- Corrigido a restrição do documento e do processo. Agora o documento é público e o Processo privado; | ||
52 | - | ||
53 | -### Bugfixes: | ||
54 | - | ||
55 | -- Corrigido bug de envio com duplicidade para o sei quando dois usuários estão analisando o mesmo protocolo; | ||
56 | -- Corrigido bug onde o E-Mail Interessado 1 não estava recebendo email no caso de recusa e de aceite; | ||
57 | - | ||
58 | -## 1.0.0 (25/09/2017) | ||
59 | ---- | ||
60 | -### Features: | ||
61 | - | ||
62 | -- Versão estável do projeto | ||
63 | \ No newline at end of file | 0 | \ No newline at end of file |
docker/Dockerfile
1 | FROM tomcat:8.5.20-jre8-alpine | 1 | FROM tomcat:8.5.20-jre8-alpine |
2 | 2 | ||
3 | -LABEL maintainer="MP/SPO <biblioteca.digital@planejamento.gov.br>" | 3 | +LABEL maintainer="MP/SPO <protocolo@planejamento.gov.br>" |
4 | + | ||
5 | +ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk | ||
6 | + | ||
7 | +ENV JAVA_SECURITY ${JAVA_HOME}/jre/lib/security | ||
8 | + | ||
9 | +ENV JAVA_CACERTS ${JAVA_SECURITY}/cacerts | ||
4 | 10 | ||
5 | -ENV JAVA_CACERTS /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/cacerts | ||
6 | ENV PROTOCOLO_ARQUIVO /opt/protocolo_arquivos | 11 | ENV PROTOCOLO_ARQUIVO /opt/protocolo_arquivos |
7 | -ENV CATALINA_HOME /usr/local/tomcat | ||
8 | -ENV PATH $CATALINA_HOME/bin:$PATH | ||
9 | 12 | ||
10 | -#WORKDIR /root/ | ||
11 | -#RUN mkdir .protocolo-config | ||
12 | -#RUN mkdir -p /root/.protocolo-arquivos/ | 13 | +ENV CATALINA_HOME /usr/local/tomcat |
13 | 14 | ||
14 | -RUN mkdir -p "$CATALINA_HOME" | ||
15 | -RUN mkdir -p "$PROTOCOLO_ARQUIVO" | ||
16 | -RUN mkdir -p $CATALINA_HOME/webapps/META-INF/ | 15 | +ENV PATH $CATALINA_HOME/bin:$PATH |
17 | 16 | ||
18 | WORKDIR $CATALINA_HOME | 17 | WORKDIR $CATALINA_HOME |
19 | 18 | ||
20 | -COPY ./FILES/ICP-Brasilv5.crt /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/ | 19 | +COPY ./FILES/ICP-Brasilv5.crt \ |
20 | + ./FILES/ACSecretariaReceitaFederalBrasilv3.crt \ | ||
21 | + ./FILES/AutoridadeCertificadoraRaizBrasileirav2.crt \ | ||
22 | + ./FILES/AutoridadeCertificadoraSERPRORFBSSL.crt \ | ||
23 | + ./FILES/AutoridadeCertificadoraMDICGOVBR.crt \ | ||
24 | + ${JAVA_SECURITY}/ | ||
25 | + | ||
21 | COPY ./FILES/protocolo.war $CATALINA_HOME/webapps/protocolo.war | 26 | COPY ./FILES/protocolo.war $CATALINA_HOME/webapps/protocolo.war |
22 | -COPY ./FILES/context.xml $CATALINA_HOME/webapps/META-INF/context.xml | ||
23 | -COPY ./FILES/context.xml /usr/local/tomcat/conf/context.xml | 27 | + |
24 | COPY ./FILES/server.xml /usr/local/tomcat/conf/server.xml | 28 | COPY ./FILES/server.xml /usr/local/tomcat/conf/server.xml |
29 | + | ||
25 | COPY ./FILES/web.xml /usr/local/tomcat/conf/web.xml | 30 | COPY ./FILES/web.xml /usr/local/tomcat/conf/web.xml |
26 | 31 | ||
27 | RUN apk --no-cache update \ | 32 | RUN apk --no-cache update \ |
28 | - && apk --no-cache add tzdata zip unzip bzip2 less git net-tools iproute2 vim nano \ | ||
29 | - && rm -f /etc/localtime \ | ||
30 | - && ln -s /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime | 33 | + && apk --no-cache add tzdata vim nano \ |
34 | + && rm -f /etc/localtime \ | ||
35 | + && ln -s /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime | ||
36 | + | ||
37 | +RUN keytool -noprompt -storepass changeit -keystore ${JAVA_CACERTS} -import \ | ||
38 | + -file ${JAVA_SECURITY}/ICP-Brasilv5.crt -alias ICP-Brasilv5 | ||
39 | + | ||
40 | +RUN keytool -noprompt -storepass changeit -keystore ${JAVA_CACERTS} -import \ | ||
41 | + -file ${JAVA_SECURITY}/ACSecretariaReceitaFederalBrasilv3.crt -alias ACSecretariaReceitaFederalBrasilv3 | ||
42 | + | ||
43 | +RUN keytool -noprompt -storepass changeit -keystore ${JAVA_CACERTS} -import \ | ||
44 | + -file ${JAVA_SECURITY}/AutoridadeCertificadoraRaizBrasileirav2.crt -alias AutoridadeCertificadoraRaizBrasileirav2 | ||
45 | + | ||
46 | +RUN keytool -noprompt -storepass changeit -keystore ${JAVA_CACERTS} -import \ | ||
47 | + -file ${JAVA_SECURITY}/AutoridadeCertificadoraSERPRORFBSSL.crt -alias AutoridadeCertificadoraSERPRORFBSSL | ||
48 | + | ||
49 | +RUN keytool -noprompt -storepass changeit -keystore ${JAVA_CACERTS} -import \ | ||
50 | + -file ${JAVA_SECURITY}/AutoridadeCertificadoraMDICGOVBR.crt -alias AutoridadeCertificadoraMDICGOVBR | ||
51 | + | ||
52 | +RUN mkdir -p "$PROTOCOLO_ARQUIVO" | ||
53 | + | ||
54 | +# | ||
55 | +# Ports to expose | ||
56 | +EXPOSE 8080 | ||
31 | 57 | ||
32 | -RUN keytool -noprompt -storepass changeit -keystore ${JAVA_CACERTS} -import -file /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/ICP-Brasilv5.crt -alias ICP-Brasilv5 | ||
33 | \ No newline at end of file | 58 | \ No newline at end of file |
59 | +# | ||
60 | +# Command to run | ||
61 | +CMD ["catalina.sh", "run"] |
docker/FILES/ICP-Brasilv5.crt
@@ -1,38 +0,0 @@ | @@ -1,38 +0,0 @@ | ||
1 | ------BEGIN CERTIFICATE----- | ||
2 | -MIIGoTCCBImgAwIBAgIBATANBgkqhkiG9w0BAQ0FADCBlzELMAkGA1UEBhMCQlIx | ||
3 | -EzARBgNVBAoMCklDUC1CcmFzaWwxPTA7BgNVBAsMNEluc3RpdHV0byBOYWNpb25h | ||
4 | -bCBkZSBUZWNub2xvZ2lhIGRhIEluZm9ybWFjYW8gLSBJVEkxNDAyBgNVBAMMK0F1 | ||
5 | -dG9yaWRhZGUgQ2VydGlmaWNhZG9yYSBSYWl6IEJyYXNpbGVpcmEgdjUwHhcNMTYw | ||
6 | -MzAyMTMwMTM4WhcNMjkwMzAyMjM1OTM4WjCBlzELMAkGA1UEBhMCQlIxEzARBgNV | ||
7 | -BAoMCklDUC1CcmFzaWwxPTA7BgNVBAsMNEluc3RpdHV0byBOYWNpb25hbCBkZSBU | ||
8 | -ZWNub2xvZ2lhIGRhIEluZm9ybWFjYW8gLSBJVEkxNDAyBgNVBAMMK0F1dG9yaWRh | ||
9 | -ZGUgQ2VydGlmaWNhZG9yYSBSYWl6IEJyYXNpbGVpcmEgdjUwggIiMA0GCSqGSIb3 | ||
10 | -DQEBAQUAA4ICDwAwggIKAoICAQD3LXgabUWsF+gUXw/6YODeF2XkqEyfk3VehdsI | ||
11 | -x+3/ERgdjCS/ouxYR0Epi2hdoMUVJDNf3XQfjAWXJyCoTneHYAl2McMdvoqtLB2i | ||
12 | -leQlJiis0fTtYTJayee9BAIdIrCor1Lc0vozXCpDtq5nTwhjIocaZtcuFsdrkl+n | ||
13 | -bfYxl5m7vjTkTMS6j8ffjmFzbNPDlJuV3Vy7AzapPVJrMl6UHPXCHMYMzl0KxR/4 | ||
14 | -7S5XGgmLYkYt8bNCHA3fg07y+Gtvgu+SNhMPwWKIgwhYw+9vErOnavRhOimYo4M2 | ||
15 | -AwNpNK0OKLI7Im5V094jFp4Ty+mlmfQH00k8nkSUEN+1TGGkhv16c2hukbx9iCfb | ||
16 | -mk7im2hGKjQA8eH64VPYoS2qdKbPbd3xDDHN2croYKpy2U2oQTVBSf9hC3o6fKo3 | ||
17 | -zp0U3dNiw7ZgWKS9UwP31Q0gwgB1orZgLuF+LIppHYwxcTG/AovNWa4sTPukMiX2 | ||
18 | -L+p7uIHExTZJJU4YoDacQh/mfbPIz3261He4YFmQ35sfw3eKHQSOLyiVfev/n0l/ | ||
19 | -r308PijEd+d+Hz5RmqIzS8jYXZIeJxym4mEjE1fKpeP56Ea52LlIJ8ZqsJ3xzHWu | ||
20 | -3WkAVz4hMqrX6BPMGW2IxOuEUQyIaCBg1lI6QLiPMHvo2/J7gu4YfqRcH6i27W3H | ||
21 | -yzamEQIDAQABo4H1MIHyME4GA1UdIARHMEUwQwYFYEwBAQAwOjA4BggrBgEFBQcC | ||
22 | -ARYsaHR0cDovL2FjcmFpei5pY3BicmFzaWwuZ292LmJyL0RQQ2FjcmFpei5wZGYw | ||
23 | -PwYDVR0fBDgwNjA0oDKgMIYuaHR0cDovL2FjcmFpei5pY3BicmFzaWwuZ292LmJy | ||
24 | -L0xDUmFjcmFpenY1LmNybDAfBgNVHSMEGDAWgBRpqL512cTvbOcTReRhbuVo+LZA | ||
25 | -XjAdBgNVHQ4EFgQUaai+ddnE72znE0XkYW7laPi2QF4wDwYDVR0TAQH/BAUwAwEB | ||
26 | -/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQENBQADggIBABRt2/JiWapef7o/ | ||
27 | -plhR4PxymlMIp/JeZ5F0BZ1XafmYpl5g6pRokFrIRMFXLyEhlgo51I05InyCc9Td | ||
28 | -6UXjlsOASTc/LRavyjB/8NcQjlRYDh6xf7OdP05mFcT/0+6bYRtNgsnUbr10pfsK | ||
29 | -/UzyUvQWbumGS57hCZrAZOyd9MzukiF/azAa6JfoZk2nDkEudKOY8tRyTpMmDzN5 | ||
30 | -fufPSC3v7tSJUqTqo5z7roN/FmckRzGAYyz5XulbOc5/UsAT/tk+KP/clbbqd/hh | ||
31 | -evmmdJclLr9qWZZcOgzuFU2YsgProtVu0fFNXGr6KK9fu44pOHajmMsTXK3X7r/P | ||
32 | -wh19kFRow5F3RQMUZC6Re0YLfXh+ypnUSCzA+uL4JPtHIGyvkbWiulkustpOKUSV | ||
33 | -wBPzvA2sQUOvqdbAR7C8jcHYFJMuK2HZFji7pxcWWab/NKsFcJ3sluDjmhizpQax | ||
34 | -bYTfAVXu3q8yd0su/BHHhBpteyHvYyyz0Eb9LUysR2cMtWvfPU6vnoPgYvOGO1Cz | ||
35 | -iyGEsgKULkCH4o2Vgl1gQuKWO4V68rFW8a/jvq28sbY+y/Ao0I5ohpnBcQOAawiF | ||
36 | -bz6yJtObajYMuztDDP8oY656EuuJXBJhuKAJPI/7WDtgfV8ffOh/iQGQATVMtgDN | ||
37 | -0gv8bn5NdUX8UMNX1sHhU3H1UpoW | ||
38 | ------END CERTIFICATE----- |
docker/FILES/context.xml
@@ -30,6 +30,7 @@ | @@ -30,6 +30,7 @@ | ||
30 | <Manager pathname="" /> | 30 | <Manager pathname="" /> |
31 | --> | 31 | --> |
32 | 32 | ||
33 | + <!-- | ||
33 | <Resource | 34 | <Resource |
34 | name="jdbc/protocoloDB" | 35 | name="jdbc/protocoloDB" |
35 | auth="Container" | 36 | auth="Container" |
@@ -42,6 +43,7 @@ | @@ -42,6 +43,7 @@ | ||
42 | username="MYSQL_USER" | 43 | username="MYSQL_USER" |
43 | password="MYSQL_PASSWORD" | 44 | password="MYSQL_PASSWORD" |
44 | /> | 45 | /> |
46 | + --> | ||
45 | 47 | ||
46 | <Valve className="org.apache.catalina.authenticator.BasicAuthenticator" | 48 | <Valve className="org.apache.catalina.authenticator.BasicAuthenticator" |
47 | disableProxyCaching="false" | 49 | disableProxyCaching="false" |
protocolo-web-db.sql
@@ -86,7 +86,7 @@ CREATE TABLE `configuracao` ( | @@ -86,7 +86,7 @@ CREATE TABLE `configuracao` ( | ||
86 | 86 | ||
87 | LOCK TABLES `configuracao` WRITE; | 87 | LOCK TABLES `configuracao` WRITE; |
88 | /*!40000 ALTER TABLE `configuracao` DISABLE KEYS */; | 88 | /*!40000 ALTER TABLE `configuracao` DISABLE KEYS */; |
89 | -INSERT INTO `configuracao` VALUES (1,'SMTP_SERVER','10.209.253.28','',1),(2,'SMTP_PORT','25','teste3',1),(3,'MAIL_FROM','xxx@yyy.zzz','',1),(4,'EMAIL_RESPONSAVEL','sss@sssf.com',NULL,1),(9,'URL_AUTORIZAR','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/authorize',NULL,4),(10,'URL_TOKEN','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/token',NULL,4),(11,'URL_DADOS_USUARIO','https://testeservicos-ecidadao.estaleiro.serpro.gov.br/servicos-ecidadao/ecidadao/usuario/getUserInfo/',NULL,4),(12,'CLIENT_ID','516a9b57-d022-4843-a792-93b4dc95622b',NULL,4),(13,'SCOPE','openid',NULL,4),(14,'REDIRECT_URI','https://protocolo.planejamento.gov.br/login',NULL,4),(15,'CLIENT_SECRET','Ld65DuKIva0_EU0LO1VrVC6Be7b-_AsgvkueKpW4OJlhDdJQ4TJ9nKB173M5c5mmG03uhZvEbBKnDRmAe7gZkw',NULL,4),(16,'ESCOPO','dados_brasil_cidadao',NULL,4),(18,'URL_BRASIL_CIDADAO','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/login',NULL,4),(19,'URL_PRIMEIRO_ACESSO','https://testeportal-ecidadao.estaleiro.serpro.gov.br/servicos-cidadao/acesso/#/primeiro-acesso',NULL,4),(20,'STORAGE_PATH','/opt/protocolo_arquivos','teste2',3),(21,'URL_ENDPOINT','https://seitreina.nuvem.gov.br/sei/ws/SeiWS.php','teste4',2),(22,'ASSUNTO_CODIGO_ESTRUTURADO','520.1',NULL,2),(23,'PROCEDIMENTO_ESPECIFICADO','Especificacao do processo',NULL,2),(24,'PROCEDIMENTO_NIVEL_ACESSO','0',NULL,2),(25,'PROCEDIMENTO_ID_TIPO_PROCEDIMENTO','100000346',NULL,2),(26,'DOCUMENTO_TIPO','R',NULL,2),(27,'DOCUMENTO_ID_SERIE','1',NULL,2),(28,'DOCUMENTO_NIVEL_ACESSO','0',NULL,2),(29,'SIGLA_SISTEMA','UNB',NULL,2),(30,'IDENTIFICACAO_SERVICO','testeunb',NULL,2),(31,'ID_UNIDADE','110001972',NULL,2),(32,'CAPTCHA_SITE_KEY','6LdBAVQUAAAAAET4Dun738dTVCWfhqVDuvnDoBAp',NULL,5),(33,'CAPTCHA_SECRET_KEY','6LdBAVQUAAAAAEa3owvd2PBSaOwU8OOPeFwTq13w',NULL,5),(34,'EXP_NUM_PROTOCOLO','03154000244201864','numero do protocolo do sei ',2),(35,'EXP_DESC','teste','descrição',2),(36,'EXP_NOME_PDF','teste.pdf',NULL,2),(37,'EXP_CAMINHO_ARQUIVO','/home/dario/Documentos/123456.pdf',NULL,2),(38,'EXP_SERIE_TIPO','R',NULL,2),(39,'EXP_ID_SERIE','1',NULL,2); | 89 | +INSERT INTO `configuracao` VALUES (1,'SMTP_SERVER',NULL,'ip do servidor de email',1),(2,'SMTP_PORT',NULL,'porta do servidor de email',1),(3,'MAIL_FROM','','email de envio',1),(4,'EMAIL_RESPONSAVEL',NULL,'responsavel por receber os emails de erro',1),(9,'URL_AUTORIZAR',NULL,'url autorizar do login unico /autorizar',4),(10,'URL_TOKEN',NULL,'url /token do portal do software publico',4),(11,'URL_DADOS_USUARIO',NULL,''url /getUserInfo do portal do login unico,4),(12,'CLIENT_ID',NULL,'client id do login unico',4),(13,'SCOPE',NULL,'scope do login unico',4),(14,'REDIRECT_URI',NULL,'URL de retorno do login unico',4),(15,'CLIENT_SECRET',NULL,'chave secreta do login unico',4),(16,'ESCOPO',NULL,'escopo de dados do login unico',4),(18,'URL_BRASIL_CIDADAO',NULL,'URL do login',4),(19,'URL_PRIMEIRO_ACESSO',NULL,'URL para o primeiro acesso',4),(20,'STORAGE_PATH',NULL,'Local no servidor onde será alocado para guardar os arquivos',3),(21,'URL_ENDPOINT',NULL,'Url do sei',2),(22,'ASSUNTO_CODIGO_ESTRUTURADO',NULL,'Código do assunto no sei',2),(23,'PROCEDIMENTO_ESPECIFICADO',NULL,'Expecificação do procesimento no sei',2),(24,'PROCEDIMENTO_NIVEL_ACESSO',NULL,'nivel de aceso no sei',2),(25,'PROCEDIMENTO_ID_TIPO_PROCEDIMENTO',NULL,'Tipo de procedimento no sei',2),(26,'DOCUMENTO_TIPO',NULL,'Tipo de documento no sei',2),(27,'DOCUMENTO_ID_SERIE',NULL,'Id serie do documento no sei',2),(28,'DOCUMENTO_NIVEL_ACESSO',NULL,'nivel de acesso do documento no sei',2),(29,'SIGLA_SISTEMA',NULL,'Sigla do sistema no sei',2),(30,'IDENTIFICACAO_SERVICO',NULL,'Identificação do serviço no sei',2),(31,'ID_UNIDADE',NULL,'Id da unidade no sei',2),(32,'CAPTCHA_SITE_KEY',NULL,'SITE_KEY do serviço de captcha do google',5),(33,'CAPTCHA_SECRET_KEY',NULL,'SECRET_KEY do serviço de captcha do google',5) |
90 | /*!40000 ALTER TABLE `configuracao` ENABLE KEYS */; | 90 | /*!40000 ALTER TABLE `configuracao` ENABLE KEYS */; |
91 | UNLOCK TABLES; | 91 | UNLOCK TABLES; |
92 | 92 |
src/main/java/Sei/TesteIncluirDocumento.java
1 | package Sei; | 1 | package Sei; |
2 | 2 | ||
3 | -import fi.solita.clamav.ClamAVClient; | ||
4 | import org.apache.commons.io.FileUtils; | 3 | import org.apache.commons.io.FileUtils; |
5 | import org.springframework.util.Base64Utils; | 4 | import org.springframework.util.Base64Utils; |
6 | 5 | ||
7 | import java.io.File; | 6 | import java.io.File; |
8 | -import java.io.FileInputStream; | ||
9 | import java.net.URL; | 7 | import java.net.URL; |
10 | import java.text.Normalizer; | 8 | import java.text.Normalizer; |
11 | 9 | ||
@@ -26,20 +24,22 @@ public class TesteIncluirDocumento { | @@ -26,20 +24,22 @@ public class TesteIncluirDocumento { | ||
26 | 24 | ||
27 | System.out.println(part2);*/ | 25 | System.out.println(part2);*/ |
28 | 26 | ||
29 | - ClamAVClient cl = new ClamAVClient("10.209.40.206", 3310); | ||
30 | - final byte[] reply; | ||
31 | - try { | ||
32 | - System.out.println("Tudo limpo."); | ||
33 | - reply = cl.scan(new FileInputStream("/home/dario/Documentos/virus.pdf")); | ||
34 | - | ||
35 | - } catch (Exception e) { | ||
36 | - throw new RuntimeException(e); | ||
37 | - } | ||
38 | - if (!ClamAVClient.isCleanReply(reply)) { | ||
39 | - System.out.println("Virus encontrado."); | ||
40 | - } else { | ||
41 | - System.out.println("Tudo limpo."); | ||
42 | - } | 27 | +// ClamAVClient cl = new ClamAVClient("10.209.40.206", 3310); |
28 | +// final byte[] reply; | ||
29 | +// try { | ||
30 | +// System.out.println("Tudo limpo."); | ||
31 | +// reply = cl.scan(new FileInputStream("/home/dario/Documentos/virus.pdf")); | ||
32 | +// | ||
33 | +// } catch (Exception e) { | ||
34 | +// throw new RuntimeException(e); | ||
35 | +// } | ||
36 | +// if (!ClamAVClient.isCleanReply(reply)) { | ||
37 | +// System.out.println("Virus encontrado."); | ||
38 | +// } else { | ||
39 | +// System.out.println("Tudo limpo."); | ||
40 | +// } | ||
41 | + enviar(); | ||
42 | + | ||
43 | } | 43 | } |
44 | 44 | ||
45 | 45 | ||
@@ -52,11 +52,11 @@ public class TesteIncluirDocumento { | @@ -52,11 +52,11 @@ public class TesteIncluirDocumento { | ||
52 | // System.out.println(path.resolve("PaytoStudy_Student_Guide_HiBonjour_PT.pdf").toFile().getAbsolutePath()); | 52 | // System.out.println(path.resolve("PaytoStudy_Student_Guide_HiBonjour_PT.pdf").toFile().getAbsolutePath()); |
53 | 53 | ||
54 | // | 54 | // |
55 | - URL urlEndpoint = new URL("https://seitreina.nuvem.gov.br/sei/ws/SeiWS.php"); | 55 | + URL urlEndpoint = new URL("http://siphom.fazenda.gov.br/sei/ws/SeiWS.php"); |
56 | SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); | 56 | SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); |
57 | 57 | ||
58 | Assunto assunto = new Assunto(); | 58 | Assunto assunto = new Assunto(); |
59 | - assunto.setCodigoEstruturado("520.1"); //Tipo de assunto | 59 | + assunto.setCodigoEstruturado("900"); //Tipo de assunto |
60 | Assunto[] assuntos = {assunto}; | 60 | Assunto[] assuntos = {assunto}; |
61 | 61 | ||
62 | Procedimento procedimento = new Procedimento(); | 62 | Procedimento procedimento = new Procedimento(); |
@@ -72,33 +72,28 @@ public class TesteIncluirDocumento { | @@ -72,33 +72,28 @@ public class TesteIncluirDocumento { | ||
72 | 72 | ||
73 | procedimento.setObservacao("Obs"); | 73 | procedimento.setObservacao("Obs"); |
74 | procedimento.setNivelAcesso("0"); // 0 = Publico, 1 = Restrito, 2 = Sigiloso | 74 | procedimento.setNivelAcesso("0"); // 0 = Publico, 1 = Restrito, 2 = Sigiloso |
75 | - procedimento.setIdTipoProcedimento("100000346"); // Tipo de Processo => Adesão de atas | ||
76 | -// | ||
77 | -// | ||
78 | -// | ||
79 | -//// | ||
80 | -// Documento[] documentos = {documento}; | ||
81 | -// | ||
82 | -// RetornoGeracaoProcedimento retornoGeracaoProcedimento = seiBindingStub.gerarProcedimento("UNB", | ||
83 | -// "testeunb", | ||
84 | -// "110001972", | ||
85 | -// procedimento, null, | ||
86 | -// null, | ||
87 | -// null, "S", "N", null, null, null, null, null); | ||
88 | -// | ||
89 | -// System.out.println("************ RetornoGeracaoProcedimento = " + retornoGeracaoProcedimento.getProcedimentoFormatado()); | ||
90 | -// System.out.println("************ RetornoGeracaoProcedimento = " + retornoGeracaoProcedimento.getLinkAcesso()); | 75 | + procedimento.setIdTipoProcedimento("100000836"); // Tipo de Processo => Adesão de atas |
76 | + | ||
77 | + RetornoGeracaoProcedimento retornoGeracaoProcedimento = seiBindingStub.gerarProcedimento("PROT_ELETRONICO", | ||
78 | + "ProtocolizacaoEletronica", | ||
79 | + "110000054", | ||
80 | + procedimento, null, | ||
81 | + null, | ||
82 | + null, "S", "N", null, null, null, null, null); | ||
83 | + | ||
84 | + System.out.println("************ RetornoGeracaoProcedimento = " + retornoGeracaoProcedimento.getProcedimentoFormatado()); | ||
85 | + System.out.println("************ RetornoGeracaoProcedimento = " + retornoGeracaoProcedimento.getLinkAcesso()); | ||
91 | 86 | ||
92 | Documento documento = new Documento(); | 87 | Documento documento = new Documento(); |
93 | - documento.setIdProcedimento("03154000037201729"); | 88 | + documento.setIdProcedimento(retornoGeracaoProcedimento.getProcedimentoFormatado()); |
94 | documento.setDescricao("Meu documento 5"); | 89 | documento.setDescricao("Meu documento 5"); |
95 | documento.setNomeArquivo("PaytoStudy_Student_Guide_HiBonjour_PT.pdf"); | 90 | documento.setNomeArquivo("PaytoStudy_Student_Guide_HiBonjour_PT.pdf"); |
96 | - documento.setConteudo(Base64Utils.encodeToString(FileUtils.readFileToByteArray(new File("/home/leonardo/Downloads/PaytoStudy_Student_Guide_HiBonjour_PT.pdf")))); | 91 | + documento.setConteudo(Base64Utils.encodeToString(FileUtils.readFileToByteArray(new File("/home/matheus/teste.pdf")))); |
97 | documento.setTipo("R"); | 92 | documento.setTipo("R"); |
98 | documento.setIdSerie("1"); | 93 | documento.setIdSerie("1"); |
99 | - documento.setData("16/08/2017"); | 94 | + documento.setData("02/04/2019"); |
100 | 95 | ||
101 | - RetornoInclusaoDocumento retornoInclusaoDocumento = seiBindingStub.incluirDocumento("UNB", "testeunb", "110001972", documento); | 96 | + RetornoInclusaoDocumento retornoInclusaoDocumento = seiBindingStub.incluirDocumento("PROT_ELETRONICO", "ProtocolizacaoEletronica", "110000054", documento); |
102 | System.out.println("Link = " + retornoInclusaoDocumento.getLinkAcesso()); | 97 | System.out.println("Link = " + retornoInclusaoDocumento.getLinkAcesso()); |
103 | } | 98 | } |
104 | } | 99 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/clamav/ClamavUtil.java
1 | package br.gov.planejamento.dipla.protocolo.clamav; | 1 | package br.gov.planejamento.dipla.protocolo.clamav; |
2 | 2 | ||
3 | -import fi.solita.clamav.ClamAVClient; | ||
4 | import org.springframework.beans.factory.annotation.Autowired; | 3 | import org.springframework.beans.factory.annotation.Autowired; |
5 | -import org.springframework.context.annotation.PropertySource; | ||
6 | import org.springframework.core.env.Environment; | 4 | import org.springframework.core.env.Environment; |
7 | import org.springframework.stereotype.Component; | 5 | import org.springframework.stereotype.Component; |
8 | 6 |
src/main/java/br/gov/planejamento/dipla/protocolo/config/BrasilCidadaoConfig.java
1 | package br.gov.planejamento.dipla.protocolo.config; | 1 | package br.gov.planejamento.dipla.protocolo.config; |
2 | 2 | ||
3 | -import java.security.KeyManagementException; | ||
4 | -import java.security.NoSuchAlgorithmException; | ||
5 | -import java.security.cert.CertificateException; | ||
6 | -import java.security.cert.X509Certificate; | ||
7 | -import java.util.Base64; | ||
8 | -import java.util.HashMap; | ||
9 | -import java.util.Map; | ||
10 | -import java.util.Random; | ||
11 | - | ||
12 | -import javax.net.ssl.HttpsURLConnection; | ||
13 | -import javax.net.ssl.SSLContext; | ||
14 | -import javax.net.ssl.TrustManager; | ||
15 | -import javax.net.ssl.X509TrustManager; | ||
16 | - | ||
17 | -import org.springframework.beans.factory.annotation.Autowired; | ||
18 | -import org.springframework.context.annotation.PropertySource; | ||
19 | -import org.springframework.core.env.Environment; | ||
20 | -import org.springframework.http.HttpHeaders; | ||
21 | -import org.springframework.http.MediaType; | ||
22 | 3 | ||
23 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | 4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; |
24 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | 5 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; |
25 | - | 6 | +import org.springframework.beans.factory.annotation.Autowired; |
26 | import org.springframework.context.annotation.Bean; | 7 | import org.springframework.context.annotation.Bean; |
27 | import org.springframework.context.annotation.Configuration; | 8 | import org.springframework.context.annotation.Configuration; |
28 | 9 | ||
10 | +import javax.net.ssl.HttpsURLConnection; | ||
11 | +import javax.net.ssl.SSLContext; | ||
12 | +import javax.net.ssl.TrustManager; | ||
13 | +import javax.net.ssl.X509TrustManager; | ||
14 | +import java.net.URLEncoder; | ||
15 | +import java.security.KeyManagementException; | ||
16 | +import java.security.NoSuchAlgorithmException; | ||
17 | +import java.security.cert.CertificateException; | ||
18 | +import java.security.cert.X509Certificate; | ||
19 | +import java.util.Random; | ||
20 | + | ||
29 | 21 | ||
30 | @Configuration | 22 | @Configuration |
31 | //@PropertySource(value = {"file:${HOME}/.protocolo-config/protocolo-brasilCidadao.properties"}) | 23 | //@PropertySource(value = {"file:${HOME}/.protocolo-config/protocolo-brasilCidadao.properties"}) |
@@ -34,86 +26,88 @@ public class BrasilCidadaoConfig { | @@ -34,86 +26,88 @@ public class BrasilCidadaoConfig { | ||
34 | 26 | ||
35 | @Autowired | 27 | @Autowired |
36 | private ConfiguracaoRepository configuracaoRepository; | 28 | private ConfiguracaoRepository configuracaoRepository; |
37 | - | 29 | + |
38 | Random gerador = new Random(); | 30 | Random gerador = new Random(); |
39 | - | ||
40 | - public String gerarUrlAutorizar(){ | ||
41 | - disableSSLCertificateChecking(); | ||
42 | - String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_AUTORIZAR)+"?response_type=code&client_id="+ | ||
43 | - configuracaoRepository.recuperarValor(ConfiguracaoEnum.CLIENT_ID)+"&redirect_uri="+ | ||
44 | - configuracaoRepository.recuperarValor(ConfiguracaoEnum.REDIRECT_URI)+"&nonce="+gerador.hashCode()+ | ||
45 | - "&state="+gerador.hashCode(); | ||
46 | - return url; | ||
47 | - } | ||
48 | - public String gerarUrlToken(){ | ||
49 | - String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_TOKEN); | ||
50 | - return url; | ||
51 | - } | ||
52 | - public String gerarUrlDadosUsuarios(String token){ | ||
53 | - String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_DADOS_USUARIO)+ | ||
54 | - configuracaoRepository.recuperarValor(ConfiguracaoEnum.ESCOPO)+"?access_token="+token; | ||
55 | - return url; | ||
56 | - } | ||
57 | - @Bean(name = "urlBrasilCidadao") | ||
58 | - public UrlBrasilCidadao gerarUrlBrasilCidadao(){ | ||
59 | - String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_BRASIL_CIDADAO); | ||
60 | - return () -> url; | ||
61 | - } | ||
62 | - @Bean(name = "urlPrimeiroAcesso") | ||
63 | - public UrlPrimeiroAcesso gerarUrlPrimeiroAcesso(){ | ||
64 | - String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_PRIMEIRO_ACESSO); | ||
65 | - return () -> url; | ||
66 | - } | ||
67 | - | ||
68 | - public String gerarRequisicaoAtributo(String code){ | ||
69 | - String reqAtr = | ||
70 | - "grant_type=authorization_code&"+ | ||
71 | - "code="+code+"&"+ | ||
72 | - "redirect_uri="+configuracaoRepository.recuperarValor(ConfiguracaoEnum.REDIRECT_URI); | ||
73 | - | ||
74 | - return reqAtr; | ||
75 | - } | ||
76 | - public HttpHeaders gerarRequisicaoHeader(){ | ||
77 | - HttpHeaders headers = new HttpHeaders(); | ||
78 | - headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); | ||
79 | - headers.add(headers.AUTHORIZATION, "Basic "+Base64.getEncoder().encodeToString(( | ||
80 | - configuracaoRepository.recuperarValor(ConfiguracaoEnum.CLIENT_ID)+":"+ | ||
81 | - configuracaoRepository.recuperarValor(ConfiguracaoEnum.CLIENT_SECRET)).getBytes())); | ||
82 | - return headers; | ||
83 | - } | ||
84 | - | ||
85 | - | ||
86 | - private void disableSSLCertificateChecking() { | ||
87 | - TrustManager[] trustAllCerts = new TrustManager[] { | ||
88 | - new X509TrustManager() { | ||
89 | - public X509Certificate[] getAcceptedIssuers() { | ||
90 | - return null; | ||
91 | - } | ||
92 | - @Override | ||
93 | - public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { | ||
94 | - // Not implemented | ||
95 | - } | ||
96 | - @Override public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { | ||
97 | - // Not implemented | ||
98 | - } | ||
99 | - } | ||
100 | - }; | ||
101 | - try { | ||
102 | - SSLContext sc = SSLContext.getInstance("TLS"); | ||
103 | - sc.init(null, trustAllCerts, new java.security.SecureRandom()); | ||
104 | - HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); | ||
105 | - | ||
106 | - } catch (KeyManagementException e) { | ||
107 | - e.printStackTrace(); | ||
108 | - } catch (NoSuchAlgorithmException e) { | ||
109 | - e.printStackTrace(); | ||
110 | - } | ||
111 | - } | ||
112 | - public interface UrlBrasilCidadao { | 31 | + |
32 | + public String gerarUrlAutorizar(){ | ||
33 | + disableSSLCertificateChecking(); | ||
34 | + String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_AUTORIZAR)+"?response_type=code&client_id="+ | ||
35 | + configuracaoRepository.recuperarValor(ConfiguracaoEnum.CLIENT_ID)+ "&scope=" | ||
36 | + + configuracaoRepository.recuperarValor(ConfiguracaoEnum.SCOPE) + "&redirect_uri=" + | ||
37 | + configuracaoRepository.recuperarValor(ConfiguracaoEnum.REDIRECT_URI)+"&nonce="+gerador.hashCode()+ | ||
38 | + "&state="+gerador.hashCode(); | ||
39 | + return url; | ||
40 | + } | ||
41 | + | ||
42 | + @Bean(name = "urlBrasilCidadao") | ||
43 | + public UrlBrasilCidadao gerarUrlBrasilCidadao(){ | ||
44 | + String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_BRASIL_CIDADAO); | ||
45 | + return () -> url; | ||
46 | + } | ||
47 | + @Bean(name = "urlPrimeiroAcesso") | ||
48 | + public UrlPrimeiroAcesso gerarUrlPrimeiroAcesso(){ | ||
49 | + String url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_PRIMEIRO_ACESSO); | ||
50 | + return () -> url; | ||
51 | + } | ||
52 | + | ||
53 | + private void disableSSLCertificateChecking() { | ||
54 | + TrustManager[] trustAllCerts = new TrustManager[] { | ||
55 | + new X509TrustManager() { | ||
56 | + public X509Certificate[] getAcceptedIssuers() { | ||
57 | + return null; | ||
58 | + } | ||
59 | + @Override | ||
60 | + public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { | ||
61 | + // Not implemented | ||
62 | + } | ||
63 | + @Override public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { | ||
64 | + // Not implemented | ||
65 | + } | ||
66 | + } | ||
67 | + }; | ||
68 | + try { | ||
69 | + SSLContext sc = SSLContext.getInstance("TLS"); | ||
70 | + sc.init(null, trustAllCerts, new java.security.SecureRandom()); | ||
71 | + HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); | ||
72 | + | ||
73 | + } catch (KeyManagementException e) { | ||
74 | + e.printStackTrace(); | ||
75 | + } catch (NoSuchAlgorithmException e) { | ||
76 | + e.printStackTrace(); | ||
77 | + } | ||
78 | + } | ||
79 | + public interface UrlBrasilCidadao { | ||
113 | String getUrlBrasilCidadao(); | 80 | String getUrlBrasilCidadao(); |
114 | } | 81 | } |
115 | 82 | ||
116 | - public interface UrlPrimeiroAcesso { | 83 | + public interface UrlPrimeiroAcesso { |
117 | String getUrlPrimeiroAcesso(); | 84 | String getUrlPrimeiroAcesso(); |
118 | } | 85 | } |
86 | + | ||
87 | + public String gerarURLToken(String code){ | ||
88 | + String url = ""; | ||
89 | + try { | ||
90 | + url = configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_TOKEN) + "?grant_type=authorization_code&code=" | ||
91 | + + code + "&redirect_uri=" + URLEncoder.encode(configuracaoRepository.recuperarValor(ConfiguracaoEnum.REDIRECT_URI), "UTF-8") ; | ||
92 | + }catch (Exception e){ | ||
93 | + e.printStackTrace(); | ||
94 | + } | ||
95 | + return url; | ||
96 | + } | ||
97 | + | ||
98 | + public String obterClientSecret(){ | ||
99 | + return configuracaoRepository.recuperarValor(ConfiguracaoEnum.CLIENT_SECRET); | ||
100 | + } | ||
101 | + | ||
102 | + public String obterClientID(){ | ||
103 | + return configuracaoRepository.recuperarValor(ConfiguracaoEnum.CLIENT_ID); | ||
104 | + } | ||
105 | + | ||
106 | + public String obterURLBrasilCidadao(){ | ||
107 | + return configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_BRASIL_CIDADAO); | ||
108 | + } | ||
109 | + | ||
110 | + public String obterURLDadosUsuario(){ | ||
111 | + return configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_DADOS_USUARIO); | ||
112 | + } | ||
119 | } | 113 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/config/MailConfig.java
1 | package br.gov.planejamento.dipla.protocolo.config; | 1 | package br.gov.planejamento.dipla.protocolo.config; |
2 | 2 | ||
3 | +import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
4 | +import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | ||
3 | import org.springframework.beans.factory.annotation.Autowired; | 5 | import org.springframework.beans.factory.annotation.Autowired; |
4 | import org.springframework.context.annotation.Bean; | 6 | import org.springframework.context.annotation.Bean; |
5 | import org.springframework.context.annotation.Configuration; | 7 | import org.springframework.context.annotation.Configuration; |
6 | -import org.springframework.context.annotation.PropertySource; | ||
7 | -import org.springframework.core.env.Environment; | ||
8 | import org.springframework.mail.javamail.JavaMailSender; | 8 | import org.springframework.mail.javamail.JavaMailSender; |
9 | import org.springframework.mail.javamail.JavaMailSenderImpl; | 9 | import org.springframework.mail.javamail.JavaMailSenderImpl; |
10 | 10 | ||
11 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
12 | -import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | ||
13 | - | ||
14 | import java.util.Properties; | 11 | import java.util.Properties; |
15 | 12 | ||
16 | @Configuration | 13 | @Configuration |
src/main/java/br/gov/planejamento/dipla/protocolo/config/SecurityConfig.java
1 | package br.gov.planejamento.dipla.protocolo.config; | 1 | package br.gov.planejamento.dipla.protocolo.config; |
2 | 2 | ||
3 | +import br.gov.planejamento.dipla.protocolo.handler.LogoutBrasilCidadaoHandler; | ||
4 | +import br.gov.planejamento.dipla.protocolo.security.CustomAuthenticationFailureHandler; | ||
3 | import org.springframework.beans.factory.annotation.Autowired; | 5 | import org.springframework.beans.factory.annotation.Autowired; |
4 | import org.springframework.context.annotation.Bean; | 6 | import org.springframework.context.annotation.Bean; |
5 | -import org.springframework.context.annotation.Configuration; | ||
6 | -import org.springframework.core.annotation.Order; | ||
7 | import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; | 7 | import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; |
8 | import org.springframework.security.config.annotation.web.builders.HttpSecurity; | 8 | import org.springframework.security.config.annotation.web.builders.HttpSecurity; |
9 | import org.springframework.security.config.annotation.web.builders.WebSecurity; | 9 | import org.springframework.security.config.annotation.web.builders.WebSecurity; |
@@ -12,14 +12,8 @@ import org.springframework.security.config.annotation.web.configuration.WebSecur | @@ -12,14 +12,8 @@ import org.springframework.security.config.annotation.web.configuration.WebSecur | ||
12 | import org.springframework.security.core.userdetails.UserDetailsService; | 12 | import org.springframework.security.core.userdetails.UserDetailsService; |
13 | import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; | 13 | import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; |
14 | import org.springframework.security.crypto.password.PasswordEncoder; | 14 | import org.springframework.security.crypto.password.PasswordEncoder; |
15 | -import org.springframework.security.web.authentication.AuthenticationFailureHandler; | ||
16 | -import org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint; | ||
17 | -import org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter; | ||
18 | import org.springframework.security.web.util.matcher.AntPathRequestMatcher; | 15 | import org.springframework.security.web.util.matcher.AntPathRequestMatcher; |
19 | 16 | ||
20 | -import br.gov.planejamento.dipla.protocolo.handler.LogoutBrasilCidadaoHandler; | ||
21 | -import br.gov.planejamento.dipla.protocolo.security.CustomAuthenticationFailureHandler; | ||
22 | - | ||
23 | 17 | ||
24 | 18 | ||
25 | /** | 19 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/config/ServiceConfig.java
@@ -7,12 +7,8 @@ import br.gov.planejamento.dipla.protocolo.storage.local.ArquivoStorageLocal; | @@ -7,12 +7,8 @@ import br.gov.planejamento.dipla.protocolo.storage.local.ArquivoStorageLocal; | ||
7 | import org.springframework.beans.factory.annotation.Autowired; | 7 | import org.springframework.beans.factory.annotation.Autowired; |
8 | import org.springframework.context.annotation.Bean; | 8 | import org.springframework.context.annotation.Bean; |
9 | import org.springframework.context.annotation.Configuration; | 9 | import org.springframework.context.annotation.Configuration; |
10 | -import org.springframework.context.annotation.PropertySource; | ||
11 | -import org.springframework.core.env.Environment; | ||
12 | import org.springframework.util.StringUtils; | 10 | import org.springframework.util.StringUtils; |
13 | 11 | ||
14 | -import java.io.IOException; | ||
15 | -import java.nio.file.Files; | ||
16 | import java.nio.file.Path; | 12 | import java.nio.file.Path; |
17 | 13 | ||
18 | import static java.nio.file.FileSystems.getDefault; | 14 | import static java.nio.file.FileSystems.getDefault; |
src/main/java/br/gov/planejamento/dipla/protocolo/controllers/ArquivosController.java
@@ -10,12 +10,9 @@ import br.gov.planejamento.dipla.protocolo.repositories.ArquivosRepository; | @@ -10,12 +10,9 @@ import br.gov.planejamento.dipla.protocolo.repositories.ArquivosRepository; | ||
10 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | 10 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; |
11 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; | 11 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; |
12 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorageRunnable; | 12 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorageRunnable; |
13 | -import org.apache.tomcat.util.threads.ThreadPoolExecutor; | ||
14 | import org.springframework.beans.factory.annotation.Autowired; | 13 | import org.springframework.beans.factory.annotation.Autowired; |
15 | import org.springframework.http.MediaType; | 14 | import org.springframework.http.MediaType; |
16 | import org.springframework.http.ResponseEntity; | 15 | import org.springframework.http.ResponseEntity; |
17 | -import org.springframework.scheduling.config.Task; | ||
18 | -import org.springframework.security.access.method.P; | ||
19 | import org.springframework.web.bind.annotation.*; | 16 | import org.springframework.web.bind.annotation.*; |
20 | import org.springframework.web.context.request.async.DeferredResult; | 17 | import org.springframework.web.context.request.async.DeferredResult; |
21 | import org.springframework.web.multipart.MultipartFile; | 18 | import org.springframework.web.multipart.MultipartFile; |
@@ -23,13 +20,10 @@ import org.springframework.web.servlet.ModelAndView; | @@ -23,13 +20,10 @@ import org.springframework.web.servlet.ModelAndView; | ||
23 | import org.springframework.web.util.UriUtils; | 20 | import org.springframework.web.util.UriUtils; |
24 | 21 | ||
25 | import javax.servlet.http.HttpServletRequest; | 22 | import javax.servlet.http.HttpServletRequest; |
23 | +import java.io.File; | ||
26 | import java.io.IOException; | 24 | import java.io.IOException; |
27 | -import java.net.MalformedURLException; | ||
28 | -import java.net.URLEncoder; | ||
29 | -import java.nio.file.Files; | ||
30 | import java.util.Base64; | 25 | import java.util.Base64; |
31 | import java.util.List; | 26 | import java.util.List; |
32 | -import java.io.*; | ||
33 | 27 | ||
34 | 28 | ||
35 | 29 |
src/main/java/br/gov/planejamento/dipla/protocolo/controllers/ConfiguracaoController.java
1 | package br.gov.planejamento.dipla.protocolo.controllers; | 1 | package br.gov.planejamento.dipla.protocolo.controllers; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig.UrlBrasilCidadao; | ||
4 | import br.gov.planejamento.dipla.protocolo.controllers.page.PageWrapper; | 3 | import br.gov.planejamento.dipla.protocolo.controllers.page.PageWrapper; |
5 | -import br.gov.planejamento.dipla.protocolo.controllers.sessions.ArquivosSession; | ||
6 | -import br.gov.planejamento.dipla.protocolo.dto.ArquivoDTO; | ||
7 | -import br.gov.planejamento.dipla.protocolo.dto.MetadadosDTO; | ||
8 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | 4 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; |
9 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; | 5 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; |
10 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
11 | -import br.gov.planejamento.dipla.protocolo.entities.EmailEnum; | ||
12 | import br.gov.planejamento.dipla.protocolo.entities.Metadado; | 6 | import br.gov.planejamento.dipla.protocolo.entities.Metadado; |
13 | -import br.gov.planejamento.dipla.protocolo.entities.MetadadosEmail; | ||
14 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | ||
15 | -import br.gov.planejamento.dipla.protocolo.entities.StatusEnum; | ||
16 | -import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; | ||
17 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; | 7 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; |
18 | import br.gov.planejamento.dipla.protocolo.repositories.ClassificacaoRepository; | 8 | import br.gov.planejamento.dipla.protocolo.repositories.ClassificacaoRepository; |
19 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoEmailRepository; | 9 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoEmailRepository; |
20 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | 10 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; |
21 | -import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; | ||
22 | -import br.gov.planejamento.dipla.protocolo.repositories.TiposDocumentoRepository; | ||
23 | -import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | ||
24 | import br.gov.planejamento.dipla.protocolo.repositories.filter.ConfiguracaoFilter; | 11 | import br.gov.planejamento.dipla.protocolo.repositories.filter.ConfiguracaoFilter; |
25 | -import br.gov.planejamento.dipla.protocolo.repositories.filter.ProtocoloFilter; | ||
26 | -import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | ||
27 | -import br.gov.planejamento.dipla.protocolo.services.AutoCadastroService; | ||
28 | import br.gov.planejamento.dipla.protocolo.services.ConfiguracaoEmailService; | 12 | import br.gov.planejamento.dipla.protocolo.services.ConfiguracaoEmailService; |
29 | import br.gov.planejamento.dipla.protocolo.services.ConfiguracaoService; | 13 | import br.gov.planejamento.dipla.protocolo.services.ConfiguracaoService; |
30 | -import br.gov.planejamento.dipla.protocolo.services.EnviarProtocoloService; | ||
31 | -import br.gov.planejamento.dipla.protocolo.services.SalvarProtocoloService; | ||
32 | -import br.gov.planejamento.dipla.protocolo.services.UnidadeService; | ||
33 | -import br.gov.planejamento.dipla.protocolo.services.ProtocoloFlagService; | ||
34 | import org.springframework.beans.factory.annotation.Autowired; | 14 | import org.springframework.beans.factory.annotation.Autowired; |
35 | -import org.springframework.beans.factory.annotation.Value; | ||
36 | -import org.springframework.context.annotation.Bean; | ||
37 | import org.springframework.data.domain.Pageable; | 15 | import org.springframework.data.domain.Pageable; |
38 | import org.springframework.data.web.PageableDefault; | 16 | import org.springframework.data.web.PageableDefault; |
39 | -import org.springframework.http.MediaType; | ||
40 | -import org.springframework.http.ResponseEntity; | ||
41 | -import org.springframework.security.core.annotation.AuthenticationPrincipal; | ||
42 | import org.springframework.stereotype.Controller; | 17 | import org.springframework.stereotype.Controller; |
43 | -import org.springframework.util.CollectionUtils; | ||
44 | -import org.springframework.util.StringUtils; | ||
45 | import org.springframework.validation.BindingResult; | 18 | import org.springframework.validation.BindingResult; |
46 | -import org.springframework.web.bind.annotation.*; | 19 | +import org.springframework.web.bind.annotation.GetMapping; |
20 | +import org.springframework.web.bind.annotation.PathVariable; | ||
21 | +import org.springframework.web.bind.annotation.PostMapping; | ||
22 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
47 | import org.springframework.web.servlet.ModelAndView; | 23 | import org.springframework.web.servlet.ModelAndView; |
48 | import org.springframework.web.servlet.mvc.support.RedirectAttributes; | 24 | import org.springframework.web.servlet.mvc.support.RedirectAttributes; |
49 | -import java.util.Optional; | ||
50 | -import br.gov.planejamento.dipla.protocolo.response.Response; | ||
51 | -import br.gov.planejamento.dipla.protocolo.dto.ProtocoloFlagDTO; | ||
52 | 25 | ||
53 | import javax.servlet.http.HttpServletRequest; | 26 | import javax.servlet.http.HttpServletRequest; |
54 | import javax.validation.Valid; | 27 | import javax.validation.Valid; |
55 | - | ||
56 | -import java.util.ArrayList; | ||
57 | -import java.util.Date; | ||
58 | import java.util.Iterator; | 28 | import java.util.Iterator; |
59 | import java.util.List; | 29 | import java.util.List; |
60 | -import java.util.UUID; | ||
61 | -import org.springframework.validation.ObjectError; | ||
62 | 30 | ||
63 | 31 | ||
64 | /** | 32 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/controllers/LoginController.java
1 | package br.gov.planejamento.dipla.protocolo.controllers; | 1 | package br.gov.planejamento.dipla.protocolo.controllers; |
2 | 2 | ||
3 | +import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; | ||
4 | +import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | ||
5 | +import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
6 | +import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
7 | +import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | ||
8 | +import br.gov.planejamento.dipla.protocolo.security.LoginAttemptService; | ||
9 | +import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | ||
10 | +import br.gov.planejamento.dipla.protocolo.services.AutoCadastroService; | ||
11 | +import br.gov.planejamento.dipla.protocolo.services.BrasilCidadaoService; | ||
3 | import org.slf4j.Logger; | 12 | import org.slf4j.Logger; |
4 | import org.slf4j.LoggerFactory; | 13 | import org.slf4j.LoggerFactory; |
5 | import org.springframework.beans.factory.annotation.Autowired; | 14 | import org.springframework.beans.factory.annotation.Autowired; |
6 | import org.springframework.beans.factory.annotation.Value; | 15 | import org.springframework.beans.factory.annotation.Value; |
7 | -import org.springframework.http.HttpEntity; | ||
8 | -import org.springframework.http.HttpMethod; | ||
9 | -import org.springframework.http.ResponseEntity; | ||
10 | -import org.springframework.http.converter.StringHttpMessageConverter; | ||
11 | -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; | ||
12 | -import org.springframework.security.core.GrantedAuthority; | ||
13 | import org.springframework.security.core.annotation.AuthenticationPrincipal; | 16 | import org.springframework.security.core.annotation.AuthenticationPrincipal; |
14 | -import org.springframework.security.core.authority.SimpleGrantedAuthority; | ||
15 | import org.springframework.security.core.context.SecurityContextHolder; | 17 | import org.springframework.security.core.context.SecurityContextHolder; |
16 | import org.springframework.security.core.userdetails.User; | 18 | import org.springframework.security.core.userdetails.User; |
17 | -import org.springframework.security.crypto.password.PasswordEncoder; | ||
18 | import org.springframework.stereotype.Controller; | 19 | import org.springframework.stereotype.Controller; |
19 | -import org.springframework.web.bind.annotation.*; | ||
20 | import org.springframework.web.bind.annotation.GetMapping; | 20 | import org.springframework.web.bind.annotation.GetMapping; |
21 | -import org.springframework.web.bind.annotation.PathVariable; | ||
22 | import org.springframework.web.bind.annotation.RequestMapping; | 21 | import org.springframework.web.bind.annotation.RequestMapping; |
23 | -import org.springframework.web.bind.annotation.RequestMethod; | ||
24 | import org.springframework.web.bind.annotation.RequestParam; | 22 | import org.springframework.web.bind.annotation.RequestParam; |
25 | import org.springframework.web.servlet.ModelAndView; | 23 | import org.springframework.web.servlet.ModelAndView; |
26 | 24 | ||
27 | -import com.fasterxml.jackson.core.JsonParseException; | ||
28 | -import com.fasterxml.jackson.databind.JsonMappingException; | ||
29 | -import com.fasterxml.jackson.databind.ObjectMapper; | ||
30 | - | ||
31 | -import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; | ||
32 | -import br.gov.planejamento.dipla.protocolo.dto.TokenRetornoDto; | ||
33 | -import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | ||
34 | -import br.gov.planejamento.dipla.protocolo.entities.Grupo; | ||
35 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | ||
36 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
37 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
38 | -import br.gov.planejamento.dipla.protocolo.mail.Mailer; | ||
39 | -import br.gov.planejamento.dipla.protocolo.repositories.*; | ||
40 | -import br.gov.planejamento.dipla.protocolo.security.BrasilCidadaoUserDetails; | ||
41 | -import br.gov.planejamento.dipla.protocolo.security.LoginAttemptService; | ||
42 | -import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | ||
43 | -import br.gov.planejamento.dipla.protocolo.services.AutoCadastroService; | ||
44 | -import br.gov.planejamento.dipla.protocolo.services.BrasilCidadaoService; | ||
45 | -import br.gov.planejamento.dipla.protocolo.services.CadastroUsuarioService; | ||
46 | - | ||
47 | -import java.io.IOException; | ||
48 | -import java.nio.charset.Charset; | ||
49 | -import java.util.ArrayList; | ||
50 | -import java.util.Arrays; | ||
51 | -import java.util.Collection; | ||
52 | -import java.util.Enumeration; | ||
53 | -import java.util.HashSet; | 25 | +import javax.servlet.http.HttpServletRequest; |
54 | import java.util.List; | 26 | import java.util.List; |
55 | import java.util.Optional; | 27 | import java.util.Optional; |
56 | -import java.util.Set; | ||
57 | - | ||
58 | - | ||
59 | -import javax.servlet.http.HttpServletRequest; | ||
60 | 28 | ||
61 | /** | 29 | /** |
62 | * @author Leonardo Dias | 30 | * @author Leonardo Dias |
@@ -143,18 +111,21 @@ public class LoginController { | @@ -143,18 +111,21 @@ public class LoginController { | ||
143 | mv.addObject("email",usuarioretorno.getEmail()); | 111 | mv.addObject("email",usuarioretorno.getEmail()); |
144 | 112 | ||
145 | }else if(!usuarioBrasilCidadao.isPresent()) { | 113 | }else if(!usuarioBrasilCidadao.isPresent()) { |
146 | - | ||
147 | - //Primeiro Acesso | ||
148 | - if(!usuarioEmailExistente.isPresent()) { | ||
149 | - autoCadastroService.cadastrarBrasilCidadao(usuarioretorno); | ||
150 | - } | ||
151 | - autoCadastroService.migrarBrasilCidadao(usuarioretorno); | ||
152 | - autoCadastroService.enviarConsiliacaoUsuario(usuarioBrasilCidadao.get(),usuarioretorno.getEmail(),baseUrl); | ||
153 | - mv.addObject("modalConfirmacaoBrasilCidadao",true); | ||
154 | - mv.addObject("email",usuarioretorno.getEmail()); | ||
155 | - } | ||
156 | - | ||
157 | - } | 114 | + |
115 | + Usuario usuario = new Usuario(); | ||
116 | + | ||
117 | + //Primeiro Acesso | ||
118 | + if(!usuarioEmailExistente.isPresent()) { | ||
119 | + usuario = autoCadastroService.cadastrarBrasilCidadao(usuarioretorno); | ||
120 | + }else{ | ||
121 | + usuario = usuarioEmailExistente.get(); | ||
122 | + } | ||
123 | + UsuarioBrasilCidadao usuarioBrasilCidadaoRetorno = autoCadastroService.migrarBrasilCidadao(usuarioretorno, usuario); | ||
124 | + autoCadastroService.enviarConsiliacaoUsuario(usuarioBrasilCidadaoRetorno, usuario.getEmail(),baseUrl); | ||
125 | + mv.addObject("modalConfirmacaoBrasilCidadao",true); | ||
126 | + mv.addObject("email",usuarioretorno.getEmail()); | ||
127 | + } | ||
128 | + } | ||
158 | }catch (Exception e){ | 129 | }catch (Exception e){ |
159 | msgErro=e.getMessage(); | 130 | msgErro=e.getMessage(); |
160 | } | 131 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/controllers/ProtocoloController.java
@@ -3,16 +3,18 @@ package br.gov.planejamento.dipla.protocolo.controllers; | @@ -3,16 +3,18 @@ package br.gov.planejamento.dipla.protocolo.controllers; | ||
3 | import br.gov.planejamento.dipla.protocolo.controllers.page.PageWrapper; | 3 | import br.gov.planejamento.dipla.protocolo.controllers.page.PageWrapper; |
4 | import br.gov.planejamento.dipla.protocolo.controllers.sessions.ArquivosSession; | 4 | import br.gov.planejamento.dipla.protocolo.controllers.sessions.ArquivosSession; |
5 | import br.gov.planejamento.dipla.protocolo.dto.ArquivoDTO; | 5 | import br.gov.planejamento.dipla.protocolo.dto.ArquivoDTO; |
6 | +import br.gov.planejamento.dipla.protocolo.dto.ProtocoloFlagDTO; | ||
6 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | 7 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; |
7 | import br.gov.planejamento.dipla.protocolo.entities.StatusEnum; | 8 | import br.gov.planejamento.dipla.protocolo.entities.StatusEnum; |
8 | import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; | 9 | import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; |
9 | import br.gov.planejamento.dipla.protocolo.repositories.TiposDocumentoRepository; | 10 | import br.gov.planejamento.dipla.protocolo.repositories.TiposDocumentoRepository; |
10 | import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | 11 | import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; |
11 | import br.gov.planejamento.dipla.protocolo.repositories.filter.ProtocoloFilter; | 12 | import br.gov.planejamento.dipla.protocolo.repositories.filter.ProtocoloFilter; |
13 | +import br.gov.planejamento.dipla.protocolo.response.Response; | ||
12 | import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | 14 | import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; |
13 | import br.gov.planejamento.dipla.protocolo.services.*; | 15 | import br.gov.planejamento.dipla.protocolo.services.*; |
16 | +import org.hibernate.service.spi.ServiceException; | ||
14 | import org.springframework.beans.factory.annotation.Autowired; | 17 | import org.springframework.beans.factory.annotation.Autowired; |
15 | -import org.springframework.beans.factory.annotation.Value; | ||
16 | import org.springframework.data.domain.Pageable; | 18 | import org.springframework.data.domain.Pageable; |
17 | import org.springframework.data.web.PageableDefault; | 19 | import org.springframework.data.web.PageableDefault; |
18 | import org.springframework.http.ResponseEntity; | 20 | import org.springframework.http.ResponseEntity; |
@@ -23,391 +25,396 @@ import org.springframework.util.StringUtils; | @@ -23,391 +25,396 @@ import org.springframework.util.StringUtils; | ||
23 | import org.springframework.validation.BindingResult; | 25 | import org.springframework.validation.BindingResult; |
24 | import org.springframework.web.bind.annotation.*; | 26 | import org.springframework.web.bind.annotation.*; |
25 | import org.springframework.web.servlet.ModelAndView; | 27 | import org.springframework.web.servlet.ModelAndView; |
28 | +import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; | ||
26 | import org.springframework.web.servlet.mvc.support.RedirectAttributes; | 29 | import org.springframework.web.servlet.mvc.support.RedirectAttributes; |
27 | 30 | ||
28 | -import java.io.IOException; | ||
29 | -import java.util.Optional; | ||
30 | -import br.gov.planejamento.dipla.protocolo.response.Response; | ||
31 | -import br.gov.planejamento.dipla.protocolo.dto.ProtocoloFlagDTO; | ||
32 | - | ||
33 | import javax.servlet.http.HttpServletRequest; | 31 | import javax.servlet.http.HttpServletRequest; |
34 | import javax.validation.Valid; | 32 | import javax.validation.Valid; |
35 | - | ||
36 | -import java.util.HashMap; | 33 | +import java.io.IOException; |
37 | import java.util.List; | 34 | import java.util.List; |
38 | -import java.util.Map; | 35 | +import java.util.Optional; |
39 | import java.util.UUID; | 36 | import java.util.UUID; |
40 | import java.util.concurrent.CompletableFuture; | 37 | import java.util.concurrent.CompletableFuture; |
41 | 38 | ||
42 | -import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; | ||
43 | - | ||
44 | -import org.hibernate.service.spi.ServiceException; | ||
45 | - | ||
46 | - | ||
47 | /** | 39 | /** |
48 | * @author Leonardo Dias | 40 | * @author Leonardo Dias |
49 | */ | 41 | */ |
50 | @Controller | 42 | @Controller |
51 | public class ProtocoloController { | 43 | public class ProtocoloController { |
52 | 44 | ||
53 | - @Autowired | ||
54 | - private ArquivosSession arquivosSession; | ||
55 | - | ||
56 | - @Autowired | ||
57 | - private TiposDocumentoRepository tipoDocumentoRepository; | ||
58 | - | ||
59 | - @Autowired | ||
60 | - private UsuarioRepository usuarioRepository; | ||
61 | - | ||
62 | - @Autowired | ||
63 | - private ProtocoloRepository protocoloRepository; | ||
64 | - | ||
65 | - @Autowired | ||
66 | - private EnviarProtocoloService enviarProtocoloService; | ||
67 | - | ||
68 | - @Autowired | ||
69 | - private SalvarProtocoloService salvarProtocoloService; | ||
70 | - | ||
71 | - @Autowired | ||
72 | - private UnidadeService unidadeService; | ||
73 | - | ||
74 | - @Autowired | ||
75 | - private ProtocoloFlagService protocoloFlagService; | ||
76 | - | ||
77 | - @Autowired | ||
78 | - private EventServerService eventServerService; | ||
79 | - | ||
80 | - private final int DEFAULT_PAGEABLE_SIZE = 10; | ||
81 | - | ||
82 | - @GetMapping("/") | ||
83 | - public ModelAndView principal(Protocolo protocolo, @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
84 | - List<String> permissoes = usuarioRepository.permissoes(usuarioSistema.getUsuario()); | ||
85 | - if (permissoes.contains("ROLE_CADASTRO") & usuarioSistema.getUsuario().getTemPerfilBrasilCidadao() == null) { | ||
86 | - ModelAndView mv = new ModelAndView("Dashboard"); | ||
87 | - mv.addObject("usuario", usuarioSistema.getUsuario()); | ||
88 | - mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
89 | - mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
90 | - mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
91 | - mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
92 | - mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
93 | - mv.addObject("unidades", unidadeService.obterUnidades()); | ||
94 | - return mv; | ||
95 | - } | ||
96 | - | ||
97 | - return enviar(protocolo, usuarioSistema); | ||
98 | - } | ||
99 | - | ||
100 | - @GetMapping("/pendentes") | ||
101 | - public ModelAndView pesquisaProtocolosPendentes(ProtocoloFilter filter, BindingResult result, @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
102 | - ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosPendentes"); | ||
103 | - filter.setStatus(StatusEnum.PENDENTE); | ||
104 | - PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), httpServletRequest); | ||
105 | - mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
106 | - mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
107 | - mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
108 | - mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
109 | - mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
110 | - mv.addObject("pagina", paginaWrapper); | ||
111 | - return mv; | ||
112 | - } | ||
113 | - | ||
114 | - @GetMapping("/aprovados") | ||
115 | - public ModelAndView pesquisaProtocolosAprovados(ProtocoloFilter filter, BindingResult result, @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
116 | - ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosAprovados"); | ||
117 | - filter.setStatus(StatusEnum.APROVADO); | ||
118 | - PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), httpServletRequest); | ||
119 | - mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
120 | - mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
121 | - mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
122 | - mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
123 | - mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
124 | - mv.addObject("pagina", paginaWrapper); | ||
125 | - return mv; | ||
126 | - } | ||
127 | - | ||
128 | - @GetMapping("/aprovadosManualmente") | ||
129 | - public ModelAndView pesquisaProtocolosAprovadosManualmente(ProtocoloFilter filter, BindingResult result, @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
130 | - ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosAprovadosManualmente"); | ||
131 | - filter.setStatus(StatusEnum.APROVADO_MANUALMENTE); | ||
132 | - PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), httpServletRequest); | ||
133 | - mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
134 | - mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
135 | - mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
136 | - mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
137 | - mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
138 | - mv.addObject("pagina", paginaWrapper); | ||
139 | - return mv; | ||
140 | - } | ||
141 | - | ||
142 | - @GetMapping("/reprovados") | ||
143 | - public ModelAndView pesquisaProtocolosReprovados(ProtocoloFilter filter, BindingResult result, @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
144 | - ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosReprovados"); | ||
145 | - filter.setStatus(StatusEnum.REPROVADO); | ||
146 | - PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), httpServletRequest); | ||
147 | - mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
148 | - mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
149 | - mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
150 | - mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
151 | - mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
152 | - mv.addObject("pagina", paginaWrapper); | ||
153 | - return mv; | ||
154 | - } | ||
155 | - | ||
156 | - @GetMapping("/analisando") | ||
157 | - public ModelAndView pesquisaProtocolosAnalisando(ProtocoloFilter filter, BindingResult result, @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
158 | - ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosAnalisando"); | ||
159 | - filter.setStatus(StatusEnum.ANALISANDO); | ||
160 | - PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), httpServletRequest); | ||
161 | - mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
162 | - mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
163 | - mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
164 | - mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
165 | - mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
166 | - mv.addObject("pagina", paginaWrapper); | ||
167 | - return mv; | ||
168 | - } | ||
169 | - | ||
170 | - @GetMapping("/opcoes") | ||
171 | - public ModelAndView opcoes() { | ||
172 | - return new ModelAndView("/protocolo/OpcoesProtocolo"); | ||
173 | - } | ||
174 | - | ||
175 | - @GetMapping("/enviar") | ||
176 | - public ModelAndView enviar(Protocolo protocolo, @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
177 | - if (StringUtils.isEmpty(protocolo.getUuid())) { | ||
178 | - protocolo.setUuid(UUID.randomUUID().toString()); | ||
179 | - protocolo.setPossuiProtocoloAnterior("N"); | ||
180 | - } | ||
181 | - ModelAndView mv = new ModelAndView("/protocolo/CadastroProtocolo"); | ||
182 | - mv.addObject("usuario", usuarioSistema.getUsuario()); | ||
183 | - mv.addObject("tiposDocumento", tipoDocumentoRepository.findByAtivo(true)); | ||
184 | - mv.addObject("unidades", unidadeService.obterUnidades()); | ||
185 | - return mv; | ||
186 | - } | ||
187 | - | ||
188 | - @PostMapping("/enviar") | ||
189 | - public ModelAndView enviar(@Valid Protocolo protocolo, BindingResult result, RedirectAttributes attributes, @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
190 | - if ("S".equals(protocolo.getPossuiProtocoloAnterior()) && StringUtils.isEmpty(protocolo.getNumeroProtocoloAnterior())) { | ||
191 | - result.rejectValue("numeroProtocoloAnterior", "Número do protocolo Anterior é obrigatório.", "Número do protocolo Anterior é obrigatório."); | ||
192 | - return enviar(protocolo, usuarioSistema); | ||
193 | - } | ||
194 | - | ||
195 | - if (result.hasErrors()) { | ||
196 | - return enviar(protocolo, usuarioSistema); | ||
197 | - } | ||
198 | - | ||
199 | - List<ArquivoDTO> arquivoDTOList = arquivosSession.obterArquivos(protocolo.getUuid()); | ||
200 | - | ||
201 | - if (CollectionUtils.isEmpty(arquivoDTOList)) { | ||
202 | - String msg = "Nenhum arquivo anexado, favor incluir algum arquivo antes de efetuar a protocolização."; | ||
203 | - result.rejectValue("arquivo", msg, msg); | ||
204 | - return enviar(protocolo, usuarioSistema); | ||
205 | - } | ||
206 | - | ||
207 | - protocolo.setUsuario(usuarioSistema.getUsuario()); | ||
208 | - enviarProtocoloService.enviar(protocolo, arquivoDTOList); | ||
209 | - attributes.addFlashAttribute("mensagem", String.format("Protocolo Nº %s salvo com sucesso.", protocolo.getNumero())); | ||
210 | - return new ModelAndView("redirect:/enviar"); | ||
211 | - } | ||
212 | - | ||
213 | - @GetMapping("/meus-protocolos") | ||
214 | - public ModelAndView meusProtocolos(ProtocoloFilter filter, BindingResult result, @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest, @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
215 | - ModelAndView mv = new ModelAndView("protocolo/MeusProtocolos"); | ||
216 | - | ||
217 | - PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrarMeusProtocolos(usuarioSistema.getUsuario(), filter, pageable), httpServletRequest); | ||
218 | - mv.addObject("pagina", paginaWrapper); | ||
219 | - | ||
220 | - return mv; | ||
221 | - } | ||
222 | - | ||
223 | - @GetMapping("/reenvioRecibo/{codigo}") | ||
224 | - public @ResponseBody | ||
225 | - ResponseEntity<?> reenviarRecibo(@PathVariable("codigo") Protocolo protocolo,@RequestParam(value = "email", required = false) String email) { | ||
226 | - enviarProtocoloService.reenviarRecibo(protocolo,email); | ||
227 | - Response<String> response = new Response<String>(); | ||
228 | - String resposta=null; | ||
229 | - if(!email.isEmpty()||email!=null) { | ||
230 | - resposta=email; | ||
231 | - } | ||
232 | - if(!protocolo.getEmail1().isEmpty()&&protocolo.getEmail1()!=null&&protocolo.getEmail1()!="") { | ||
233 | - resposta=resposta+" "+protocolo.getEmail1(); | ||
234 | - } | ||
235 | - if(!protocolo.getEmail2().isEmpty()&&protocolo.getEmail2()!=null&&protocolo.getEmail2()!="") { | ||
236 | - resposta=resposta+" "+protocolo.getEmail2(); | ||
237 | - } | ||
238 | - if(!protocolo.getUsuario().getEmail().isEmpty()&&protocolo.getUsuario().getEmail()!=null&&protocolo.getUsuario().getEmail()!="") { | ||
239 | - resposta=resposta+" "+protocolo.getUsuario().getEmail(); | ||
240 | - } | ||
241 | - response.setData(resposta); | ||
242 | - return ResponseEntity.ok(response); | ||
243 | - } | ||
244 | - | ||
245 | - | ||
246 | - @RequestMapping("/stream") | ||
247 | - public SseEmitter enableNotifier(){ | ||
248 | - //SseEmitter notifier = new SseEmitter(); | ||
249 | - return eventServerService; | ||
250 | - } | ||
251 | - | ||
252 | - @PutMapping("/aprovar/{codigo}") | ||
253 | - public @ResponseBody | ||
254 | - ResponseEntity<?> aprovar(@PathVariable("codigo") Protocolo protocolo, @RequestParam(value = "sei", required = false) String sei, @RequestParam(value = "tipo", required = false) String tipo) { | ||
255 | - //SseEmitter sseEmitter = new SseEmitter(); | ||
256 | - CompletableFuture.supplyAsync( () -> { | ||
257 | - try { | ||
258 | - enviarProtocoloService.enviarSEI( protocolo, sei, tipo ); | ||
259 | - return "Sincronizado com Sucesso !"; | ||
260 | - } catch (ServiceException e) { | ||
261 | - return e.getMessage(); | ||
262 | - } catch (Exception e) { | ||
263 | - return e.getMessage(); | ||
264 | - } | ||
265 | - } ) | ||
266 | - .whenCompleteAsync( (result, throwable) -> { | ||
267 | - try { | ||
268 | - eventServerService.send( result ); | ||
269 | - } catch (IOException e) { | ||
270 | - e.printStackTrace(); | ||
271 | - } | ||
272 | - } ) | ||
273 | - .exceptionally( ex -> { | ||
274 | - try { | ||
275 | - eventServerService.send( ex.getMessage() ); | ||
276 | - } catch (Exception e) { | ||
277 | - e.printStackTrace(); | ||
278 | - } | ||
279 | - return "erro"; | ||
280 | - } ); | ||
281 | - | ||
282 | - return ResponseEntity.ok().build(); | ||
283 | - } | ||
284 | - | ||
285 | - @PutMapping("/aprovarManualmente/{sei}/{codigo}") | ||
286 | - public @ResponseBody | ||
287 | - ResponseEntity<?> aprovarManualmente(@PathVariable("sei") String sei, @PathVariable("codigo") Protocolo protocolo) { | ||
288 | - protocolo.setNupe(sei); | ||
289 | - salvarProtocoloService.aprovarManualmente(protocolo); | ||
290 | - return ResponseEntity.ok().build(); | ||
291 | - } | ||
292 | - | ||
293 | - @GetMapping("/aprovarManualmente/{sei}") | ||
294 | - public ResponseEntity<Response<String>> consultarSei(@PathVariable("sei") String sei) { | ||
295 | - Optional<String> linkSei = enviarProtocoloService.consultarSei(sei); | ||
296 | - Response<String> response = new Response<String>(); | ||
297 | - if (!linkSei.isPresent()) { | ||
298 | - response.getErrors().add("Nº SEI não encontrado: " + sei); | ||
299 | - return ResponseEntity.badRequest().body(response); | ||
300 | - } | ||
301 | - response.setData(linkSei.get()); | ||
302 | - return ResponseEntity.ok(response); | ||
303 | - } | ||
304 | - | ||
305 | - @PutMapping("/reprovar/{codigo}") | ||
306 | - public @ResponseBody | ||
307 | - ResponseEntity<?> reprovar(@PathVariable("codigo") Protocolo protocolo, @RequestBody String observacao) { | ||
308 | - protocolo.setObservacao(observacao); | ||
309 | - enviarProtocoloService.recusar(protocolo); | ||
310 | - return ResponseEntity.ok().build(); | ||
311 | - } | ||
312 | - | ||
313 | - /** | ||
314 | - * atulizado o status de pendente para analise na tabela protocolo | ||
315 | - * | ||
316 | - * @param protocolo | ||
317 | - * @return ResponseEntity | ||
318 | - */ | ||
319 | - @PutMapping("/atualizarFlag/{codigo}") | ||
320 | - public @ResponseBody | ||
321 | - ResponseEntity<?> atualizarflag(@PathVariable("codigo") Protocolo protocolo) { | ||
322 | - salvarProtocoloService.analisando(protocolo); | ||
323 | - return ResponseEntity.ok().build(); | ||
324 | - } | ||
325 | - | ||
326 | - /** | ||
327 | - * atulizado o status para pendente | ||
328 | - * | ||
329 | - * @param protocolo | ||
330 | - * @return ResponseEntity | ||
331 | - */ | ||
332 | - @PutMapping("/atuzalizarFlagPendente/{codigo}") | ||
333 | - public @ResponseBody | ||
334 | - ResponseEntity<?> atuzalizarFlagPendente(@PathVariable("codigo") Protocolo protocolo) { | ||
335 | - salvarProtocoloService.pendente(protocolo); | ||
336 | - return ResponseEntity.ok().build(); | ||
337 | - } | ||
338 | - | ||
339 | - /** | ||
340 | - * método para reprovar o protocolo | ||
341 | - * | ||
342 | - * @param protocolo | ||
343 | - * @return ResponseEntity | ||
344 | - */ | ||
345 | - @PutMapping("/atuzalizarFlagReprovado/{codigo}") | ||
346 | - public @ResponseBody | ||
347 | - ResponseEntity<?> atuzalizarFlagReprovado(@PathVariable("codigo") Protocolo protocolo) { | ||
348 | - salvarProtocoloService.reprovar(protocolo); | ||
349 | - return ResponseEntity.ok().build(); | ||
350 | - } | ||
351 | - | ||
352 | - /** | ||
353 | - * método para retirar o protocolo da análise | ||
354 | - * | ||
355 | - * @param protocolo | ||
356 | - * @return ResponseEntity | ||
357 | - */ | ||
358 | - @PutMapping("/retirarAnalise") | ||
359 | - public @ResponseBody | ||
360 | - ResponseEntity<?> retirarAnalise(@RequestParam("codigo") Protocolo protocolo) { | ||
361 | - salvarProtocoloService.pendente(protocolo); | ||
362 | - return ResponseEntity.ok().build(); | ||
363 | - } | ||
364 | - | ||
365 | - /** | ||
366 | - * método para retirar o protocolo da análise e deixar reprovado | ||
367 | - * | ||
368 | - * @param protocolo | ||
369 | - * @return ResponseEntity | ||
370 | - */ | ||
371 | - @PutMapping("/retirarAnaliseReprovado") | ||
372 | - public @ResponseBody | ||
373 | - ResponseEntity<?> retirarAnaliseReprovado(@RequestParam("codigo") Protocolo protocolo) { | ||
374 | - salvarProtocoloService.reprovar(protocolo); | ||
375 | - return ResponseEntity.ok().build(); | ||
376 | - } | ||
377 | - | ||
378 | - /** | ||
379 | - * busca o status passado o código | ||
380 | - * | ||
381 | - * @param codigo | ||
382 | - * @return ResponseEntity | ||
383 | - */ | ||
384 | - @GetMapping(value = "/buscarFlag/{codigo}") | ||
385 | - public ResponseEntity<Response<ProtocoloFlagDTO>> buscarStatusPorCodigp(@PathVariable("codigo") Long codigo) { | ||
386 | - Response<ProtocoloFlagDTO> response = new Response<ProtocoloFlagDTO>(); | ||
387 | - Optional<Protocolo> protocolo = protocoloFlagService.buscarStatusPorCodigo(codigo); | ||
388 | - | ||
389 | - if (!protocolo.isPresent()) { | ||
390 | - response.getErrors().add("Status não encontrado para o código: " + codigo); | ||
391 | - return ResponseEntity.badRequest().body(response); | ||
392 | - } | ||
393 | - | ||
394 | - response.setData(this.converterProtocoloFlagDto(protocolo.get())); | ||
395 | - return ResponseEntity.ok(response); | ||
396 | - } | ||
397 | - | ||
398 | - /** | ||
399 | - * convertendo a entidade para objeto DTO | ||
400 | - * | ||
401 | - * @param protocolo | ||
402 | - * @return protocoloFlagDTO | ||
403 | - */ | ||
404 | - private ProtocoloFlagDTO converterProtocoloFlagDto(Protocolo protocolo) { | ||
405 | - ProtocoloFlagDTO protocoloFlagDTO = new ProtocoloFlagDTO(); | ||
406 | - protocoloFlagDTO.setStatus(protocolo.getStatus().toString()); | ||
407 | - //protocoloFlagDTO.setObservacao(Optional.of(protocolo.getObservacao().toString())); | ||
408 | - //protocoloFlagDTO.setObservacao().ifPresent(x -> protocolo.getObservacao(x.toString())); | ||
409 | - protocolo.getObservacaoOpt().ifPresent(observacao -> protocoloFlagDTO.setObservacao(Optional.of(observacao.toString()))); | ||
410 | - return protocoloFlagDTO; | ||
411 | - } | 45 | + @Autowired |
46 | + private ArquivosSession arquivosSession; | ||
47 | + | ||
48 | + @Autowired | ||
49 | + private TiposDocumentoRepository tipoDocumentoRepository; | ||
50 | + | ||
51 | + @Autowired | ||
52 | + private UsuarioRepository usuarioRepository; | ||
53 | + | ||
54 | + @Autowired | ||
55 | + private ProtocoloRepository protocoloRepository; | ||
56 | + | ||
57 | + @Autowired | ||
58 | + private EnviarProtocoloService enviarProtocoloService; | ||
59 | + | ||
60 | + @Autowired | ||
61 | + private SalvarProtocoloService salvarProtocoloService; | ||
62 | + | ||
63 | + @Autowired | ||
64 | + private UnidadeService unidadeService; | ||
65 | + | ||
66 | + @Autowired | ||
67 | + private ProtocoloFlagService protocoloFlagService; | ||
68 | + | ||
69 | + @Autowired | ||
70 | + private EventServerService eventServerService; | ||
71 | + | ||
72 | + private final int DEFAULT_PAGEABLE_SIZE = 10; | ||
73 | + | ||
74 | + @GetMapping("/") | ||
75 | + public ModelAndView principal(Protocolo protocolo, @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
76 | + List<String> permissoes = usuarioRepository.permissoes(usuarioSistema.getUsuario()); | ||
77 | + if (permissoes.contains("ROLE_CADASTRO") & usuarioSistema.getUsuario().getTemPerfilBrasilCidadao() == null) { | ||
78 | + ModelAndView mv = new ModelAndView("Dashboard"); | ||
79 | + mv.addObject("usuario", usuarioSistema.getUsuario()); | ||
80 | + mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
81 | + mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
82 | + mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
83 | + mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
84 | + mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
85 | + mv.addObject("unidades", unidadeService.obterUnidades()); | ||
86 | + return mv; | ||
87 | + } | ||
88 | + | ||
89 | + return enviar(protocolo, usuarioSistema); | ||
90 | + } | ||
91 | + | ||
92 | + @GetMapping("/pendentes") | ||
93 | + public ModelAndView pesquisaProtocolosPendentes(ProtocoloFilter filter, BindingResult result, | ||
94 | + @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
95 | + ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosPendentes"); | ||
96 | + filter.setStatus(StatusEnum.PENDENTE); | ||
97 | + PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), | ||
98 | + httpServletRequest); | ||
99 | + mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
100 | + mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
101 | + mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
102 | + mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
103 | + mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
104 | + mv.addObject("pagina", paginaWrapper); | ||
105 | + return mv; | ||
106 | + } | ||
107 | + | ||
108 | + @GetMapping("/aprovados") | ||
109 | + public ModelAndView pesquisaProtocolosAprovados(ProtocoloFilter filter, BindingResult result, | ||
110 | + @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
111 | + ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosAprovados"); | ||
112 | + filter.setStatus(StatusEnum.APROVADO); | ||
113 | + PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), | ||
114 | + httpServletRequest); | ||
115 | + mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
116 | + mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
117 | + mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
118 | + mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
119 | + mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
120 | + mv.addObject("pagina", paginaWrapper); | ||
121 | + return mv; | ||
122 | + } | ||
123 | + | ||
124 | + @GetMapping("/aprovadosManualmente") | ||
125 | + public ModelAndView pesquisaProtocolosAprovadosManualmente(ProtocoloFilter filter, BindingResult result, | ||
126 | + @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
127 | + ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosAprovadosManualmente"); | ||
128 | + filter.setStatus(StatusEnum.APROVADO_MANUALMENTE); | ||
129 | + PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), | ||
130 | + httpServletRequest); | ||
131 | + mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
132 | + mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
133 | + mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
134 | + mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
135 | + mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
136 | + mv.addObject("pagina", paginaWrapper); | ||
137 | + return mv; | ||
138 | + } | ||
139 | + | ||
140 | + @GetMapping("/reprovados") | ||
141 | + public ModelAndView pesquisaProtocolosReprovados(ProtocoloFilter filter, BindingResult result, | ||
142 | + @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
143 | + ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosReprovados"); | ||
144 | + filter.setStatus(StatusEnum.REPROVADO); | ||
145 | + PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), | ||
146 | + httpServletRequest); | ||
147 | + mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
148 | + mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
149 | + mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
150 | + mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
151 | + mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
152 | + mv.addObject("pagina", paginaWrapper); | ||
153 | + return mv; | ||
154 | + } | ||
155 | + | ||
156 | + @GetMapping("/analisando") | ||
157 | + public ModelAndView pesquisaProtocolosAnalisando(ProtocoloFilter filter, BindingResult result, | ||
158 | + @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest) { | ||
159 | + ModelAndView mv = new ModelAndView("protocolo/PesquisaProtocolosAnalisando"); | ||
160 | + filter.setStatus(StatusEnum.ANALISANDO); | ||
161 | + PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>(protocoloRepository.filtrar(filter, pageable), | ||
162 | + httpServletRequest); | ||
163 | + mv.addObject("protocolosAprovados", protocoloRepository.protocolosAprovados()); | ||
164 | + mv.addObject("protocolosAprovadosManualmente", protocoloRepository.protocolosAprovadosManualmente()); | ||
165 | + mv.addObject("protocolosReprovados", protocoloRepository.protocolosReprovados()); | ||
166 | + mv.addObject("protocolosPendentes", protocoloRepository.protocolosPendentes()); | ||
167 | + mv.addObject("protocolosAnalise", protocoloRepository.protocolosAnalisando()); | ||
168 | + mv.addObject("pagina", paginaWrapper); | ||
169 | + return mv; | ||
170 | + } | ||
171 | + | ||
172 | + @GetMapping("/opcoes") | ||
173 | + public ModelAndView opcoes() { | ||
174 | + return new ModelAndView("/protocolo/OpcoesProtocolo"); | ||
175 | + } | ||
176 | + | ||
177 | + @GetMapping("/enviar") | ||
178 | + public ModelAndView enviar(Protocolo protocolo, @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
179 | + if (StringUtils.isEmpty(protocolo.getUuid())) { | ||
180 | + protocolo.setUuid(UUID.randomUUID().toString()); | ||
181 | + protocolo.setPossuiProtocoloAnterior("N"); | ||
182 | + } | ||
183 | + ModelAndView mv = new ModelAndView("/protocolo/CadastroProtocolo"); | ||
184 | + mv.addObject("usuario", usuarioSistema.getUsuario()); | ||
185 | + mv.addObject("tiposDocumento", tipoDocumentoRepository.findByAtivo(true)); | ||
186 | + mv.addObject("unidades", unidadeService.obterUnidades()); | ||
187 | + return mv; | ||
188 | + } | ||
189 | + | ||
190 | + @PostMapping("/enviar") | ||
191 | + public ModelAndView enviar(@Valid Protocolo protocolo, BindingResult result, RedirectAttributes attributes, | ||
192 | + @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
193 | + if ("S".equals(protocolo.getPossuiProtocoloAnterior()) | ||
194 | + && StringUtils.isEmpty(protocolo.getNumeroProtocoloAnterior())) { | ||
195 | + result.rejectValue("numeroProtocoloAnterior", "Número do protocolo Anterior é obrigatório.", | ||
196 | + "Número do protocolo Anterior é obrigatório."); | ||
197 | + return enviar(protocolo, usuarioSistema); | ||
198 | + } | ||
199 | + | ||
200 | + if (result.hasErrors()) { | ||
201 | + return enviar(protocolo, usuarioSistema); | ||
202 | + } | ||
203 | + | ||
204 | + List<ArquivoDTO> arquivoDTOList = arquivosSession.obterArquivos(protocolo.getUuid()); | ||
205 | + | ||
206 | + if (CollectionUtils.isEmpty(arquivoDTOList)) { | ||
207 | + String msg = "Nenhum arquivo anexado, favor incluir algum arquivo antes de efetuar a protocolização."; | ||
208 | + result.rejectValue("arquivo", msg, msg); | ||
209 | + return enviar(protocolo, usuarioSistema); | ||
210 | + } | ||
211 | + | ||
212 | + protocolo.setUsuario(usuarioSistema.getUsuario()); | ||
213 | + enviarProtocoloService.enviar(protocolo, arquivoDTOList); | ||
214 | + attributes.addFlashAttribute("mensagem", | ||
215 | + String.format("Protocolo Nº %s salvo com sucesso.", protocolo.getNumero())); | ||
216 | + return new ModelAndView("redirect:/enviar"); | ||
217 | + } | ||
218 | + | ||
219 | + @GetMapping("/meus-protocolos") | ||
220 | + public ModelAndView meusProtocolos(ProtocoloFilter filter, BindingResult result, | ||
221 | + @PageableDefault(size = DEFAULT_PAGEABLE_SIZE) Pageable pageable, HttpServletRequest httpServletRequest, | ||
222 | + @AuthenticationPrincipal UsuarioSistema usuarioSistema) { | ||
223 | + ModelAndView mv = new ModelAndView("protocolo/MeusProtocolos"); | ||
224 | + | ||
225 | + PageWrapper<Protocolo> paginaWrapper = new PageWrapper<>( | ||
226 | + protocoloRepository.filtrarMeusProtocolos(usuarioSistema.getUsuario(), filter, pageable), | ||
227 | + httpServletRequest); | ||
228 | + mv.addObject("pagina", paginaWrapper); | ||
229 | + | ||
230 | + return mv; | ||
231 | + } | ||
232 | + | ||
233 | + @GetMapping("/reenvioRecibo/{codigo}") | ||
234 | + public @ResponseBody ResponseEntity<?> reenviarRecibo(@PathVariable("codigo") Protocolo protocolo, | ||
235 | + @RequestParam(value = "email", required = false) String email) { | ||
236 | + enviarProtocoloService.reenviarRecibo(protocolo, email); | ||
237 | + Response<String> response = new Response<String>(); | ||
238 | + String resposta = null; | ||
239 | + if (!email.isEmpty() || email != null) { | ||
240 | + resposta = email; | ||
241 | + } | ||
242 | + if (!protocolo.getEmail1().isEmpty() && protocolo.getEmail1() != null && protocolo.getEmail1() != "") { | ||
243 | + resposta = resposta + " " + protocolo.getEmail1(); | ||
244 | + } | ||
245 | + if (!protocolo.getEmail2().isEmpty() && protocolo.getEmail2() != null && protocolo.getEmail2() != "") { | ||
246 | + resposta = resposta + " " + protocolo.getEmail2(); | ||
247 | + } | ||
248 | + if (!protocolo.getUsuario().getEmail().isEmpty() && protocolo.getUsuario().getEmail() != null | ||
249 | + && protocolo.getUsuario().getEmail() != "") { | ||
250 | + resposta = resposta + " " + protocolo.getUsuario().getEmail(); | ||
251 | + } | ||
252 | + response.setData(resposta); | ||
253 | + return ResponseEntity.ok(response); | ||
254 | + } | ||
255 | + | ||
256 | + @RequestMapping("/stream") | ||
257 | + public SseEmitter enableNotifier() { | ||
258 | + // SseEmitter notifier = new SseEmitter(); | ||
259 | + return eventServerService; | ||
260 | + } | ||
261 | + | ||
262 | + @PutMapping("/aprovar/{codigo}") | ||
263 | + public @ResponseBody ResponseEntity<?> aprovar(@PathVariable("codigo") Protocolo protocolo, | ||
264 | + @RequestParam(value = "sei", required = false) String sei, | ||
265 | + @RequestParam(value = "tipo", required = false) String tipo, | ||
266 | + @RequestParam(value = "idSei") String idSei) { | ||
267 | + // SseEmitter sseEmitter = new SseEmitter(); | ||
268 | + CompletableFuture.supplyAsync(() -> { | ||
269 | + try { | ||
270 | + enviarProtocoloService.enviarSEI(protocolo, sei, tipo, idSei); | ||
271 | + return "Sincronizado com Sucesso !"; | ||
272 | + } catch (ServiceException e) { | ||
273 | + return e.getMessage(); | ||
274 | + } catch (Exception e) { | ||
275 | + return e.getMessage(); | ||
276 | + } | ||
277 | + }).whenCompleteAsync((result, throwable) -> { | ||
278 | + try { | ||
279 | + eventServerService.send(result); | ||
280 | + } catch (IOException e) { | ||
281 | + e.printStackTrace(); | ||
282 | + } | ||
283 | + }).exceptionally(ex -> { | ||
284 | + try { | ||
285 | + eventServerService.send(ex.getMessage()); | ||
286 | + } catch (Exception e) { | ||
287 | + e.printStackTrace(); | ||
288 | + } | ||
289 | + return "erro"; | ||
290 | + }); | ||
291 | + | ||
292 | + return ResponseEntity.ok().build(); | ||
293 | + } | ||
294 | + | ||
295 | + @PutMapping("/aprovarManualmente/{sei}/{codigo}") | ||
296 | + public @ResponseBody ResponseEntity<?> aprovarManualmente(@PathVariable("sei") String sei, | ||
297 | + @PathVariable("codigo") Protocolo protocolo) { | ||
298 | + protocolo.setNupe(sei); | ||
299 | + salvarProtocoloService.aprovarManualmente(protocolo); | ||
300 | + return ResponseEntity.ok().build(); | ||
301 | + } | ||
302 | + | ||
303 | + @GetMapping("/aprovarManualmente/{sei}") | ||
304 | + public ResponseEntity<Response<String>> consultarSei(@PathVariable("sei") String sei) { | ||
305 | + Optional<String> linkSei = enviarProtocoloService.consultarSei(sei); | ||
306 | + Response<String> response = new Response<String>(); | ||
307 | + if (!linkSei.isPresent()) { | ||
308 | + response.getErrors().add("Nº SEI não encontrado: " + sei); | ||
309 | + return ResponseEntity.badRequest().body(response); | ||
310 | + } | ||
311 | + response.setData(linkSei.get()); | ||
312 | + return ResponseEntity.ok(response); | ||
313 | + } | ||
314 | + | ||
315 | + @PutMapping("/reprovar/{codigo}") | ||
316 | + public @ResponseBody ResponseEntity<?> reprovar(@PathVariable("codigo") Protocolo protocolo, | ||
317 | + @RequestBody String observacao) { | ||
318 | + protocolo.setObservacao(observacao); | ||
319 | + enviarProtocoloService.recusar(protocolo); | ||
320 | + return ResponseEntity.ok().build(); | ||
321 | + } | ||
322 | + | ||
323 | + /** | ||
324 | + * atulizado o status de pendente para analise na tabela protocolo | ||
325 | + * | ||
326 | + * @param protocolo | ||
327 | + * @return ResponseEntity | ||
328 | + */ | ||
329 | + @PutMapping("/atualizarFlag/{codigo}") | ||
330 | + public @ResponseBody ResponseEntity<?> atualizarflag(@PathVariable("codigo") Protocolo protocolo) { | ||
331 | + salvarProtocoloService.analisando(protocolo); | ||
332 | + return ResponseEntity.ok().build(); | ||
333 | + } | ||
334 | + | ||
335 | + /** | ||
336 | + * atulizado o status para pendente | ||
337 | + * | ||
338 | + * @param protocolo | ||
339 | + * @return ResponseEntity | ||
340 | + */ | ||
341 | + @PutMapping("/atuzalizarFlagPendente/{codigo}") | ||
342 | + public @ResponseBody ResponseEntity<?> atuzalizarFlagPendente(@PathVariable("codigo") Protocolo protocolo) { | ||
343 | + salvarProtocoloService.pendente(protocolo); | ||
344 | + return ResponseEntity.ok().build(); | ||
345 | + } | ||
346 | + | ||
347 | + /** | ||
348 | + * método para reprovar o protocolo | ||
349 | + * | ||
350 | + * @param protocolo | ||
351 | + * @return ResponseEntity | ||
352 | + */ | ||
353 | + @PutMapping("/atuzalizarFlagReprovado/{codigo}") | ||
354 | + public @ResponseBody ResponseEntity<?> atuzalizarFlagReprovado(@PathVariable("codigo") Protocolo protocolo) { | ||
355 | + salvarProtocoloService.reprovar(protocolo); | ||
356 | + return ResponseEntity.ok().build(); | ||
357 | + } | ||
358 | + | ||
359 | + /** | ||
360 | + * método para retirar o protocolo da análise | ||
361 | + * | ||
362 | + * @param protocolo | ||
363 | + * @return ResponseEntity | ||
364 | + */ | ||
365 | + @PutMapping("/retirarAnalise") | ||
366 | + public @ResponseBody ResponseEntity<?> retirarAnalise(@RequestParam("codigo") Protocolo protocolo) { | ||
367 | + salvarProtocoloService.pendente(protocolo); | ||
368 | + return ResponseEntity.ok().build(); | ||
369 | + } | ||
370 | + | ||
371 | + /** | ||
372 | + * método para retirar o protocolo da análise e deixar reprovado | ||
373 | + * | ||
374 | + * @param protocolo | ||
375 | + * @return ResponseEntity | ||
376 | + */ | ||
377 | + @PutMapping("/retirarAnaliseReprovado") | ||
378 | + public @ResponseBody ResponseEntity<?> retirarAnaliseReprovado(@RequestParam("codigo") Protocolo protocolo) { | ||
379 | + salvarProtocoloService.reprovar(protocolo); | ||
380 | + return ResponseEntity.ok().build(); | ||
381 | + } | ||
382 | + | ||
383 | + /** | ||
384 | + * busca o status passado o código | ||
385 | + * | ||
386 | + * @param codigo | ||
387 | + * @return ResponseEntity | ||
388 | + */ | ||
389 | + @GetMapping(value = "/buscarFlag/{codigo}") | ||
390 | + public ResponseEntity<Response<ProtocoloFlagDTO>> buscarStatusPorCodigp(@PathVariable("codigo") Long codigo) { | ||
391 | + Response<ProtocoloFlagDTO> response = new Response<ProtocoloFlagDTO>(); | ||
392 | + Optional<Protocolo> protocolo = protocoloFlagService.buscarStatusPorCodigo(codigo); | ||
393 | + | ||
394 | + if (!protocolo.isPresent()) { | ||
395 | + response.getErrors().add("Status não encontrado para o código: " + codigo); | ||
396 | + return ResponseEntity.badRequest().body(response); | ||
397 | + } | ||
398 | + | ||
399 | + response.setData(this.converterProtocoloFlagDto(protocolo.get())); | ||
400 | + return ResponseEntity.ok(response); | ||
401 | + } | ||
402 | + | ||
403 | + /** | ||
404 | + * convertendo a entidade para objeto DTO | ||
405 | + * | ||
406 | + * @param protocolo | ||
407 | + * @return protocoloFlagDTO | ||
408 | + */ | ||
409 | + private ProtocoloFlagDTO converterProtocoloFlagDto(Protocolo protocolo) { | ||
410 | + ProtocoloFlagDTO protocoloFlagDTO = new ProtocoloFlagDTO(); | ||
411 | + protocoloFlagDTO.setStatus(protocolo.getStatus().toString()); | ||
412 | + // protocoloFlagDTO.setObservacao(Optional.of(protocolo.getObservacao().toString())); | ||
413 | + // protocoloFlagDTO.setObservacao().ifPresent(x -> | ||
414 | + // protocolo.getObservacao(x.toString())); | ||
415 | + protocolo.getObservacaoOpt() | ||
416 | + .ifPresent(observacao -> protocoloFlagDTO.setObservacao(Optional.of(observacao.toString()))); | ||
417 | + return protocoloFlagDTO; | ||
418 | + } | ||
412 | 419 | ||
413 | } | 420 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/controllers/UsuarioController.java
@@ -7,7 +7,6 @@ package br.gov.planejamento.dipla.protocolo.controllers; | @@ -7,7 +7,6 @@ package br.gov.planejamento.dipla.protocolo.controllers; | ||
7 | 7 | ||
8 | import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; | 8 | import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; |
9 | import br.gov.planejamento.dipla.protocolo.controllers.page.PageWrapper; | 9 | import br.gov.planejamento.dipla.protocolo.controllers.page.PageWrapper; |
10 | -import br.gov.planejamento.dipla.protocolo.dto.ProtocoloFlagDTO; | ||
11 | import br.gov.planejamento.dipla.protocolo.entities.Grupo; | 10 | import br.gov.planejamento.dipla.protocolo.entities.Grupo; |
12 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; | 11 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; |
13 | import br.gov.planejamento.dipla.protocolo.repositories.GrupoRepository; | 12 | import br.gov.planejamento.dipla.protocolo.repositories.GrupoRepository; |
src/main/java/br/gov/planejamento/dipla/protocolo/dto/MetadadosDTO.java
@@ -3,18 +3,6 @@ package br.gov.planejamento.dipla.protocolo.dto; | @@ -3,18 +3,6 @@ package br.gov.planejamento.dipla.protocolo.dto; | ||
3 | import lombok.Getter; | 3 | import lombok.Getter; |
4 | import lombok.Setter; | 4 | import lombok.Setter; |
5 | 5 | ||
6 | -import java.util.HashMap; | ||
7 | -import java.util.List; | ||
8 | -import java.util.Map; | ||
9 | -import java.util.Optional; | ||
10 | - | ||
11 | -import javax.persistence.Column; | ||
12 | - | ||
13 | -import org.hibernate.validator.constraints.NotBlank; | ||
14 | -import org.hibernate.validator.constraints.NotEmpty; | ||
15 | - | ||
16 | -import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | ||
17 | - | ||
18 | /** | 6 | /** |
19 | * Created by dario on 29/09/17. | 7 | * Created by dario on 29/09/17. |
20 | */ | 8 | */ |
src/main/java/br/gov/planejamento/dipla/protocolo/dto/ProtocoloFlagDTO.java
@@ -2,8 +2,8 @@ package br.gov.planejamento.dipla.protocolo.dto; | @@ -2,8 +2,8 @@ package br.gov.planejamento.dipla.protocolo.dto; | ||
2 | 2 | ||
3 | import lombok.Getter; | 3 | import lombok.Getter; |
4 | import lombok.Setter; | 4 | import lombok.Setter; |
5 | + | ||
5 | import java.util.Optional; | 6 | import java.util.Optional; |
6 | -import org.hibernate.validator.constraints.NotEmpty; | ||
7 | 7 | ||
8 | /** | 8 | /** |
9 | * Created by dario on 29/09/17. | 9 | * Created by dario on 29/09/17. |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/Arquivos.java
@@ -48,7 +48,7 @@ public class Arquivos implements Serializable { | @@ -48,7 +48,7 @@ public class Arquivos implements Serializable { | ||
48 | @Column(name = "descricao_documento") | 48 | @Column(name = "descricao_documento") |
49 | private String descricaoDocumento; | 49 | private String descricaoDocumento; |
50 | 50 | ||
51 | - @ManyToOne | 51 | + @ManyToOne(fetch=FetchType.EAGER) |
52 | @JoinColumn(name = "codigo_tipo_documento") | 52 | @JoinColumn(name = "codigo_tipo_documento") |
53 | private TiposDocumento tipoDocumento = new TiposDocumento(); | 53 | private TiposDocumento tipoDocumento = new TiposDocumento(); |
54 | 54 |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/Classificacao.java
@@ -29,6 +29,6 @@ public class Classificacao implements Serializable { | @@ -29,6 +29,6 @@ public class Classificacao implements Serializable { | ||
29 | @Column(name = "nome") | 29 | @Column(name = "nome") |
30 | private String nome; | 30 | private String nome; |
31 | 31 | ||
32 | - @OneToMany(mappedBy = "classificacao", cascade = CascadeType.ALL) | 32 | + @OneToMany(mappedBy = "classificacao", cascade = CascadeType.ALL, fetch = FetchType.EAGER) |
33 | private List<Configuracao> configuracoes = new ArrayList<>(); | 33 | private List<Configuracao> configuracoes = new ArrayList<>(); |
34 | } | 34 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/Configuracao.java
1 | package br.gov.planejamento.dipla.protocolo.entities; | 1 | package br.gov.planejamento.dipla.protocolo.entities; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.validation.AtributoConfirmacao; | ||
4 | import lombok.EqualsAndHashCode; | 3 | import lombok.EqualsAndHashCode; |
5 | import lombok.Getter; | 4 | import lombok.Getter; |
6 | import lombok.Setter; | 5 | import lombok.Setter; |
7 | -import org.hibernate.validator.constraints.Email; | ||
8 | -import org.hibernate.validator.constraints.Length; | ||
9 | import org.hibernate.validator.constraints.NotBlank; | 6 | import org.hibernate.validator.constraints.NotBlank; |
10 | 7 | ||
11 | import javax.persistence.*; | 8 | import javax.persistence.*; |
12 | -import javax.validation.constraints.NotNull; | ||
13 | -import javax.validation.constraints.Size; | ||
14 | import java.io.Serializable; | 9 | import java.io.Serializable; |
15 | -import java.util.List; | ||
16 | 10 | ||
17 | /** | 11 | /** |
18 | * | 12 | * |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/ConfiguracaoEmail.java
1 | package br.gov.planejamento.dipla.protocolo.entities; | 1 | package br.gov.planejamento.dipla.protocolo.entities; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.validation.AtributoConfirmacao; | ||
4 | import lombok.EqualsAndHashCode; | 3 | import lombok.EqualsAndHashCode; |
5 | import lombok.Getter; | 4 | import lombok.Getter; |
6 | import lombok.Setter; | 5 | import lombok.Setter; |
7 | -import org.hibernate.validator.constraints.Email; | ||
8 | -import org.hibernate.validator.constraints.Length; | ||
9 | import org.hibernate.validator.constraints.NotBlank; | 6 | import org.hibernate.validator.constraints.NotBlank; |
10 | 7 | ||
11 | import javax.persistence.*; | 8 | import javax.persistence.*; |
12 | -import javax.validation.constraints.NotNull; | ||
13 | -import javax.validation.constraints.Size; | ||
14 | import java.io.Serializable; | 9 | import java.io.Serializable; |
15 | -import java.util.ArrayList; | ||
16 | import java.util.List; | 10 | import java.util.List; |
17 | 11 | ||
18 | /** | 12 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/LogSistema.java
@@ -7,7 +7,6 @@ import lombok.Setter; | @@ -7,7 +7,6 @@ import lombok.Setter; | ||
7 | import javax.persistence.*; | 7 | import javax.persistence.*; |
8 | import java.io.Serializable; | 8 | import java.io.Serializable; |
9 | import java.util.Date; | 9 | import java.util.Date; |
10 | -import java.util.List; | ||
11 | 10 | ||
12 | /** | 11 | /** |
13 | * | 12 | * |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/Metadado.java
@@ -5,10 +5,6 @@ import lombok.Getter; | @@ -5,10 +5,6 @@ import lombok.Getter; | ||
5 | import lombok.Setter; | 5 | import lombok.Setter; |
6 | 6 | ||
7 | import javax.persistence.*; | 7 | import javax.persistence.*; |
8 | -import javax.validation.constraints.NotNull; | ||
9 | - | ||
10 | -import org.hibernate.validator.constraints.NotBlank; | ||
11 | - | ||
12 | import java.io.Serializable; | 8 | import java.io.Serializable; |
13 | import java.util.List; | 9 | import java.util.List; |
14 | 10 |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/Protocolo.java
@@ -5,7 +5,6 @@ import lombok.Getter; | @@ -5,7 +5,6 @@ import lombok.Getter; | ||
5 | import lombok.Setter; | 5 | import lombok.Setter; |
6 | import org.hibernate.annotations.DynamicUpdate; | 6 | import org.hibernate.annotations.DynamicUpdate; |
7 | import org.hibernate.validator.constraints.Email; | 7 | import org.hibernate.validator.constraints.Email; |
8 | -import org.hibernate.validator.constraints.Length; | ||
9 | import org.hibernate.validator.constraints.SafeHtml; | 8 | import org.hibernate.validator.constraints.SafeHtml; |
10 | 9 | ||
11 | import javax.persistence.*; | 10 | import javax.persistence.*; |
@@ -14,7 +13,6 @@ import java.text.SimpleDateFormat; | @@ -14,7 +13,6 @@ import java.text.SimpleDateFormat; | ||
14 | import java.util.ArrayList; | 13 | import java.util.ArrayList; |
15 | import java.util.Date; | 14 | import java.util.Date; |
16 | import java.util.List; | 15 | import java.util.List; |
17 | -import javax.persistence.Transient; | ||
18 | import java.util.Optional; | 16 | import java.util.Optional; |
19 | 17 | ||
20 | /** | 18 | /** |
@@ -37,6 +35,10 @@ public class Protocolo implements Serializable { | @@ -37,6 +35,10 @@ public class Protocolo implements Serializable { | ||
37 | 35 | ||
38 | @Transient | 36 | @Transient |
39 | private String linkNup; | 37 | private String linkNup; |
38 | + | ||
39 | + @Transient | ||
40 | + private String idSei; | ||
41 | + | ||
40 | @Transient | 42 | @Transient |
41 | private static final String urlNup = ""; | 43 | private static final String urlNup = ""; |
42 | 44 |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/TiposDocumento.java
@@ -11,7 +11,6 @@ import lombok.Setter; | @@ -11,7 +11,6 @@ import lombok.Setter; | ||
11 | import org.hibernate.validator.constraints.NotBlank; | 11 | import org.hibernate.validator.constraints.NotBlank; |
12 | 12 | ||
13 | import javax.persistence.*; | 13 | import javax.persistence.*; |
14 | -import javax.validation.constraints.NotNull; | ||
15 | import java.io.Serializable; | 14 | import java.io.Serializable; |
16 | 15 | ||
17 | /** | 16 | /** |
@@ -35,9 +34,15 @@ public class TiposDocumento implements Serializable { | @@ -35,9 +34,15 @@ public class TiposDocumento implements Serializable { | ||
35 | @NotBlank(message = "O campo descrição é de preenchimento obrigatório") | 34 | @NotBlank(message = "O campo descrição é de preenchimento obrigatório") |
36 | private String descricao; | 35 | private String descricao; |
37 | 36 | ||
38 | - @NotBlank(message = "O campo código é de preenchimento obrigatório") | 37 | + //@NotBlank(message = "O campo código é de preenchimento obrigatório") |
39 | @Column(name = "codigo_sei") | 38 | @Column(name = "codigo_sei") |
40 | private String codigoSei; | 39 | private String codigoSei; |
40 | + | ||
41 | + @Column(name = "codigo_sei_mf") | ||
42 | + private String codigoSeiMf; | ||
43 | + | ||
44 | + @Column(name = "codigo_sei_mdic") | ||
45 | + private String codigoSeiMdic; | ||
41 | 46 | ||
42 | private Boolean ativo; | 47 | private Boolean ativo; |
43 | 48 |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/Usuario.java
1 | package br.gov.planejamento.dipla.protocolo.entities; | 1 | package br.gov.planejamento.dipla.protocolo.entities; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.validation.AtributoConfirmacao; | 3 | import br.gov.planejamento.dipla.protocolo.validation.AtributoConfirmacao; |
4 | +import lombok.AccessLevel; | ||
4 | import lombok.EqualsAndHashCode; | 5 | import lombok.EqualsAndHashCode; |
5 | import lombok.Getter; | 6 | import lombok.Getter; |
6 | import lombok.Setter; | 7 | import lombok.Setter; |
@@ -8,14 +9,12 @@ import org.hibernate.validator.constraints.Email; | @@ -8,14 +9,12 @@ import org.hibernate.validator.constraints.Email; | ||
8 | import org.hibernate.validator.constraints.Length; | 9 | import org.hibernate.validator.constraints.Length; |
9 | import org.hibernate.validator.constraints.NotBlank; | 10 | import org.hibernate.validator.constraints.NotBlank; |
10 | import org.hibernate.validator.constraints.SafeHtml; | 11 | import org.hibernate.validator.constraints.SafeHtml; |
11 | -import org.springframework.util.StringUtils; | ||
12 | 12 | ||
13 | import javax.persistence.*; | 13 | import javax.persistence.*; |
14 | import javax.validation.constraints.NotNull; | 14 | import javax.validation.constraints.NotNull; |
15 | import javax.validation.constraints.Size; | 15 | import javax.validation.constraints.Size; |
16 | import java.io.Serializable; | 16 | import java.io.Serializable; |
17 | import java.util.List; | 17 | import java.util.List; |
18 | -import lombok.AccessLevel; | ||
19 | 18 | ||
20 | /** | 19 | /** |
21 | * | 20 | * |
src/main/java/br/gov/planejamento/dipla/protocolo/entities/UsuarioBrasilCidadao.java
1 | package br.gov.planejamento.dipla.protocolo.entities; | 1 | package br.gov.planejamento.dipla.protocolo.entities; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.validation.AtributoConfirmacao; | ||
4 | import lombok.EqualsAndHashCode; | 3 | import lombok.EqualsAndHashCode; |
5 | import lombok.Getter; | 4 | import lombok.Getter; |
6 | import lombok.Setter; | 5 | import lombok.Setter; |
7 | -import org.hibernate.validator.constraints.Email; | ||
8 | -import org.hibernate.validator.constraints.Length; | ||
9 | import org.hibernate.validator.constraints.NotBlank; | 6 | import org.hibernate.validator.constraints.NotBlank; |
10 | 7 | ||
11 | import javax.persistence.*; | 8 | import javax.persistence.*; |
12 | -import javax.validation.constraints.NotNull; | ||
13 | import javax.validation.constraints.Size; | 9 | import javax.validation.constraints.Size; |
14 | import java.io.Serializable; | 10 | import java.io.Serializable; |
15 | -import java.util.List; | ||
16 | 11 | ||
17 | /** | 12 | /** |
18 | * | 13 | * |
src/main/java/br/gov/planejamento/dipla/protocolo/handler/LogoutBrasilCidadaoHandler.java
1 | package br.gov.planejamento.dipla.protocolo.handler; | 1 | package br.gov.planejamento.dipla.protocolo.handler; |
2 | 2 | ||
3 | -import java.io.IOException; | ||
4 | - | ||
5 | -import javax.servlet.ServletException; | ||
6 | -import javax.servlet.http.HttpServletRequest; | ||
7 | -import javax.servlet.http.HttpServletResponse; | ||
8 | - | 3 | +import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; |
9 | import org.springframework.beans.factory.annotation.Autowired; | 4 | import org.springframework.beans.factory.annotation.Autowired; |
10 | import org.springframework.http.HttpStatus; | 5 | import org.springframework.http.HttpStatus; |
11 | import org.springframework.security.core.Authentication; | 6 | import org.springframework.security.core.Authentication; |
12 | import org.springframework.security.web.authentication.logout.LogoutSuccessHandler; | 7 | import org.springframework.security.web.authentication.logout.LogoutSuccessHandler; |
13 | import org.springframework.stereotype.Component; | 8 | import org.springframework.stereotype.Component; |
14 | -import org.springframework.web.client.RestTemplate; | ||
15 | 9 | ||
16 | -import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; | 10 | +import javax.servlet.ServletException; |
11 | +import javax.servlet.http.HttpServletRequest; | ||
12 | +import javax.servlet.http.HttpServletResponse; | ||
13 | +import java.io.IOException; | ||
17 | 14 | ||
18 | @Component | 15 | @Component |
19 | public class LogoutBrasilCidadaoHandler implements LogoutSuccessHandler { | 16 | public class LogoutBrasilCidadaoHandler implements LogoutSuccessHandler { |
src/main/java/br/gov/planejamento/dipla/protocolo/mail/Mailer.java
1 | package br.gov.planejamento.dipla.protocolo.mail; | 1 | package br.gov.planejamento.dipla.protocolo.mail; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | ||
4 | -import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | ||
5 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; | ||
6 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
7 | -import br.gov.planejamento.dipla.protocolo.entities.EmailEnum; | ||
8 | -import br.gov.planejamento.dipla.protocolo.entities.Metadado; | ||
9 | -import br.gov.planejamento.dipla.protocolo.entities.MetadadosEmail; | ||
10 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | ||
11 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | 3 | +import br.gov.planejamento.dipla.protocolo.entities.*; |
12 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoEmailRepository; | 4 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoEmailRepository; |
13 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | 5 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; |
14 | import br.gov.planejamento.dipla.protocolo.repositories.MetadadoRepository; | 6 | import br.gov.planejamento.dipla.protocolo.repositories.MetadadoRepository; |
15 | -import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | ||
16 | - | ||
17 | import org.slf4j.Logger; | 7 | import org.slf4j.Logger; |
18 | import org.slf4j.LoggerFactory; | 8 | import org.slf4j.LoggerFactory; |
19 | import org.springframework.beans.factory.annotation.Autowired; | 9 | import org.springframework.beans.factory.annotation.Autowired; |
20 | -import org.springframework.context.annotation.PropertySource; | ||
21 | -import org.springframework.core.env.Environment; | ||
22 | import org.springframework.core.io.ClassPathResource; | 10 | import org.springframework.core.io.ClassPathResource; |
23 | import org.springframework.mail.javamail.JavaMailSender; | 11 | import org.springframework.mail.javamail.JavaMailSender; |
24 | import org.springframework.mail.javamail.MimeMessageHelper; | 12 | import org.springframework.mail.javamail.MimeMessageHelper; |
@@ -31,17 +19,9 @@ import org.thymeleaf.spring4.SpringTemplateEngine; | @@ -31,17 +19,9 @@ import org.thymeleaf.spring4.SpringTemplateEngine; | ||
31 | import org.thymeleaf.spring4.dialect.SpringStandardDialect; | 19 | import org.thymeleaf.spring4.dialect.SpringStandardDialect; |
32 | import org.thymeleaf.templatemode.TemplateMode; | 20 | import org.thymeleaf.templatemode.TemplateMode; |
33 | import org.thymeleaf.templateresolver.StringTemplateResolver; | 21 | import org.thymeleaf.templateresolver.StringTemplateResolver; |
34 | -import org.w3c.dom.Document; | ||
35 | -import org.w3c.dom.Node; | ||
36 | -import org.w3c.dom.NodeList; | ||
37 | -import org.xml.sax.InputSource; | ||
38 | 22 | ||
39 | import javax.mail.MessagingException; | 23 | import javax.mail.MessagingException; |
40 | import javax.mail.internet.MimeMessage; | 24 | import javax.mail.internet.MimeMessage; |
41 | -import javax.xml.parsers.DocumentBuilder; | ||
42 | -import javax.xml.parsers.DocumentBuilderFactory; | ||
43 | - | ||
44 | -import java.io.StringReader; | ||
45 | import java.util.Iterator; | 25 | import java.util.Iterator; |
46 | import java.util.List; | 26 | import java.util.List; |
47 | import java.util.Locale; | 27 | import java.util.Locale; |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/ClassificacaoRepository.java
1 | package br.gov.planejamento.dipla.protocolo.repositories; | 1 | package br.gov.planejamento.dipla.protocolo.repositories; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Classificacao; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Classificacao; |
4 | - | ||
5 | -import java.util.Optional; | ||
6 | - | ||
7 | import org.springframework.data.jpa.repository.JpaRepository; | 4 | import org.springframework.data.jpa.repository.JpaRepository; |
8 | import org.springframework.stereotype.Repository; | 5 | import org.springframework.stereotype.Repository; |
9 | 6 | ||
7 | +import java.util.Optional; | ||
8 | + | ||
10 | /** | 9 | /** |
11 | * | 10 | * |
12 | * @author Leonardo Dias | 11 | * @author Leonardo Dias |
@@ -14,4 +13,5 @@ import org.springframework.stereotype.Repository; | @@ -14,4 +13,5 @@ import org.springframework.stereotype.Repository; | ||
14 | @Repository | 13 | @Repository |
15 | public interface ClassificacaoRepository extends JpaRepository<Classificacao, Long>{ | 14 | public interface ClassificacaoRepository extends JpaRepository<Classificacao, Long>{ |
16 | public Optional<Classificacao> findByNome(String nome); | 15 | public Optional<Classificacao> findByNome(String nome); |
16 | + public Optional<Classificacao> findByCodigo(Long codigo); | ||
17 | } | 17 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/ConfiguracaoEmailRepository.java
1 | package br.gov.planejamento.dipla.protocolo.repositories; | 1 | package br.gov.planejamento.dipla.protocolo.repositories; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; | 3 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; |
4 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
5 | -import br.gov.planejamento.dipla.protocolo.entities.MetadadosEmail; | ||
6 | - | ||
7 | import org.springframework.data.jpa.repository.JpaRepository; | 4 | import org.springframework.data.jpa.repository.JpaRepository; |
8 | import org.springframework.stereotype.Repository; | 5 | import org.springframework.stereotype.Repository; |
9 | 6 | ||
10 | -import java.util.List; | ||
11 | import java.util.Optional; | 7 | import java.util.Optional; |
12 | 8 | ||
13 | /** | 9 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/ConfiguracaoRepository.java
@@ -3,11 +3,9 @@ package br.gov.planejamento.dipla.protocolo.repositories; | @@ -3,11 +3,9 @@ package br.gov.planejamento.dipla.protocolo.repositories; | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; |
4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | 4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; |
5 | import br.gov.planejamento.dipla.protocolo.repositories.helper.configuracao.ConfiguracaoRepositoryQueries; | 5 | import br.gov.planejamento.dipla.protocolo.repositories.helper.configuracao.ConfiguracaoRepositoryQueries; |
6 | -import br.gov.planejamento.dipla.protocolo.repositories.helper.usuario.UsuarioRepositoryQueries; | ||
7 | import org.springframework.data.jpa.repository.JpaRepository; | 6 | import org.springframework.data.jpa.repository.JpaRepository; |
8 | import org.springframework.stereotype.Repository; | 7 | import org.springframework.stereotype.Repository; |
9 | 8 | ||
10 | -import java.util.List; | ||
11 | import java.util.Optional; | 9 | import java.util.Optional; |
12 | 10 | ||
13 | /** | 11 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/LogStatusRepository.java
1 | package br.gov.planejamento.dipla.protocolo.repositories; | 1 | package br.gov.planejamento.dipla.protocolo.repositories; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.LogSistema; | 3 | import br.gov.planejamento.dipla.protocolo.entities.LogSistema; |
4 | - | ||
5 | import org.springframework.data.jpa.repository.JpaRepository; | 4 | import org.springframework.data.jpa.repository.JpaRepository; |
6 | import org.springframework.stereotype.Repository; | 5 | import org.springframework.stereotype.Repository; |
7 | 6 |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/LoginAttemptRepository.java
1 | package br.gov.planejamento.dipla.protocolo.repositories; | 1 | package br.gov.planejamento.dipla.protocolo.repositories; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.LoginAttempt; | 3 | import br.gov.planejamento.dipla.protocolo.entities.LoginAttempt; |
4 | - | ||
5 | import org.springframework.data.jpa.repository.JpaRepository; | 4 | import org.springframework.data.jpa.repository.JpaRepository; |
6 | import org.springframework.data.jpa.repository.Modifying; | 5 | import org.springframework.data.jpa.repository.Modifying; |
7 | import org.springframework.data.jpa.repository.Query; | 6 | import org.springframework.data.jpa.repository.Query; |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/MetadadoRepository.java
1 | package br.gov.planejamento.dipla.protocolo.repositories; | 1 | package br.gov.planejamento.dipla.protocolo.repositories; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.entities.Arquivos; | ||
4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; | 3 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; |
5 | import br.gov.planejamento.dipla.protocolo.entities.Metadado; | 4 | import br.gov.planejamento.dipla.protocolo.entities.Metadado; |
6 | -import br.gov.planejamento.dipla.protocolo.entities.MetadadosEmail; | ||
7 | - | ||
8 | import org.springframework.data.jpa.repository.JpaRepository; | 5 | import org.springframework.data.jpa.repository.JpaRepository; |
9 | import org.springframework.stereotype.Repository; | 6 | import org.springframework.stereotype.Repository; |
10 | 7 |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/ProtocoloRepository.java
1 | package br.gov.planejamento.dipla.protocolo.repositories; | 1 | package br.gov.planejamento.dipla.protocolo.repositories; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; |
4 | -import br.gov.planejamento.dipla.protocolo.entities.StatusEnum; | ||
5 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; | 4 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; |
6 | import br.gov.planejamento.dipla.protocolo.repositories.helper.protocolo.ProtocoloRepositoryQueries; | 5 | import br.gov.planejamento.dipla.protocolo.repositories.helper.protocolo.ProtocoloRepositoryQueries; |
7 | import org.springframework.data.jpa.repository.JpaRepository; | 6 | import org.springframework.data.jpa.repository.JpaRepository; |
8 | import org.springframework.data.jpa.repository.Query; | 7 | import org.springframework.data.jpa.repository.Query; |
9 | -import org.springframework.data.repository.query.Param; | ||
10 | import org.springframework.stereotype.Repository; | 8 | import org.springframework.stereotype.Repository; |
11 | -import java.util.Optional; | ||
12 | import org.springframework.transaction.annotation.Transactional; | 9 | import org.springframework.transaction.annotation.Transactional; |
13 | -import org.springframework.data.jpa.repository.JpaRepository; | ||
14 | 10 | ||
15 | import java.math.BigDecimal; | 11 | import java.math.BigDecimal; |
16 | import java.util.List; | 12 | import java.util.List; |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/TiposDocumentoRepository.java
@@ -8,10 +8,10 @@ package br.gov.planejamento.dipla.protocolo.repositories; | @@ -8,10 +8,10 @@ package br.gov.planejamento.dipla.protocolo.repositories; | ||
8 | import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; | 8 | import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; |
9 | import br.gov.planejamento.dipla.protocolo.repositories.helper.tiposDocumento.TiposDocumentoRepositoryQueries; | 9 | import br.gov.planejamento.dipla.protocolo.repositories.helper.tiposDocumento.TiposDocumentoRepositoryQueries; |
10 | import org.springframework.data.jpa.repository.JpaRepository; | 10 | import org.springframework.data.jpa.repository.JpaRepository; |
11 | -import org.springframework.data.jpa.repository.Query; | ||
12 | import org.springframework.stereotype.Repository; | 11 | import org.springframework.stereotype.Repository; |
13 | -import java.util.Optional; | 12 | + |
14 | import java.util.List; | 13 | import java.util.List; |
14 | +import java.util.Optional; | ||
15 | 15 | ||
16 | /** | 16 | /** |
17 | * @author leonardo | 17 | * @author leonardo |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/UsuarioRepository.java
@@ -16,6 +16,7 @@ import java.util.Optional; | @@ -16,6 +16,7 @@ import java.util.Optional; | ||
16 | public interface UsuarioRepository extends JpaRepository<Usuario, Long>, UsuarioRepositoryQueries { | 16 | public interface UsuarioRepository extends JpaRepository<Usuario, Long>, UsuarioRepositoryQueries { |
17 | 17 | ||
18 | public List<Usuario> findByCodigoIn(Long[] codigos); | 18 | public List<Usuario> findByCodigoIn(Long[] codigos); |
19 | + public Usuario findByCodigo(Long codgio); | ||
19 | 20 | ||
20 | public Optional<Usuario> findByEmail(String email); | 21 | public Optional<Usuario> findByEmail(String email); |
21 | 22 |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/helper/configuracao/ConfiguracaoRepositoryImpl.java
@@ -2,11 +2,8 @@ package br.gov.planejamento.dipla.protocolo.repositories.helper.configuracao; | @@ -2,11 +2,8 @@ package br.gov.planejamento.dipla.protocolo.repositories.helper.configuracao; | ||
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; |
4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | 4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; |
5 | - | ||
6 | - | ||
7 | -import javax.persistence.EntityManager; | ||
8 | -import javax.persistence.PersistenceContext; | ||
9 | - | 5 | +import br.gov.planejamento.dipla.protocolo.repositories.filter.ConfiguracaoFilter; |
6 | +import br.gov.planejamento.dipla.protocolo.repositories.paginacao.PaginacaoUtil; | ||
10 | import org.hibernate.Criteria; | 7 | import org.hibernate.Criteria; |
11 | import org.hibernate.Session; | 8 | import org.hibernate.Session; |
12 | import org.hibernate.criterion.MatchMode; | 9 | import org.hibernate.criterion.MatchMode; |
@@ -17,15 +14,13 @@ import org.springframework.data.domain.Page; | @@ -17,15 +14,13 @@ import org.springframework.data.domain.Page; | ||
17 | import org.springframework.data.domain.PageImpl; | 14 | import org.springframework.data.domain.PageImpl; |
18 | import org.springframework.data.domain.Pageable; | 15 | import org.springframework.data.domain.Pageable; |
19 | 16 | ||
20 | -import br.gov.planejamento.dipla.protocolo.repositories.filter.ConfiguracaoFilter; | ||
21 | -import br.gov.planejamento.dipla.protocolo.repositories.paginacao.PaginacaoUtil; | ||
22 | - | ||
23 | -import java.util.List; | 17 | +import javax.persistence.EntityManager; |
18 | +import javax.persistence.PersistenceContext; | ||
24 | import java.util.Optional; | 19 | import java.util.Optional; |
25 | 20 | ||
26 | /** | 21 | /** |
27 | * | 22 | * |
28 | - * @author Leonardo Dias | 23 | + * @authors Leonardo Dias, Matheus de Carvalho |
29 | */ | 24 | */ |
30 | public class ConfiguracaoRepositoryImpl implements ConfiguracaoRepositoryQueries { | 25 | public class ConfiguracaoRepositoryImpl implements ConfiguracaoRepositoryQueries { |
31 | 26 |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/helper/configuracao/ConfiguracaoRepositoryQueries.java
1 | package br.gov.planejamento.dipla.protocolo.repositories.helper.configuracao; | 1 | package br.gov.planejamento.dipla.protocolo.repositories.helper.configuracao; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.dto.MetadadosDTO; | ||
4 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; |
5 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | 4 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; |
6 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | ||
7 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
8 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
9 | import br.gov.planejamento.dipla.protocolo.repositories.filter.ConfiguracaoFilter; | 5 | import br.gov.planejamento.dipla.protocolo.repositories.filter.ConfiguracaoFilter; |
10 | -import br.gov.planejamento.dipla.protocolo.repositories.filter.ProtocoloFilter; | ||
11 | -import br.gov.planejamento.dipla.protocolo.repositories.filter.UsuarioFilter; | ||
12 | import org.springframework.data.domain.Page; | 6 | import org.springframework.data.domain.Page; |
13 | import org.springframework.data.domain.Pageable; | 7 | import org.springframework.data.domain.Pageable; |
14 | 8 | ||
15 | -import java.util.List; | ||
16 | import java.util.Optional; | 9 | import java.util.Optional; |
17 | 10 | ||
18 | /** | 11 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/repositories/helper/usuario/UsuarioRepositoryImpl.java
1 | package br.gov.planejamento.dipla.protocolo.repositories.helper.usuario; | 1 | package br.gov.planejamento.dipla.protocolo.repositories.helper.usuario; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Grupo; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Grupo; |
4 | -import java.util.ArrayList; | ||
5 | -import java.util.List; | ||
6 | - | ||
7 | -import javax.persistence.EntityManager; | ||
8 | -import javax.persistence.PersistenceContext; | ||
9 | - | 4 | +import br.gov.planejamento.dipla.protocolo.entities.Usuario; |
5 | +import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
6 | +import br.gov.planejamento.dipla.protocolo.entities.UsuarioGrupo; | ||
7 | +import br.gov.planejamento.dipla.protocolo.repositories.filter.UsuarioFilter; | ||
8 | +import br.gov.planejamento.dipla.protocolo.repositories.paginacao.PaginacaoUtil; | ||
10 | import org.hibernate.Criteria; | 9 | import org.hibernate.Criteria; |
11 | import org.hibernate.Hibernate; | 10 | import org.hibernate.Hibernate; |
12 | import org.hibernate.Session; | 11 | import org.hibernate.Session; |
13 | -import org.hibernate.criterion.Criterion; | ||
14 | -import org.hibernate.criterion.DetachedCriteria; | ||
15 | -import org.hibernate.criterion.MatchMode; | ||
16 | -import org.hibernate.criterion.Order; | ||
17 | -import org.hibernate.criterion.Projections; | ||
18 | -import org.hibernate.criterion.Restrictions; | ||
19 | -import org.hibernate.criterion.Subqueries; | 12 | +import org.hibernate.criterion.*; |
13 | +import org.hibernate.sql.JoinType; | ||
20 | import org.springframework.beans.factory.annotation.Autowired; | 14 | import org.springframework.beans.factory.annotation.Autowired; |
21 | import org.springframework.data.domain.Page; | 15 | import org.springframework.data.domain.Page; |
22 | import org.springframework.data.domain.PageImpl; | 16 | import org.springframework.data.domain.PageImpl; |
@@ -24,13 +18,11 @@ import org.springframework.data.domain.Pageable; | @@ -24,13 +18,11 @@ import org.springframework.data.domain.Pageable; | ||
24 | import org.springframework.transaction.annotation.Transactional; | 18 | import org.springframework.transaction.annotation.Transactional; |
25 | import org.springframework.util.StringUtils; | 19 | import org.springframework.util.StringUtils; |
26 | 20 | ||
27 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
28 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
29 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioGrupo; | ||
30 | -import br.gov.planejamento.dipla.protocolo.repositories.filter.UsuarioFilter; | ||
31 | -import br.gov.planejamento.dipla.protocolo.repositories.paginacao.PaginacaoUtil; | 21 | +import javax.persistence.EntityManager; |
22 | +import javax.persistence.PersistenceContext; | ||
23 | +import java.util.ArrayList; | ||
24 | +import java.util.List; | ||
32 | import java.util.Optional; | 25 | import java.util.Optional; |
33 | -import org.hibernate.sql.JoinType; | ||
34 | 26 | ||
35 | /** | 27 | /** |
36 | * | 28 | * |
src/main/java/br/gov/planejamento/dipla/protocolo/security/AppUserDetailsService.java
@@ -2,8 +2,6 @@ package br.gov.planejamento.dipla.protocolo.security; | @@ -2,8 +2,6 @@ package br.gov.planejamento.dipla.protocolo.security; | ||
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; |
4 | import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | 4 | import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; |
5 | - | ||
6 | -import org.apache.commons.codec.digest.DigestUtils; | ||
7 | import org.springframework.beans.factory.annotation.Autowired; | 5 | import org.springframework.beans.factory.annotation.Autowired; |
8 | import org.springframework.security.core.GrantedAuthority; | 6 | import org.springframework.security.core.GrantedAuthority; |
9 | import org.springframework.security.core.authority.SimpleGrantedAuthority; | 7 | import org.springframework.security.core.authority.SimpleGrantedAuthority; |
src/main/java/br/gov/planejamento/dipla/protocolo/security/BrasilCidadaoUserDetails.java
1 | package br.gov.planejamento.dipla.protocolo.security; | 1 | package br.gov.planejamento.dipla.protocolo.security; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | ||
4 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
5 | import org.springframework.security.core.GrantedAuthority; | 3 | import org.springframework.security.core.GrantedAuthority; |
6 | -import org.springframework.security.core.userdetails.User; | 4 | +import org.springframework.security.core.authority.SimpleGrantedAuthority; |
5 | +import org.springframework.security.core.userdetails.UserDetails; | ||
7 | 6 | ||
8 | import java.util.Collection; | 7 | import java.util.Collection; |
8 | +import java.util.Collections; | ||
9 | 9 | ||
10 | /** | 10 | /** |
11 | - * | ||
12 | * @author Leonardo Dias | 11 | * @author Leonardo Dias |
13 | */ | 12 | */ |
14 | 13 | ||
15 | -import org.springframework.security.core.GrantedAuthority; | ||
16 | -import org.springframework.security.core.authority.SimpleGrantedAuthority; | ||
17 | -import org.springframework.security.core.userdetails.UserDetails; | ||
18 | - | ||
19 | -import java.util.Collection; | ||
20 | -import java.util.Collections; | ||
21 | -import java.util.Map; | ||
22 | - | ||
23 | public class BrasilCidadaoUserDetails implements UserDetails { | 14 | public class BrasilCidadaoUserDetails implements UserDetails { |
24 | 15 | ||
25 | /** | 16 | /** |
src/main/java/br/gov/planejamento/dipla/protocolo/security/CaptchaService.java
1 | package br.gov.planejamento.dipla.protocolo.security; | 1 | package br.gov.planejamento.dipla.protocolo.security; |
2 | 2 | ||
3 | +import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
4 | +import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | ||
5 | +import br.gov.planejamento.dipla.protocolo.services.exeptions.ReCaptchaUnavailableException; | ||
3 | import org.slf4j.Logger; | 6 | import org.slf4j.Logger; |
4 | import org.slf4j.LoggerFactory; | 7 | import org.slf4j.LoggerFactory; |
5 | import org.springframework.beans.factory.annotation.Autowired; | 8 | import org.springframework.beans.factory.annotation.Autowired; |
6 | import org.springframework.stereotype.Service; | 9 | import org.springframework.stereotype.Service; |
7 | import org.springframework.web.client.RestTemplate; | 10 | import org.springframework.web.client.RestTemplate; |
8 | 11 | ||
9 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
10 | -import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | ||
11 | -import br.gov.planejamento.dipla.protocolo.services.exeptions.ReCaptchaUnavailableException; | ||
12 | - | ||
13 | import javax.servlet.http.HttpServletRequest; | 12 | import javax.servlet.http.HttpServletRequest; |
14 | import java.net.URI; | 13 | import java.net.URI; |
15 | 14 |
src/main/java/br/gov/planejamento/dipla/protocolo/security/CustomAuthenticationFailureHandler.java
1 | package br.gov.planejamento.dipla.protocolo.security; | 1 | package br.gov.planejamento.dipla.protocolo.security; |
2 | 2 | ||
3 | -import java.io.IOException; | ||
4 | -import java.util.Optional; | ||
5 | - | ||
6 | -import javax.servlet.ServletException; | ||
7 | -import javax.servlet.http.HttpServletRequest; | ||
8 | -import javax.servlet.http.HttpServletResponse; | ||
9 | - | ||
10 | -import org.apache.commons.codec.digest.DigestUtils; | 3 | +import br.gov.planejamento.dipla.protocolo.repositories.LoginAttemptRepository; |
4 | +import br.gov.planejamento.dipla.protocolo.services.AutoCadastroService; | ||
11 | import org.springframework.beans.factory.annotation.Autowired; | 5 | import org.springframework.beans.factory.annotation.Autowired; |
12 | import org.springframework.security.core.AuthenticationException; | 6 | import org.springframework.security.core.AuthenticationException; |
13 | -import org.springframework.security.web.DefaultRedirectStrategy; | ||
14 | -import org.springframework.security.web.RedirectStrategy; | ||
15 | -import org.springframework.security.web.WebAttributes; | ||
16 | import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; | 7 | import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; |
17 | import org.springframework.stereotype.Component; | 8 | import org.springframework.stereotype.Component; |
18 | 9 | ||
19 | -import br.gov.planejamento.dipla.protocolo.entities.LoginAttempt; | ||
20 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
21 | -import br.gov.planejamento.dipla.protocolo.repositories.LoginAttemptRepository; | ||
22 | -import br.gov.planejamento.dipla.protocolo.services.AutoCadastroService; | 10 | +import javax.servlet.ServletException; |
11 | +import javax.servlet.http.HttpServletRequest; | ||
12 | +import javax.servlet.http.HttpServletResponse; | ||
13 | +import java.io.IOException; | ||
23 | 14 | ||
24 | @Component | 15 | @Component |
25 | public class CustomAuthenticationFailureHandler extends SimpleUrlAuthenticationFailureHandler { | 16 | public class CustomAuthenticationFailureHandler extends SimpleUrlAuthenticationFailureHandler { |
src/main/java/br/gov/planejamento/dipla/protocolo/security/LoginAttemptService.java
1 | package br.gov.planejamento.dipla.protocolo.security; | 1 | package br.gov.planejamento.dipla.protocolo.security; |
2 | 2 | ||
3 | 3 | ||
4 | -import java.util.Date; | ||
5 | -import java.util.Map; | ||
6 | -import java.util.Optional; | ||
7 | - | 4 | +import br.gov.planejamento.dipla.protocolo.entities.LoginAttempt; |
5 | +import br.gov.planejamento.dipla.protocolo.repositories.LoginAttemptRepository; | ||
8 | import org.apache.commons.codec.digest.DigestUtils; | 6 | import org.apache.commons.codec.digest.DigestUtils; |
9 | import org.springframework.beans.factory.annotation.Autowired; | 7 | import org.springframework.beans.factory.annotation.Autowired; |
10 | import org.springframework.stereotype.Service; | 8 | import org.springframework.stereotype.Service; |
11 | 9 | ||
12 | -import br.gov.planejamento.dipla.protocolo.entities.LoginAttempt; | ||
13 | -import br.gov.planejamento.dipla.protocolo.repositories.LoginAttemptRepository; | ||
14 | -import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | 10 | +import java.util.Date; |
11 | +import java.util.Optional; | ||
15 | 12 | ||
16 | 13 | ||
17 | @Service | 14 | @Service |
src/main/java/br/gov/planejamento/dipla/protocolo/sei/ws/SeiWSClient.java
1 | package br.gov.planejamento.dipla.protocolo.sei.ws; | 1 | package br.gov.planejamento.dipla.protocolo.sei.ws; |
2 | 2 | ||
3 | import Sei.*; | 3 | import Sei.*; |
4 | -import br.gov.planejamento.dipla.protocolo.entities.Arquivos; | ||
5 | -import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEnum; | ||
6 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | 4 | +import br.gov.planejamento.dipla.protocolo.entities.*; |
7 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; | 5 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; |
8 | import br.gov.planejamento.dipla.protocolo.repositories.ArquivosRepository; | 6 | import br.gov.planejamento.dipla.protocolo.repositories.ArquivosRepository; |
7 | +import br.gov.planejamento.dipla.protocolo.repositories.ClassificacaoRepository; | ||
9 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | 8 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; |
10 | import br.gov.planejamento.dipla.protocolo.services.SalvarProtocoloService; | 9 | import br.gov.planejamento.dipla.protocolo.services.SalvarProtocoloService; |
11 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; | 10 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; |
11 | +import org.apache.axis.AxisFault; | ||
12 | import org.apache.commons.io.FileUtils; | 12 | import org.apache.commons.io.FileUtils; |
13 | import org.springframework.beans.factory.annotation.Autowired; | 13 | import org.springframework.beans.factory.annotation.Autowired; |
14 | -import org.springframework.context.annotation.PropertySource; | ||
15 | -import org.springframework.core.env.Environment; | ||
16 | import org.springframework.scheduling.annotation.Async; | 14 | import org.springframework.scheduling.annotation.Async; |
17 | import org.springframework.stereotype.Component; | 15 | import org.springframework.stereotype.Component; |
18 | import org.springframework.util.Base64Utils; | 16 | import org.springframework.util.Base64Utils; |
19 | 17 | ||
20 | -import java.io.Console; | ||
21 | -import java.io.File; | ||
22 | import java.io.IOException; | 18 | import java.io.IOException; |
19 | +import java.net.MalformedURLException; | ||
23 | import java.net.URL; | 20 | import java.net.URL; |
24 | import java.nio.file.Path; | 21 | import java.nio.file.Path; |
25 | -import java.util.List; | ||
26 | -import java.util.Optional; | ||
27 | - | ||
28 | -import static java.nio.file.FileSystems.getDefault; | ||
29 | - | ||
30 | -import java.util.concurrent.CompletableFuture; | ||
31 | - | ||
32 | -import java.util.Date; | ||
33 | import java.text.DateFormat; | 22 | import java.text.DateFormat; |
34 | import java.text.SimpleDateFormat; | 23 | import java.text.SimpleDateFormat; |
24 | +import java.util.*; | ||
35 | 25 | ||
36 | - | ||
37 | - | ||
38 | - | 26 | +import static java.nio.file.FileSystems.getDefault; |
39 | 27 | ||
40 | @Component | 28 | @Component |
41 | public class SeiWSClient { | 29 | public class SeiWSClient { |
42 | 30 | ||
43 | - @Autowired | ||
44 | - private Mailer mailer; | ||
45 | - | ||
46 | - @Autowired | ||
47 | - private ConfiguracaoRepository configuracaoRepository; | ||
48 | - | ||
49 | - @Autowired | ||
50 | - private SalvarProtocoloService salvarProtocoloService; | ||
51 | - | ||
52 | - @Autowired | ||
53 | - private ArquivosRepository arquivosRepository; | ||
54 | - | ||
55 | - @Autowired | ||
56 | - private ArquivoStorage arquivoStorage; | ||
57 | - | ||
58 | - private String getDateTime() { | ||
59 | - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); | ||
60 | - Date date = new Date(); | ||
61 | - return dateFormat.format(date); | ||
62 | - } | ||
63 | - | ||
64 | - @Async | ||
65 | - public String enviar(Protocolo protocolo, Long idUsuario, String sei, String tipo) { | ||
66 | - | ||
67 | - if (sei!=null && tipo!=null && !sei.isEmpty() && tipo.equals("existente")) { | ||
68 | - enviarDocumento( protocolo, idUsuario, sei ); | ||
69 | - } else { | ||
70 | - | ||
71 | - try { | ||
72 | - URL urlEndpoint = new URL( configuracaoRepository.recuperarValor( ConfiguracaoEnum.URL_ENDPOINT ) ); | ||
73 | - SeiBindingStub seiBindingStub = new SeiBindingStub( urlEndpoint, null ); | ||
74 | - seiBindingStub.setTimeout( 600000 * 60 ); | ||
75 | - | ||
76 | - | ||
77 | - /*Assunto assunto = new Assunto(); | ||
78 | - assunto.setCodigoEstruturado( configuracaoRepository.recuperarValor( ConfiguracaoEnum.ASSUNTO_CODIGO_ESTRUTURADO ) ); | ||
79 | - Assunto[] assuntos = {assunto};*/ | ||
80 | - | ||
81 | - Procedimento procedimento = new Procedimento(); | ||
82 | - if (tipo.equals("novo")) { | ||
83 | - procedimento.setNumeroProtocolo( sei ); | ||
84 | - procedimento.setDataAutuacao( getDateTime() ); | ||
85 | - } | ||
86 | - | ||
87 | - procedimento.setAssuntos( recuperaAssunto() ); | ||
88 | - procedimento.setEspecificacao( configuracaoRepository.recuperarValor( ConfiguracaoEnum.PROCEDIMENTO_ESPECIFICADO ) ); | ||
89 | - | ||
90 | - Interessado interessado = new Interessado(); | ||
91 | - interessado.setNome( protocolo.getUsuario().getNome() ); | ||
92 | - interessado.setSigla( "Telefone: " + protocolo.getUsuario().getTelefone() ); | ||
93 | - Interessado[] interessados = {interessado}; | ||
94 | - | ||
95 | - procedimento.setInteressados( interessados ); | ||
96 | - | ||
97 | - procedimento.setNivelAcesso( configuracaoRepository.recuperarValor( ConfiguracaoEnum.PROCEDIMENTO_NIVEL_ACESSO ) ); | ||
98 | - procedimento.setIdTipoProcedimento( configuracaoRepository.recuperarValor( ConfiguracaoEnum.PROCEDIMENTO_ID_TIPO_PROCEDIMENTO ) ); | ||
99 | - | ||
100 | - List<Arquivos> arquivosList = arquivosRepository.findByProtocolo( protocolo ); | ||
101 | - | ||
102 | - procedimento.setObservacao( | ||
103 | - protocolo.toString() + | ||
104 | - "\n" + | ||
105 | - "Quantidade Arquivos: " + arquivosList.size() | ||
106 | - ); | ||
107 | - | ||
108 | - | ||
109 | - //criando o procedimento | ||
110 | - RetornoGeracaoProcedimento retornoGeracaoProcedimento = seiBindingStub.gerarProcedimento( | ||
111 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.SIGLA_SISTEMA ), | ||
112 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.IDENTIFICACAO_SERVICO ), | ||
113 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.ID_UNIDADE ), | ||
114 | - procedimento, | ||
115 | - null, | ||
116 | - null, | ||
117 | - null, | ||
118 | - "N", | ||
119 | - "N", | ||
120 | - null, | ||
121 | - null, | ||
122 | - "N", | ||
123 | - null, | ||
124 | - null ); | ||
125 | - | ||
126 | - | ||
127 | - arquivosList.forEach( arquivo -> { | ||
128 | - try { | ||
129 | - Documento documento = new Documento(); | ||
130 | - documento.setIdProcedimento( retornoGeracaoProcedimento.getProcedimentoFormatado() | ||
131 | - .replace( ".", "" ) | ||
132 | - .replace( "/", "" ) | ||
133 | - .replace( "-", "" ) ); | ||
134 | - documento.setObservacao( protocolo.toString()); | ||
135 | - documento.setDescricao( arquivo.getDescricaoDocumento() ); | ||
136 | - documento.setNomeArquivo( arquivo.getNomeOriginal() ); | ||
137 | - documento.setTipo( configuracaoRepository.recuperarValor( ConfiguracaoEnum.DOCUMENTO_TIPO ) ); | ||
138 | - //documento.setIdSerie(env.getProperty("documento.id-serie")); //TODO: Alterar para pegar da combo Tipo Documento | ||
139 | - documento.setIdSerie( arquivo.getTipoDocumento().getCodigoSei() ); //Tipo documento vindo do banco de dados | ||
140 | - documento.setData( protocolo.getDataFormatada() ); | ||
141 | - documento.setNivelAcesso( configuracaoRepository.recuperarValor( ConfiguracaoEnum.DOCUMENTO_NIVEL_ACESSO ) ); | ||
142 | - | ||
143 | - Path path = getDefault().getPath( configuracaoRepository.recuperarValor( ConfiguracaoEnum.STORAGE_PATH ) ).resolve( arquivo.getNome() ); | ||
144 | - documento.setConteudo( Base64Utils.encodeToString( FileUtils.readFileToByteArray( path.toFile() ) ) ); | ||
145 | - | ||
146 | - seiBindingStub.incluirDocumento( | ||
147 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.SIGLA_SISTEMA ), | ||
148 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.IDENTIFICACAO_SERVICO ), | ||
149 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.ID_UNIDADE ), | ||
150 | - documento | ||
151 | - ); | ||
152 | - } catch (IOException e) { | ||
153 | - protocolo.setErroWs("[ERRO INCLUIR DOCUMENTO] " + e.getMessage() ); | ||
154 | - throw new RuntimeException( e.getMessage() ); | ||
155 | - } | ||
156 | - } ); | ||
157 | - | ||
158 | - protocolo.setLinkSEI(retornoGeracaoProcedimento.getLinkAcesso()); | ||
159 | - protocolo.setNupe( retornoGeracaoProcedimento.getProcedimentoFormatado() ); | ||
160 | - salvarProtocoloService.aprovar( protocolo, idUsuario ); | ||
161 | - | ||
162 | - //System.out.println("NUP TEMPOR�RIO"); | ||
163 | - //System.out.println(protocolo.getEmail1()); | ||
164 | - | ||
165 | - protocolo.setArquivosList(arquivosList); | ||
166 | - mailer.enviarAceite( protocolo ); | ||
167 | - | ||
168 | - /*arquivosList.forEach( arquivo -> { | ||
169 | - arquivoStorage.excluir( arquivo.getNome() ); | ||
170 | - } );*/ | ||
171 | - | ||
172 | - | ||
173 | - return retornoGeracaoProcedimento.getProcedimentoFormatado(); | ||
174 | - | ||
175 | - } catch (Exception e) { | ||
176 | - protocolo.setErroWs("[ERRO GERAR PROCEDIMENTO] " + e.getMessage() ); | ||
177 | - e.printStackTrace(); | ||
178 | - rollback( protocolo, e.getMessage() ); | ||
179 | - } | ||
180 | - } | ||
181 | - | ||
182 | - return null; | ||
183 | - } | ||
184 | - | ||
185 | - /** | ||
186 | - * | ||
187 | - * @return array | ||
188 | - */ | ||
189 | - private Assunto[] recuperaAssunto() { | ||
190 | - Assunto assunto = new Assunto(); | ||
191 | - assunto.setCodigoEstruturado( configuracaoRepository.recuperarValor( ConfiguracaoEnum.ASSUNTO_CODIGO_ESTRUTURADO ) ); | ||
192 | - Assunto[] assuntos = {assunto}; | ||
193 | - return assuntos; | ||
194 | - } | ||
195 | - | ||
196 | - private void rollback(Protocolo protocolo, String msgErro) { | ||
197 | - protocolo.setNupe( null ); | ||
198 | - salvarProtocoloService.pendente( protocolo ); | ||
199 | - mailer.enviarEmailErroEnvioSEI( protocolo, msgErro ); | ||
200 | - } | ||
201 | - | ||
202 | - public String enviarDocumento(Protocolo protocolo, Long idUsuario, String sei) { | ||
203 | - String observacaoAnterior=""; | ||
204 | - try { | ||
205 | - | ||
206 | - URL urlEndpoint = new URL( configuracaoRepository.recuperarValor( ConfiguracaoEnum.URL_ENDPOINT ) ); | ||
207 | - SeiBindingStub seiBindingStub = new SeiBindingStub( urlEndpoint, null ); | ||
208 | - seiBindingStub.setTimeout( 600000 * 60 ); | ||
209 | - | ||
210 | - List<Arquivos> arquivosList = arquivosRepository.findByProtocolo( protocolo ); | ||
211 | - | ||
212 | - arquivosList.forEach( arquivo -> { | ||
213 | - try { | ||
214 | - Documento documento = new Documento(); | ||
215 | - //documento.setIdProcedimento( sei ); | ||
216 | - documento.setIdProcedimento( sei | ||
217 | - .replace( ".", "" ) | ||
218 | - .replace( "/", "" ) | ||
219 | - .replace( "-", "" ) ); | ||
220 | - documento.setObservacao( protocolo.toString()); | ||
221 | - documento.setDescricao( arquivo.getDescricaoDocumento() ); | ||
222 | - documento.setNomeArquivo( arquivo.getNomeOriginal() ); | ||
223 | - documento.setTipo( configuracaoRepository.recuperarValor( ConfiguracaoEnum.DOCUMENTO_TIPO ) ); | ||
224 | - //documento.setIdSerie(env.getProperty("documento.id-serie")); //TODO: Alterar para pegar da combo Tipo Documento | ||
225 | - documento.setIdSerie( arquivo.getTipoDocumento().getCodigoSei() ); //Tipo documento vindo do banco de dados | ||
226 | - documento.setData( protocolo.getDataFormatada() ); | ||
227 | - documento.setNivelAcesso( configuracaoRepository.recuperarValor( ConfiguracaoEnum.DOCUMENTO_NIVEL_ACESSO ) ); | ||
228 | - | ||
229 | - Path path = getDefault().getPath( configuracaoRepository.recuperarValor( ConfiguracaoEnum.STORAGE_PATH ) ).resolve( arquivo.getNome() ); | ||
230 | - documento.setConteudo( Base64Utils.encodeToString( FileUtils.readFileToByteArray( path.toFile() ) ) ); | ||
231 | - | ||
232 | - seiBindingStub.incluirDocumento( | ||
233 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.SIGLA_SISTEMA ), | ||
234 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.IDENTIFICACAO_SERVICO ), | ||
235 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.ID_UNIDADE ), | ||
236 | - documento | ||
237 | - ); | ||
238 | - } catch (IOException e) { | ||
239 | - protocolo.setErroWs("[ERRO INCLUIR DOCUMENTO] " + e.getMessage() ); | ||
240 | - throw new RuntimeException( e.getMessage() ); | ||
241 | - } | ||
242 | - } ); | ||
243 | - | ||
244 | - protocolo.setNupe( sei ); | ||
245 | - //protocolo.setNupe( retornoGeracaoProcedimento.getProcedimentoFormatado() ); | ||
246 | - salvarProtocoloService.aprovar( protocolo, idUsuario ); | ||
247 | - | ||
248 | - protocolo.setArquivosList(arquivosRepository.findByProtocolo(protocolo)); | ||
249 | - mailer.enviarAceite( protocolo ); | ||
250 | - | ||
251 | - /*arquivosList.forEach( arquivo -> { | ||
252 | - arquivoStorage.excluir( arquivo.getNome() ); | ||
253 | - } );*/ | ||
254 | - | ||
255 | - | ||
256 | - return sei; | ||
257 | - | ||
258 | - | ||
259 | - } catch (Exception e) { | ||
260 | - e.printStackTrace(); | ||
261 | - rollback( protocolo, e.getMessage() ); | ||
262 | - } | ||
263 | - | ||
264 | - return null; | ||
265 | - | ||
266 | - } | ||
267 | - public RetornoConsultaProcedimento consultarProtocoloSei(String sei) { | ||
268 | - Optional<String> retorno = Optional.ofNullable(null); | ||
269 | - RetornoConsultaProcedimento retornoConsultaProcedimento = new RetornoConsultaProcedimento(); | ||
270 | - try { | ||
271 | - URL urlEndpoint = new URL( configuracaoRepository.recuperarValor( ConfiguracaoEnum.URL_ENDPOINT ) ); | ||
272 | - SeiBindingStub seiBindingStub = new SeiBindingStub( urlEndpoint, null ); | ||
273 | - retornoConsultaProcedimento = seiBindingStub.consultarProcedimento( | ||
274 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.SIGLA_SISTEMA ), | ||
275 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.IDENTIFICACAO_SERVICO ), | ||
276 | - configuracaoRepository.recuperarValor( ConfiguracaoEnum.ID_UNIDADE ), | ||
277 | - sei, | ||
278 | - "S", | ||
279 | - "S", | ||
280 | - "S", | ||
281 | - "S", | ||
282 | - "S", | ||
283 | - "S", | ||
284 | - "S", | ||
285 | - "S", | ||
286 | - "S" | ||
287 | - ); | ||
288 | - }catch(Exception e) { | ||
289 | - e.printStackTrace(); | ||
290 | - } | ||
291 | - return retornoConsultaProcedimento; | ||
292 | - } | ||
293 | - | ||
294 | - | 31 | + @Autowired |
32 | + private Mailer mailer; | ||
33 | + | ||
34 | + @Autowired | ||
35 | + private ConfiguracaoRepository configuracaoRepository; | ||
36 | + | ||
37 | + @Autowired | ||
38 | + private ClassificacaoRepository classificacaoRepository; | ||
39 | + | ||
40 | + @Autowired | ||
41 | + private SalvarProtocoloService salvarProtocoloService; | ||
42 | + | ||
43 | + @Autowired | ||
44 | + private ArquivosRepository arquivosRepository; | ||
45 | + | ||
46 | + @Autowired | ||
47 | + private ArquivoStorage arquivoStorage; | ||
48 | + | ||
49 | + private String getDateTime() { | ||
50 | + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); | ||
51 | + Date date = new Date(); | ||
52 | + return dateFormat.format(date); | ||
53 | + } | ||
54 | + | ||
55 | + @Async | ||
56 | + public String enviar(Protocolo protocolo, Long idUsuario, String sei, String tipo, String idSei) throws Exception { | ||
57 | + Map<String, String> map = new HashMap<String, String>(); | ||
58 | + if (idSei != null) { | ||
59 | + Optional<Classificacao> classificacaoConfig = classificacaoRepository.findByCodigo(Long.parseLong(idSei)); | ||
60 | + if (classificacaoConfig.isPresent()) { | ||
61 | + Classificacao c = classificacaoConfig.get(); | ||
62 | + Iterator<Configuracao> itr = c.getConfiguracoes().iterator(); | ||
63 | + while (itr.hasNext()) { | ||
64 | + Configuracao conf = itr.next(); | ||
65 | + map.put(conf.getNome(), conf.getValor()); | ||
66 | + } | ||
67 | + /** | ||
68 | + * Envio para o SEI Definido | ||
69 | + */ | ||
70 | + this.enviarDocumentoComSei(protocolo, idUsuario, sei, tipo, map, idSei); | ||
71 | + } | ||
72 | + } else { | ||
73 | + throw new Exception("[ERRO - idSei null]"); | ||
74 | + } | ||
75 | + return null; | ||
76 | + } | ||
77 | + | ||
78 | + /** | ||
79 | + * | ||
80 | + * @return array | ||
81 | + */ | ||
82 | + private Assunto[] recuperaAssunto() { | ||
83 | + Assunto assunto = new Assunto(); | ||
84 | + assunto.setCodigoEstruturado( | ||
85 | + configuracaoRepository.recuperarValor(ConfiguracaoEnum.ASSUNTO_CODIGO_ESTRUTURADO)); | ||
86 | + Assunto[] assuntos = { assunto }; | ||
87 | + return assuntos; | ||
88 | + } | ||
89 | + | ||
90 | + private void rollback(Protocolo protocolo, String msgErro) { | ||
91 | + protocolo.setNupe(null); | ||
92 | + salvarProtocoloService.pendente(protocolo); | ||
93 | + mailer.enviarEmailErroEnvioSEI(protocolo, msgErro); | ||
94 | + } | ||
95 | + | ||
96 | + /** | ||
97 | + * | ||
98 | + * | ||
99 | + * | ||
100 | + * | ||
101 | + * | ||
102 | + */ | ||
103 | + | ||
104 | + private SeiBindingStub montarURLEndPoint(String endPoint) throws MalformedURLException, AxisFault { | ||
105 | + URL urlEndpoint = new URL(endPoint); | ||
106 | + SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); | ||
107 | + return seiBindingStub; | ||
108 | + } | ||
109 | + | ||
110 | + private Assunto[] montarAssunto(String assuntoCodigoEstruturado) { | ||
111 | + Assunto assunto = new Assunto(); | ||
112 | + assunto.setCodigoEstruturado(assuntoCodigoEstruturado); // Tipo de assunto | ||
113 | + Assunto[] assuntos = { assunto }; | ||
114 | + return assuntos; | ||
115 | + } | ||
116 | + | ||
117 | + private Procedimento montarProcedimento(Assunto[] assuntos, Map<String, String> mapConfig, Protocolo protocolo, int size) { | ||
118 | + Procedimento procedimento = new Procedimento(); | ||
119 | + procedimento.setAssuntos(assuntos); | ||
120 | + procedimento.setEspecificacao(mapConfig.get("PROCEDIMENTO_ESPECIFICADO")); | ||
121 | + procedimento.setObservacao(protocolo.toString() + "\n" + "Quantidade Arquivos: " + size); | ||
122 | + procedimento.setNivelAcesso(mapConfig.get("PROCEDIMENTO_NIVEL_ACESSO")); // 0 = Publico, 1 = Restrito, 2 = Sigiloso | ||
123 | + procedimento.setIdTipoProcedimento(mapConfig.get("PROCEDIMENTO_ID_TIPO_PROCEDIMENTO")); // Tipo de Processo => Adesão de atas | ||
124 | + procedimento.setIdHipoteseLegal(mapConfig.get("PROCEDIMENTO_HIPOTESE_LEGAL")); | ||
125 | + return procedimento; | ||
126 | + } | ||
127 | + | ||
128 | + private Interessado[] montarInteressado(Protocolo protocolo) { | ||
129 | + Interessado interessado = new Interessado(); | ||
130 | + interessado.setNome(protocolo.getUsuario().getNome()); | ||
131 | + interessado.setSigla("Telefone: " + protocolo.getUsuario().getTelefone()); | ||
132 | + Interessado[] interessados = { interessado }; | ||
133 | + return interessados; | ||
134 | + } | ||
135 | + | ||
136 | + private Documento montarDocumento(String idProcedimento, String descricao, String observacao, String nomeArquivo, | ||
137 | + String conteudo, String tipo, String idSerie, String data) throws IOException { | ||
138 | + Documento documento = new Documento(); | ||
139 | + documento.setIdProcedimento(idProcedimento); | ||
140 | + documento.setDescricao(descricao); | ||
141 | + documento.setObservacao(observacao); | ||
142 | + documento.setNomeArquivo(nomeArquivo); | ||
143 | + documento.setConteudo(conteudo); | ||
144 | + documento.setTipo(tipo); | ||
145 | + documento.setIdSerie(idSerie); | ||
146 | + documento.setData(data); | ||
147 | + | ||
148 | + return documento; | ||
149 | + } | ||
150 | + | ||
151 | + /** | ||
152 | + * Função para enviar para múltiplos SEI's | ||
153 | + * | ||
154 | + * @author Matheus de Carvalho Sobrinho | ||
155 | + * @param protocolo | ||
156 | + * @param idUsuario | ||
157 | + * @param sei | ||
158 | + * @param tipo | ||
159 | + * @param mapConfig | ||
160 | + * @param idSei | ||
161 | + * @return | ||
162 | + */ | ||
163 | + public String enviarDocumentoComSei(Protocolo protocolo, Long idUsuario, String sei, String tipo, | ||
164 | + Map<String, String> mapConfig, String idSei) { | ||
165 | + | ||
166 | + if (sei != null && tipo != null && !sei.isEmpty() && tipo.equals("existente")) { | ||
167 | + enviarDocumento(protocolo, idUsuario, sei, mapConfig, idSei); | ||
168 | + } else { | ||
169 | + try { | ||
170 | + List<Arquivos> arquivosList = arquivosRepository.findByProtocolo(protocolo); | ||
171 | + SeiBindingStub seiBindingStubMontado = this.montarURLEndPoint(mapConfig.get("URL_ENDPOINT")); | ||
172 | + Assunto[] assuntos = this.montarAssunto(mapConfig.get("ASSUNTO_CODIGO_ESTRUTURADO")); | ||
173 | + Interessado[] interessados = this.montarInteressado(protocolo); | ||
174 | + Procedimento procedimento = this.montarProcedimento(assuntos, mapConfig, protocolo, arquivosList.size()); | ||
175 | + procedimento.setInteressados(interessados); | ||
176 | + | ||
177 | + // Verificar se é um tipo informado | ||
178 | + if (tipo.equals("novo")) { | ||
179 | + procedimento.setNumeroProtocolo(sei); | ||
180 | + procedimento.setDataAutuacao(getDateTime()); | ||
181 | + } | ||
182 | + | ||
183 | + procedimento.setIdTipoProcedimento(mapConfig.get("PROCEDIMENTO_ID_TIPO_PROCEDIMENTO")); | ||
184 | + | ||
185 | + RetornoGeracaoProcedimento retornoGeracaoProcedimento = seiBindingStubMontado.gerarProcedimento( | ||
186 | + mapConfig.get("SIGLA_SISTEMA"), mapConfig.get("IDENTIFICACAO_SERVICO"), | ||
187 | + mapConfig.get("ID_UNIDADE"), procedimento, null, null, null, "S", "N", null, null, null, null, | ||
188 | + null); | ||
189 | + | ||
190 | + arquivosList.forEach(arquivo -> { | ||
191 | + try { | ||
192 | + Path path = getDefault() | ||
193 | + .getPath(configuracaoRepository.recuperarValor(ConfiguracaoEnum.STORAGE_PATH)) | ||
194 | + .resolve(arquivo.getNome()); | ||
195 | + | ||
196 | + Documento documento = this.montarDocumento( | ||
197 | + retornoGeracaoProcedimento.getProcedimentoFormatado().replace(".", "").replace("/", "") | ||
198 | + .replace("-", ""), | ||
199 | + arquivo.getDescricaoDocumento(), | ||
200 | + protocolo.toString() + "\n" + "Quantidade Arquivos: " + arquivosList.size(), | ||
201 | + arquivo.getNomeOriginal(), | ||
202 | + Base64Utils.encodeToString(FileUtils.readFileToByteArray(path.toFile())), | ||
203 | + mapConfig.get("DOCUMENTO_TIPO"), recuperarCodigoSeiDeArquivo(arquivo, idSei), | ||
204 | + protocolo.getDataFormatada()); | ||
205 | + | ||
206 | + documento.setNivelAcesso(mapConfig.get("DOCUMENTO_NIVEL_ACESSO")); | ||
207 | + documento.setConteudo(Base64Utils.encodeToString(FileUtils.readFileToByteArray(path.toFile()))); | ||
208 | + | ||
209 | + RetornoInclusaoDocumento retornoInclusaoDeDocumento = seiBindingStubMontado.incluirDocumento( | ||
210 | + mapConfig.get("SIGLA_SISTEMA"), mapConfig.get("IDENTIFICACAO_SERVICO"), | ||
211 | + mapConfig.get("ID_UNIDADE"), documento); | ||
212 | + System.out.println("Link = " + retornoInclusaoDeDocumento.getLinkAcesso()); | ||
213 | + | ||
214 | + } catch (IOException e) { | ||
215 | + protocolo.setErroWs("[ERRO INCLUIR DOCUMENTO] " + e.getMessage()); | ||
216 | + throw new RuntimeException(e.getMessage()); | ||
217 | + } | ||
218 | + }); | ||
219 | + | ||
220 | + protocolo.setLinkSEI(retornoGeracaoProcedimento.getLinkAcesso()); | ||
221 | + protocolo.setNupe(retornoGeracaoProcedimento.getProcedimentoFormatado()); | ||
222 | + salvarProtocoloService.aprovar(protocolo, idUsuario); | ||
223 | + | ||
224 | + mailer.enviarAceite(protocolo); | ||
225 | + | ||
226 | + return retornoGeracaoProcedimento.getProcedimentoFormatado(); | ||
227 | + } catch (Exception e) { | ||
228 | + protocolo.setErroWs("[ERRO GERAR PROCEDIMENTO] " + e.getMessage()); | ||
229 | + e.printStackTrace(); | ||
230 | + rollback(protocolo, e.getMessage()); | ||
231 | + } | ||
232 | + } | ||
233 | + | ||
234 | + return null; | ||
235 | + } | ||
236 | + | ||
237 | + public String enviarDocumento(Protocolo protocolo, Long idUsuario, String sei, Map<String, String> mapConfig, | ||
238 | + String idSei) { | ||
239 | + try { | ||
240 | + | ||
241 | + URL urlEndpoint = new URL(mapConfig.get("URL_ENDPOINT")); | ||
242 | + SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); | ||
243 | + seiBindingStub.setTimeout(600000 * 60); | ||
244 | + | ||
245 | + List<Arquivos> arquivosList = arquivosRepository.findByProtocolo(protocolo); | ||
246 | + | ||
247 | + arquivosList.forEach(arquivo -> { | ||
248 | + try { | ||
249 | + Documento documento = new Documento(); | ||
250 | + // documento.setIdProcedimento( sei ); | ||
251 | + documento.setIdProcedimento(sei.replace(".", "").replace("/", "").replace("-", "")); | ||
252 | + documento.setObservacao(protocolo.toString()); | ||
253 | + documento.setDescricao(arquivo.getDescricaoDocumento()); | ||
254 | + documento.setNomeArquivo(arquivo.getNomeOriginal()); | ||
255 | + | ||
256 | + documento.setTipo(mapConfig.get("DOCUMENTO_TIPO")); | ||
257 | + // documento.setIdSerie(env.getProperty("documento.id-serie")); //TODO: Alterar | ||
258 | + // para pegar da combo Tipo Documento | ||
259 | + | ||
260 | + documento.setIdSerie(recuperarCodigoSeiDeArquivo(arquivo, idSei)); // Tipo documento vindo do banco | ||
261 | + // de | ||
262 | + // dados | ||
263 | + documento.setData(protocolo.getDataFormatada()); | ||
264 | + documento.setNivelAcesso(mapConfig.get("DOCUMENTO_NIVEL_ACESSO")); | ||
265 | + | ||
266 | + Path path = getDefault() | ||
267 | + .getPath(configuracaoRepository.recuperarValor(ConfiguracaoEnum.STORAGE_PATH)) | ||
268 | + .resolve(arquivo.getNome()); | ||
269 | + documento.setConteudo(Base64Utils.encodeToString(FileUtils.readFileToByteArray(path.toFile()))); | ||
270 | + | ||
271 | + seiBindingStub.incluirDocumento(mapConfig.get("SIGLA_SISTEMA"), | ||
272 | + mapConfig.get("IDENTIFICACAO_SERVICO"), mapConfig.get("ID_UNIDADE"), documento); | ||
273 | + } catch (IOException e) { | ||
274 | + protocolo.setErroWs("[ERRO INCLUIR DOCUMENTO] " + e.getMessage()); | ||
275 | + throw new RuntimeException(e.getMessage()); | ||
276 | + } | ||
277 | + }); | ||
278 | + | ||
279 | + protocolo.setNupe(sei); | ||
280 | + salvarProtocoloService.aprovar(protocolo, idUsuario); | ||
281 | + | ||
282 | + protocolo.setArquivosList(arquivosRepository.findByProtocolo(protocolo)); | ||
283 | + mailer.enviarAceite(protocolo); | ||
284 | + | ||
285 | + return sei; | ||
286 | + } catch (Exception e) { | ||
287 | + e.printStackTrace(); | ||
288 | + rollback(protocolo, e.getMessage()); | ||
289 | + } | ||
290 | + | ||
291 | + return null; | ||
292 | + | ||
293 | + } | ||
294 | + | ||
295 | + private String recuperarCodigoSeiDeArquivo(Arquivos arquivo, String idSei) { | ||
296 | + if (idSei.equals("2")) { | ||
297 | + return arquivo.getTipoDocumento().getCodigoSei(); | ||
298 | + } else if (idSei.equals("6")) { | ||
299 | + return arquivo.getTipoDocumento().getCodigoSeiMf(); | ||
300 | + } else if (idSei.equals("7")) { | ||
301 | + return arquivo.getTipoDocumento().getCodigoSeiMdic(); | ||
302 | + } | ||
303 | + return null; | ||
304 | + } | ||
305 | + | ||
306 | + public RetornoConsultaProcedimento consultarProtocoloSei(String sei) { | ||
307 | + Optional<String> retorno = Optional.ofNullable(null); | ||
308 | + RetornoConsultaProcedimento retornoConsultaProcedimento = new RetornoConsultaProcedimento(); | ||
309 | + try { | ||
310 | + URL urlEndpoint = new URL(configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_ENDPOINT)); | ||
311 | + SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); | ||
312 | + retornoConsultaProcedimento = seiBindingStub.consultarProcedimento( | ||
313 | + configuracaoRepository.recuperarValor(ConfiguracaoEnum.SIGLA_SISTEMA), | ||
314 | + configuracaoRepository.recuperarValor(ConfiguracaoEnum.IDENTIFICACAO_SERVICO), | ||
315 | + configuracaoRepository.recuperarValor(ConfiguracaoEnum.ID_UNIDADE), sei, "S", "S", "S", "S", "S", | ||
316 | + "S", "S", "S", "S"); | ||
317 | + } catch (Exception e) { | ||
318 | + e.printStackTrace(); | ||
319 | + } | ||
320 | + return retornoConsultaProcedimento; | ||
321 | + } | ||
322 | + | ||
323 | +// /** | ||
324 | +// * Enviar para o SEI primeiramente definido | ||
325 | +// * | ||
326 | +// * @param protocolo | ||
327 | +// * @param idUsuario | ||
328 | +// * @param sei | ||
329 | +// * @param tipo | ||
330 | +// * @return | ||
331 | +// */ | ||
332 | +// public String enviarSeiPadrao(Protocolo protocolo, Long idUsuario, String sei, String tipo, | ||
333 | +// Map<String, String> mapConfig, String idSei) { | ||
334 | +// | ||
335 | +// if (sei != null && tipo != null && !sei.isEmpty() && tipo.equals("existente")) { | ||
336 | +// enviarDocumentoPadrao(protocolo, idUsuario, sei, mapConfig, idSei); | ||
337 | +// } else { | ||
338 | +// | ||
339 | +// try { | ||
340 | +// URL urlEndpoint = new URL(configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_ENDPOINT)); | ||
341 | +// SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); | ||
342 | +// seiBindingStub.setTimeout(600000 * 60); | ||
343 | +// | ||
344 | +// Procedimento procedimento = new Procedimento(); | ||
345 | +// if (tipo.equals("novo")) { | ||
346 | +// procedimento.setNumeroProtocolo(sei); | ||
347 | +// procedimento.setDataAutuacao(getDateTime()); | ||
348 | +// } | ||
349 | +// | ||
350 | +// procedimento.setAssuntos(recuperaAssunto()); | ||
351 | +// procedimento.setEspecificacao( | ||
352 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.PROCEDIMENTO_ESPECIFICADO)); | ||
353 | +// | ||
354 | +// Interessado interessado = new Interessado(); | ||
355 | +// interessado.setNome(protocolo.getUsuario().getNome()); | ||
356 | +// interessado.setSigla("Telefone: " + protocolo.getUsuario().getTelefone()); | ||
357 | +// Interessado[] interessados = { interessado }; | ||
358 | +// | ||
359 | +// procedimento.setInteressados(interessados); | ||
360 | +// | ||
361 | +// procedimento.setNivelAcesso( | ||
362 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.PROCEDIMENTO_NIVEL_ACESSO)); | ||
363 | +// procedimento.setIdTipoProcedimento( | ||
364 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.PROCEDIMENTO_ID_TIPO_PROCEDIMENTO)); | ||
365 | +// | ||
366 | +// List<Arquivos> arquivosList = arquivosRepository.findByProtocolo(protocolo); | ||
367 | +// | ||
368 | +// procedimento.setObservacao(protocolo.toString() + "\n" + "Quantidade Arquivos: " + arquivosList.size()); | ||
369 | +// | ||
370 | +// // criando o procedimento | ||
371 | +// RetornoGeracaoProcedimento retornoGeracaoProcedimento = seiBindingStub.gerarProcedimento( | ||
372 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.SIGLA_SISTEMA), | ||
373 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.IDENTIFICACAO_SERVICO), | ||
374 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.ID_UNIDADE), procedimento, null, null, | ||
375 | +// null, "N", "N", null, null, "N", null, null); | ||
376 | +// | ||
377 | +// arquivosList.forEach(arquivo -> { | ||
378 | +// try { | ||
379 | +// Documento documento = new Documento(); | ||
380 | +// documento.setIdProcedimento(retornoGeracaoProcedimento.getProcedimentoFormatado() | ||
381 | +// .replace(".", "").replace("/", "").replace("-", "")); | ||
382 | +// documento.setObservacao(protocolo.toString()); | ||
383 | +// documento.setDescricao(arquivo.getDescricaoDocumento()); | ||
384 | +// documento.setNomeArquivo(arquivo.getNomeOriginal()); | ||
385 | +// documento.setTipo(configuracaoRepository.recuperarValor(ConfiguracaoEnum.DOCUMENTO_TIPO)); | ||
386 | +// // documento.setIdSerie(env.getProperty("documento.id-serie")); //TODO: Alterar | ||
387 | +// // para pegar da combo Tipo Documento | ||
388 | +// documento.setIdSerie(arquivo.getTipoDocumento().getCodigoSei()); // Tipo documento vindo do | ||
389 | +// // banco de dados | ||
390 | +// documento.setData(protocolo.getDataFormatada()); | ||
391 | +// documento.setNivelAcesso( | ||
392 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.DOCUMENTO_NIVEL_ACESSO)); | ||
393 | +// | ||
394 | +// Path path = getDefault() | ||
395 | +// .getPath(configuracaoRepository.recuperarValor(ConfiguracaoEnum.STORAGE_PATH)) | ||
396 | +// .resolve(arquivo.getNome()); | ||
397 | +// documento.setConteudo(Base64Utils.encodeToString(FileUtils.readFileToByteArray(path.toFile()))); | ||
398 | +// | ||
399 | +// seiBindingStub.incluirDocumento( | ||
400 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.SIGLA_SISTEMA), | ||
401 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.IDENTIFICACAO_SERVICO), | ||
402 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.ID_UNIDADE), documento); | ||
403 | +// } catch (IOException e) { | ||
404 | +// protocolo.setErroWs("[ERRO INCLUIR DOCUMENTO] " + e.getMessage()); | ||
405 | +// throw new RuntimeException(e.getMessage()); | ||
406 | +// } | ||
407 | +// }); | ||
408 | +// | ||
409 | +// protocolo.setLinkSEI(retornoGeracaoProcedimento.getLinkAcesso()); | ||
410 | +// protocolo.setNupe(retornoGeracaoProcedimento.getProcedimentoFormatado()); | ||
411 | +// salvarProtocoloService.aprovar(protocolo, idUsuario); | ||
412 | +// | ||
413 | +// protocolo.setArquivosList(arquivosList); | ||
414 | +// mailer.enviarAceite(protocolo); | ||
415 | +// | ||
416 | +// return retornoGeracaoProcedimento.getProcedimentoFormatado(); | ||
417 | +// | ||
418 | +// } catch (Exception e) { | ||
419 | +// protocolo.setErroWs("[ERRO GERAR PROCEDIMENTO] " + e.getMessage()); | ||
420 | +// e.printStackTrace(); | ||
421 | +// rollback(protocolo, e.getMessage()); | ||
422 | +// } | ||
423 | +// } | ||
424 | +// | ||
425 | +// return null; | ||
426 | +// } | ||
427 | +// | ||
428 | +// public String enviarDocumentoPadrao(Protocolo protocolo, Long idUsuario, String sei, Map<String, String> mapConfig, | ||
429 | +// String idSei) { | ||
430 | +// String observacaoAnterior = ""; | ||
431 | +// try { | ||
432 | +// | ||
433 | +// URL urlEndpoint = new URL(configuracaoRepository.recuperarValor(ConfiguracaoEnum.URL_ENDPOINT)); | ||
434 | +// SeiBindingStub seiBindingStub = new SeiBindingStub(urlEndpoint, null); | ||
435 | +// seiBindingStub.setTimeout(600000 * 60); | ||
436 | +// | ||
437 | +// List<Arquivos> arquivosList = arquivosRepository.findByProtocolo(protocolo); | ||
438 | +// | ||
439 | +// arquivosList.forEach(arquivo -> { | ||
440 | +// try { | ||
441 | +// Documento documento = new Documento(); | ||
442 | +// // documento.setIdProcedimento( sei ); | ||
443 | +// documento.setIdProcedimento(sei.replace(".", "").replace("/", "").replace("-", "")); | ||
444 | +// documento.setObservacao(protocolo.toString()); | ||
445 | +// documento.setDescricao(arquivo.getDescricaoDocumento()); | ||
446 | +// documento.setNomeArquivo(arquivo.getNomeOriginal()); | ||
447 | +// documento.setTipo(configuracaoRepository.recuperarValor(ConfiguracaoEnum.DOCUMENTO_TIPO)); | ||
448 | +// // documento.setIdSerie(env.getProperty("documento.id-serie")); //TODO: Alterar | ||
449 | +// // para pegar da combo Tipo Documento | ||
450 | +// documento.setIdSerie(arquivo.getTipoDocumento().getCodigoSei()); // Tipo documento vindo do banco de | ||
451 | +// // dados | ||
452 | +// documento.setData(protocolo.getDataFormatada()); | ||
453 | +// documento.setNivelAcesso( | ||
454 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.DOCUMENTO_NIVEL_ACESSO)); | ||
455 | +// | ||
456 | +// Path path = getDefault() | ||
457 | +// .getPath(configuracaoRepository.recuperarValor(ConfiguracaoEnum.STORAGE_PATH)) | ||
458 | +// .resolve(arquivo.getNome()); | ||
459 | +// documento.setConteudo(Base64Utils.encodeToString(FileUtils.readFileToByteArray(path.toFile()))); | ||
460 | +// | ||
461 | +// seiBindingStub.incluirDocumento( | ||
462 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.SIGLA_SISTEMA), | ||
463 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.IDENTIFICACAO_SERVICO), | ||
464 | +// configuracaoRepository.recuperarValor(ConfiguracaoEnum.ID_UNIDADE), documento); | ||
465 | +// } catch (IOException e) { | ||
466 | +// protocolo.setErroWs("[ERRO INCLUIR DOCUMENTO] " + e.getMessage()); | ||
467 | +// throw new RuntimeException(e.getMessage()); | ||
468 | +// } | ||
469 | +// }); | ||
470 | +// | ||
471 | +// protocolo.setNupe(sei); | ||
472 | +// // protocolo.setNupe( retornoGeracaoProcedimento.getProcedimentoFormatado() ); | ||
473 | +// salvarProtocoloService.aprovar(protocolo, idUsuario); | ||
474 | +// | ||
475 | +// protocolo.setArquivosList(arquivosRepository.findByProtocolo(protocolo)); | ||
476 | +// mailer.enviarAceite(protocolo); | ||
477 | +// | ||
478 | +// /* | ||
479 | +// * arquivosList.forEach( arquivo -> { arquivoStorage.excluir( arquivo.getNome() | ||
480 | +// * ); } ); | ||
481 | +// */ | ||
482 | +// | ||
483 | +// return sei; | ||
484 | +// | ||
485 | +// } catch (Exception e) { | ||
486 | +// e.printStackTrace(); | ||
487 | +// rollback(protocolo, e.getMessage()); | ||
488 | +// } | ||
489 | +// | ||
490 | +// return null; | ||
491 | +// | ||
492 | +// } | ||
493 | + | ||
494 | + | ||
295 | } | 495 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/services/AutoCadastroService.java
1 | package br.gov.planejamento.dipla.protocolo.services; | 1 | package br.gov.planejamento.dipla.protocolo.services; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | 3 | import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; |
4 | -import br.gov.planejamento.dipla.protocolo.entities.AcaoEnum; | ||
5 | -import br.gov.planejamento.dipla.protocolo.entities.Grupo; | ||
6 | -import br.gov.planejamento.dipla.protocolo.entities.LoginAttempt; | ||
7 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | ||
8 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
9 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | 4 | +import br.gov.planejamento.dipla.protocolo.entities.*; |
10 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; | 5 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; |
11 | -import br.gov.planejamento.dipla.protocolo.repositories.GrupoRepository; | ||
12 | -import br.gov.planejamento.dipla.protocolo.repositories.LoginAttemptRepository; | ||
13 | -import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; | ||
14 | -import br.gov.planejamento.dipla.protocolo.repositories.UsuarioBrasilCidadaoRepository; | ||
15 | -import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | 6 | +import br.gov.planejamento.dipla.protocolo.repositories.*; |
16 | import br.gov.planejamento.dipla.protocolo.services.exeptions.EmailUsuarioJaCadastradoException; | 7 | import br.gov.planejamento.dipla.protocolo.services.exeptions.EmailUsuarioJaCadastradoException; |
17 | import br.gov.planejamento.dipla.protocolo.services.exeptions.SenhaObrigatoriaUsuarioException; | 8 | import br.gov.planejamento.dipla.protocolo.services.exeptions.SenhaObrigatoriaUsuarioException; |
18 | - | ||
19 | import org.apache.commons.codec.digest.DigestUtils; | 9 | import org.apache.commons.codec.digest.DigestUtils; |
20 | import org.springframework.beans.factory.annotation.Autowired; | 10 | import org.springframework.beans.factory.annotation.Autowired; |
21 | import org.springframework.security.crypto.password.PasswordEncoder; | 11 | import org.springframework.security.crypto.password.PasswordEncoder; |
@@ -23,9 +13,6 @@ import org.springframework.stereotype.Service; | @@ -23,9 +13,6 @@ import org.springframework.stereotype.Service; | ||
23 | import org.springframework.transaction.annotation.Transactional; | 13 | import org.springframework.transaction.annotation.Transactional; |
24 | import org.springframework.util.Base64Utils; | 14 | import org.springframework.util.Base64Utils; |
25 | import org.springframework.util.StringUtils; | 15 | import org.springframework.util.StringUtils; |
26 | -import org.springframework.web.bind.annotation.GetMapping; | ||
27 | -import org.springframework.web.bind.annotation.PathVariable; | ||
28 | -import org.springframework.web.servlet.ModelAndView; | ||
29 | 16 | ||
30 | import java.util.ArrayList; | 17 | import java.util.ArrayList; |
31 | import java.util.List; | 18 | import java.util.List; |
@@ -93,8 +80,8 @@ public class AutoCadastroService { | @@ -93,8 +80,8 @@ public class AutoCadastroService { | ||
93 | } | 80 | } |
94 | 81 | ||
95 | @Transactional | 82 | @Transactional |
96 | - public void cadastrarBrasilCidadao(UsuarioBrasilCidadaoDto usuarioretorno) { | ||
97 | - | 83 | + public Usuario cadastrarBrasilCidadao(UsuarioBrasilCidadaoDto usuarioretorno) { |
84 | + | ||
98 | UsuarioBrasilCidadao usuarioBrasilCidadao= new UsuarioBrasilCidadao(); | 85 | UsuarioBrasilCidadao usuarioBrasilCidadao= new UsuarioBrasilCidadao(); |
99 | Usuario usuario = new Usuario(); | 86 | Usuario usuario = new Usuario(); |
100 | usuario.setNome(usuarioretorno.getNome()); | 87 | usuario.setNome(usuarioretorno.getNome()); |
@@ -104,18 +91,22 @@ public class AutoCadastroService { | @@ -104,18 +91,22 @@ public class AutoCadastroService { | ||
104 | List<Grupo> grupos = new ArrayList<>(); | 91 | List<Grupo> grupos = new ArrayList<>(); |
105 | grupos.add(grupoRepository.findOne(3L)); | 92 | grupos.add(grupoRepository.findOne(3L)); |
106 | usuario.setGrupos(grupos); | 93 | usuario.setGrupos(grupos); |
107 | - | 94 | + |
108 | salvar(usuario,grupos,false,false); | 95 | salvar(usuario,grupos,false,false); |
109 | - | 96 | + |
97 | + return usuario; | ||
98 | + | ||
110 | } | 99 | } |
111 | 100 | ||
112 | - public void migrarBrasilCidadao(UsuarioBrasilCidadaoDto usuarioretorno) { | 101 | + public UsuarioBrasilCidadao migrarBrasilCidadao(UsuarioBrasilCidadaoDto usuarioretorno, Usuario usuario) { |
113 | UsuarioBrasilCidadao usuarioBrasilCidadao= new UsuarioBrasilCidadao(); | 102 | UsuarioBrasilCidadao usuarioBrasilCidadao= new UsuarioBrasilCidadao(); |
114 | - //Salvando CPF | ||
115 | - usuarioBrasilCidadao.setCpf(usuarioretorno.getCpf()); | ||
116 | - usuarioBrasilCidadao.setToken(usuarioretorno.getToken()); | ||
117 | - usuarioBrasilCidadao.setAtivo(Boolean.FALSE); | ||
118 | - usuarioBrasilCidadaoRepository.save(usuarioBrasilCidadao); | 103 | + usuarioBrasilCidadao.setEmail(usuarioretorno.getEmail()); |
104 | + usuarioBrasilCidadao.setUsuario(usuario); | ||
105 | + usuarioBrasilCidadao.setCpf(usuarioretorno.getCpf()); | ||
106 | + usuarioBrasilCidadao.setToken(usuarioretorno.getToken()); | ||
107 | + usuarioBrasilCidadao.setAtivo(Boolean.FALSE); | ||
108 | + usuarioBrasilCidadaoRepository.save(usuarioBrasilCidadao); | ||
109 | + return usuarioBrasilCidadao; | ||
119 | } | 110 | } |
120 | public void atualizarBrasilCidadao(UsuarioBrasilCidadaoDto usuarioretorno, UsuarioBrasilCidadao usuarioBrasilCidadao, Boolean atualizaEmail) { | 111 | public void atualizarBrasilCidadao(UsuarioBrasilCidadaoDto usuarioretorno, UsuarioBrasilCidadao usuarioBrasilCidadao, Boolean atualizaEmail) { |
121 | 112 |
src/main/java/br/gov/planejamento/dipla/protocolo/services/BrasilCidadaoService.java
@@ -6,44 +6,38 @@ | @@ -6,44 +6,38 @@ | ||
6 | package br.gov.planejamento.dipla.protocolo.services; | 6 | package br.gov.planejamento.dipla.protocolo.services; |
7 | 7 | ||
8 | import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; | 8 | import br.gov.planejamento.dipla.protocolo.config.BrasilCidadaoConfig; |
9 | -import br.gov.planejamento.dipla.protocolo.dto.TokenRetornoDto; | ||
10 | import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | 9 | import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; |
11 | -import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | ||
12 | -import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; | ||
13 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; | 10 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; |
14 | import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | 11 | import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; |
15 | -import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | ||
16 | -import br.gov.planejamento.dipla.protocolo.repositories.TiposDocumentoRepository; | ||
17 | import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; | 12 | import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; |
18 | -import br.gov.planejamento.dipla.protocolo.security.BrasilCidadaoUserDetails; | ||
19 | import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | 13 | import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; |
20 | - | 14 | +import org.jose4j.json.internal.json_simple.JSONArray; |
15 | +import org.jose4j.json.internal.json_simple.JSONObject; | ||
16 | +import org.jose4j.json.internal.json_simple.parser.JSONParser; | ||
17 | +import org.jose4j.jwk.PublicJsonWebKey; | ||
18 | +import org.jose4j.jwt.JwtClaims; | ||
19 | +import org.jose4j.jwt.consumer.JwtConsumer; | ||
20 | +import org.jose4j.jwt.consumer.JwtConsumerBuilder; | ||
21 | import org.springframework.beans.factory.annotation.Autowired; | 21 | import org.springframework.beans.factory.annotation.Autowired; |
22 | -import org.springframework.http.HttpEntity; | ||
23 | -import org.springframework.http.HttpMethod; | ||
24 | -import org.springframework.http.ResponseEntity; | ||
25 | import org.springframework.http.converter.StringHttpMessageConverter; | 22 | import org.springframework.http.converter.StringHttpMessageConverter; |
26 | import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; | 23 | import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; |
27 | import org.springframework.security.core.GrantedAuthority; | 24 | import org.springframework.security.core.GrantedAuthority; |
28 | import org.springframework.security.core.authority.SimpleGrantedAuthority; | 25 | import org.springframework.security.core.authority.SimpleGrantedAuthority; |
29 | -import org.springframework.security.core.context.SecurityContextHolder; | ||
30 | import org.springframework.stereotype.Service; | 26 | import org.springframework.stereotype.Service; |
31 | -import org.springframework.transaction.annotation.Transactional; | ||
32 | import org.springframework.web.client.RestTemplate; | 27 | import org.springframework.web.client.RestTemplate; |
33 | -import org.springframework.web.servlet.ModelAndView; | ||
34 | - | ||
35 | -import com.fasterxml.jackson.databind.ObjectMapper; | ||
36 | 28 | ||
29 | +import javax.net.ssl.HttpsURLConnection; | ||
30 | +import java.io.BufferedReader; | ||
31 | +import java.io.InputStreamReader; | ||
32 | +import java.net.URL; | ||
37 | import java.nio.charset.Charset; | 33 | import java.nio.charset.Charset; |
38 | -import java.util.Collection; | ||
39 | -import java.util.HashSet; | ||
40 | -import java.util.List; | ||
41 | -import java.util.Optional; | ||
42 | -import java.util.Set; | 34 | +import java.util.*; |
35 | + | ||
36 | + | ||
43 | 37 | ||
44 | /** | 38 | /** |
45 | * | 39 | * |
46 | - * @author leonardo | 40 | + * @author leonardo, Jose Fortes |
47 | */ | 41 | */ |
48 | @Service | 42 | @Service |
49 | public class BrasilCidadaoService { | 43 | public class BrasilCidadaoService { |
@@ -55,63 +49,148 @@ public class BrasilCidadaoService { | @@ -55,63 +49,148 @@ public class BrasilCidadaoService { | ||
55 | 49 | ||
56 | @Autowired | 50 | @Autowired |
57 | private BrasilCidadaoConfig brasilCidadaoOpenIdConnectConfig; | 51 | private BrasilCidadaoConfig brasilCidadaoOpenIdConnectConfig; |
58 | - | ||
59 | - | ||
60 | - public UsuarioBrasilCidadaoDto autenticarBrasilCidadao(String code) throws Exception{ | ||
61 | - UsuarioBrasilCidadaoDto usuarioretorno = new UsuarioBrasilCidadaoDto(); | ||
62 | - | ||
63 | - RestTemplate restTemplate = new RestTemplate(); | ||
64 | - restTemplate.getMessageConverters().add(0, new StringHttpMessageConverter(Charset.forName("UTF-8"))); | ||
65 | - | ||
66 | - HttpEntity<String> entityToken = new HttpEntity<String>(brasilCidadaoOpenIdConnectConfig.gerarRequisicaoAtributo(code), brasilCidadaoOpenIdConnectConfig.gerarRequisicaoHeader()); | ||
67 | - | ||
68 | - //Enviando autorização com code | ||
69 | - | ||
70 | - ResponseEntity<String> respEntToken = restTemplate.exchange(brasilCidadaoOpenIdConnectConfig.gerarUrlToken(), HttpMethod.POST, entityToken, String.class); | ||
71 | - | ||
72 | - if(respEntToken.getStatusCodeValue()!=200) { | ||
73 | - throw new Exception("Erro no recebimento do token"); | ||
74 | - } | ||
75 | - | ||
76 | - //Capturando token | ||
77 | - TokenRetornoDto retorno = new ObjectMapper().readValue(respEntToken.getBody().toString(), TokenRetornoDto.class); | ||
78 | - | ||
79 | - //Enviando token | ||
80 | - ResponseEntity<String> respEntUsuario = restTemplate.exchange(brasilCidadaoOpenIdConnectConfig.gerarUrlDadosUsuarios(retorno.getAccess_token()),HttpMethod.GET,null,String.class); | ||
81 | - | ||
82 | - if(respEntUsuario.getStatusCodeValue()!=200) { | ||
83 | - throw new Exception("Erro no recebimento dos dados do usuario"); | ||
84 | - } | ||
85 | - | ||
86 | - //Capturando dados usuario | ||
87 | - usuarioretorno = new ObjectMapper().readValue(respEntUsuario.getBody().toString() , UsuarioBrasilCidadaoDto.class); | ||
88 | - usuarioretorno.setToken(retorno.getAccess_token()); | ||
89 | - | ||
90 | - return usuarioretorno; | ||
91 | - } | ||
92 | - | ||
93 | - public UsernamePasswordAuthenticationToken autenticarProtocolo(UsuarioBrasilCidadaoDto usuarioretorno) throws Exception { | ||
94 | - Optional<UsuarioBrasilCidadao> usuarioBrasilCidadao = usuarioRepository.buscarBrasilCidadao(usuarioretorno.getCpf()); | ||
95 | - | ||
96 | - BrasilCidadaoUserDetails userDetails = new BrasilCidadaoUserDetails(usuarioBrasilCidadao.get().getUsuario().getEmail()); | ||
97 | - Optional<Usuario> usuario = usuarioRepository.findByEmail(usuarioBrasilCidadao.get().getUsuario().getEmail()); | ||
98 | - | ||
99 | - | ||
100 | - List<String> permissoes = usuarioRepository.permissoes(usuario.get()); | 52 | + |
53 | + | ||
54 | + public UsernamePasswordAuthenticationToken autenticarProtocolo(UsuarioBrasilCidadaoDto usuarioretorno) throws Exception { | ||
55 | + Optional<UsuarioBrasilCidadao> usuarioBrasilCidadao = usuarioRepository.buscarBrasilCidadao(usuarioretorno.getCpf()); | ||
56 | + | ||
57 | + Optional<Usuario> usuario = usuarioRepository.findByEmail(usuarioBrasilCidadao.get().getUsuario().getEmail()); | ||
58 | + | ||
101 | usuario.get().setTemPerfilBrasilCidadao(true); | 59 | usuario.get().setTemPerfilBrasilCidadao(true); |
102 | - | ||
103 | - UsuarioSistema usuarioSistema = new UsuarioSistema(usuario.get(),getPermissoes(),true); | ||
104 | - | ||
105 | - UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken( | ||
106 | - usuarioSistema, | ||
107 | - usuarioretorno.getToken(),getPermissoes()); | 60 | + |
61 | + UsuarioSistema usuarioSistema = new UsuarioSistema(usuario.get(), getPermissoes(), true); | ||
62 | + | ||
63 | + UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken( | ||
64 | + usuarioSistema, | ||
65 | + usuarioretorno.getToken(), getPermissoes()); | ||
108 | return auth; | 66 | return auth; |
109 | - } | ||
110 | - | ||
111 | - private Collection<? extends GrantedAuthority> getPermissoes() { | 67 | + } |
68 | + | ||
69 | + private Collection<? extends GrantedAuthority> getPermissoes() { | ||
112 | Set<SimpleGrantedAuthority> authorities = new HashSet<>(); | 70 | Set<SimpleGrantedAuthority> authorities = new HashSet<>(); |
113 | authorities.add(new SimpleGrantedAuthority("ROLE_BRASILCIDADAO")); | 71 | authorities.add(new SimpleGrantedAuthority("ROLE_BRASILCIDADAO")); |
114 | return authorities; | 72 | return authorities; |
115 | } | 73 | } |
116 | 74 | ||
75 | + public UsuarioBrasilCidadaoDto autenticarBrasilCidadao(String code) throws Exception { | ||
76 | + UsuarioBrasilCidadaoDto usuarioRetorno = new UsuarioBrasilCidadaoDto(); | ||
77 | + | ||
78 | + RestTemplate restTemplate = new RestTemplate(); | ||
79 | + restTemplate.getMessageConverters().add(0, new StringHttpMessageConverter(Charset.forName("UTF-8"))); | ||
80 | + | ||
81 | + //Enviando autorização com code | ||
82 | + try { | ||
83 | + String idToken = receberToken(code); | ||
84 | + usuarioRetorno = recuperarInformacoesUsuarioBrasilCidadao(idToken); | ||
85 | + return usuarioRetorno; | ||
86 | + } catch (Exception e) { | ||
87 | + msgErro = e.getMessage(); | ||
88 | + System.out.println(msgErro); | ||
89 | + } | ||
90 | + | ||
91 | + return null; | ||
92 | + } | ||
93 | + | ||
94 | + private String receberToken(String code) throws Exception{ | ||
95 | + String idToken = ""; | ||
96 | + try { | ||
97 | + String tokens = extractToken(code); | ||
98 | + org.jose4j.json.internal.json_simple.parser.JSONParser parser = new JSONParser(); | ||
99 | + org.jose4j.json.internal.json_simple.JSONObject tokensJson = (JSONObject) parser.parse(tokens); | ||
100 | + idToken = (String) tokensJson.get("id_token"); | ||
101 | + } catch (Exception e) { | ||
102 | + msgErro = e.getMessage(); | ||
103 | + System.out.println(msgErro); | ||
104 | + } | ||
105 | + | ||
106 | + return idToken; | ||
107 | + } | ||
108 | + | ||
109 | + private String extractToken(String code) throws Exception { | ||
110 | + String retorno = ""; | ||
111 | + URL url = new URL(brasilCidadaoOpenIdConnectConfig.gerarURLToken(code)); | ||
112 | + HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); | ||
113 | + conn.setRequestMethod("POST"); | ||
114 | + conn.setRequestProperty("Accept", "application/json"); | ||
115 | + conn.setRequestProperty("authorization", String.format("Basic %s", | ||
116 | + Base64.getEncoder().encodeToString(String.format("%s:%s", brasilCidadaoOpenIdConnectConfig.obterClientID(), brasilCidadaoOpenIdConnectConfig.obterClientSecret()).getBytes()))); | ||
117 | + | ||
118 | + if (conn.getResponseCode() != 200) { | ||
119 | + throw new RuntimeException("Falhou : HTTP error code : " + conn.getResponseCode()); | ||
120 | + } | ||
121 | + | ||
122 | + BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream()))); | ||
123 | + | ||
124 | + String tokens = null; | ||
125 | + while ((tokens = br.readLine()) != null) { | ||
126 | + retorno += tokens; | ||
127 | + } | ||
128 | + | ||
129 | + conn.disconnect(); | ||
130 | + | ||
131 | + return retorno; | ||
132 | + } | ||
133 | + | ||
134 | + private UsuarioBrasilCidadaoDto recuperarInformacoesUsuarioBrasilCidadao(String idToken) throws Exception{ | ||
135 | + JwtClaims idTokenJwtClaims; | ||
136 | + try { | ||
137 | + idTokenJwtClaims = processToClaims(idToken); | ||
138 | + } catch (Exception e) { | ||
139 | + msgErro = e.getMessage(); | ||
140 | + System.out.println(msgErro); | ||
141 | + throw new Exception(e); | ||
142 | + } | ||
143 | + | ||
144 | + UsuarioBrasilCidadaoDto usuarioBrasilCidadaoDto = new UsuarioBrasilCidadaoDto(); | ||
145 | + usuarioBrasilCidadaoDto.setEmail(idTokenJwtClaims.getClaimValue("email").toString()); | ||
146 | + usuarioBrasilCidadaoDto.setNome(idTokenJwtClaims.getStringClaimValue("name").toString()); | ||
147 | + usuarioBrasilCidadaoDto.setCpf(idTokenJwtClaims.getClaimValue("sub").toString()); | ||
148 | + return usuarioBrasilCidadaoDto; | ||
149 | + } | ||
150 | + | ||
151 | + private JwtClaims processToClaims(String token) throws Exception { | ||
152 | + URL url = new URL(brasilCidadaoOpenIdConnectConfig.obterURLDadosUsuario()); | ||
153 | + HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); | ||
154 | + conn.setRequestMethod("GET"); | ||
155 | + conn.setRequestProperty("Accept", "application/json"); | ||
156 | + if (conn.getResponseCode() != 200) { | ||
157 | + throw new RuntimeException("Falhou : HTTP error code : " + conn.getResponseCode()); | ||
158 | + } | ||
159 | + | ||
160 | + BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream()))); | ||
161 | + | ||
162 | + String ln = null, jwk = ""; | ||
163 | + while ((ln = br.readLine()) != null) { | ||
164 | + jwk += ln; | ||
165 | + } | ||
166 | + | ||
167 | + conn.disconnect(); | ||
168 | + | ||
169 | + JSONParser parser = new JSONParser(); | ||
170 | + JSONObject tokensJson = (JSONObject) parser.parse(jwk); | ||
171 | + | ||
172 | + JSONArray keys = (JSONArray) tokensJson.get("keys"); | ||
173 | + | ||
174 | + JSONObject keyJSONObject = (JSONObject) keys.get(0); | ||
175 | + | ||
176 | + String key = keyJSONObject.toJSONString(); | ||
177 | + | ||
178 | + PublicJsonWebKey pjwk = PublicJsonWebKey.Factory.newPublicJwk(key); | ||
179 | + | ||
180 | + JwtConsumer jwtConsumer = new JwtConsumerBuilder().setRequireExpirationTime() // Exige que o token tenha um | ||
181 | + // tempo de validade | ||
182 | + .setExpectedAudience(brasilCidadaoOpenIdConnectConfig.obterClientID()).setMaxFutureValidityInMinutes(60) // Testa se o tempo de validade do | ||
183 | + // access token é inferior ou igual | ||
184 | + // ao tempo máximo estipulado (Tempo | ||
185 | + // padrão de 60 minutos) | ||
186 | + .setAllowedClockSkewInSeconds(30) // Esta é uma boa prática. | ||
187 | + .setRequireSubject() // Exige que o token tenha um Subject. | ||
188 | + .setExpectedIssuer(brasilCidadaoOpenIdConnectConfig.obterURLBrasilCidadao() + "/") // Verifica a procedência do token. | ||
189 | + .setVerificationKey(pjwk.getPublicKey()) // Verifica a assinatura com a public key fornecida. | ||
190 | + .build(); // Cria a instância JwtConsumer. | ||
191 | + | ||
192 | + return jwtConsumer.processToClaims(token); | ||
193 | + } | ||
194 | + | ||
195 | + | ||
117 | } | 196 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/services/CadastroUsuarioService.java
@@ -5,13 +5,10 @@ | @@ -5,13 +5,10 @@ | ||
5 | */ | 5 | */ |
6 | package br.gov.planejamento.dipla.protocolo.services; | 6 | package br.gov.planejamento.dipla.protocolo.services; |
7 | 7 | ||
8 | -import br.gov.planejamento.dipla.protocolo.dto.UsuarioBrasilCidadaoDto; | ||
9 | import br.gov.planejamento.dipla.protocolo.entities.AcaoEnum; | 8 | import br.gov.planejamento.dipla.protocolo.entities.AcaoEnum; |
10 | -import br.gov.planejamento.dipla.protocolo.entities.Grupo; | ||
11 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; | 9 | import br.gov.planejamento.dipla.protocolo.entities.Usuario; |
12 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
13 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; | 10 | import br.gov.planejamento.dipla.protocolo.mail.Mailer; |
14 | -import br.gov.planejamento.dipla.protocolo.repositories.*; | 11 | +import br.gov.planejamento.dipla.protocolo.repositories.UsuarioRepository; |
15 | import br.gov.planejamento.dipla.protocolo.services.exeptions.EmailUsuarioJaCadastradoException; | 12 | import br.gov.planejamento.dipla.protocolo.services.exeptions.EmailUsuarioJaCadastradoException; |
16 | import br.gov.planejamento.dipla.protocolo.services.exeptions.SenhaObrigatoriaUsuarioException; | 13 | import br.gov.planejamento.dipla.protocolo.services.exeptions.SenhaObrigatoriaUsuarioException; |
17 | import org.springframework.beans.factory.annotation.Autowired; | 14 | import org.springframework.beans.factory.annotation.Autowired; |
@@ -22,8 +19,6 @@ import org.springframework.util.StringUtils; | @@ -22,8 +19,6 @@ import org.springframework.util.StringUtils; | ||
22 | 19 | ||
23 | import java.math.BigInteger; | 20 | import java.math.BigInteger; |
24 | import java.security.SecureRandom; | 21 | import java.security.SecureRandom; |
25 | -import java.util.ArrayList; | ||
26 | -import java.util.List; | ||
27 | import java.util.Optional; | 22 | import java.util.Optional; |
28 | 23 | ||
29 | /** | 24 | /** |
@@ -105,7 +100,7 @@ public class CadastroUsuarioService { | @@ -105,7 +100,7 @@ public class CadastroUsuarioService { | ||
105 | usuario.setSenha(senha); | 100 | usuario.setSenha(senha); |
106 | mailer.enviarNovaSenha(usuario); | 101 | mailer.enviarNovaSenha(usuario); |
107 | }else { | 102 | }else { |
108 | - throw new RuntimeException("Usuário Cadastrado como Brasil Cidadão."); | 103 | + throw new RuntimeException("Usuário Cadastrado com Login Único."); |
109 | } | 104 | } |
110 | }else{ | 105 | }else{ |
111 | throw new RuntimeException("Email não cadastrado."); | 106 | throw new RuntimeException("Email não cadastrado."); |
src/main/java/br/gov/planejamento/dipla/protocolo/services/ConfiguracaoEmailService.java
@@ -5,12 +5,8 @@ | @@ -5,12 +5,8 @@ | ||
5 | */ | 5 | */ |
6 | package br.gov.planejamento.dipla.protocolo.services; | 6 | package br.gov.planejamento.dipla.protocolo.services; |
7 | 7 | ||
8 | -import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | ||
9 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; | 8 | import br.gov.planejamento.dipla.protocolo.entities.ConfiguracaoEmail; |
10 | -import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; | ||
11 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoEmailRepository; | 9 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoEmailRepository; |
12 | -import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | ||
13 | -import br.gov.planejamento.dipla.protocolo.repositories.TiposDocumentoRepository; | ||
14 | import org.springframework.beans.factory.annotation.Autowired; | 10 | import org.springframework.beans.factory.annotation.Autowired; |
15 | import org.springframework.stereotype.Service; | 11 | import org.springframework.stereotype.Service; |
16 | import org.springframework.transaction.annotation.Transactional; | 12 | import org.springframework.transaction.annotation.Transactional; |
src/main/java/br/gov/planejamento/dipla/protocolo/services/ConfiguracaoService.java
@@ -6,9 +6,7 @@ | @@ -6,9 +6,7 @@ | ||
6 | package br.gov.planejamento.dipla.protocolo.services; | 6 | package br.gov.planejamento.dipla.protocolo.services; |
7 | 7 | ||
8 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; | 8 | import br.gov.planejamento.dipla.protocolo.entities.Configuracao; |
9 | -import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; | ||
10 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; | 9 | import br.gov.planejamento.dipla.protocolo.repositories.ConfiguracaoRepository; |
11 | -import br.gov.planejamento.dipla.protocolo.repositories.TiposDocumentoRepository; | ||
12 | import org.springframework.beans.factory.annotation.Autowired; | 10 | import org.springframework.beans.factory.annotation.Autowired; |
13 | import org.springframework.stereotype.Service; | 11 | import org.springframework.stereotype.Service; |
14 | import org.springframework.transaction.annotation.Transactional; | 12 | import org.springframework.transaction.annotation.Transactional; |
src/main/java/br/gov/planejamento/dipla/protocolo/services/EnviarProtocoloService.java
1 | package br.gov.planejamento.dipla.protocolo.services; | 1 | package br.gov.planejamento.dipla.protocolo.services; |
2 | 2 | ||
3 | +import Sei.RetornoConsultaProcedimento; | ||
3 | import br.gov.planejamento.dipla.protocolo.dto.ArquivoDTO; | 4 | import br.gov.planejamento.dipla.protocolo.dto.ArquivoDTO; |
4 | import br.gov.planejamento.dipla.protocolo.entities.AcaoEnum; | 5 | import br.gov.planejamento.dipla.protocolo.entities.AcaoEnum; |
5 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | 6 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; |
@@ -13,9 +14,6 @@ import org.springframework.beans.factory.annotation.Autowired; | @@ -13,9 +14,6 @@ import org.springframework.beans.factory.annotation.Autowired; | ||
13 | import org.springframework.context.ApplicationEventPublisher; | 14 | import org.springframework.context.ApplicationEventPublisher; |
14 | import org.springframework.stereotype.Service; | 15 | import org.springframework.stereotype.Service; |
15 | 16 | ||
16 | -import Sei.RetornoConsultaProcedimento; | ||
17 | - | ||
18 | -import java.time.LocalDateTime; | ||
19 | import java.util.Date; | 17 | import java.util.Date; |
20 | import java.util.List; | 18 | import java.util.List; |
21 | import java.util.Optional; | 19 | import java.util.Optional; |
@@ -56,13 +54,13 @@ public class EnviarProtocoloService { | @@ -56,13 +54,13 @@ public class EnviarProtocoloService { | ||
56 | return Optional.of(retornoConsultaProcedimento.getLinkAcesso()); | 54 | return Optional.of(retornoConsultaProcedimento.getLinkAcesso()); |
57 | } | 55 | } |
58 | 56 | ||
59 | - public void enviarSEI(Protocolo protocolo, String sei, String tipo) { | 57 | + public void enviarSEI(Protocolo protocolo, String sei, String tipo, String idSei) { |
60 | protocolo.setDataEnvio(new Date()); | 58 | protocolo.setDataEnvio(new Date()); |
61 | protocolo.setNupe("Processando..."); | 59 | protocolo.setNupe("Processando..."); |
62 | protocolo.setStatus(StatusEnum.PROCESSANDO); | 60 | protocolo.setStatus(StatusEnum.PROCESSANDO); |
63 | protocoloRepository.save(protocolo); | 61 | protocoloRepository.save(protocolo); |
64 | logProtocoloService.saveLog(protocolo,AcaoEnum.ALTERAR); | 62 | logProtocoloService.saveLog(protocolo,AcaoEnum.ALTERAR); |
65 | - publisher.publishEvent(new AprovarProtocoloEvent(this, protocolo, logProtocoloService.recuperarUsuario(), sei, tipo)); | 63 | + publisher.publishEvent(new AprovarProtocoloEvent(this, protocolo, logProtocoloService.recuperarUsuario(), sei, tipo, idSei)); |
66 | } | 64 | } |
67 | 65 | ||
68 | public void recusar(Protocolo protocolo) { | 66 | public void recusar(Protocolo protocolo) { |
src/main/java/br/gov/planejamento/dipla/protocolo/services/LogProtocoloService.java
1 | package br.gov.planejamento.dipla.protocolo.services; | 1 | package br.gov.planejamento.dipla.protocolo.services; |
2 | 2 | ||
3 | -import java.util.Date; | ||
4 | -import java.util.List; | ||
5 | -import java.util.Optional; | ||
6 | - | ||
7 | -import javax.persistence.Column; | ||
8 | -import javax.persistence.EnumType; | ||
9 | -import javax.persistence.Enumerated; | ||
10 | -import javax.persistence.GeneratedValue; | ||
11 | -import javax.persistence.GenerationType; | ||
12 | -import javax.persistence.Id; | ||
13 | -import javax.persistence.JoinColumn; | ||
14 | -import javax.persistence.ManyToOne; | ||
15 | -import javax.persistence.Temporal; | ||
16 | - | 3 | +import br.gov.planejamento.dipla.protocolo.entities.*; |
4 | +import br.gov.planejamento.dipla.protocolo.repositories.LogStatusRepository; | ||
5 | +import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | ||
17 | import org.springframework.beans.factory.annotation.Autowired; | 6 | import org.springframework.beans.factory.annotation.Autowired; |
18 | import org.springframework.security.core.context.SecurityContextHolder; | 7 | import org.springframework.security.core.context.SecurityContextHolder; |
19 | import org.springframework.stereotype.Service; | 8 | import org.springframework.stereotype.Service; |
20 | import org.springframework.transaction.annotation.Transactional; | 9 | import org.springframework.transaction.annotation.Transactional; |
21 | - | ||
22 | -import br.gov.planejamento.dipla.protocolo.dto.ArquivoDTO; | ||
23 | -import br.gov.planejamento.dipla.protocolo.entities.AcaoEnum; | ||
24 | -import br.gov.planejamento.dipla.protocolo.entities.Arquivos; | ||
25 | -import br.gov.planejamento.dipla.protocolo.entities.EntidadeEnum; | ||
26 | -import br.gov.planejamento.dipla.protocolo.entities.LogSistema; | ||
27 | -import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | ||
28 | -import br.gov.planejamento.dipla.protocolo.entities.StatusEnum; | ||
29 | -import br.gov.planejamento.dipla.protocolo.entities.TiposDocumento; | ||
30 | -import br.gov.planejamento.dipla.protocolo.entities.Usuario; | ||
31 | -import br.gov.planejamento.dipla.protocolo.entities.UsuarioBrasilCidadao; | ||
32 | -import br.gov.planejamento.dipla.protocolo.repositories.LogStatusRepository; | ||
33 | -import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; | ||
34 | -import br.gov.planejamento.dipla.protocolo.security.UsuarioSistema; | ||
35 | -import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; | ||
36 | /** | 10 | /** |
37 | * Created by dario on 29/09/17. | 11 | * Created by dario on 29/09/17. |
38 | */ | 12 | */ |
src/main/java/br/gov/planejamento/dipla/protocolo/services/ProtocoloFlagService.java
1 | package br.gov.planejamento.dipla.protocolo.services; | 1 | package br.gov.planejamento.dipla.protocolo.services; |
2 | 2 | ||
3 | -import java.util.Optional; | ||
4 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; |
4 | + | ||
5 | +import java.util.Optional; | ||
5 | /** | 6 | /** |
6 | * Created by dario on 29/09/17. | 7 | * Created by dario on 29/09/17. |
7 | */ | 8 | */ |
src/main/java/br/gov/planejamento/dipla/protocolo/services/event/AprovarProtocoloEvent.java
@@ -11,12 +11,14 @@ public class AprovarProtocoloEvent extends ApplicationEvent { | @@ -11,12 +11,14 @@ public class AprovarProtocoloEvent extends ApplicationEvent { | ||
11 | private Long idUsuario; | 11 | private Long idUsuario; |
12 | private String sei; | 12 | private String sei; |
13 | private String tipo; | 13 | private String tipo; |
14 | + private String idSei; | ||
14 | 15 | ||
15 | - public AprovarProtocoloEvent(Object source, Protocolo protocolo, Long idUsuario, String sei, String tipo) { | 16 | + public AprovarProtocoloEvent(Object source, Protocolo protocolo, Long idUsuario, String sei, String tipo, String idSei) { |
16 | super(source); | 17 | super(source); |
17 | this.protocolo = protocolo; | 18 | this.protocolo = protocolo; |
18 | this.idUsuario = idUsuario; | 19 | this.idUsuario = idUsuario; |
19 | this.sei = sei; | 20 | this.sei = sei; |
20 | this.tipo = tipo; | 21 | this.tipo = tipo; |
22 | + this.idSei = idSei; | ||
21 | } | 23 | } |
22 | } | 24 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/services/event/listener/AprovarProtocoloListener.java
@@ -14,6 +14,10 @@ public class AprovarProtocoloListener implements ApplicationListener<AprovarProt | @@ -14,6 +14,10 @@ public class AprovarProtocoloListener implements ApplicationListener<AprovarProt | ||
14 | 14 | ||
15 | @Override | 15 | @Override |
16 | public void onApplicationEvent(AprovarProtocoloEvent aprovarProtocoloEvent) { | 16 | public void onApplicationEvent(AprovarProtocoloEvent aprovarProtocoloEvent) { |
17 | - seiWSClient.enviar(aprovarProtocoloEvent.getProtocolo(),aprovarProtocoloEvent.getIdUsuario(), aprovarProtocoloEvent.getSei(),aprovarProtocoloEvent.getTipo()); | 17 | + try { |
18 | + seiWSClient.enviar(aprovarProtocoloEvent.getProtocolo(),aprovarProtocoloEvent.getIdUsuario(), aprovarProtocoloEvent.getSei(),aprovarProtocoloEvent.getTipo(), aprovarProtocoloEvent.getIdSei()); | ||
19 | + } catch (Exception e) { | ||
20 | + e.printStackTrace(); | ||
21 | + } | ||
18 | } | 22 | } |
19 | } | 23 | } |
src/main/java/br/gov/planejamento/dipla/protocolo/services/impl/ProtocoloFlagServiceImpl.java
1 | package br.gov.planejamento.dipla.protocolo.services.impl; | 1 | package br.gov.planejamento.dipla.protocolo.services.impl; |
2 | 2 | ||
3 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; | 3 | import br.gov.planejamento.dipla.protocolo.entities.Protocolo; |
4 | -import br.gov.planejamento.dipla.protocolo.services.ProtocoloFlagService; | ||
5 | import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; | 4 | import br.gov.planejamento.dipla.protocolo.repositories.ProtocoloRepository; |
5 | +import br.gov.planejamento.dipla.protocolo.services.ProtocoloFlagService; | ||
6 | import org.springframework.beans.factory.annotation.Autowired; | 6 | import org.springframework.beans.factory.annotation.Autowired; |
7 | import org.springframework.stereotype.Service; | 7 | import org.springframework.stereotype.Service; |
8 | -import org.springframework.stereotype.Service; | ||
9 | 8 | ||
10 | import java.util.Optional; | 9 | import java.util.Optional; |
11 | 10 |
src/main/java/br/gov/planejamento/dipla/protocolo/storage/local/ArquivoStorageLocal.java
1 | package br.gov.planejamento.dipla.protocolo.storage.local; | 1 | package br.gov.planejamento.dipla.protocolo.storage.local; |
2 | 2 | ||
3 | -import br.gov.planejamento.dipla.protocolo.clamav.ClamavUtil; | ||
4 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; | 3 | import br.gov.planejamento.dipla.protocolo.storage.ArquivoStorage; |
5 | import br.gov.planejamento.dipla.protocolo.util.MyStringUtil; | 4 | import br.gov.planejamento.dipla.protocolo.util.MyStringUtil; |
6 | import org.apache.commons.io.FileUtils; | 5 | import org.apache.commons.io.FileUtils; |
src/main/java/fi/solita/clamav/ClamAVClient.java
@@ -3,12 +3,8 @@ package fi.solita.clamav; | @@ -3,12 +3,8 @@ package fi.solita.clamav; | ||
3 | /** | 3 | /** |
4 | * Created by dario on 19/10/17. | 4 | * Created by dario on 19/10/17. |
5 | */ | 5 | */ |
6 | -import java.io.BufferedOutputStream; | ||
7 | -import java.io.ByteArrayInputStream; | ||
8 | -import java.io.ByteArrayOutputStream; | ||
9 | -import java.io.IOException; | ||
10 | -import java.io.InputStream; | ||
11 | -import java.io.OutputStream; | 6 | + |
7 | +import java.io.*; | ||
12 | import java.net.Socket; | 8 | import java.net.Socket; |
13 | import java.nio.ByteBuffer; | 9 | import java.nio.ByteBuffer; |
14 | import java.nio.charset.StandardCharsets; | 10 | import java.nio.charset.StandardCharsets; |
src/main/resources/application.properties
1 | +#Banco de dados | ||
2 | + | ||
3 | +spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQLDialect | ||
4 | +spring.datasource.url= jdbc:mysql://10.209.40.206/protocolo-sei?useSSL=false | ||
5 | +spring.datasource.username=root | ||
6 | +spring.datasource.password=root | ||
7 | + | ||
8 | +#server.context-path=/protocolo | ||
9 | + | ||
1 | spring.thymeleaf.mode=HTML | 10 | spring.thymeleaf.mode=HTML |
2 | spring.thymeleaf.template-resolver-order=1 | 11 | spring.thymeleaf.template-resolver-order=1 |
3 | 12 | ||
4 | #spring.mvc.locale=pt_BR | 13 | #spring.mvc.locale=pt_BR |
5 | spring.mvc.date-format=dd/MM/yyyy HH:mm | 14 | spring.mvc.date-format=dd/MM/yyyy HH:mm |
6 | 15 | ||
7 | -spring.datasource.jndi-name=java:comp/env/jdbc/protocoloDB | 16 | +#spring.datasource.jndi-name=java:comp/env/jdbc/protocoloDB |
8 | 17 | ||
9 | spring.http.multipart.max-file-size=30720KB | 18 | spring.http.multipart.max-file-size=30720KB |
10 | spring.http.multipart.max-request-size=30720KB | 19 | spring.http.multipart.max-request-size=30720KB |
@@ -18,9 +27,10 @@ versao=@project.version@ | @@ -18,9 +27,10 @@ versao=@project.version@ | ||
18 | 27 | ||
19 | 28 | ||
20 | 29 | ||
21 | - | ||
22 | - | ||
23 | # Recaptcha | 30 | # Recaptcha |
24 | #recaptcha.url=https://www.google.com/recaptcha/api/siteverify | 31 | #recaptcha.url=https://www.google.com/recaptcha/api/siteverify |
25 | #recaptcha.site-key=!1vfdvS34#$%%$Cdd7581dec | 32 | #recaptcha.site-key=!1vfdvS34#$%%$Cdd7581dec |
26 | -#recaptcha.secret-key=!1vfdvS34#$%%$Cdd7581dec | ||
27 | \ No newline at end of file | 33 | \ No newline at end of file |
34 | +#recaptcha.secret-key=!1vfdvS34#$%%$Cdd7581dec | ||
35 | + | ||
36 | +# Comando para execu��o do flyway em ambiente de desenvolvimento | ||
37 | +# mvn flyway:migrate -Dflyway.url=jdbc:mysql://localhost:3306/protocolo?useSSL=false -Dflyway.user=root -Dflyway.password=root -e -X | ||
28 | \ No newline at end of file | 38 | \ No newline at end of file |
src/main/resources/db/migration/V01_Start.sql
@@ -1,582 +0,0 @@ | @@ -1,582 +0,0 @@ | ||
1 | --- MySQL dump 10.13 Distrib 5.7.17, for Win64 (x86_64) | ||
2 | --- | ||
3 | --- Server version 5.7.21 | ||
4 | - | ||
5 | -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; | ||
6 | -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; | ||
7 | -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; | ||
8 | -/*!40101 SET NAMES utf8 */; | ||
9 | -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; | ||
10 | -/*!40103 SET TIME_ZONE='+00:00' */; | ||
11 | -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; | ||
12 | -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; | ||
13 | -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; | ||
14 | -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; | ||
15 | - | ||
16 | --- | ||
17 | --- Table structure for table `arquivos` | ||
18 | --- | ||
19 | - | ||
20 | -DROP TABLE IF EXISTS `arquivos`; | ||
21 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
22 | -/*!40101 SET character_set_client = utf8 */; | ||
23 | -CREATE TABLE `arquivos` ( | ||
24 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
25 | - `codigo_protocolo` bigint(20) DEFAULT NULL, | ||
26 | - `nome` varchar(200) NOT NULL, | ||
27 | - `nome_original` varchar(100) NOT NULL, | ||
28 | - `content_type` varchar(100) NOT NULL, | ||
29 | - `tamanho` varchar(10) NOT NULL, | ||
30 | - `codigo_tipo_documento` bigint(20) DEFAULT NULL, | ||
31 | - `descricao_documento` varchar(200) DEFAULT NULL, | ||
32 | - PRIMARY KEY (`codigo`), | ||
33 | - KEY `codigo_protocolo` (`codigo_protocolo`), | ||
34 | - KEY `codigo_tipo_documento` (`codigo_tipo_documento`), | ||
35 | - CONSTRAINT `arquivos_ibfk_1` FOREIGN KEY (`codigo_protocolo`) REFERENCES `protocolo` (`codigo`), | ||
36 | - CONSTRAINT `arquivos_ibfk_2` FOREIGN KEY (`codigo_tipo_documento`) REFERENCES `tipo_documento` (`codigo`) | ||
37 | -) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; | ||
38 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
39 | - | ||
40 | - | ||
41 | --- | ||
42 | --- Table structure for table `classificacao` | ||
43 | --- | ||
44 | - | ||
45 | -DROP TABLE IF EXISTS `classificacao`; | ||
46 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
47 | -/*!40101 SET character_set_client = utf8 */; | ||
48 | -CREATE TABLE `classificacao` ( | ||
49 | - `codigo` bigint(20) NOT NULL, | ||
50 | - `nome` varchar(100) NOT NULL, | ||
51 | - PRIMARY KEY (`codigo`) | ||
52 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
53 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
54 | - | ||
55 | --- | ||
56 | --- Dumping data for table `classificacao` | ||
57 | --- | ||
58 | - | ||
59 | -LOCK TABLES `classificacao` WRITE; | ||
60 | -/*!40000 ALTER TABLE `classificacao` DISABLE KEYS */; | ||
61 | -INSERT INTO `classificacao` VALUES (1,'server-email'),(2,'sei'),(3,'storage'),(4,'brasil-cidadao'),(5,'captcha'); | ||
62 | -/*!40000 ALTER TABLE `classificacao` ENABLE KEYS */; | ||
63 | -UNLOCK TABLES; | ||
64 | - | ||
65 | --- | ||
66 | --- Table structure for table `configuracao` | ||
67 | --- | ||
68 | - | ||
69 | -DROP TABLE IF EXISTS `configuracao`; | ||
70 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
71 | -/*!40101 SET character_set_client = utf8 */; | ||
72 | -CREATE TABLE `configuracao` ( | ||
73 | - `codigo` bigint(20) NOT NULL, | ||
74 | - `nome` varchar(45) NOT NULL, | ||
75 | - `valor` text, | ||
76 | - `descricao` text, | ||
77 | - `codigo_classificacao` bigint(20) NOT NULL, | ||
78 | - PRIMARY KEY (`codigo`), | ||
79 | - KEY `fk_configuracao_classificacao_idx` (`codigo_classificacao`), | ||
80 | - CONSTRAINT `classificacao_fk` FOREIGN KEY (`codigo_classificacao`) REFERENCES `classificacao` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
81 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
82 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
83 | - | ||
84 | --- | ||
85 | --- Dumping data for table `configuracao` | ||
86 | --- | ||
87 | - | ||
88 | -LOCK TABLES `configuracao` WRITE; | ||
89 | -/*!40000 ALTER TABLE `configuracao` DISABLE KEYS */; | ||
90 | -INSERT INTO `configuracao` VALUES (1,'SMTP_SERVER','10.209.253.28','',1),(2,'SMTP_PORT','25','teste3',1),(3,'MAIL_FROM','xxx@yyy.zzz','',1),(4,'EMAIL_RESPONSAVEL','sss@sssf.com',NULL,1),(9,'URL_AUTORIZAR','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/authorize',NULL,4),(10,'URL_TOKEN','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/token',NULL,4),(11,'URL_DADOS_USUARIO','https://testeservicos-ecidadao.estaleiro.serpro.gov.br/servicos-ecidadao/ecidadao/usuario/getUserInfo/',NULL,4),(12,'CLIENT_ID','516a9b57-d022-4843-a792-93b4dc95622b',NULL,4),(13,'SCOPE','openid',NULL,4),(14,'REDIRECT_URI','https://protocolo.planejamento.gov.br/login',NULL,4),(15,'CLIENT_SECRET','Ld65DuKIva0_EU0LO1VrVC6Be7b-_AsgvkueKpW4OJlhDdJQ4TJ9nKB173M5c5mmG03uhZvEbBKnDRmAe7gZkw',NULL,4),(16,'ESCOPO','dados_brasil_cidadao',NULL,4),(18,'URL_BRASIL_CIDADAO','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/login',NULL,4),(19,'URL_PRIMEIRO_ACESSO','https://testeportal-ecidadao.estaleiro.serpro.gov.br/servicos-cidadao/acesso/#/primeiro-acesso',NULL,4),(20,'STORAGE_PATH','E:/Ambiente/Desenvolvimento/estorage/temp','teste2',3),(21,'URL_ENDPOINT','https://seitreina.nuvem.gov.br/sei/ws/SeiWS.php','teste4',2),(22,'ASSUNTO_CODIGO_ESTRUTURADO','520.1',NULL,2),(23,'PROCEDIMENTO_ESPECIFICADO','Especificacao do processo',NULL,2),(24,'PROCEDIMENTO_NIVEL_ACESSO','0',NULL,2),(25,'PROCEDIMENTO_ID_TIPO_PROCEDIMENTO','100000346',NULL,2),(26,'DOCUMENTO_TIPO','R',NULL,2),(27,'DOCUMENTO_ID_SERIE','1',NULL,2),(28,'DOCUMENTO_NIVEL_ACESSO','0',NULL,2),(29,'SIGLA_SISTEMA','UNB',NULL,2),(30,'IDENTIFICACAO_SERVICO','testeunb',NULL,2),(31,'ID_UNIDADE','110001972',NULL,2),(32,'CAPTCHA_SITE_KEY','6LdBAVQUAAAAAET4Dun738dTVCWfhqVDuvnDoBAp',NULL,5),(33,'CAPTCHA_SECRET_KEY','6LdBAVQUAAAAAEa3owvd2PBSaOwU8OOPeFwTq13w',NULL,5); | ||
91 | -/*!40000 ALTER TABLE `configuracao` ENABLE KEYS */; | ||
92 | -UNLOCK TABLES; | ||
93 | - | ||
94 | --- | ||
95 | --- Table structure for table `configuracao_email` | ||
96 | --- | ||
97 | - | ||
98 | -DROP TABLE IF EXISTS `configuracao_email`; | ||
99 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
100 | -/*!40101 SET character_set_client = utf8 */; | ||
101 | -CREATE TABLE `configuracao_email` ( | ||
102 | - `codigo` int(11) NOT NULL, | ||
103 | - `nome` varchar(45) DEFAULT NULL, | ||
104 | - `valor` text, | ||
105 | - PRIMARY KEY (`codigo`) | ||
106 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
107 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
108 | - | ||
109 | --- | ||
110 | --- Dumping data for table `configuracao_email` | ||
111 | --- | ||
112 | - | ||
113 | -LOCK TABLES `configuracao_email` WRITE; | ||
114 | -/*!40000 ALTER TABLE `configuracao_email` DISABLE KEYS */; | ||
115 | -INSERT INTO `configuracao_email` VALUES (1,'EMAIL_CONTEUDO_CADASTRO','<p><span>PREZADO(A),</span></p>\r\n<p style=\"text-align: justify;\"><span><br />SEJA BEM VINDO AO SISTEMA DE PROTOCOLIZAÇÃO ELETRÔNICA DE DOCUMENTOS DO MINISTÉRIO DO PLANEJAMENTO, DESENVOLVIMENTO E GESTÃO. PARA CONCLUIR O SEU CADASTRO, ACESSE O LINK <span>{$METADADO_USUARIO_URLCONFIRMACAO}</span></span></p>\r\n<p><span><br />ESSE PASSO É IMPORTANTE PARA VALIDARMOS TODOS OS USUÁRIOS.</span></p>'),(2,'EMAIL_CONTEUDO_CONSOLIDACAO','<p><span>PREZADO(A),</span></p>\r\n<p style=\"text-align: justify;\"><span><br />SEJA BEM VINDO AO SISTEMA DE PROTOCOLIZAÇÃO ELETRÔNICA DE DOCUMENTOS DO MINISTÉRIO DO PLANEJAMENTO, DESENVOLVIMENTO E GESTÃO. PARA CONCLUIR O SEU CADASTRO, ACESSE O LINK <span>{$METADADO_USUARIO_URLCONSILIACAO}</span></span></p>\r\n<p><span><br />ESSE PASSO É IMPORTANTE PARA VALIDARMOS TODOS OS USUÁRIOS.</span></p>'),(3,'EMAIL_CONTEUDO_ERRO_SEI','<h1 style=\"font-size: 15px;\">Erro ao enviar o protocolo Nº <span>{$METADADO_PROTOCOLO_NUMERO}</span>para o SEI</h1>\r\n<p>Detalhe do Erro: <span>{$METADADO_MSGERRO}</span>.</p>'),(4,'EMAIL_CONTEUDO_ESQUECI_SENHA','<p style=\"font-size: 15px;\">Recebemos uma solicitação de recuperação de senha, por isso estamos enviando uma nova para que você possa continuar usando nosso sistema de protocolo.</p>\r\n<h1 style=\"font-size: 15px;\">Sua nova senha é: <span>{$METADADO_USUARIO_NOVASENHA}</span></h1>'),(5,'EMAIL_CONTEUDO_PROTOCOLO','<h3>Número do Protocolo Provisório: <span>{$METADADO_PROTOCOLO_NUMERO}</span></h3>\r\n<p style=\"text-align: justify;\">Número Único de Protocolo: Será enviado para o(s) e-mail(s) cadastrado(s) no prazo máximo de vinte e quatro horas, contadas do recebimento, salvo quando este ocorrer às sextas-feiras, véspera de feriados ou pontos facultativos ou haja restrição técnica da unidade, devidamente fundamentada.</p>\r\n<p>Data: <span>{$METADADO_PROTOCOLO_DATAHORAFORMADATA}</span></p>\r\n<p>Nome: <span>{$METADADO_PROTOCOLO_USUARIONOME}</span></p>\r\n<p>E-mail: <span>{$METADADO_PROTOCOLO_USUARIOEMAIL}</span></p>\r\n<p>E-mail: <span>{$METADADO_PROTOCOLO_EMAIL1}</span></p>\r\n<p>E-mail: <span>{$METADADO_PROTOCOLO_EMAIL2}</span></p>\r\n<p>Referência ao protocolo anterior: <span>{$METADADO_PROTOCOLO_NUMEROANTERIOR}</span></p>\r\n<p><span>{$METADADO_PROTOCOLO_TABELAARQUIVO}</span></p>'),(6,'EMAIL_CONTEUDO_NEGADO','<h3>Número do Protocolo Provisório: <span>{$METADADO_PROTOCOLO_NUMERO}</span></h3>\r\n<p style=\"text-align: justify;\">Prezado (a)<span>{$METADADO_PROTOCOLO_USUARIONOME}</span>, <br /> Esta é uma mensagem automática e não deve ser respondida. <br /> Seu protocolo não foi aceito pelo motivo abaixo especificado: <br /><span>{$METADADO_PROTOCOLO_OBSERVACAO}</span></p>\r\n<p>Nome:<span>{$METADADO_PROTOCOLO_USUARIONOME}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_USUARIOEMAIL}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL1}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL2}</span></p>'),(7,'EMAIL_CONTEUDO_RECEBIMENTO_SEI','<h3>Número Único de Protocolo:<span>{$METADADO_PROTOCOLO_NUPE}</span></h3>\r\n<p style=\"text-align: justify;\">Prezado (a) usuário (a), Esta é uma mensagem automática e não deve ser respondida. Informamos que seu protocolo foi entregue ao setor responsável e que foi gerado o NUP:<span>{$METADADO_PROTOCOLO_NUPE}</span>. Quaisquer divergências das informações prestadas ou problemas nos arquivos anexados serão comunicados ao (à) senhor (a) através dos e-mails informados em seu cadastro. Informações referentes à tramitação de seu processo serão atualizadas até 24 horas e estarão acessíveis no sítio do protocolo integrado do Governo Federal, disponível em <span>{$METADADO_PROTOCOLO_LINKSEI}</span></p>\r\n<p>Data:<span>{$METADADO_PROTOCOLO_DATAHORAFORMADATA}</span>}.</p>\r\n<p>Nome:<span>{$METADADO_PROTOCOLO_USUARIONOME}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_USUARIOEMAIL}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL1}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL2}</span></p>\r\n<p>Referência ao protocolo anterior:</p>\r\n<p><span>{$METADADO_PROTOCOLO_TABELAARQUIVO}</span></p>'),(8,'EMAIL_CABECALHO','<h4 style=\"background-color: #fafafa; color: #626262; text-align: center;\"><span>{$METADADO_LOGO_EMAIL}</span></h4><h4 style=\"background-color: #fafafa; color: #626262; text-align: center;\">Ministério do Planejamento, Desenvolvimento e Gestão <br />Protocolo Central <br />Esplanada dos Ministérios Bloco K, Térreo, sala T 28, CEP 70.040-906 – Brasília-DF <br />protocolo@planejamento.gov.br <br />(61) 2020-5195/5580 </h4>'),(9,'EMAIL_RODAPE','<p> </p>\r <p>“Por gentileza, responda nossa pesquisa de satisfação do Sistema de Protocolo Eletrônico. Sua contribuição é de extrema valia. <a href=\"http://formsus.datasus.gov.br/site/formulario.php?id_aplicacao=36481\">Clique aqui</a>”</p>\r <p> </p>\r <p style=\"text-align: justify; font-size: 10px;\">São de exclusiva responsabilidade do usuário: A conformidade entre os dados informados e os documentos; A conservação dos originais em papel de documentos digitalizados até que decaia o direito de revisão dos atos praticados no processo, para que, caso solicitado, sejam apresentados para qualquer tipo de conferência; A observação de que os atos processuais se consideram realizados no dia e hora do recebimento pelo SEI, considerando-se tempestivos os praticados até 23h59min59s do último dia do prazo, considerando sempre o horário oficial de Brasília, independente do fuso horário em que se encontre. </p>'),(10,'EMAIL_CONTEUDO_DESBLOQUEIO','<p><span>PREZADO(A),</span></p>\r\n<p style=\"text-align: justify;\"><span><br />Usuário bloqueado, favor acessar o LINK <span>{$METADADO_USUARIO_URLDESBLOQUEIO}</span></span></p>\r\n<p><span><br />para desbloqueiar o usuário.</span></p>'); | ||
116 | -/*!40000 ALTER TABLE `configuracao_email` ENABLE KEYS */; | ||
117 | -UNLOCK TABLES; | ||
118 | - | ||
119 | --- | ||
120 | --- Table structure for table `expedicao` | ||
121 | --- | ||
122 | - | ||
123 | -DROP TABLE IF EXISTS `expedicao`; | ||
124 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
125 | -/*!40101 SET character_set_client = utf8 */; | ||
126 | -CREATE TABLE `expedicao` ( | ||
127 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
128 | - `numero_processo` varchar(100) NOT NULL, | ||
129 | - `data_expedicao` datetime NOT NULL, | ||
130 | - `usuario_codigo` bigint(20) NOT NULL, | ||
131 | - `status_expedicao` varchar(45) DEFAULT NULL, | ||
132 | - PRIMARY KEY (`codigo`), | ||
133 | - KEY `fk_expedicao_usuario1_idx` (`usuario_codigo`), | ||
134 | - CONSTRAINT `fk_expedicao_usuario1` FOREIGN KEY (`usuario_codigo`) REFERENCES `usuario` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
135 | -) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8; | ||
136 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
137 | - | ||
138 | - | ||
139 | --- | ||
140 | --- Table structure for table `grupo` | ||
141 | --- | ||
142 | - | ||
143 | -DROP TABLE IF EXISTS `grupo`; | ||
144 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
145 | -/*!40101 SET character_set_client = utf8 */; | ||
146 | -CREATE TABLE `grupo` ( | ||
147 | - `codigo` bigint(20) NOT NULL, | ||
148 | - `nome` varchar(50) NOT NULL, | ||
149 | - PRIMARY KEY (`codigo`) | ||
150 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
151 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
152 | - | ||
153 | --- | ||
154 | --- Dumping data for table `grupo` | ||
155 | --- | ||
156 | - | ||
157 | -LOCK TABLES `grupo` WRITE; | ||
158 | -/*!40000 ALTER TABLE `grupo` DISABLE KEYS */; | ||
159 | -INSERT INTO `grupo` VALUES (1,'Administrador'),(2,'Protocolo'),(3,'Brasil Cidadao'),(4,'Usuario Expedidor'); | ||
160 | -/*!40000 ALTER TABLE `grupo` ENABLE KEYS */; | ||
161 | -UNLOCK TABLES; | ||
162 | - | ||
163 | --- | ||
164 | --- Table structure for table `grupo_permissao` | ||
165 | --- | ||
166 | - | ||
167 | -DROP TABLE IF EXISTS `grupo_permissao`; | ||
168 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
169 | -/*!40101 SET character_set_client = utf8 */; | ||
170 | -CREATE TABLE `grupo_permissao` ( | ||
171 | - `codigo_grupo` bigint(20) NOT NULL, | ||
172 | - `codigo_permissao` bigint(20) NOT NULL, | ||
173 | - PRIMARY KEY (`codigo_grupo`,`codigo_permissao`), | ||
174 | - KEY `codigo_permissao` (`codigo_permissao`), | ||
175 | - CONSTRAINT `grupo_permissao_ibfk_1` FOREIGN KEY (`codigo_grupo`) REFERENCES `grupo` (`codigo`), | ||
176 | - CONSTRAINT `grupo_permissao_ibfk_2` FOREIGN KEY (`codigo_permissao`) REFERENCES `permissao` (`codigo`) | ||
177 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
178 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
179 | - | ||
180 | --- | ||
181 | --- Dumping data for table `grupo_permissao` | ||
182 | --- | ||
183 | - | ||
184 | -LOCK TABLES `grupo_permissao` WRITE; | ||
185 | -/*!40000 ALTER TABLE `grupo_permissao` DISABLE KEYS */; | ||
186 | -INSERT INTO `grupo_permissao` VALUES (1,1),(2,2),(3,3),(4,4); | ||
187 | -/*!40000 ALTER TABLE `grupo_permissao` ENABLE KEYS */; | ||
188 | -UNLOCK TABLES; | ||
189 | - | ||
190 | --- | ||
191 | --- Table structure for table `link_expedicao_sei` | ||
192 | --- | ||
193 | - | ||
194 | -DROP TABLE IF EXISTS `link_expedicao_sei`; | ||
195 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
196 | -/*!40101 SET character_set_client = utf8 */; | ||
197 | -CREATE TABLE `link_expedicao_sei` ( | ||
198 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
199 | - `link` varchar(255) NOT NULL, | ||
200 | - `data` datetime NOT NULL, | ||
201 | - `status` varchar(10) NOT NULL, | ||
202 | - `usuario_codigo` bigint(20) NOT NULL, | ||
203 | - `expedicao_codigo` bigint(20) NOT NULL, | ||
204 | - PRIMARY KEY (`codigo`), | ||
205 | - KEY `fk_link_expedicao_sei_usuario1_idx` (`usuario_codigo`), | ||
206 | - KEY `fk_link_expedicao_sei_expedicao1_idx` (`expedicao_codigo`), | ||
207 | - CONSTRAINT `fk_link_expedicao_sei_expedicao1` FOREIGN KEY (`expedicao_codigo`) REFERENCES `expedicao` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION, | ||
208 | - CONSTRAINT `fk_link_expedicao_sei_usuario1` FOREIGN KEY (`usuario_codigo`) REFERENCES `usuario` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
209 | -) ENGINE=InnoDB AUTO_INCREMENT=73 DEFAULT CHARSET=utf8; | ||
210 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
211 | - | ||
212 | - | ||
213 | --- | ||
214 | --- Table structure for table `log_sistema` | ||
215 | --- | ||
216 | - | ||
217 | -DROP TABLE IF EXISTS `log_sistema`; | ||
218 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
219 | -/*!40101 SET character_set_client = utf8 */; | ||
220 | -CREATE TABLE `log_sistema` ( | ||
221 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
222 | - `codigo_entidade` bigint(20) NOT NULL, | ||
223 | - `entidade` varchar(45) NOT NULL, | ||
224 | - `acao` varchar(45) NOT NULL, | ||
225 | - `antes` text, | ||
226 | - `depois` text, | ||
227 | - `data_hora` datetime NOT NULL, | ||
228 | - `codigo_usuario` bigint(20) DEFAULT NULL, | ||
229 | - PRIMARY KEY (`codigo`) | ||
230 | -) ENGINE=InnoDB AUTO_INCREMENT=202 DEFAULT CHARSET=utf8; | ||
231 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
232 | - | ||
233 | - | ||
234 | --- | ||
235 | --- Table structure for table `login_attempt` | ||
236 | --- | ||
237 | - | ||
238 | -DROP TABLE IF EXISTS `login_attempt`; | ||
239 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
240 | -/*!40101 SET character_set_client = utf8 */; | ||
241 | -CREATE TABLE `login_attempt` ( | ||
242 | - `id` int(11) NOT NULL AUTO_INCREMENT, | ||
243 | - `key` varchar(255) NOT NULL, | ||
244 | - `amount` int(2) NOT NULL DEFAULT '1', | ||
245 | - `reset_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
246 | - `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
247 | - `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
248 | - PRIMARY KEY (`id`), | ||
249 | - KEY `amount` (`amount`), | ||
250 | - KEY `reset_at` (`reset_at`), | ||
251 | - KEY `key` (`key`) USING BTREE | ||
252 | -) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=latin1; | ||
253 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
254 | - | ||
255 | - | ||
256 | --- | ||
257 | --- Table structure for table `metadado` | ||
258 | --- | ||
259 | - | ||
260 | -DROP TABLE IF EXISTS `metadado`; | ||
261 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
262 | -/*!40101 SET character_set_client = utf8 */; | ||
263 | -CREATE TABLE `metadado` ( | ||
264 | - `codigo` int(11) NOT NULL, | ||
265 | - `nome` varchar(45) NOT NULL, | ||
266 | - `valor` text, | ||
267 | - `descricao` text, | ||
268 | - PRIMARY KEY (`codigo`) | ||
269 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
270 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
271 | - | ||
272 | --- | ||
273 | --- Dumping data for table `metadado` | ||
274 | --- | ||
275 | - | ||
276 | -LOCK TABLES `metadado` WRITE; | ||
277 | -/*!40000 ALTER TABLE `metadado` DISABLE KEYS */; | ||
278 | -INSERT INTO `metadado` VALUES (1,'METADADO_LOGO_EMAIL','<img src=\"../../static/images/brasao-brasil.png\" th:src=\"|cid:logo|\"/>','Imagem do logótipo do ministério.'),(2,'METADADO_MSGERRO','<span th:text=\"${msgErro}\">Erro no protocolo.</span>','Mensagem de erro ao enviar ao SEI.'),(3,'METADADO_PROTOCOLO_DATAHORAFORMADATA','<span th:text=\"${protocolo.dataHoraFormatada}\">','Data de criação do protocolo.'),(4,'METADADO_PROTOCOLO_EMAIL1','<span th:text=\"${protocolo.email1}\">E-mail: protocolo.email1</span>','E-mail 1 de interessado.'),(5,'METADADO_PROTOCOLO_EMAIL2','<span th:text=\"${protocolo.email2}\">E-mail: protocolo.emails</span>','E-mail 2 de interessado.'),(6,'METADADO_PROTOCOLO_LINKSEI','<a th:href=\"|https://protocolointegrado.gov.br/protocolo/documento/detalhes_documento.jsf?protocolo=${protocolo.nupe}|\">Link protocolo integrado.</a>','Link de acesso ao protocolo no SEI.'),(7,'METADADO_PROTOCOLO_NUMERO','<span th:text=\"${protocolo.numero}\">Nmero do Protocolo Provisrio: 123ads31232asfd</span>','Numero do protocolo.'),(8,'METADADO_PROTOCOLO_NUMEROANTERIOR','<span th:text=\"${protocolo.numeroProtocoloAnterior}\">Referncia ao protocolo anterior: 121345461</span>','Numero de protocolo anterior.'),(9,'METADADO_PROTOCOLO_NUPE','<span th:text=\"${protocolo.nupe}\">protocolo.nupe</span>','Numero único do protocolo no SEI.'),(10,'METADADO_PROTOCOLO_OBSERVACAO','<span th:text=\"${protocolo.observacao}\">observacao</span>','Obsersavação cadastrada no cancelamento do protocolo.'),(11,'METADADO_PROTOCOLO_TABELAARQUIVO','<table border=\"1\" cellpadding=\"2\" cellspacing=\"0\" style=\"width: 100%\">\n <thead>\n <tr>\n <td style=\"text-align: center\">\n Descrição do documento\n </td>\n <td style=\"text-align: center\">\n Arquivo\n </td>\n </tr>\n </thead>\n <tbody>\n <tr th:each=\"arquivo: ${protocolo.arquivosList}\">\n <td th:text=\"${arquivo.tipoDocumento.descricao}\">${arquivo.tipoDocumento.descricao}</td>\n <td th:text=\"${arquivo.nomeOriginal}\">${arquivo.nomeOriginal}</td>\n </tr>\n </tbody>\n</table>','Tabela com a lista de arquivos do protocolo.'),(12,'METADADO_PROTOCOLO_USUARIOEMAIL','<span th:text=\"${protocolo.usuario.email}\">E-mail: protocolo.email1</span>','E-mail do usuário que cadastrou o protocolo.'),(13,'METADADO_PROTOCOLO_USUARIONOME','<span th:text=\"${protocolo.usuario.nome}\">$ usuario nome</span>','Nome do usuário que cadastrou o protocolo.'),(14,'METADADO_USUARIO_NOVASENHA','<span th:text=\"${usuario.senha}\">Sua nova senha : 5as4f56as4f5as4</span>','Nova senha gerada para o usuário.'),(15,'METADADO_USUARIO_URLCONFIRMACAO','<a th:href=\"${usuario.urlConfirmacaoCadastro}\">CONFIRMAR MEU CADASTRO.</a>','Url para ativação do usuário.'),(16,'METADADO_USUARIO_URLCONSILIACAO','<a th:href=\"${usuario.urlConfirmacaoCadastro}\">CONFIRMAR MEU CADASTRO.</a>','Url para consiliação de usuário protocolo com usuário brasil cidadão.'),(17,'METADADO_USUARIO_URLDESBLOQUEIO','<a th:href=\"${usuario.urlDesbloqueio}\">Link de desbloqueio</a>',NULL); | ||
279 | -/*!40000 ALTER TABLE `metadado` ENABLE KEYS */; | ||
280 | -UNLOCK TABLES; | ||
281 | - | ||
282 | --- | ||
283 | --- Table structure for table `metadado_email` | ||
284 | --- | ||
285 | - | ||
286 | -DROP TABLE IF EXISTS `metadado_email`; | ||
287 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
288 | -/*!40101 SET character_set_client = utf8 */; | ||
289 | -CREATE TABLE `metadado_email` ( | ||
290 | - `codigo_email` int(11) NOT NULL, | ||
291 | - `codigo_metadado` int(11) NOT NULL, | ||
292 | - PRIMARY KEY (`codigo_metadado`,`codigo_email`), | ||
293 | - KEY `fk_metadado_email_configuracao_email1_idx` (`codigo_email`), | ||
294 | - CONSTRAINT `metadado_email_fk1` FOREIGN KEY (`codigo_email`) REFERENCES `configuracao_email` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION, | ||
295 | - CONSTRAINT `metadado_email_fk2` FOREIGN KEY (`codigo_metadado`) REFERENCES `metadado` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
296 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
297 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
298 | - | ||
299 | --- | ||
300 | --- Dumping data for table `metadado_email` | ||
301 | --- | ||
302 | - | ||
303 | -LOCK TABLES `metadado_email` WRITE; | ||
304 | -/*!40000 ALTER TABLE `metadado_email` DISABLE KEYS */; | ||
305 | -INSERT INTO `metadado_email` VALUES (1,15),(2,16),(3,2),(3,7),(4,14),(5,3),(5,4),(5,5),(5,7),(5,8),(5,10),(5,11),(5,12),(5,13),(6,3),(6,4),(6,5),(6,7),(6,10),(6,12),(6,13),(7,3),(7,4),(7,5),(7,6),(7,7),(7,8),(7,9),(7,10),(7,11),(7,12),(7,13),(8,1),(9,1),(10,17); | ||
306 | -/*!40000 ALTER TABLE `metadado_email` ENABLE KEYS */; | ||
307 | -UNLOCK TABLES; | ||
308 | - | ||
309 | --- | ||
310 | --- Table structure for table `permissao` | ||
311 | --- | ||
312 | - | ||
313 | -DROP TABLE IF EXISTS `permissao`; | ||
314 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
315 | -/*!40101 SET character_set_client = utf8 */; | ||
316 | -CREATE TABLE `permissao` ( | ||
317 | - `codigo` bigint(20) NOT NULL, | ||
318 | - `nome` varchar(50) NOT NULL, | ||
319 | - PRIMARY KEY (`codigo`) | ||
320 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
321 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
322 | - | ||
323 | --- | ||
324 | --- Dumping data for table `permissao` | ||
325 | --- | ||
326 | - | ||
327 | -LOCK TABLES `permissao` WRITE; | ||
328 | -/*!40000 ALTER TABLE `permissao` DISABLE KEYS */; | ||
329 | -INSERT INTO `permissao` VALUES (1,'ROLE_CADASTRO'),(2,'ROLE_PROTOCOLO'),(3,'ROLE_BRASILCIDADAO'),(4,'ROLE_EXPEDIDOR'); | ||
330 | -/*!40000 ALTER TABLE `permissao` ENABLE KEYS */; | ||
331 | -UNLOCK TABLES; | ||
332 | - | ||
333 | --- | ||
334 | --- Table structure for table `protocolo` | ||
335 | --- | ||
336 | - | ||
337 | -DROP TABLE IF EXISTS `protocolo`; | ||
338 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
339 | -/*!40101 SET character_set_client = utf8 */; | ||
340 | -CREATE TABLE `protocolo` ( | ||
341 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
342 | - `numero` varchar(50) NOT NULL, | ||
343 | - `data_hora` datetime DEFAULT NULL, | ||
344 | - `codigo_usuario` bigint(20) NOT NULL, | ||
345 | - `status` varchar(20) NOT NULL DEFAULT 'PENDENTE', | ||
346 | - `email1` varchar(50) DEFAULT NULL, | ||
347 | - `email2` varchar(50) DEFAULT NULL, | ||
348 | - `observacao` text, | ||
349 | - `nupe` varchar(20) DEFAULT NULL, | ||
350 | - `data_envio` datetime DEFAULT NULL, | ||
351 | - `erro_ws` text, | ||
352 | - `nr_protocolo_anterior` varchar(50) DEFAULT NULL, | ||
353 | - `id_unidade` bigint(20) DEFAULT NULL, | ||
354 | - `linksei` varchar(255) DEFAULT NULL, | ||
355 | - PRIMARY KEY (`codigo`), | ||
356 | - KEY `codigo_usuario` (`codigo_usuario`), | ||
357 | - CONSTRAINT `protocolo_ibfk_1` FOREIGN KEY (`codigo_usuario`) REFERENCES `usuario` (`codigo`) | ||
358 | -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; | ||
359 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
360 | - | ||
361 | - | ||
362 | --- | ||
363 | --- Table structure for table `schema_version` | ||
364 | --- | ||
365 | - | ||
366 | -DROP TABLE IF EXISTS `schema_version`; | ||
367 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
368 | -/*!40101 SET character_set_client = utf8 */; | ||
369 | -CREATE TABLE `schema_version` ( | ||
370 | - `installed_rank` int(11) NOT NULL, | ||
371 | - `version` varchar(50) DEFAULT NULL, | ||
372 | - `description` varchar(200) NOT NULL, | ||
373 | - `type` varchar(20) NOT NULL, | ||
374 | - `script` varchar(1000) NOT NULL, | ||
375 | - `checksum` int(11) DEFAULT NULL, | ||
376 | - `installed_by` varchar(100) NOT NULL, | ||
377 | - `installed_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
378 | - `execution_time` int(11) NOT NULL, | ||
379 | - `success` tinyint(1) NOT NULL, | ||
380 | - PRIMARY KEY (`installed_rank`), | ||
381 | - KEY `schema_version_s_idx` (`success`) | ||
382 | -) ENGINE=InnoDB DEFAULT CHARSET=latin1; | ||
383 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
384 | - | ||
385 | --- | ||
386 | --- Dumping data for table `schema_version` | ||
387 | --- | ||
388 | - | ||
389 | -LOCK TABLES `schema_version` WRITE; | ||
390 | -/*!40000 ALTER TABLE `schema_version` DISABLE KEYS */; | ||
391 | -INSERT INTO `schema_version` VALUES (1,'01','Script inicial','SQL','V01__Start.sql',107793004,'root','2018-10-26 14:48:18',1610,1); | ||
392 | -/*!40000 ALTER TABLE `schema_version` ENABLE KEYS */; | ||
393 | -UNLOCK TABLES; | ||
394 | - | ||
395 | --- | ||
396 | --- Table structure for table `temp_arquivo` | ||
397 | --- | ||
398 | - | ||
399 | -DROP TABLE IF EXISTS `temp_arquivo`; | ||
400 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
401 | -/*!40101 SET character_set_client = utf8 */; | ||
402 | -CREATE TABLE `temp_arquivo` ( | ||
403 | - `id` int(11) NOT NULL AUTO_INCREMENT, | ||
404 | - `nome` varchar(255) CHARACTER SET latin1 NOT NULL, | ||
405 | - `pagina` varchar(10) CHARACTER SET latin1 NOT NULL, | ||
406 | - `temp_desc_arquivo_idarquivo` varchar(2) CHARACTER SET latin1 NOT NULL, | ||
407 | - `temp_desc_arquivo_token` varchar(6) CHARACTER SET latin1 NOT NULL, | ||
408 | - PRIMARY KEY (`id`), | ||
409 | - KEY `fk_temp_arquivo_temp_desc_arquivo1_idx` (`temp_desc_arquivo_idarquivo`,`temp_desc_arquivo_token`), | ||
410 | - CONSTRAINT `fk_temp_arquivo_temp_desc_arquivo1` FOREIGN KEY (`temp_desc_arquivo_idarquivo`, `temp_desc_arquivo_token`) REFERENCES `temp_desc_arquivo` (`idarquivo`, `token`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
411 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
412 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
413 | - | ||
414 | - | ||
415 | --- | ||
416 | --- Table structure for table `temp_desc_arquivo` | ||
417 | --- | ||
418 | - | ||
419 | -DROP TABLE IF EXISTS `temp_desc_arquivo`; | ||
420 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
421 | -/*!40101 SET character_set_client = utf8 */; | ||
422 | -CREATE TABLE `temp_desc_arquivo` ( | ||
423 | - `tipo` varchar(45) CHARACTER SET latin1 NOT NULL, | ||
424 | - `qtd_paginas` varchar(10) CHARACTER SET latin1 NOT NULL, | ||
425 | - `temp_protocolo_token` varchar(6) CHARACTER SET latin1 NOT NULL, | ||
426 | - `idarquivo` varchar(2) CHARACTER SET latin1 NOT NULL, | ||
427 | - `token` varchar(6) CHARACTER SET latin1 NOT NULL, | ||
428 | - `descricao` varchar(45) CHARACTER SET latin1 NOT NULL, | ||
429 | - PRIMARY KEY (`idarquivo`,`token`), | ||
430 | - KEY `fk_temp_desc_arquivo_temp_protocolo1_idx` (`temp_protocolo_token`), | ||
431 | - CONSTRAINT `fk_temp_desc_arquivo_temp_protocolo1` FOREIGN KEY (`temp_protocolo_token`) REFERENCES `temp_protocolo` (`token`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
432 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
433 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
434 | - | ||
435 | - | ||
436 | --- | ||
437 | --- Table structure for table `temp_protocolo` | ||
438 | --- | ||
439 | - | ||
440 | -DROP TABLE IF EXISTS `temp_protocolo`; | ||
441 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
442 | -/*!40101 SET character_set_client = utf8 */; | ||
443 | -CREATE TABLE `temp_protocolo` ( | ||
444 | - `token` varchar(6) CHARACTER SET latin1 NOT NULL, | ||
445 | - `email1` varchar(100) CHARACTER SET latin1 DEFAULT NULL, | ||
446 | - `email2` varchar(100) CHARACTER SET big5 DEFAULT NULL, | ||
447 | - `nr_protocolo_anterior` varchar(100) CHARACTER SET latin1 DEFAULT NULL, | ||
448 | - `usuario_codigo` bigint(20) NOT NULL, | ||
449 | - PRIMARY KEY (`token`), | ||
450 | - KEY `fk_temp_protocolo_usuario1_idx` (`usuario_codigo`), | ||
451 | - CONSTRAINT `fk_temp_protocolo_usuario1` FOREIGN KEY (`usuario_codigo`) REFERENCES `usuario` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION | ||
452 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
453 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
454 | - | ||
455 | - | ||
456 | --- | ||
457 | --- Table structure for table `tipo_documento` | ||
458 | --- | ||
459 | - | ||
460 | -DROP TABLE IF EXISTS `tipo_documento`; | ||
461 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
462 | -/*!40101 SET character_set_client = utf8 */; | ||
463 | -CREATE TABLE `tipo_documento` ( | ||
464 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
465 | - `descricao` varchar(50) NOT NULL, | ||
466 | - `codigo_sei` varchar(45) NOT NULL, | ||
467 | - `ativo` tinyint(4) NOT NULL, | ||
468 | - PRIMARY KEY (`codigo`) | ||
469 | -) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8; | ||
470 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
471 | - | ||
472 | --- | ||
473 | --- Dumping data for table `tipo_documento` | ||
474 | --- | ||
475 | - | ||
476 | -LOCK TABLES `tipo_documento` WRITE; | ||
477 | -/*!40000 ALTER TABLE `tipo_documento` DISABLE KEYS */; | ||
478 | -INSERT INTO `tipo_documento` VALUES (14,'Requerimento','238',1),(15,'Complemento','651',1); | ||
479 | -/*!40000 ALTER TABLE `tipo_documento` ENABLE KEYS */; | ||
480 | -UNLOCK TABLES; | ||
481 | - | ||
482 | --- | ||
483 | --- Table structure for table `usuario` | ||
484 | --- | ||
485 | - | ||
486 | -DROP TABLE IF EXISTS `usuario`; | ||
487 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
488 | -/*!40101 SET character_set_client = utf8 */; | ||
489 | -CREATE TABLE `usuario` ( | ||
490 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
491 | - `nome` varchar(50) NOT NULL, | ||
492 | - `email` varchar(50) NOT NULL, | ||
493 | - `senha` varchar(120) NOT NULL, | ||
494 | - `telefone` varchar(15) DEFAULT NULL, | ||
495 | - `ativo` tinyint(1) DEFAULT '1', | ||
496 | - `token` varchar(255) NOT NULL DEFAULT '0', | ||
497 | - `nome_social` varchar(50) DEFAULT NULL, | ||
498 | - `status_expedicao` tinyint(1) DEFAULT '0', | ||
499 | - `listexpedidor` varchar(30) DEFAULT NULL, | ||
500 | - `unidade` varchar(12) DEFAULT NULL, | ||
501 | - PRIMARY KEY (`codigo`), | ||
502 | - UNIQUE KEY `email` (`email`) | ||
503 | -) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8; | ||
504 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
505 | - | ||
506 | --- | ||
507 | --- Dumping data for table `usuario` | ||
508 | --- | ||
509 | - | ||
510 | -LOCK TABLES `usuario` WRITE; | ||
511 | -/*!40000 ALTER TABLE `usuario` DISABLE KEYS */; | ||
512 | -INSERT INTO `usuario` VALUES (1,'Admin','admin@admin.com','$2a$10$g.wT4R0Wnfel1jc/k84OXuwZE02BlACSLfWy6TycGPvvEKvIm86SG',NULL,1,'0',NULL,0,'LISTA1',NULL),(2,'Dário','dario.santos.bsb@gmail.com','$2a$10$kGXHZvmTfzS3.uAn7L5q1e6LXrQAhA29qFG0/d4jIUA684i8EJtNC','(99) 99999-9999',0,'0','',0,'selecionadosUsuarioExpedicao',NULL),(6,'FABIO HENRIQUE MAXIMIANO','dario.santos@redes.unb.br','$2a$10$Wv4zAd2QnmS.sFtvQf2xFuJZBCqkfyKeqI8lw3yEht/E6IUN9WgBm','(00)00000-0000',1,'0',NULL,1,'selecionadosUsuarioExpedicao',NULL),(7,'EXPEDIDOR','dariobsb@hotmail.com','$2a$10$K27B2DRGIjZAZxNXWzhkc./JFAQM98LJtzZbbGLm5Y6H0eSCDZTLO','(61) 99999-9999',1,'0','EXPED',0,'0',NULL),(8,'EXP@EXP.COM','exp@exp.com','$2a$10$sXtxt6ZrHbh8048pAppe8ubWUMJosr7wBVYsnMaIcpPAXM6SMT/1W','(11) 11111-1111',1,'0','EXP@EXP.COM',NULL,NULL,'110001972'),(9,'JOSE','jose@jose.com','$2a$10$BqBmIANciq4iZrPzJSXq8uTk5i/jZ8V0eFLetVUZohrLXEaRrznYi','(11) 2255-3366',1,'0','',NULL,NULL,'110001896'); | ||
513 | -/*!40000 ALTER TABLE `usuario` ENABLE KEYS */; | ||
514 | -UNLOCK TABLES; | ||
515 | - | ||
516 | --- | ||
517 | --- Table structure for table `usuario_brasil_cidadao` | ||
518 | --- | ||
519 | - | ||
520 | -DROP TABLE IF EXISTS `usuario_brasil_cidadao`; | ||
521 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
522 | -/*!40101 SET character_set_client = utf8 */; | ||
523 | -CREATE TABLE `usuario_brasil_cidadao` ( | ||
524 | - `codigo` bigint(20) NOT NULL AUTO_INCREMENT, | ||
525 | - `cpf` varchar(15) NOT NULL, | ||
526 | - `codigo_usuario` bigint(20) NOT NULL, | ||
527 | - `token` text, | ||
528 | - `ativo` tinyint(4) NOT NULL, | ||
529 | - `email` varchar(50) DEFAULT NULL, | ||
530 | - PRIMARY KEY (`codigo`), | ||
531 | - KEY `usuario_brasil_cidadao_fki_1` (`codigo_usuario`), | ||
532 | - CONSTRAINT `usuario_brasil_cidadao_ibfk_1` FOREIGN KEY (`codigo_usuario`) REFERENCES `usuario` (`codigo`) ON UPDATE CASCADE | ||
533 | -) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; | ||
534 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
535 | - | ||
536 | --- | ||
537 | --- Dumping data for table `usuario_brasil_cidadao` | ||
538 | --- | ||
539 | - | ||
540 | -LOCK TABLES `usuario_brasil_cidadao` WRITE; | ||
541 | -/*!40000 ALTER TABLE `usuario_brasil_cidadao` DISABLE KEYS */; | ||
542 | -INSERT INTO `usuario_brasil_cidadao` VALUES (1,'29752304869',6,'eyJraWQiOiJyc2ExIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIyOTc1MjMwNDg2OSIsImF6cCI6IjUxNmE5YjU3LWQwMjItNDg0My1hNzkyLTkzYjRkYzk1NjIyYiIsInNjb3BlIjpbImRhZG9zX2JyYXNpbF9jaWRhZGFvIiwib3BlbmlkIl0sIm5hbWUiOiJGQUJJTyBIRU5SSVFVRSBNQVhJTUlBTk8iLCJpc3MiOiJodHRwczpcL1wvdGVzdGVzY3AtZWNpZGFkYW8uZXN0YWxlaXJvLnNlcnByby5nb3YuYnJcL3NjcFwvIiwiZXhwIjoxNTQwNTg0NDY1LCJpYXQiOjE1NDA1ODA4NjYsImF1dGhfZmFjdG9yIjoiQ1BGX1NFTkhBIiwianRpIjoiZjM2MjQ0N2YtMjQxYi00MGJkLWFiNjEtMTQ5ODc3NjJjYWZmIn0.Ra8uMYFaxwXKhy3YG2Lu6HEC61hNVRW5bH2adk3oP3VgyC2wySvviXqz_Jd805Thl86SCVtWhr2csXWllBn0_gELW6BVAawePP7izaUef1Oohby9e7yluugMglvfqxQ8cRX0CZnprEflrS_SuWkvbW_ULxQ7clfSdJVkK0nkho9xgoQT133F-sCjjfPvg44jLqeNjbnVkRTtZwWBK14_pkDq90QLmZKryFwIstHuiVb-vTMdSMIbo4w3ppoT8UZaD8EXVoi_pAN8pXc8RLLi3gvGqxBvw71Zm18uJhf_bVkvlhClfwO-qK6oCxRTHMkBiFfUjpcLLuNS-GuSHS3AwQ',1,NULL); | ||
543 | -/*!40000 ALTER TABLE `usuario_brasil_cidadao` ENABLE KEYS */; | ||
544 | -UNLOCK TABLES; | ||
545 | - | ||
546 | --- | ||
547 | --- Table structure for table `usuario_grupo` | ||
548 | --- | ||
549 | - | ||
550 | -DROP TABLE IF EXISTS `usuario_grupo`; | ||
551 | -/*!40101 SET @saved_cs_client = @@character_set_client */; | ||
552 | -/*!40101 SET character_set_client = utf8 */; | ||
553 | -CREATE TABLE `usuario_grupo` ( | ||
554 | - `codigo_usuario` bigint(20) NOT NULL, | ||
555 | - `codigo_grupo` bigint(20) NOT NULL, | ||
556 | - PRIMARY KEY (`codigo_usuario`,`codigo_grupo`), | ||
557 | - KEY `codigo_grupo` (`codigo_grupo`), | ||
558 | - CONSTRAINT `usuario_grupo_ibfk_1` FOREIGN KEY (`codigo_usuario`) REFERENCES `usuario` (`codigo`) | ||
559 | -) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
560 | -/*!40101 SET character_set_client = @saved_cs_client */; | ||
561 | - | ||
562 | --- | ||
563 | --- Dumping data for table `usuario_grupo` | ||
564 | --- | ||
565 | - | ||
566 | -LOCK TABLES `usuario_grupo` WRITE; | ||
567 | -/*!40000 ALTER TABLE `usuario_grupo` DISABLE KEYS */; | ||
568 | -INSERT INTO `usuario_grupo` VALUES (1,1),(2,2),(6,3),(7,4),(8,4),(9,4); | ||
569 | -/*!40000 ALTER TABLE `usuario_grupo` ENABLE KEYS */; | ||
570 | -UNLOCK TABLES; | ||
571 | - | ||
572 | -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; | ||
573 | - | ||
574 | -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; | ||
575 | -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; | ||
576 | -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; | ||
577 | -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; | ||
578 | -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; | ||
579 | -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; | ||
580 | -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; | ||
581 | - | ||
582 | --- Dump completed on 2018-11-19 13:32:46 |
src/main/resources/db/migration/V01__criar_tabela_usuario_grupo_permissao.sql
0 → 100644
@@ -0,0 +1,42 @@ | @@ -0,0 +1,42 @@ | ||
1 | +CREATE TABLE usuario ( | ||
2 | + codigo BIGINT(20) PRIMARY KEY AUTO_INCREMENT, | ||
3 | + nome VARCHAR(50) NOT NULL, | ||
4 | + email VARCHAR(50) NOT NULL, | ||
5 | + senha VARCHAR(120) NOT NULL, | ||
6 | + ativo BOOLEAN DEFAULT true, | ||
7 | + data_nascimento DATE | ||
8 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
9 | + | ||
10 | +CREATE TABLE grupo ( | ||
11 | + codigo BIGINT(20) PRIMARY KEY, | ||
12 | + nome VARCHAR(50) NOT NULL | ||
13 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
14 | + | ||
15 | +CREATE TABLE permissao ( | ||
16 | + codigo BIGINT(20) PRIMARY KEY, | ||
17 | + nome VARCHAR(50) NOT NULL | ||
18 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
19 | + | ||
20 | +CREATE TABLE usuario_grupo ( | ||
21 | + codigo_usuario BIGINT(20) NOT NULL, | ||
22 | + codigo_grupo BIGINT(20) NOT NULL, | ||
23 | + PRIMARY KEY (codigo_usuario, codigo_grupo), | ||
24 | + FOREIGN KEY (codigo_usuario) REFERENCES usuario(codigo), | ||
25 | + FOREIGN KEY (codigo_grupo) REFERENCES grupo(codigo) | ||
26 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
27 | + | ||
28 | +CREATE TABLE grupo_permissao ( | ||
29 | + codigo_grupo BIGINT(20) NOT NULL, | ||
30 | + codigo_permissao BIGINT(20) NOT NULL, | ||
31 | + PRIMARY KEY (codigo_grupo, codigo_permissao), | ||
32 | + FOREIGN KEY (codigo_grupo) REFERENCES grupo(codigo), | ||
33 | + FOREIGN KEY (codigo_permissao) REFERENCES permissao(codigo) | ||
34 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
35 | + | ||
36 | +ALTER TABLE usuario | ||
37 | + MODIFY ativo BOOLEAN DEFAULT true NOT NULL; | ||
38 | + | ||
39 | +INSERT INTO grupo (codigo, nome) VALUES (1, 'Administrador'); | ||
40 | +INSERT INTO grupo (codigo, nome) VALUES (2, 'Consulta'); | ||
41 | + | ||
42 | +INSERT INTO usuario (nome, email, senha, ativo) VALUES ('Admin', 'admin@admin.com', '$2a$10$g.wT4R0Wnfel1jc/k84OXuwZE02BlACSLfWy6TycGPvvEKvIm86SG', 1) | ||
0 | \ No newline at end of file | 43 | \ No newline at end of file |
src/main/resources/db/migration/V02__inserir_permissoes_e_relacionar_usuario_admin.sql
0 → 100644
@@ -0,0 +1,6 @@ | @@ -0,0 +1,6 @@ | ||
1 | +INSERT INTO permissao VALUES (1, 'ROLE_CADASTRO'); | ||
2 | + | ||
3 | +INSERT INTO grupo_permissao (codigo_grupo, codigo_permissao) VALUES (1, 1); | ||
4 | + | ||
5 | +INSERT INTO usuario_grupo (codigo_usuario, codigo_grupo) VALUES ( | ||
6 | + (SELECT codigo FROM usuario WHERE email = 'admin@admin.com'), 1); | ||
0 | \ No newline at end of file | 7 | \ No newline at end of file |
src/main/resources/db/migration/V03__criar_tabela_protocolo.sql
0 → 100644
@@ -0,0 +1,13 @@ | @@ -0,0 +1,13 @@ | ||
1 | +CREATE TABLE protocolo ( | ||
2 | + codigo BIGINT(20) PRIMARY KEY AUTO_INCREMENT, | ||
3 | + nome VARCHAR(80) NOT NULL, | ||
4 | + rg VARCHAR(20) NOT NULL, | ||
5 | + cpf VARCHAR(11) NOT NULL, | ||
6 | + telefone VARCHAR(20) NOT NULL, | ||
7 | + email VARCHAR(50) NOT NULL, | ||
8 | + descricao VARCHAR(120) NOT NULL, | ||
9 | + numero VARCHAR(50) NOT NULL, | ||
10 | + arquivo VARCHAR(100) NOT NULL, | ||
11 | + content_type VARCHAR(100) NOT NULL, | ||
12 | + data_hora DATETIME | ||
13 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
0 | \ No newline at end of file | 14 | \ No newline at end of file |
src/main/resources/db/migration/V04__criar_tabela_arquivos.sql
0 → 100644
@@ -0,0 +1,12 @@ | @@ -0,0 +1,12 @@ | ||
1 | +ALTER TABLE protocolo DROP COLUMN arquivo; | ||
2 | +ALTER TABLE protocolo DROP COLUMN content_type; | ||
3 | + | ||
4 | +CREATE TABLE arquivos ( | ||
5 | + codigo BIGINT(20) PRIMARY KEY AUTO_INCREMENT, | ||
6 | + codigo_protocolo BIGINT(20), | ||
7 | + nome VARCHAR(100) NOT NULL, | ||
8 | + nome_original VARCHAR(100) NOT NULL, | ||
9 | + content_type VARCHAR(100) NOT NULL, | ||
10 | + tamanho VARCHAR(10) NOT NULL, | ||
11 | + FOREIGN KEY (codigo_protocolo) REFERENCES protocolo(codigo) | ||
12 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
0 | \ No newline at end of file | 13 | \ No newline at end of file |
src/main/resources/db/migration/V05__inserir_role_protocolo.sql
0 → 100644
src/main/resources/db/migration/V06__remover_coluna_dt_nascimento_e_ativo_tabela_usuario.sql
0 → 100644
src/main/resources/db/migration/V07__adicao_colula_telefone_tabela_usuario.sql
0 → 100644
src/main/resources/db/migration/V08__remover_colunas_nome_rg_cpf_telefone_email_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V09__adicionar_coluna_codigo_usuario_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V10__criar_tabela_tipo_documento.sql
0 → 100644
src/main/resources/db/migration/V11__adicionar_coluna_tipo_doc_e_desc_doc_tabela_arquivos.sql
0 → 100644
src/main/resources/db/migration/V12__retornando_coluna_ativo_tabela_usuario.sql
0 → 100644
@@ -0,0 +1 @@ | @@ -0,0 +1 @@ | ||
1 | +ALTER TABLE usuario ADD COLUMN ativo BOOLEAN DEFAULT true; |
src/main/resources/db/migration/V13__remover_coluna_descricao_tabela_protocolo.sql
0 → 100644
@@ -0,0 +1 @@ | @@ -0,0 +1 @@ | ||
1 | +ALTER TABLE protocolo DROP COLUMN descricao; |
src/main/resources/db/migration/V14__adicionar_not_null_coluna_codigo_usuario_tabela_protocolo.sql
0 → 100644
@@ -0,0 +1 @@ | @@ -0,0 +1 @@ | ||
1 | +ALTER TABLE protocolo MODIFY codigo_usuario BIGINT(20) NOT NULL; |
src/main/resources/db/migration/V15__adicionar_coluna_status_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V16__adicionar_coluna_emails_secundarios_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V17__alterar_conteudo_grupo_de_consulta_protocolo.sql
0 → 100644
@@ -0,0 +1 @@ | @@ -0,0 +1 @@ | ||
1 | +update grupo set nome = 'Protocolo' where codigo = 2; |
src/main/resources/db/migration/V18__adicionar_coluna_observacao_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V19__adicionar_coluna_nupe_e_data_envio_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V20__tipo_documento_insert.sql
0 → 100644
@@ -0,0 +1,13 @@ | @@ -0,0 +1,13 @@ | ||
1 | +INSERT INTO tipo_documento (descricao) VALUES ('APOLICE (RECEBIMENTO)'); | ||
2 | +INSERT INTO tipo_documento (descricao) VALUES ('ATA (RECEBIMENTO)'); | ||
3 | +INSERT INTO tipo_documento (descricao) VALUES ('BOLETIM'); | ||
4 | +INSERT INTO tipo_documento (descricao) VALUES ('BOLETO (RECEBIMENTO)'); | ||
5 | +INSERT INTO tipo_documento (descricao) VALUES ('CARTA (RECEBIMENTO)'); | ||
6 | +INSERT INTO tipo_documento (descricao) VALUES ('CARTA CIRCULAR (RECEBIMENTO)'); | ||
7 | +INSERT INTO tipo_documento (descricao) VALUES ('CARTA CIRCULAR CONJUNTA (RECEBIMENTO)'); | ||
8 | +INSERT INTO tipo_documento (descricao) VALUES ('COMUNICAÇÃO EXTERNA'); | ||
9 | +INSERT INTO tipo_documento (descricao) VALUES ('CONVITE'); | ||
10 | +INSERT INTO tipo_documento (descricao) VALUES ('CURRICULUM VITAE'); | ||
11 | +INSERT INTO tipo_documento (descricao) VALUES ('DECLARAÇÃO (RECEBIMENTO)'); | ||
12 | +INSERT INTO tipo_documento (descricao) VALUES ('OFÍCIO (RECEBIMENTO)'); | ||
13 | +INSERT INTO tipo_documento (descricao) VALUES ('Meu tipo'); | ||
0 | \ No newline at end of file | 14 | \ No newline at end of file |
src/main/resources/db/migration/V21__remover_meu_tipo_documento.sql
0 → 100644
src/main/resources/db/migration/V22__alterar_tamanho_campo_nome_tabela_arquivo.sql
0 → 100644
src/main/resources/db/migration/V23__alterar_tamanho_campo_nome_original_tabela_arquivo.sql
0 → 100644
src/main/resources/db/migration/V24__adicionar_coluna_nr_protocolo_anterior_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V25__adicionar_coluna_id_unidade_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V26__alterar_tamanho_campo_status_tabela_protocolo.sql
0 → 100644
src/main/resources/db/migration/V27__alterar_tamanho_campo_ observacao _protocolo.sql
0 → 100644
src/main/resources/db/migration/V28__alterar_tabela_tipodocumento_com_campo_codigo_sei_e _campo_ativo.sql
0 → 100644
src/main/resources/db/migration/V29__limpa_as_tabelas_arquivos_protocolo_e_tipodocumento.sql
0 → 100644
@@ -0,0 +1,11 @@ | @@ -0,0 +1,11 @@ | ||
1 | +SET sql_safe_updates=0; | ||
2 | + | ||
3 | +DELETE FROM arquivos; | ||
4 | + | ||
5 | +DELETE FROM protocolo; | ||
6 | + | ||
7 | +DELETE FROM tipo_documento; | ||
8 | + | ||
9 | +INSERT INTO tipo_documento (descricao, codigo_sei, ativo) values ('Requerimento', '238', 1); | ||
10 | + | ||
11 | +INSERT INTO tipo_documento (descricao, codigo_sei, ativo) values ('Complemento', '651', 1); | ||
0 | \ No newline at end of file | 12 | \ No newline at end of file |
src/main/resources/db/migration/V30__tabela_usuario_estrutura_campo_email_para_unico.sql
0 → 100644
src/main/resources/db/migration/V31__tabela_usuario_estrutura_campo_token_mobile.sql
0 → 100644
src/main/resources/db/migration/V32__inserir_role_brasilcidadao.sql
0 → 100644
@@ -0,0 +1,16 @@ | @@ -0,0 +1,16 @@ | ||
1 | +INSERT INTO permissao VALUES (3, 'ROLE_BRASILCIDADAO'); | ||
2 | + | ||
3 | +INSERT INTO grupo VALUES (3, 'Brasil Cidadao'); | ||
4 | + | ||
5 | +INSERT INTO grupo_permissao (codigo_grupo, codigo_permissao) VALUES (3, 3); | ||
6 | + | ||
7 | +CREATE TABLE usuario_brasil_cidadao ( | ||
8 | + codigo BIGINT NOT NULL AUTO_INCREMENT, | ||
9 | + cpf VARCHAR(15) NOT NULL, | ||
10 | + codigo_usuario BIGINT NOT NULL, | ||
11 | + FOREIGN KEY (codigo_usuario) | ||
12 | + REFERENCES usuario(codigo) | ||
13 | + ON UPDATE CASCADE ON DELETE RESTRICT, | ||
14 | + PRIMARY KEY(codigo) | ||
15 | + | ||
16 | + ); | ||
0 | \ No newline at end of file | 17 | \ No newline at end of file |
src/main/resources/db/migration/V33__criacao_de_tabela_de_log_protocolo_correcao_unique_cpf.sql
0 → 100644
@@ -0,0 +1,102 @@ | @@ -0,0 +1,102 @@ | ||
1 | +-- MySQL Workbench Synchronization | ||
2 | +-- Generated: 2018-02-26 14:06 | ||
3 | +-- Model: New Model | ||
4 | +-- Version: 1.0 | ||
5 | +-- Project: Name of the project | ||
6 | +-- Author: 01572931140 | ||
7 | + | ||
8 | +SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; | ||
9 | +SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; | ||
10 | +SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL'; | ||
11 | + | ||
12 | +CREATE TABLE IF NOT EXISTS `configuracao` ( | ||
13 | + `codigo` BIGINT(20) NOT NULL AUTO_INCREMENT, | ||
14 | + `nome` VARCHAR(45) NOT NULL, | ||
15 | + `valor` TEXT NULL DEFAULT NULL, | ||
16 | + `descricao` TEXT NULL DEFAULT NULL, | ||
17 | + `id_enum` INT(11) NULL DEFAULT NULL, | ||
18 | + `id_classificacao` INT(11) NULL DEFAULT NULL, | ||
19 | + `classificacao` VARCHAR(45) NULL DEFAULT NULL, | ||
20 | + PRIMARY KEY (`codigo`)) | ||
21 | +ENGINE = InnoDB | ||
22 | +AUTO_INCREMENT = 53 | ||
23 | +DEFAULT CHARACTER SET = utf8; | ||
24 | + | ||
25 | +CREATE TABLE IF NOT EXISTS `log_sistema` ( | ||
26 | + `codigo` BIGINT(20) NOT NULL AUTO_INCREMENT, | ||
27 | + `codigo_entidade` BIGINT(20) NOT NULL, | ||
28 | + `entidade` VARCHAR(45) NOT NULL, | ||
29 | + `acao` VARCHAR(45) NOT NULL, | ||
30 | + `antes` TEXT NULL DEFAULT NULL, | ||
31 | + `depois` TEXT NULL DEFAULT NULL, | ||
32 | + `data_hora` DATETIME NOT NULL, | ||
33 | + `codigo_usuario` BIGINT(20) NULL DEFAULT NULL, | ||
34 | + PRIMARY KEY (`codigo`)) | ||
35 | +ENGINE = InnoDB | ||
36 | +AUTO_INCREMENT = 33 | ||
37 | +DEFAULT CHARACTER SET = utf8; | ||
38 | + | ||
39 | +CREATE TABLE IF NOT EXISTS `temp_arquivo` ( | ||
40 | + `id` INT(11) NOT NULL AUTO_INCREMENT, | ||
41 | + `nome` VARCHAR(255) NOT NULL, | ||
42 | + `pagina` VARCHAR(10) NOT NULL, | ||
43 | + `temp_desc_arquivo_idarquivo` VARCHAR(2) NOT NULL, | ||
44 | + `temp_desc_arquivo_token` VARCHAR(6) NOT NULL, | ||
45 | + PRIMARY KEY (`id`), | ||
46 | + INDEX `fk_temp_arquivo_temp_desc_arquivo1_idx` (`temp_desc_arquivo_idarquivo` ASC, `temp_desc_arquivo_token` ASC), | ||
47 | + CONSTRAINT `fk_temp_arquivo_temp_desc_arquivo1` | ||
48 | + FOREIGN KEY (`temp_desc_arquivo_idarquivo` , `temp_desc_arquivo_token`) | ||
49 | + REFERENCES `temp_desc_arquivo` (`idarquivo` , `token`) | ||
50 | + ON DELETE NO ACTION | ||
51 | + ON UPDATE NO ACTION) | ||
52 | +ENGINE = InnoDB | ||
53 | +DEFAULT CHARACTER SET = latin1; | ||
54 | + | ||
55 | +CREATE TABLE IF NOT EXISTS `temp_desc_arquivo` ( | ||
56 | + `tipo` VARCHAR(45) NOT NULL, | ||
57 | + `qtd_paginas` VARCHAR(10) NOT NULL, | ||
58 | + `temp_protocolo_token` VARCHAR(6) NOT NULL, | ||
59 | + `idarquivo` VARCHAR(2) NOT NULL, | ||
60 | + `token` VARCHAR(6) NOT NULL, | ||
61 | + `descricao` VARCHAR(45) NOT NULL, | ||
62 | + PRIMARY KEY (`idarquivo`, `token`), | ||
63 | + INDEX `fk_temp_desc_arquivo_temp_protocolo1_idx` (`temp_protocolo_token` ASC), | ||
64 | + CONSTRAINT `fk_temp_desc_arquivo_temp_protocolo1` | ||
65 | + FOREIGN KEY (`temp_protocolo_token`) | ||
66 | + REFERENCES `temp_protocolo` (`token`) | ||
67 | + ON DELETE NO ACTION | ||
68 | + ON UPDATE NO ACTION) | ||
69 | +ENGINE = InnoDB | ||
70 | +DEFAULT CHARACTER SET = latin1; | ||
71 | + | ||
72 | +CREATE TABLE IF NOT EXISTS `temp_protocolo` ( | ||
73 | + `token` VARCHAR(6) NOT NULL, | ||
74 | + `email1` VARCHAR(100) NULL DEFAULT NULL, | ||
75 | + `email2` VARCHAR(100) CHARACTER SET 'big5' NULL DEFAULT NULL, | ||
76 | + `nr_protocolo_anterior` VARCHAR(100) NULL DEFAULT NULL, | ||
77 | + `usuario_codigo` BIGINT(20) NOT NULL, | ||
78 | + PRIMARY KEY (`token`), | ||
79 | + INDEX `fk_temp_protocolo_usuario1_idx` (`usuario_codigo` ASC), | ||
80 | + CONSTRAINT `fk_temp_protocolo_usuario1` | ||
81 | + FOREIGN KEY (`usuario_codigo`) | ||
82 | + REFERENCES `usuario` (`codigo`) | ||
83 | + ON DELETE NO ACTION | ||
84 | + ON UPDATE NO ACTION) | ||
85 | +ENGINE = InnoDB | ||
86 | +DEFAULT CHARACTER SET = latin1; | ||
87 | + | ||
88 | +ALTER TABLE `usuario` | ||
89 | +ADD COLUMN `nome_social` VARCHAR(50) NULL DEFAULT NULL AFTER `token`; | ||
90 | + | ||
91 | +ALTER TABLE `temp_arquivo` | ||
92 | +CHARACTER SET = utf8 ; | ||
93 | + | ||
94 | +ALTER TABLE `temp_desc_arquivo` | ||
95 | +CHARACTER SET = utf8 ; | ||
96 | + | ||
97 | +ALTER TABLE `temp_protocolo` | ||
98 | +CHARACTER SET = utf8 ; | ||
99 | + | ||
100 | +SET SQL_MODE=@OLD_SQL_MODE; | ||
101 | +SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; | ||
102 | +SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; |
src/main/resources/db/migration/V34__correcao_tabela_log.sql
0 → 100644
@@ -0,0 +1,19 @@ | @@ -0,0 +1,19 @@ | ||
1 | +-- MySQL Workbench Synchronization | ||
2 | +-- Generated: 2018-03-01 16:29 | ||
3 | +-- Model: New Model | ||
4 | +-- Version: 1.0 | ||
5 | +-- Project: Name of the project | ||
6 | +-- Author: 01572931140 | ||
7 | + | ||
8 | +SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; | ||
9 | +SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; | ||
10 | +SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES'; | ||
11 | + | ||
12 | +--ALTER TABLE `protocolo`.`log_sistema` | ||
13 | +--CHANGE COLUMN `codigo` `codigo` BIGINT(20) NOT NULL AUTO_INCREMENT , | ||
14 | +--ADD COLUMN `codigo_usuario` BIGINT(20) NULL DEFAULT NULL AFTER `data_hora`; | ||
15 | + | ||
16 | + | ||
17 | +SET SQL_MODE=@OLD_SQL_MODE; | ||
18 | +SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; | ||
19 | +SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; |
src/main/resources/db/migration/V35__tabela_metadad_configuracao_email.sql
0 → 100644
@@ -0,0 +1,180 @@ | @@ -0,0 +1,180 @@ | ||
1 | +-- MySQL Workbench Synchronization | ||
2 | +-- Generated: 2018-03-07 12:38 | ||
3 | +-- Model: New Model | ||
4 | +-- Version: 1.0 | ||
5 | +-- Project: Name of the project | ||
6 | +-- Author: 01572931140 | ||
7 | + | ||
8 | +SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; | ||
9 | +SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; | ||
10 | +SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES'; | ||
11 | + | ||
12 | +ALTER TABLE `configuracao` | ||
13 | +CHANGE COLUMN `codigo` `codigo` INT(11) NOT NULL AUTO_INCREMENT ; | ||
14 | + | ||
15 | +CREATE TABLE IF NOT EXISTS `configuracao_email` ( | ||
16 | + `codigo` INT(11) NOT NULL, | ||
17 | + `nome` VARCHAR(45) NULL DEFAULT NULL, | ||
18 | + `valor` TEXT NULL DEFAULT NULL, | ||
19 | + PRIMARY KEY (`codigo`)) | ||
20 | +ENGINE = InnoDB | ||
21 | +DEFAULT CHARACTER SET = utf8; | ||
22 | + | ||
23 | +CREATE TABLE IF NOT EXISTS `metadado` ( | ||
24 | + `codigo` INT(11) NOT NULL, | ||
25 | + `nome` VARCHAR(45) NOT NULL, | ||
26 | + `valor` TEXT NULL DEFAULT NULL, | ||
27 | + `descricao` TEXT NULL DEFAULT NULL, | ||
28 | + PRIMARY KEY (`codigo`)) | ||
29 | +ENGINE = InnoDB | ||
30 | +DEFAULT CHARACTER SET = utf8; | ||
31 | + | ||
32 | +CREATE TABLE IF NOT EXISTS `metadado_email` ( | ||
33 | + `codigo_email` INT(11) NOT NULL, | ||
34 | + `codigo_metadado` INT(11) NOT NULL, | ||
35 | + PRIMARY KEY (`codigo_metadado`, `codigo_email`), | ||
36 | + INDEX `fk_metadado_email_configuracao_email1_idx` (`codigo_email` ASC), | ||
37 | + CONSTRAINT `metadado_email_fk1` | ||
38 | + FOREIGN KEY (`codigo_email`) | ||
39 | + REFERENCES `configuracao_email` (`codigo`) | ||
40 | + ON DELETE NO ACTION | ||
41 | + ON UPDATE NO ACTION, | ||
42 | + CONSTRAINT `metadado_email_fk2` | ||
43 | + FOREIGN KEY (`codigo_metadado`) | ||
44 | + REFERENCES `metadado` (`codigo`) | ||
45 | + ON DELETE NO ACTION | ||
46 | + ON UPDATE NO ACTION) | ||
47 | +ENGINE = InnoDB | ||
48 | +DEFAULT CHARACTER SET = utf8; | ||
49 | + | ||
50 | +SET SQL_MODE=@OLD_SQL_MODE; | ||
51 | +SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; | ||
52 | +SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; | ||
53 | + | ||
54 | + | ||
55 | +/* | ||
56 | +-- Insert protocolo.configuracao | ||
57 | +LIMIT 0, 1000 | ||
58 | + | ||
59 | +-- Date: 2018-03-07 12:42 | ||
60 | +*/ | ||
61 | +SET FOREIGN_KEY_CHECKS = 0; | ||
62 | +truncate table `configuracao`; | ||
63 | +SET FOREIGN_KEY_CHECKS = 1; | ||
64 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (1,'SMTP_SERVER','10.209.253.28','',1,1,'server-email'); | ||
65 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (2,'SMTP_PORT','25','teste3',2,1,'server-email'); | ||
66 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (3,'MAIL_FROM','xxx@yyy.zzz','',3,1,'server-email'); | ||
67 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (4,'EMAIL_RESPONSAVEL','sss@sssf.com',NULL,4,1,'server-email'); | ||
68 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (9,'URL_AUTORIZAR','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/authorize',NULL,17,4,'brasil-cidadao'); | ||
69 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (10,'URL_TOKEN','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/token',NULL,18,4,'brasil-cidadao'); | ||
70 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (11,'URL_DADOS_USUARIO','https://testeservicos-ecidadao.estaleiro.serpro.gov.br/servicos-ecidadao/ecidadao/usuario/getUserInfo/',NULL,19,4,'brasil-cidadao'); | ||
71 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (12,'CLIENT_ID','516a9b57-d022-4843-a792-93b4dc95622b',NULL,20,4,'brasil-cidadao'); | ||
72 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (13,'SCOPE','openid',NULL,21,4,'brasil-cidadao'); | ||
73 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (14,'REDIRECT_URI','https://protocolo.planejamento.gov.br/login',NULL,22,4,'brasil-cidadao'); | ||
74 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (15,'CLIENT_SECRET','Ld65DuKIva0_EU0LO1VrVC6Be7b-_AsgvkueKpW4OJlhDdJQ4TJ9nKB173M5c5mmG03uhZvEbBKnDRmAe7gZkw',NULL,23,4,'brasil-cidadao'); | ||
75 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (16,'ESCOPO','dados_brasil_cidadao',NULL,24,4,'brasil-cidadao'); | ||
76 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (18,'URL_BRASIL_CIDADAO','https://testescp-ecidadao.estaleiro.serpro.gov.br/scp/login',NULL,25,4,'brasil-cidadao'); | ||
77 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (19,'URL_PRIMEIRO_ACESSO','https://testeportal-ecidadao.estaleiro.serpro.gov.br/servicos-cidadao/acesso/#/primeiro-acesso',NULL,26,4,'brasil-cidadao'); | ||
78 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (20,'STORAGE_PATH','E:/Ambiente/Desenvolvimento/estorage/temp','teste2',16,3,'storage'); | ||
79 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (21,'URL_ENDPOINT','https://seitreina.nuvem.gov.br/sei/ws/SeiWS.php','teste4',5,2,'sei'); | ||
80 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (22,'ASSUNTO_CODIGO_ESTRUTURADO','520.1',NULL,6,2,'sei'); | ||
81 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (23,'PROCEDIMENTO_ESPECIFICADO','Especificacao do processo',NULL,7,2,'sei'); | ||
82 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (24,'PROCEDIMENTO_NIVEL_ACESSO','0',NULL,8,2,'sei'); | ||
83 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (25,'PROCEDIMENTO_ID_TIPO_PROCEDIMENTO','100000346',NULL,9,2,'sei'); | ||
84 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (26,'DOCUMENTO_TIPO','R',NULL,10,2,'sei'); | ||
85 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (27,'DOCUMENTO_ID_SERIE','1',NULL,11,2,'sei'); | ||
86 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (28,'DOCUMENTO_NIVEL_ACESSO','0',NULL,12,2,'sei'); | ||
87 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (29,'SIGLA_SISTEMA','UNB',NULL,13,2,'sei'); | ||
88 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (30,'IDENTIFICACAO_SERVICO','testeunb',NULL,14,2,'sei'); | ||
89 | +INSERT INTO `configuracao` (`codigo`,`nome`,`valor`,`descricao`,`id_enum`,`id_classificacao`,`classificacao`) VALUES (31,'ID_UNIDADE','110001972',NULL,15,2,'sei'); | ||
90 | + | ||
91 | +/* | ||
92 | +-- insert protocolo.configuracao_email | ||
93 | +LIMIT 0, 1000 | ||
94 | + | ||
95 | +-- Date: 2018-03-07 12:41 | ||
96 | +*/ | ||
97 | +SET FOREIGN_KEY_CHECKS = 0; | ||
98 | +truncate table `configuracao_email`; | ||
99 | +SET FOREIGN_KEY_CHECKS = 1; | ||
100 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (1,'EMAIL_CONTEUDO_CADASTRO','<p><span>PREZADO(A),</span></p>\r\n<p style=\"text-align: justify;\"><span><br />SEJA BEM VINDO AO SISTEMA DE PROTOCOLIZAÇÃO ELETRÔNICA DE DOCUMENTOS DO MINISTÉRIO DO PLANEJAMENTO, DESENVOLVIMENTO E GESTÃO. PARA CONCLUIR O SEU CADASTRO, ACESSE O LINK <span>{$METADADO_USUARIO_URLCONFIRMACAO}</span></span></p>\r\n<p><span><br />ESSE PASSO É IMPORTANTE PARA VALIDARMOS TODOS OS USUÁRIOS.</span></p>'); | ||
101 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (2,'EMAIL_CONTEUDO_CONSOLIDACAO','<p><span>PREZADO(A),</span></p>\r\n<p style=\"text-align: justify;\"><span><br />SEJA BEM VINDO AO SISTEMA DE PROTOCOLIZAÇÃO ELETRÔNICA DE DOCUMENTOS DO MINISTÉRIO DO PLANEJAMENTO, DESENVOLVIMENTO E GESTÃO. PARA CONCLUIR O SEU CADASTRO, ACESSE O LINK <span>{$METADADO_USUARIO_URLCONSILIACAO}</span></span></p>\r\n<p><span><br />ESSE PASSO É IMPORTANTE PARA VALIDARMOS TODOS OS USUÁRIOS.</span></p>'); | ||
102 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (3,'EMAIL_CONTEUDO_ERRO_SEI','<h1 style=\"font-size: 15px;\">Erro ao enviar o protocolo Nº <span>{$METADADO_PROTOCOLO_NUMERO}</span>para o SEI</h1>\r\n<p>Detalhe do Erro: <span>{$METADADO_MSGERRO}</span>.</p>'); | ||
103 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (4,'EMAIL_CONTEUDO_ESQUECI_SENHA','<p style=\"font-size: 15px;\">Recebemos uma solicitação de recuperação de senha, por isso estamos enviando uma nova para que você possa continuar usando nosso sistema de protocolo.</p>\r\n<h1 style=\"font-size: 15px;\">Sua nova senha é: <span>{$METADADO_USUARIO_NOVASENHA}</span></h1>'); | ||
104 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (5,'EMAIL_CONTEUDO_PROTOCOLO','<h3>Número do Protocolo Provisório: <span>{$METADADO_PROTOCOLO_NUMERO}</span></h3>\r\n<p style=\"text-align: justify;\">Número Único de Protocolo: Será enviado para o(s) e-mail(s) cadastrado(s) no prazo máximo de vinte e quatro horas, contadas do recebimento, salvo quando este ocorrer às sextas-feiras, véspera de feriados ou pontos facultativos ou haja restrição técnica da unidade, devidamente fundamentada.</p>\r\n<p>Data: <span>{$METADADO_PROTOCOLO_DATAHORAFORMADATA}</span></p>\r\n<p>Nome: <span>{$METADADO_PROTOCOLO_USUARIONOME}</span></p>\r\n<p>E-mail: <span>{$METADADO_PROTOCOLO_USUARIOEMAIL}</span></p>\r\n<p>E-mail: <span>{$METADADO_PROTOCOLO_EMAIL1}</span></p>\r\n<p>E-mail: <span>{$METADADO_PROTOCOLO_EMAIL2}</span></p>\r\n<p>Referência ao protocolo anterior: <span>{$METADADO_PROTOCOLO_NUMEROANTERIOR}</span></p>\r\n<p><span>{$METADADO_PROTOCOLO_TABELAARQUIVO}</span></p>'); | ||
105 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (6,'EMAIL_CONTEUDO_NEGADO','<h3>Número do Protocolo Provisório: <span>{$METADADO_PROTOCOLO_NUMERO}</span></h3>\r\n<p style=\"text-align: justify;\">Prezado (a)<span>{$METADADO_PROTOCOLO_USUARIONOME}</span>, <br /> Esta é uma mensagem automática e não deve ser respondida. <br /> Seu protocolo não foi aceito pelo motivo abaixo especificado: <br /><span>{$METADADO_PROTOCOLO_OBSERVACAO}</span></p>\r\n<p>Nome:<span>{$METADADO_PROTOCOLO_USUARIONOME}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_USUARIOEMAIL}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL1}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL2}</span></p>'); | ||
106 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (7,'EMAIL_CONTEUDO_RECEBIMENTO_SEI','<h3>Número Único de Protocolo:<span>{$METADADO_PROTOCOLO_NUPE}</span></h3>\r\n<p style=\"text-align: justify;\">Prezado (a) usuário (a), Esta é uma mensagem automática e não deve ser respondida. Informamos que seu protocolo foi entregue ao setor responsável e que foi gerado o NUP:<span>{$METADADO_PROTOCOLO_NUPE}</span>. Quaisquer divergências das informações prestadas ou problemas nos arquivos anexados serão comunicados ao (à) senhor (a) através dos e-mails informados em seu cadastro. Informações referentes à tramitação de seu processo serão atualizadas até 24 horas e estarão acessíveis no sítio do protocolo integrado do Governo Federal, disponível em <span>{$METADADO_PROTOCOLO_LINKSEI}</span></p>\r\n<p>Data:<span>{$METADADO_PROTOCOLO_DATAHORAFORMADATA}</span>}.</p>\r\n<p>Nome:<span>{$METADADO_PROTOCOLO_USUARIONOME}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_USUARIOEMAIL}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL1}</span></p>\r\n<p>E-mail:<span>{$METADADO_PROTOCOLO_EMAIL2}</span></p>\r\n<p>Referência ao protocolo anterior:</p>\r\n<p><span>{$METADADO_PROTOCOLO_TABELAARQUIVO}</span></p>'); | ||
107 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (8,'EMAIL_CABECALHO','<table>\r\n<tbody>\r\n<tr style=\"text-align: center;\">\r\n<td><span>{$METADADO_LOGO_EMAIL}</span></td>\r\n</tr>\r\n<tr style=\"text-align: center;\">\r\n<td>\r\n<h4>Ministério do Planejamento, Desenvolvimento e Gestão <br /> Protocolo Central <br /> Esplanada dos Ministérios Bloco K, Térreo, sala T 28, CEP 70.040-906 – Brasília-DF <br /> protocolo@planejamento.gov.br <br /> (61) 2020-5195/5580 </h4>\r\n</td>\r\n</tr>\r\n</tbody>\r\n</table>'); | ||
108 | +INSERT INTO `configuracao_email` (`codigo`,`nome`,`valor`) VALUES (9,'EMAIL_RODAPE','<p> </p>\r\n<p>“Por gentileza, responda nossa pesquisa de satisfação do Sistema de Protocolo Eletrônico. Sua contribuição é de extrema valia. <a href=\"http://formsus.datasus.gov.br/site/formulario.php?id_aplicacao=36481\" target=\"_blank\" rel=\"noopener\"> Clique aqui</a>”</p>\r\n<p> </p>\r\n<p style=\"text-align: justify; font-size: 10px;\">São de exclusiva responsabilidade do usuário: A conformidade entre os dados informados e os documentos; A conservação dos originais em papel de documentos digitalizados até que decaia o direito de revisão dos atos praticados no processo, para que, caso solicitado, sejam apresentados para qualquer tipo de conferência; A observação de que os atos processuais se consideram realizados no dia e hora do recebimento pelo SEI, considerando-se tempestivos os praticados até 23h59min59s do último dia do prazo, considerando sempre o horário oficial de Brasília, independente do fuso horário em que se encontre. </p>'); | ||
109 | + | ||
110 | +/* | ||
111 | +-- Insert protocolo.metadado | ||
112 | +LIMIT 0, 1000 | ||
113 | + | ||
114 | +-- Date: 2018-03-07 12:42 | ||
115 | +*/ | ||
116 | +SET FOREIGN_KEY_CHECKS = 0; | ||
117 | +truncate table `metadado`; | ||
118 | +SET FOREIGN_KEY_CHECKS = 1; | ||
119 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (1,'METADADO_LOGO_EMAIL','<img src=\"../../static/images/brasao-brasil.png\" th:src=\"|cid:logo|\"/>','Imagem do logótipo do ministério.'); | ||
120 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (2,'METADADO_MSGERRO','<span th:text=\"&{msgErro}\">Erro no protocolo.</span>','Mensagem de erro ao enviar ao SEI.'); | ||
121 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (3,'METADADO_PROTOCOLO_DATAHORAFORMADATA','<span th:text=\"&{protocolo.dataHoraFormatada}\">','Data de criação do protocolo.'); | ||
122 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (4,'METADADO_PROTOCOLO_EMAIL1','<span th:text=\"&{protocolo.email1}\">E-mail: protocolo.email1</span>','E-mail 1 de interessado.'); | ||
123 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (5,'METADADO_PROTOCOLO_EMAIL2','<span th:text=\"&{protocolo.email2}\">E-mail: protocolo.emails</span>','E-mail 2 de interessado.'); | ||
124 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (6,'METADADO_PROTOCOLO_LINKSEI','<span th:text=\"&{protocolo.linkSEI}\">linksei</span>','Link de acesso ao protocolo no SEI.'); | ||
125 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (7,'METADADO_PROTOCOLO_NUMERO','<span th:text=\"&{protocolo.numero}\">Nmero do Protocolo Provisrio: 123ads31232asfd</span>','Numero do protocolo.'); | ||
126 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (8,'METADADO_PROTOCOLO_NUMEROANTERIOR','<span th:text=\"&{protocolo.numeroProtocoloAnterior}\">Referncia ao protocolo anterior: 121345461</span>','Numero de protocolo anterior.'); | ||
127 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (9,'METADADO_PROTOCOLO_NUPE','<span th:text=\"&{protocolo.nupe}\">protocolo.nupe</span>','Numero único do protocolo no SEI.'); | ||
128 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (10,'METADADO_PROTOCOLO_OBSERVACAO','<span th:text=\"&{protocolo.observacao}\">observacao</span>','Obsersavação cadastrada no cancelamento do protocolo.'); | ||
129 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (11,'METADADO_PROTOCOLO_TABELAARQUIVO','<table border=\"1\" cellpadding=\"2\" cellspacing=\"0\" style=\"width: 100%\">\n <thead>\n <tr>\n <td style=\"text-align: center\">\n Descrição do documento\n </td>\n <td style=\"text-align: center\">\n Arquivo\n </td>\n </tr>\n </thead>\n <tbody>\n <tr th:each=\"arquivo: &{protocolo.arquivosList}\">\n <td th:text=\"&{arquivo.tipoDocumento.descricao}\">&{arquivo.tipoDocumento.descricao}</td>\n <td th:text=\"&{arquivo.nomeOriginal}\">&{arquivo.nomeOriginal}</td>\n </tr>\n </tbody>\n</table>','Tabela com a lista de arquivos do protocolo.'); | ||
130 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (12,'METADADO_PROTOCOLO_USUARIOEMAIL','<span th:text=\"&{protocolo.usuario.email}\">E-mail: protocolo.email1</span>','E-mail do usuário que cadastrou o protocolo.'); | ||
131 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (13,'METADADO_PROTOCOLO_USUARIONOME','<span th:text=\"&{protocolo.usuario.nome}\">& usuario nome</span>','Nome do usuário que cadastrou o protocolo.'); | ||
132 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (14,'METADADO_USUARIO_NOVASENHA','<span th:text=\"&{usuario.senha}\">Sua nova senha : 5as4f56as4f5as4</span>','Nova senha gerada para o usuário.'); | ||
133 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (15,'METADADO_USUARIO_URLCONFIRMACAO','<a th:href=\"&{usuario.urlConfirmacaoCadastro}\">CONFIRMAR MEU CADASTRO.</a>','Url para ativação do usuário.'); | ||
134 | +INSERT INTO `metadado` (`codigo`,`nome`,`valor`,`descricao`) VALUES (16,'METADADO_USUARIO_URLCONSILIACAO','<a th:href=\"&{usuario.urlConfirmacaoCadastro}\">CONFIRMAR MEU CADASTRO.</a>','Url para consiliação de usuário protocolo com usuário brasil cidadão.'); | ||
135 | +UPDATE metadado SET valor = REPLACE(valor,'&','$'); | ||
136 | + | ||
137 | +/* | ||
138 | +-- insert protocolo.metadado_email | ||
139 | +LIMIT 0, 1000 | ||
140 | + | ||
141 | +-- Date: 2018-03-07 12:42 | ||
142 | +*/ | ||
143 | +SET FOREIGN_KEY_CHECKS = 0; | ||
144 | +truncate table `metadado_email`; | ||
145 | +SET FOREIGN_KEY_CHECKS = 1; | ||
146 | + | ||
147 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (1,15); | ||
148 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (2,16); | ||
149 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (3,2); | ||
150 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (3,7); | ||
151 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (4,14); | ||
152 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,3); | ||
153 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,4); | ||
154 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,5); | ||
155 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,7); | ||
156 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,8); | ||
157 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,10); | ||
158 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,11); | ||
159 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,12); | ||
160 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (5,13); | ||
161 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,3); | ||
162 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,4); | ||
163 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,5); | ||
164 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,7); | ||
165 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,10); | ||
166 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,12); | ||
167 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (6,13); | ||
168 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,3); | ||
169 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,4); | ||
170 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,5); | ||
171 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,6); | ||
172 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,7); | ||
173 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,8); | ||
174 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,9); | ||
175 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,10); | ||
176 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,11); | ||
177 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,12); | ||
178 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (7,13); | ||
179 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (8,1); | ||
180 | +INSERT INTO `metadado_email` (`codigo_email`,`codigo_metadado`) VALUES (9,1); |
src/main/resources/db/migration/V36__tabela_protocolo_erro_ws.sql
0 → 100644
src/main/resources/db/migration/V37__correcao_metadado_urlconfirmacao.sql
0 → 100644
@@ -0,0 +1,12 @@ | @@ -0,0 +1,12 @@ | ||
1 | + | ||
2 | +UPDATE metadado | ||
3 | + SET valor=concat('<a th:href="', '$', '{usuario.urlConfirmacaoCadastro}">CONFIRMAR MEU CADASTRO.</a>') | ||
4 | + WHERE (codigo=15); | ||
5 | + | ||
6 | +UPDATE metadado | ||
7 | + SET valor=concat('<a th:href="', '$', '{usuario.urlConfirmacaoCadastro}">CONFIRMAR MEU CADASTRO.</a>') | ||
8 | + WHERE (codigo=16); | ||
9 | + | ||
10 | +UPDATE configuracao_email | ||
11 | + SET valor=concat('<h4 style="background-color: #fafafa; color: #626262; text-align: center;"><span>{', '$', 'METADADO_LOGO_EMAIL}</span></h4><h4 style="background-color: #fafafa; color: #626262; text-align: center;">Ministério do Planejamento, Desenvolvimento e Gestão <br />Protocolo Central <br />Esplanada dos Ministérios Bloco K, Térreo, sala T 28, CEP 70.040-906 – Brasília-DF <br />protocolo@planejamento.gov.br <br />(61) 2020-5195/5580 </h4>') | ||
12 | + WHERE (codigo=8); | ||
0 | \ No newline at end of file | 13 | \ No newline at end of file |