Commit 951c9d9e6bd46098fe8f447926c2bf8cadadf407
1 parent
3c62e7a2
Exists in
master
redmine #4115 Construção da história;
Showing
6 changed files
with
208 additions
and
214 deletions
Show diff stats
cit-contratos-api/src/main/java/br/com/centralit/api/service/impl/InicializarContratosServiceImpl.java
... | ... | @@ -659,13 +659,11 @@ public class InicializarContratosServiceImpl extends UtilStartup { |
659 | 659 | |
660 | 660 | Pagina pgConsultaRelatorios = new Pagina("Consulta de relatórios", "/cit-contratos-web/html/consultaRelatorios/consultaRelatorios.html"); |
661 | 661 | pgConsultaRelatorios = this.paginaService.saveIfNotExist(pgConsultaRelatorios); |
662 | - Menu menuConsultaRelatorios = new Menu("Consulta de relatório", pgConsultaRelatorios, menuTermosRelatorios, null, 10, null, null, null, null, modulo, "CONSULTA_RELATORIO"); | |
662 | + Menu menuConsultaRelatorios = new Menu("Consulta de relatório", pgConsultaRelatorios, menuTermosRelatorios, null, 11, null, null, null, null, modulo, "CONSULTA_RELATORIO"); | |
663 | 663 | |
664 | 664 | List<MenuFile> filesMenuConsultaRelatorios = new ArrayList<MenuFile>(); |
665 | 665 | filesMenuConsultaRelatorios.add(new MenuFile(CIT_CONTRATOS_WEB_ANGULAR_CUSTOM + "controller/ConsultaRelatoriosController.js", this.dominioJS, menuConsultaRelatorios)); |
666 | 666 | filesMenuConsultaRelatorios.add(new MenuFile(CIT_CONTRATOS_WEB_ANGULAR_CUSTOM + "controller/ConsultaRelatoriosController.min.js", this.dominioJS, menuConsultaRelatorios)); |
667 | - filesMenuConsultaRelatorios.add(new MenuFile(CIT_CONTRATOS_WEB_ANGULAR_CUSTOM + "repository/ConsultaRelatoriosRepository.js", this.dominioJS, menuConsultaRelatorios)); | |
668 | - filesMenuConsultaRelatorios.add(new MenuFile(CIT_CONTRATOS_WEB_ANGULAR_CUSTOM + "repository/ConsultaRelatoriosRepository.min.js", this.dominioJS, menuConsultaRelatorios)); | |
669 | 667 | menuConsultaRelatorios.setIncludes(filesMenuConsultaRelatorios); |
670 | 668 | |
671 | 669 | this.menuService.mergeIfNotExist(menuConsultaRelatorios); | ... | ... |
cit-contratos-api/src/main/resources/script-bd/v1.0.0-alpha10/01-cit-contratos-1.0.0-ALFA-10-postgres.sql
0 → 100644
... | ... | @@ -0,0 +1,11 @@ |
1 | +-- LUÍS CÉSAR INÍCIO 28/03/2016 | |
2 | + | |
3 | +INSERT INTO menufile (id, datacriacao, dataedicao, version, ativo, caminho, dominiomenufile_id, menu_id) | |
4 | +VALUES (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, 0, true, '/cit-contratos-web/assets/js/angular/custom/controller/ConsultaRelatoriosController.js', | |
5 | + (SELECT id FROM dominio WHERE chave = 'tipoFile' AND codigo = 2), (SELECT id FROM menu WHERE chave = 'CONSULTA_RELATORIO')); | |
6 | + | |
7 | +INSERT INTO menufile (id, datacriacao, dataedicao, version, ativo, caminho, dominiomenufile_id, menu_id) | |
8 | +VALUES (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, 0, true, '/cit-contratos-web/assets/js/angular/custom/controller/ConsultaRelatoriosController.min.js', | |
9 | + (SELECT id FROM dominio WHERE chave = 'tipoFile' AND codigo = 2), (SELECT id FROM menu WHERE chave = 'CONSULTA_RELATORIO')); | |
10 | + | |
11 | +-- LUÍS CÉSAR FIM 28/03/2016 | |
0 | 12 | \ No newline at end of file | ... | ... |
cit-contratos-web/src/main/java/br/com/centralit/listener/StartupListenerContratos.java
... | ... | @@ -288,6 +288,13 @@ public class StartupListenerContratos extends UtilStartup implements Application |
288 | 288 | list.add(new Dominio("tipoEventoContratoRecebimentoObjeto", "Passível de correção", "PASSIVEL_CORRECAO", 9L)); |
289 | 289 | list.add(new Dominio("tipoEventoContratoRecebimentoObjeto", "Outros", "OUTROS", 10L)); |
290 | 290 | |
291 | + //CHAVE tipoRelatorioContrato | |
292 | + list.add(new Dominio("tipoRelatorioContrato", "Relatório de registro de empenho", "RELATORIO_REGISTRO_EMPENHO", 1L)); | |
293 | + list.add(new Dominio("tipoRelatorioContrato", "Relatório de ocorrências", "RELATORIO_OCORRENCIAS", 2L)); | |
294 | + list.add(new Dominio("tipoRelatorioContrato", "Relatório de liberação de pagamento", "RELATORIO_LIBERACAO_PAGAMENTO", 3L)); | |
295 | + list.add(new Dominio("tipoRelatorioContrato", "Relatório de repactuação", "RELATORIO_REPACTUACAO", 4L)); | |
296 | + list.add(new Dominio("tipoRelatorioContrato", "Relatório de rescisão", "RELATORIO_RESCISAO", 5L)); | |
297 | + | |
291 | 298 | |
292 | 299 | this.dominioService.saveListIfNotExist(list); |
293 | 300 | Logger.getLogger(StartupListenerContratos.class).info("Domínios executados - StartupListenerContratos!"); |
... | ... | @@ -977,6 +984,12 @@ public class StartupListenerContratos extends UtilStartup implements Application |
977 | 984 | internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.TITULO_DOCUMENTO_EMPENHO", "Registro de Nota de Empenho", dominio, modulo)); |
978 | 985 | internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.GERAR_REGISTRO_EMPENHO", "Gerar registro de nota de empenho", dominio, modulo)); |
979 | 986 | |
987 | + internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.EMITIR_CONSULTA_RELATORIOS", "Emitir consulta relatórios", dominio, modulo)); | |
988 | + internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.GERAR", "Gerar", dominio, modulo)); | |
989 | + internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.DATA_INICIAL", "Data inicial", dominio, modulo)); | |
990 | + internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.DATA_FINAL", "Data final", dominio, modulo)); | |
991 | + internacionalizacaoList.add(new Internacionalizacao("CONTRATOS.LABEL.TIPO_RELATORIOS", "Tipo de relatórios", dominio, modulo)); | |
992 | + | |
980 | 993 | } |
981 | 994 | |
982 | 995 | private void gerarMensagem(Dominio dominio, Modulo modulo, List<Internacionalizacao> internacionalizacaoList) { | ... | ... |
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/ConsultaRelatoriosController.js
0 → 100644
... | ... | @@ -0,0 +1,65 @@ |
1 | +'use strict'; | |
2 | + | |
3 | +citApp.controller('ConsultaRelatoriosController', ['$scope', '$filter', '$timeout', '$translate', 'ContratoRepository', 'DominioRepository', 'ContratoEventoRepository', | |
4 | + function VisaoContratoController($scope, $filter, $timeout, $translate, ContratoRepository, DominioRepository, ContratoEventoRepository) { | |
5 | + | |
6 | + $scope.contrato = null; | |
7 | + $scope.dataInicial = null; | |
8 | + $scope.dataFinal = null; | |
9 | + $scope.tiposRelatorios = []; | |
10 | + $scope.isTiposRelatorioSelecionado = false; | |
11 | + | |
12 | + $scope.findContrato = function (value) { | |
13 | + return ContratoRepository.findContrato(value, $scope.usuarioLogado.organizacao.id).then(function (result) { | |
14 | + return result; | |
15 | + }); | |
16 | + }; | |
17 | + | |
18 | + DominioRepository.findAllDominio('tipoRelatorioContrato').then(function (result) { | |
19 | + $scope.tiposRelatorios = result; | |
20 | + }); | |
21 | + | |
22 | + $scope.resetForm = function () { | |
23 | + $scope.contrato = null; | |
24 | + $timeout(function () { | |
25 | + $scope.consultaRelatoriosForm.$submitted = false; | |
26 | + $scope.consultaRelatoriosForm.$setPristine(); | |
27 | + }); | |
28 | + }; | |
29 | + | |
30 | + // Seleciona todos os tipos de relatórios da lista | |
31 | + $scope.checkAll = function(value) { | |
32 | + angular.forEach($scope.tiposRelatorios, function (item, key) { | |
33 | + item.$selected = value; | |
34 | + item.$index = key; | |
35 | + }); | |
36 | + $scope.atualizaTiposRelatorioSelecionado(); | |
37 | + }; | |
38 | + | |
39 | + $scope.atualizaTiposRelatorioSelecionado = function() { | |
40 | + $scope.isTiposRelatorioSelecionado = false; | |
41 | + angular.forEach($scope.tiposRelatorios, function (item) { | |
42 | + if (item.$selected) { | |
43 | + $scope.isTiposRelatorioSelecionado = true; | |
44 | + } | |
45 | + }); | |
46 | + }; | |
47 | + | |
48 | + $scope.gerar = function () { | |
49 | + $scope.consultaRelatoriosForm.$submitted = true; | |
50 | + | |
51 | + if($scope.consultaRelatoriosForm.$valid && $scope.isTiposRelatorioSelecionado) { | |
52 | + | |
53 | + $scope.setLoadingSalva(true); | |
54 | + | |
55 | +// ContratoEventoRepository.gerarRelatorios(???).then(function(result) { | |
56 | +// }); | |
57 | + | |
58 | + $scope.setLoading(false); | |
59 | + }else{ | |
60 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
61 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
62 | + } | |
63 | + }; | |
64 | + | |
65 | +}]); | |
0 | 66 | \ No newline at end of file | ... | ... |
cit-contratos-web/src/main/webapp/html/consultaRelatorios/consultaRelatorios.html
... | ... | @@ -1,211 +0,0 @@ |
1 | -<div id="visaoContratoOcorrencias" class="page-content clearfix" ng-controller="VisaoContratoController"> | |
2 | - | |
3 | - <div class="bar-buttons-action fixed"> | |
4 | - <div class="row"> | |
5 | - <div class="col-sm-9 text-left"> | |
6 | - <span class="divider-vertical"></span> | |
7 | - </div><!-- .col --> | |
8 | - | |
9 | - <div class="col-sm-3 text-right"> | |
10 | - <favorito/> | |
11 | - <help-button workspace="workspace" /> | |
12 | - </div><!-- .col --> | |
13 | - </div><!-- .row --> | |
14 | - </div><!-- .bar-buttons-action --> | |
15 | - | |
16 | - <breadcrumb ng-workspace="workspace"></breadcrumb> | |
17 | - <form name="VisaoContratoForm"> | |
18 | - <div class="row"> | |
19 | - <div class="col-sm-3"> | |
20 | - <auto-complete ng-find="findContrato(value)" ng-item="item.numeroAnoContratoFormatado" ng-id="contrato" ng-acao-borracha="resetForm()" | |
21 | - ng-model="contrato" form="VisaoContratoForm" ng-obrigatorio="true"> | |
22 | - </auto-complete> | |
23 | - </div> | |
24 | - </div> | |
25 | - <div class="contrato-evento-container"> | |
26 | - <div class="contrato-evento-items"> | |
27 | - <div class="contrato-evento-item" ng-repeat="contratoEvento in contratoEventos" ng-class="classCssSituacaoContrato[contratoEvento.contrato.dominioSituacaoAtual.nome]"> | |
28 | - <div class="contrato-evento-item-top"> | |
29 | - <h3 class="contrato-evento-item-title"> | |
30 | - <translate>LABEL.CONTRATO</translate> - {{contratoEvento.contrato.numeroAnoContratoFormatado}} | |
31 | - <span class="contrato-evento-item-status"> <translate>LABEL.STATUS</translate> - {{contratoEvento.contrato.dominioSituacaoAtual.descricao}}</span> | |
32 | - <span class="contrato-evento-item-status" style="color: black; background: transparent; margin: auto;"> | |
33 | - <translate>LABEL.NUMERO_PROCESSO</translate> - {{contratoEvento.contrato.numeroProcesso}}</span> | |
34 | - </h3> | |
35 | - | |
36 | - <div class="contrato-evento-item-top-right"> | |
37 | - <div ng-hide="true" class="contrato-evento-item-filters clearfix"> | |
38 | - <span class="contrato-evento-item-filters-title"><translate>LABEL.FILTROS</translate></span> | |
39 | - | |
40 | - <div class="contrato-evento-item-filters-fields clearfix"> | |
41 | - <input type="text" class="contrato-evento-item-filters-field form-control" /> | |
42 | - | |
43 | - <input type="text" class="contrato-evento-item-filters-field form-control" /> | |
44 | - </div> | |
45 | - </div> | |
46 | - | |
47 | - <div class="contrato-evento-item-actions"> | |
48 | - <select class="form-control" ng-model="contrato.contratoEvento.tipoEventoId" ng-options="acao.nome as acao.descricao for acao in acoesContrato track by acao.id" | |
49 | - ng-change="criarEvento()"> | |
50 | - <option value="">Selecione</option> | |
51 | - </select> | |
52 | - </div> | |
53 | - | |
54 | - <div ng-hide="true" class="contrato-evento-item-view-details"> | |
55 | - <button class="btn btn-primary"><i class="fa fa-eye"></i><translate>LABEL.EXIBIR_DETALHES</translate></button> | |
56 | - </div> | |
57 | - </div> | |
58 | - </div> | |
59 | - | |
60 | - <timeline-horizontal | |
61 | - show-start-end-point="true" | |
62 | - start-point-icon="play-circle" | |
63 | - start-point-text="{{contrato.dataVigenciaInicial}}" | |
64 | - end-point-icon="stop" | |
65 | - end-point-color="{{endPointColor}}" | |
66 | - end-point-text="{{contrato.ultimaDataVigenciaFinal? contrato.ultimaDataVigenciaFinal : contrato.dataVigenciaFinal}}" | |
67 | - vigencia-final="{{vigenciaFinal}}" | |
68 | - timeline-class="contrato-evento-item-timeline" | |
69 | - list="contratoEvento.eventos" | |
70 | - list-screen="contratoEvento.contratoEventosForScreen" | |
71 | - total-items="{{contratoEvento.totalOcorrencia}}" | |
72 | - next-element-event="atualizaContratoOcorrenciasPorDemanda(contratoEvento.contrato.id)"> | |
73 | - <li class="timeline-item" ng-repeat="evento in contratoEvento.contratoEventosForScreen" ng-class="{'timeline-item-month-start': evento.monthStart, 'timeline-item-hidden': evento.hidden}"> | |
74 | - <div class="timeline-item-icon" tooltip="{{evento.dataEvento}} - {{evento.tipoEvento.descricao}}" tooltip-enable="!evento.monthStart && !evento.dataVigencia"> | |
75 | - <div class="timeline-item-month-start-text" ng-if="evento.monthStart">{{evento.dataEvento}}</div> | |
76 | - <div class="timeline-item-month-start-line" ng-if="evento.monthStart"></div> | |
77 | - | |
78 | - <i ng-if="!evento.monthStart && !evento.dataVigencia" class="fa fa-{{evento.iconClass}} {{evento.colorClass}}" ng-click="mostrarEvento(evento);" style="cursor: pointer;"></i> | |
79 | - <div class="timeline-item" ng-if="evento.dataVigencia"> | |
80 | - <div class="timeline-start-end-point-icon timeline-end-point-icon"> | |
81 | - <i class="fa fa-{{evento.iconClass}} {{evento.colorClass}}" title="{{evento.tipoEvento}} - {{evento.dataEvento}}"></i> | |
82 | - </div> | |
83 | - </div> | |
84 | - </div><!-- .timeline-item-icon --> | |
85 | - </li><!-- .timeline-item --> | |
86 | - </timeline-horizontal> | |
87 | - | |
88 | - <div class="contrato-evento-item-progress-container"> | |
89 | - <h4 class="contrato-evento-item-progress-title"><translate>LABEL.EMPENHO</translate></h4> | |
90 | - <div class="contrato-evento-item-progress"> | |
91 | - <div class="contrato-evento-item-progress-scored" | |
92 | - tooltip="{{$translate.instant('LABEL.VALOR_EMPENHADO')}}: {{contratoEvento.contrato.totalEmpenhado | currency}}" | |
93 | - style="width: {{porcentagemEmpenho}}%"> | |
94 | - </div> | |
95 | - <div class="contrato-evento-item-progress-total" | |
96 | - tooltip="{{$translate.instant('LABEL.VALOR_RESIDUAL')}}: {{(valorTotalContratoAditivado - contratoEvento.contrato.totalEmpenhado) | currency}}" | |
97 | - style="width: {{100 - porcentagemEmpenho}}%"> | |
98 | - </div> | |
99 | - </div> | |
100 | - | |
101 | - <div class="contrato-evento-item-progress-legend"> | |
102 | - <div class="contrato-evento-item-progress-legend-scored"> | |
103 | - <span class="contrato-evento-item-progress-legend-color"></span> <translate>LABEL.VALOR_EMPENHADO</translate>: {{contratoEvento.contrato.totalEmpenhado | currency}} | |
104 | - </div> | |
105 | - | |
106 | - <div class="contrato-evento-item-progress-legend-total"> | |
107 | - <span class="contrato-evento-item-progress-legend-color"></span> <translate>LABEL.VALOR_RESIDUAL</translate>: {{(valorTotalContratoAditivado - contratoEvento.contrato.totalEmpenhado) | currency}} | |
108 | - | |
109 | - <div align="right"><translate>LABEL.VALOR_TOTAL_CONTRATO</translate>: {{valorTotalContratoAditivado | currency}}</div> | |
110 | - </div> | |
111 | - </div> | |
112 | - </div> | |
113 | - | |
114 | - </div> | |
115 | - </div> | |
116 | - </div> | |
117 | - </br> | |
118 | - <div ng-show="evento"> | |
119 | - <div class="panel-heading clearfix"> | |
120 | - <button title="{{$translate.instant('LABEL.VISUALIZAR')}}" alt="{{$translate.instant('LABEL.VISUALIZAR')}}" class="btn btn-clear" type="button" ng-click="visualizarModal(evento);"> | |
121 | - <i class="fa fa-search blue"></i> | |
122 | - <translate>LABEL.VISUALIZAR</translate> | |
123 | - </button> | |
124 | - | |
125 | - <button title="{{$translate.instant('LABEL.EDITAR')}}" alt="{{$translate.instant('LABEL.EDITAR')}}" ng-show="editEvento" class="btn btn-clear" type="button" ng-click="editarModal(evento)"> | |
126 | - <i class="fa fa-pencil blue"></i> | |
127 | - <translate>LABEL.EDITAR</translate> | |
128 | - </button> | |
129 | - | |
130 | - <button title="{{$translate.instant('LABEL.REMOVER')}}" alt="{{$translate.instant('LABEL.REMOVER')}}" ng-show="removeEvento" class="btn btn-clear" type="button" ng-click="removerEvento();"> | |
131 | - <i class="fa fa-times red"></i> | |
132 | - <translate>LABEL.REMOVER</translate> | |
133 | - </button> | |
134 | - | |
135 | - <button title="{{$translate.instant('LABEL.FECHAR')}}" alt="{{$translate.instant('LABEL.FECHAR')}}" class="btn btn-clear" type="button" ng-click="limparEvento();"> | |
136 | - <i class="fa fa-times"></i> | |
137 | - <translate>LABEL.FECHAR</translate> | |
138 | - </button> | |
139 | - </div><!-- .panel-heading --> | |
140 | - <div class="row"> | |
141 | - <div class="col-sm-3"> | |
142 | - <label-input ng-id="evento.tipoEvento.descricao" ng-label="LABEL.ACAO" ng-model="evento.tipoEvento.descricao" form="VisaoContratoForm" ng-disabled="true"/> | |
143 | - </div> | |
144 | - <div class="col-sm-3"> | |
145 | - <label-input-data ng-id="evento.dataEvento" ng-label="LABEL.DATA" ng-model="evento.dataEvento" form="VisaoContratoForm" ng-disabled="true" /> | |
146 | - </div> | |
147 | - </div> | |
148 | - <div class="row"> | |
149 | - <div class="col-sm-12"> | |
150 | - <label-input ng-id="evento.descricao" ng-label="LABEL.DESCRICAO" ng-model="evento.descricao" form="VisaoContratoForm" ng-disabled="true"/> | |
151 | - </div> | |
152 | - </div> | |
153 | - </div> | |
154 | - | |
155 | - </form> | |
156 | -</div> | |
157 | - | |
158 | -<!-- MODAL JUSTIFICATIVA EXCLUSAO --> | |
159 | -<script type="text/ng-template" id="modal-justificativa-exclusao.html"> | |
160 | - <div ng-include src="'/cit-contratos-web/html/eventos/modal-justificativa-exclusao.html'" /> | |
161 | -</script> | |
162 | - | |
163 | -<!-- MODAL LIBERACAO PAGAMENTO --> | |
164 | -<script type="text/ng-template" id="modal-cnt_ev_liberacao_pagamento.html"> | |
165 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_liberacao_pagamento.html'" /> | |
166 | -</script> | |
167 | - | |
168 | -<!-- MODAL APOSTILAMENTO --> | |
169 | -<script type="text/ng-template" id="cnt_ev_apostilamentoModal.html" > | |
170 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_apostilamentoModal.html'" /> | |
171 | -</script> | |
172 | - | |
173 | -<!-- MODAL ATUALIZACAO STATUS --> | |
174 | -<script type="text/ng-template" id="modal-cnt_ev_atualizacao_status.html"> | |
175 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_atualizacao_status.html'" /> | |
176 | -</script> | |
177 | - | |
178 | -<!-- MODAL RECEBIMENTO OBJETO --> | |
179 | -<script type="text/ng-template" id="modal-cnt_ev_recebimentoobjeto.html"> | |
180 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_recebimentoobjeto.html'" /> | |
181 | -</script> | |
182 | - | |
183 | -<!-- MODAL REGISTRO NAO CONFORMIDADE --> | |
184 | -<script type="text/ng-template" id="modal-cnt_ev_registro_nc.html"> | |
185 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_registro_nc.html'" /> | |
186 | -</script> | |
187 | - | |
188 | -<!-- MODAL PENALIDADE --> | |
189 | -<script type="text/ng-template" id="cnt_ev_aplicar_penalidade.html" > | |
190 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_aplicar_penalidade.html'" /> | |
191 | -</script> | |
192 | - | |
193 | -<!-- MODAL ADITIVO --> | |
194 | -<script type="text/ng-template" id="modal-cnt_ev_aditivo.html"> | |
195 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_aditivo.html'" /> | |
196 | -</script> | |
197 | - | |
198 | -<!-- MODAL RESCISAO CONTRATO --> | |
199 | -<script type="text/ng-template" id="modal-cnt_ev_rescisao_contrato.html"> | |
200 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_rescisao_contrato.html'" /> | |
201 | -</script> | |
202 | - | |
203 | -<!-- MODAL REPACTUACAO --> | |
204 | -<script type="text/ng-template" id="modal-cnt_ev_repactuacao.html"> | |
205 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_repactuacao.html'" /> | |
206 | -</script> | |
207 | - | |
208 | -<!-- MODAL REGISTRAR EMPENHO--> | |
209 | -<script type="text/ng-template" id="cnt_ev_empenho.html" > | |
210 | - <div ng-include src="'/cit-contratos-web/html/eventos/cnt_ev_empenho.html'" /> | |
211 | -</script> | |
212 | 0 | \ No newline at end of file |
cit-contratos-web/src/main/webapp/html/consultaRelatorios/consultaRelatoriosList.html
0 → 100644
... | ... | @@ -0,0 +1,118 @@ |
1 | +<div class="page-content" id="searchConsultaRelatorios" ng-controller="ConsultaRelatoriosController"> | |
2 | + <div class="bar-buttons-action fixed"> | |
3 | + <div class="row"> | |
4 | + <div class="col-sm-8 text-left"> | |
5 | + | |
6 | + <button | |
7 | + title="{{$translate.instant('LABEL.GERAR_TERMO_CONTRATO')}}" | |
8 | + alt="{{$translate.instant('LABEL.GERAR_TERMO_CONTRATO')}}" | |
9 | + class="btn btn-clear" type="button" ng-disabled="false" | |
10 | + ng-click="gerar();" > | |
11 | + <i class="fa fa-print"></i> | |
12 | + <translate>CONTRATOS.LABEL.GERAR</translate> | |
13 | + </button> | |
14 | + | |
15 | + <span class="divider-vertical"></span> | |
16 | + | |
17 | + <!-- <filtros ng-filter="filterCriteria" ng-workspace="workspace"></filtros> --> | |
18 | + | |
19 | + </div> | |
20 | + | |
21 | + <div class="col-sm-4 text-right"> | |
22 | + | |
23 | + <favorito/> | |
24 | + | |
25 | + <help-button workspace="workspace" /> | |
26 | + | |
27 | + </div><!-- .col --> | |
28 | + </div><!-- .row --> | |
29 | + </div><!-- .bar-buttons-action --> | |
30 | + | |
31 | + <breadcrumb ng-workspace="workspace"></breadcrumb> | |
32 | + | |
33 | + <form name="consultaRelatoriosForm" novalidate autocomplete="off"> | |
34 | + <p> | |
35 | + <small>( <span class="red">*</span> ) <translate>LABEL.CAMPOS_OBRIGATORIOS</translate></small> | |
36 | + </p> | |
37 | + | |
38 | + <fieldset> | |
39 | + <legend> | |
40 | + <translate>CONTRATOS.LABEL.EMITIR_CONSULTA_RELATORIOS</translate> | |
41 | + </legend> | |
42 | + | |
43 | + <div class="row"> | |
44 | + <div class="col-sm-4"> | |
45 | + <auto-complete ng-id="contrato" ng-label="LABEL.NUMERO_ANO_CONTRATO" ng-find="findContrato(value)" ng-item="item.numeroAnoContratoFormatado" | |
46 | + ng-acao-borracha="resetForm()" ng-model="contrato" form="consultaRelatoriosForm" ng-obrigatorio="true"> | |
47 | + </auto-complete> | |
48 | + </div> | |
49 | + <div class="col-sm-4"> | |
50 | + <label-input-data ng-id="dataInicial" ng-label="CONTRATOS.LABEL.DATA_INICIAL" ng-model="dataInicial" | |
51 | + form="consultaRelatoriosForm" ng-obrigatorio="false" ng-disabled="false" ng-mode="day" ng-format="dd/MM/yyyy"/> | |
52 | + </div> | |
53 | + <div class="col-sm-4"> | |
54 | + <label-input-data ng-id="dataFinal" ng-label="CONTRATOS.LABEL.DATA_FINAL" ng-model="dataFinal" | |
55 | + form="consultaRelatoriosForm" ng-obrigatorio="false" ng-disabled="false" ng-mode="day" ng-format="dd/MM/yyyy"/> | |
56 | + </div> | |
57 | + </div> | |
58 | + </fieldset> | |
59 | + | |
60 | + <fieldset> | |
61 | + <legend> | |
62 | + <label ng-class="{'has-error' : consultaRelatoriosForm.$submitted && !isTiposRelatorioSelecionado }"> | |
63 | + <translate>CONTRATOS.LABEL.TIPO_RELATORIOS</translate> | |
64 | + <span class='red'>*</span> | |
65 | + <i ng-show="consultaRelatoriosForm.$submitted && !isTiposRelatorioSelecionado" class='fa fa-warning red' | |
66 | + tooltip="{{$translate.instant('CONTRATOS.LABEL.TIPO_RELATORIOS') + ' ' +$translate.instant('CONTRATOS.LABEL.TIPO_RELATORIOS')}}" tooltip-placement='top'></i> | |
67 | + </label> | |
68 | + </legend> | |
69 | + | |
70 | + <div class="row"> | |
71 | + <div class="col-sm-4"> | |
72 | + <div class="panel panel-default"> | |
73 | + <div class="panel-heading clearfix"> | |
74 | + <!-- | |
75 | + <button title="{{$translate.instant('LABEL.REMOVER')}}" alt="{{$translate.instant('LABEL.REMOVER')}}" class="btn btn-clear" type="button" | |
76 | + ng-show="edit && programa.acoes.length > 0" ng-click="excluirAcoesSelecionados()"> | |
77 | + <i class="fa fa-times red"></i> | |
78 | + <translate>LABEL.REMOVER</translate> | |
79 | + </button> | |
80 | + --> | |
81 | + </div> | |
82 | + | |
83 | + <table class="table table-striped table-bordered table-hover"> | |
84 | + <thead> | |
85 | + <tr> | |
86 | + <th class="text-center" style="width: 10%;"> | |
87 | + <input type="checkbox" ng-model="selectedAll" ng-checked="selectedAll" ng-click="checkAll(selectedAll);" /> | |
88 | + </th> | |
89 | + <th class="text-left" style="width: 90%;"> | |
90 | + <translate>CONTRATOS.LABEL.TIPO_RELATORIOS</translate> | |
91 | + </th> | |
92 | + </tr> | |
93 | + </thead> | |
94 | + <tbody> | |
95 | + <tr ng-repeat="tipo in tiposRelatorios" ng-show="tiposRelatorios.length > 0"> | |
96 | + <td class="text-center"> | |
97 | + <input type="checkbox" ng-click="tipo.$index = $index; atualizaTiposRelatorioSelecionado();" ng-checked="tipo.$selected" ng-model="tipo.$selected" /> | |
98 | + </td> | |
99 | + <td class="text-left"> | |
100 | + {{ tipo.descricao }} | |
101 | + </td> | |
102 | + </tr> | |
103 | + | |
104 | + <tr ng-hide="tiposRelatorios.length != 0"> | |
105 | + <td colspan="5"> | |
106 | + <translate>LABEL.TABELA_VAZIA</translate> | |
107 | + </td> | |
108 | + </tr> | |
109 | + | |
110 | + </tbody> | |
111 | + </table> | |
112 | + </div> | |
113 | + </div> | |
114 | + </div> | |
115 | + </fieldset> | |
116 | + </form> | |
117 | + | |
118 | +</div><!-- .page-content --> | |
0 | 119 | \ No newline at end of file | ... | ... |