Commit 22689dff750d2506c28d2eb1de8d39a55fb5777b
1 parent
290a8dec
Exists in
master
Redmine #4426
Showing
16 changed files
with
518 additions
and
368 deletions
Show diff stats
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/ContratoController.js
... | ... | @@ -980,79 +980,84 @@ citApp.controller('ContratoController', ['$scope', '$filter', 'FileUploader', 'C |
980 | 980 | }; |
981 | 981 | |
982 | 982 | // responsavel por adicionar um empenho ao contrato |
983 | - $scope.adicionarEmpenho = function (formDialogEmpenho){ | |
983 | + $scope.adicionarEmpenho = function (formDialogEmpenho, continuarEditando){ | |
984 | 984 | |
985 | 985 | formDialogEmpenho.$submitted = true; |
986 | 986 | |
987 | - if (formDialogEmpenho.$valid) { | |
987 | + if (formDialogEmpenho.$invalid) { | |
988 | + //Mensagem de erro de campos obrigatorios n�o preenchidos | |
989 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
990 | + return; | |
991 | + } | |
988 | 992 | |
989 | - // a finalidade do empenho "Anulação" e "Reforço" só poderão ser informadas caso haja a finalidade "Despesa do contrato" cadastrada | |
990 | - if ($scope.contratoEmpenhoTemp.dominioFinalidadeEmpenho.codigo != 1) { | |
991 | - var hasDespesaContrato = false; | |
992 | - for (var i = 0; i < $scope.contrato.ctrtEmpenhos.length; i++) { | |
993 | - var empenho = $scope.contrato.ctrtEmpenhos[i]; | |
994 | - if (empenho.dominioFinalidadeEmpenho.codigo === 1 && !empenho.$checked) { | |
995 | - hasDespesaContrato = true; | |
996 | - break; | |
997 | - } | |
993 | + // a finalidade do empenho "Anulação" e "Reforço" só poderão ser informadas caso haja a finalidade "Despesa do contrato" cadastrada | |
994 | + if ($scope.contratoEmpenhoTemp.dominioFinalidadeEmpenho.codigo != 1) { | |
995 | + var hasDespesaContrato = false; | |
996 | + for (var i = 0; i < $scope.contrato.ctrtEmpenhos.length; i++) { | |
997 | + var empenho = $scope.contrato.ctrtEmpenhos[i]; | |
998 | + if (empenho.dominioFinalidadeEmpenho.codigo === 1 && !empenho.$checked) { | |
999 | + hasDespesaContrato = true; | |
1000 | + break; | |
998 | 1001 | } |
1002 | + } | |
999 | 1003 | |
1000 | - if (hasDespesaContrato) { | |
1001 | - // Caso a finalidade seja "Anulação", o sistema deverá diminuir o valor deste empenho do | |
1002 | - // "valor total empenhado" e não somá-lo com os empenhos de finalidade "reforço e despesa do contrato". | |
1003 | - if ($scope.contratoEmpenhoTemp.dominioFinalidadeEmpenho.codigo === 3) { | |
1004 | - $scope.contratoEmpenhoTemp.valorEmpenhado = ($scope.contratoEmpenhoTemp.valorEmpenhado * (-1)); | |
1005 | - } | |
1006 | - } else { | |
1007 | - $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.FINALIDADE_EMPENHO_FALTANDO')); | |
1008 | - return; | |
1004 | + if (hasDespesaContrato) { | |
1005 | + // Caso a finalidade seja "Anulação", o sistema deverá diminuir o valor deste empenho do | |
1006 | + // "valor total empenhado" e não somá-lo com os empenhos de finalidade "reforço e despesa do contrato". | |
1007 | + if ($scope.contratoEmpenhoTemp.dominioFinalidadeEmpenho.codigo === 3) { | |
1008 | + $scope.contratoEmpenhoTemp.valorEmpenhado = ($scope.contratoEmpenhoTemp.valorEmpenhado * (-1)); | |
1009 | 1009 | } |
1010 | + } else { | |
1011 | + $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.FINALIDADE_EMPENHO_FALTANDO')); | |
1012 | + return; | |
1010 | 1013 | } |
1014 | + } | |
1011 | 1015 | |
1012 | - // data de empenho nao pode ser maior que a data de vigencia final do contrato | |
1013 | - if(!isPeriodoValido($scope.contratoEmpenhoTemp.data, $scope.contrato.dataVigenciaFinal)){ | |
1016 | + // data de empenho nao pode ser maior que a data de vigencia final do contrato | |
1017 | + if(!isPeriodoValido($scope.contratoEmpenhoTemp.data, $scope.contrato.dataVigenciaFinal)){ | |
1014 | 1018 | |
1015 | - $scope.showAlert('warning', $translate.instant('VALIDACAO.DATA_EMPENHO_MAIOR_DATA_VIGENCIA_FINAL_CONTRATO')); | |
1016 | - return; | |
1017 | - } | |
1019 | + $scope.showAlert('warning', $translate.instant('VALIDACAO.DATA_EMPENHO_MAIOR_DATA_VIGENCIA_FINAL_CONTRATO')); | |
1020 | + return; | |
1021 | + } | |
1018 | 1022 | |
1019 | - // o valor total de empenhado n�o pode ser superior ao valor do contrato | |
1020 | - var somaEmpenhos = $scope.contrato.valorTotalEmpenhado + $scope.contratoEmpenhoTemp.valorEmpenhado; | |
1021 | - if (somaEmpenhos > $scope.contrato.valorContrato) { | |
1023 | + // o valor total de empenhado n�o pode ser superior ao valor do contrato | |
1024 | + var somaEmpenhos = $scope.contrato.valorTotalEmpenhado + $scope.contratoEmpenhoTemp.valorEmpenhado; | |
1025 | + if (somaEmpenhos > $scope.contrato.valorContrato) { | |
1022 | 1026 | |
1023 | - $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.VALOR_TOTAL_EMPENHADO_SUPERIOR_VALOR_CONTRATADO')); | |
1024 | - return; | |
1025 | - } | |
1027 | + $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.VALOR_TOTAL_EMPENHADO_SUPERIOR_VALOR_CONTRATADO')); | |
1028 | + return; | |
1029 | + } | |
1026 | 1030 | |
1027 | - // o valor total do empenho não pode ser negativo | |
1028 | - if (somaEmpenhos < 0) { | |
1031 | + // o valor total do empenho não pode ser negativo | |
1032 | + if (somaEmpenhos < 0) { | |
1029 | 1033 | |
1030 | - $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.VALOR_TOTAL_ANULACAO_SUPERIOR_VALOR_TOTAL')); | |
1031 | - return; | |
1032 | - } | |
1034 | + $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.VALOR_TOTAL_ANULACAO_SUPERIOR_VALOR_TOTAL')); | |
1035 | + return; | |
1036 | + } | |
1033 | 1037 | |
1034 | - if ($scope.contrato.ctrtEmpenhos){ | |
1038 | + if ($scope.contrato.ctrtEmpenhos){ | |
1035 | 1039 | |
1036 | - if ($scope.contratoEmpenhoTemp.$checked){ | |
1040 | + if ($scope.contratoEmpenhoTemp.$checked){ | |
1037 | 1041 | |
1038 | - for (var i = 0; i < $scope.contrato.ctrtEmpenhos.length; i++) { | |
1042 | + for (var i = 0; i < $scope.contrato.ctrtEmpenhos.length; i++) { | |
1039 | 1043 | |
1040 | - if ($scope.contrato.ctrtEmpenhos[i].$checked) { | |
1044 | + if ($scope.contrato.ctrtEmpenhos[i].$checked) { | |
1041 | 1045 | |
1042 | - $scope.contrato.ctrtEmpenhos[i] = $scope.contratoEmpenhoTemp; | |
1043 | - } | |
1046 | + $scope.contrato.ctrtEmpenhos[i] = $scope.contratoEmpenhoTemp; | |
1044 | 1047 | } |
1045 | - } else { | |
1046 | - | |
1047 | - $scope.contrato.ctrtEmpenhos.push($scope.contratoEmpenhoTemp); | |
1048 | 1048 | } |
1049 | + } else { | |
1050 | + | |
1051 | + $scope.contrato.ctrtEmpenhos.push($scope.contratoEmpenhoTemp); | |
1049 | 1052 | } |
1050 | - $scope.contratoEmpenhoTemp = {}; | |
1053 | + } | |
1054 | + $scope.contratoEmpenhoTemp = {}; | |
1055 | + | |
1056 | + if(continuarEditando){ | |
1057 | + formDialogEmpenho.$submitted = false; | |
1058 | + formDialogEmpenho.$setPristine(); | |
1059 | + }else{ | |
1051 | 1060 | $scope.$modalInstance.dismiss('cancel'); |
1052 | - } else { | |
1053 | - | |
1054 | - //Mensagem de erro de campos obrigatorios n�o preenchidos | |
1055 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1056 | 1061 | } |
1057 | 1062 | }; |
1058 | 1063 | |
... | ... | @@ -1199,47 +1204,52 @@ citApp.controller('ContratoController', ['$scope', '$filter', 'FileUploader', 'C |
1199 | 1204 | }; |
1200 | 1205 | |
1201 | 1206 | // responsavel por adicionar um item de contrato ao contrato |
1202 | - $scope.adicionarItemContrato = function (formDialogItemContrato){ | |
1207 | + $scope.adicionarItemContrato = function (formDialogItemContrato, continuarEditando){ | |
1203 | 1208 | |
1204 | 1209 | formDialogItemContrato.$submitted = true; |
1205 | 1210 | |
1206 | - if (formDialogItemContrato.$valid) { | |
1211 | + if (formDialogItemContrato.$invalid) { | |
1212 | + //Mensagem de erro de campos obrigatorios n�o preenchidos | |
1213 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1214 | + return; | |
1215 | + } | |
1207 | 1216 | |
1208 | - // o valor total de empenhado n�o pode ser superior ao valor do contrato | |
1209 | - var valorTotalItens = 0; | |
1210 | - $scope.contrato.ctrtItens.forEach(function (itemContrato) { | |
1211 | - valorTotalItens += itemContrato.valorTotalItem; | |
1212 | - }); | |
1217 | + // o valor total de empenhado n�o pode ser superior ao valor do contrato | |
1218 | + var valorTotalItens = 0; | |
1219 | + $scope.contrato.ctrtItens.forEach(function (itemContrato) { | |
1220 | + valorTotalItens += itemContrato.valorTotalItem; | |
1221 | + }); | |
1213 | 1222 | |
1214 | - valorTotalItens += $scope.contrato.ctrtItens.length > 0 ? $scope.itemContratoTemp.valorTotalItem : 0; | |
1215 | - if (valorTotalItens > $scope.contrato.valorContrato) { | |
1216 | - $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.VALOR_TOTAL_ITENS_SUPERIOR_VALOR_CONTRATADO')); | |
1217 | - return; | |
1218 | - } | |
1223 | + valorTotalItens += $scope.contrato.ctrtItens.length > 0 ? $scope.itemContratoTemp.valorTotalItem : 0; | |
1224 | + if (valorTotalItens > $scope.contrato.valorContrato) { | |
1225 | + $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.VALOR_TOTAL_ITENS_SUPERIOR_VALOR_CONTRATADO')); | |
1226 | + return; | |
1227 | + } | |
1219 | 1228 | |
1220 | - if ($scope.contrato.ctrtItens){ | |
1229 | + if ($scope.contrato.ctrtItens){ | |
1221 | 1230 | |
1222 | - if ($scope.itemContratoTemp.$checked){ | |
1231 | + if ($scope.itemContratoTemp.$checked){ | |
1223 | 1232 | |
1224 | - for (var i = 0; i < $scope.contrato.ctrtItens.length; i++) { | |
1233 | + for (var i = 0; i < $scope.contrato.ctrtItens.length; i++) { | |
1225 | 1234 | |
1226 | - if ($scope.contrato.ctrtItens[i].$checked) { | |
1235 | + if ($scope.contrato.ctrtItens[i].$checked) { | |
1227 | 1236 | |
1228 | - $scope.contrato.ctrtItens[i] = $scope.itemContratoTemp; | |
1229 | - } | |
1237 | + $scope.contrato.ctrtItens[i] = $scope.itemContratoTemp; | |
1230 | 1238 | } |
1231 | - } else { | |
1232 | - | |
1233 | - $scope.contrato.ctrtItens.push($scope.itemContratoTemp); | |
1234 | 1239 | } |
1240 | + } else { | |
1241 | + | |
1242 | + $scope.contrato.ctrtItens.push($scope.itemContratoTemp); | |
1235 | 1243 | } |
1244 | + } | |
1236 | 1245 | |
1237 | - $scope.itemContratoTemp = {}; | |
1238 | - $scope.$modalInstance.dismiss('cancel'); | |
1246 | + $scope.itemContratoTemp = {}; | |
1247 | + | |
1248 | + if(continuarEditando){ | |
1249 | + formDialogItemContrato.$submitted = false; | |
1250 | + formDialogItemContrato.$setPristine(); | |
1239 | 1251 | } else { |
1240 | - | |
1241 | - //Mensagem de erro de campos obrigatorios n�o preenchidos | |
1242 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1252 | + $scope.$modalInstance.dismiss('cancel'); | |
1243 | 1253 | } |
1244 | 1254 | }; |
1245 | 1255 | ... | ... |
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/EstudoTecnicoController.js
... | ... | @@ -505,11 +505,9 @@ citApp.controller('EstudoTecnicoController', ['$scope', 'EstudoTecnicoRepository |
505 | 505 | $scope.$openModal('modal-requisito-negocio.html', 'lg'); |
506 | 506 | }); |
507 | 507 | }; |
508 | - | |
509 | - $scope.openModalSolucao = function() { | |
510 | - $scope.editSolucao = true; | |
511 | - | |
512 | - $scope.solucao = { | |
508 | + | |
509 | + function resetModalSolucao(){ | |
510 | + $scope.solucao = { | |
513 | 511 | etlaQuestionario : {} |
514 | 512 | }; |
515 | 513 | |
... | ... | @@ -526,6 +524,12 @@ citApp.controller('EstudoTecnicoController', ['$scope', 'EstudoTecnicoRepository |
526 | 524 | $scope.solucao.etlaQuestionario.etQuestionario = { |
527 | 525 | nome : $scope.questionarioTemplate.nome |
528 | 526 | }; |
527 | + } | |
528 | + | |
529 | + $scope.openModalSolucao = function() { | |
530 | + $scope.editSolucao = true; | |
531 | + | |
532 | + resetModalSolucao(); | |
529 | 533 | |
530 | 534 | $timeout(function() { |
531 | 535 | $scope.$openModal('modal-solucao.html', 'lg'); |
... | ... | @@ -1146,167 +1150,218 @@ citApp.controller('EstudoTecnicoController', ['$scope', 'EstudoTecnicoRepository |
1146 | 1150 | }; |
1147 | 1151 | |
1148 | 1152 | // ADICIONAR Solucao |
1149 | - $scope.salvaSolucao = function(formDialogSolucao) { | |
1153 | + $scope.salvaSolucao = function(formDialogSolucao, continuarEditando) { | |
1150 | 1154 | |
1151 | 1155 | formDialogSolucao.$submitted = true; |
1152 | 1156 | |
1153 | - //verifica se o formulario está valido para salvar | |
1154 | - if (formDialogSolucao.$valid) { | |
1155 | - if ($scope.estudoTecnico.etLevantamentoAlternativas) { | |
1156 | - if ($scope.solucao.$checked) { | |
1157 | - for (var i = 0; i < $scope.estudoTecnico.etLevantamentoAlternativas.length; i++) { | |
1158 | - if ($scope.estudoTecnico.etLevantamentoAlternativas[i].$checked) { | |
1159 | - $scope.estudoTecnico.etLevantamentoAlternativas[i] = $scope.solucao; | |
1160 | - } | |
1161 | - } | |
1162 | - } else { | |
1163 | - $scope.estudoTecnico.etLevantamentoAlternativas.push($scope.solucao); | |
1164 | - } | |
1165 | - } else { | |
1166 | - $scope.estudoTecnico.etLevantamentoAlternativas = [$scope.solucao]; | |
1167 | - } | |
1168 | - $scope.$modalInstance.dismiss('cancel'); | |
1157 | + //verifica se o formulario está valido para salvar | |
1158 | + if (formDialogSolucao.$invalid) { | |
1159 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
1160 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1161 | + return; | |
1162 | + } | |
1163 | + | |
1164 | + if ($scope.estudoTecnico.etLevantamentoAlternativas) { | |
1165 | + if ($scope.solucao.$checked) { | |
1166 | + for (var i = 0; i < $scope.estudoTecnico.etLevantamentoAlternativas.length; i++) { | |
1167 | + if ($scope.estudoTecnico.etLevantamentoAlternativas[i].$checked) { | |
1168 | + $scope.estudoTecnico.etLevantamentoAlternativas[i] = $scope.solucao; | |
1169 | + } | |
1170 | + } | |
1169 | 1171 | } else { |
1170 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
1171 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1172 | + $scope.estudoTecnico.etLevantamentoAlternativas.push($scope.solucao); | |
1172 | 1173 | } |
1174 | + } else { | |
1175 | + $scope.estudoTecnico.etLevantamentoAlternativas = [$scope.solucao]; | |
1176 | + } | |
1177 | + | |
1178 | + if(continuarEditando){ | |
1179 | + formDialogSolucao.$submitted = false; | |
1180 | + formDialogSolucao.$setPristine(); | |
1181 | + resetModalSolucao(); | |
1182 | + }else{ | |
1183 | + $scope.$modalInstance.dismiss('cancel'); | |
1184 | + } | |
1185 | + | |
1173 | 1186 | }; |
1174 | 1187 | |
1175 | 1188 | // ADICIONAR Solucao |
1176 | - $scope.salvaBemServico = function(formDialogBensServico) { | |
1177 | - | |
1178 | - formDialogBensServico.$submitted = true; | |
1179 | - | |
1180 | - //verifica se o formulario está valido para salvar | |
1181 | - if (formDialogBensServico.$valid) { | |
1182 | - if ($scope.estudoTecnico.etBensServicosSolucoes) { | |
1183 | - if ($scope.bemServico.$checked) { | |
1184 | - for (var i = 0; i < $scope.estudoTecnico.etBensServicosSolucoes.length; i++) { | |
1185 | - if ($scope.estudoTecnico.etBensServicosSolucoes[i].$checked) { | |
1186 | - $scope.estudoTecnico.etBensServicosSolucoes[i] = $scope.bemServico; | |
1187 | - } | |
1188 | - } | |
1189 | - } else { | |
1190 | - $scope.bemServico.$index = $scope.estudoTecnico.etBensServicosSolucoes.length + 1; | |
1191 | - $scope.estudoTecnico.etBensServicosSolucoes.push($scope.bemServico); | |
1192 | - } | |
1193 | - } else { | |
1194 | - $scope.bemServico.$index = 1; | |
1195 | - $scope.estudoTecnico.etBensServicosSolucoes = [$scope.bemServico]; | |
1196 | - } | |
1197 | - $scope.$modalInstance.dismiss('cancel'); | |
1198 | - } else { | |
1199 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
1200 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1201 | - } | |
1189 | + $scope.salvaBemServico = function(formDialogBensServico, continuarEditando) { | |
1190 | + | |
1191 | + formDialogBensServico.$submitted = true; | |
1192 | + | |
1193 | + //verifica se o formulario está valido para salvar | |
1194 | + if (formDialogBensServico.$invalid) { | |
1195 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
1196 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1197 | + return; | |
1198 | + } | |
1199 | + | |
1200 | + if ($scope.estudoTecnico.etBensServicosSolucoes) { | |
1201 | + if ($scope.bemServico.$checked) { | |
1202 | + for (var i = 0; i < $scope.estudoTecnico.etBensServicosSolucoes.length; i++) { | |
1203 | + if ($scope.estudoTecnico.etBensServicosSolucoes[i].$checked) { | |
1204 | + $scope.estudoTecnico.etBensServicosSolucoes[i] = $scope.bemServico; | |
1205 | + } | |
1206 | + } | |
1207 | + } else { | |
1208 | + $scope.bemServico.$index = $scope.estudoTecnico.etBensServicosSolucoes.length + 1; | |
1209 | + $scope.estudoTecnico.etBensServicosSolucoes.push($scope.bemServico); | |
1210 | + } | |
1211 | + } else { | |
1212 | + $scope.bemServico.$index = 1; | |
1213 | + $scope.estudoTecnico.etBensServicosSolucoes = [$scope.bemServico]; | |
1214 | + } | |
1215 | + | |
1216 | + if(continuarEditando){ | |
1217 | + formDialogBensServico.$submitted = false; | |
1218 | + formDialogBensServico.$setPristine(); | |
1219 | + $scope.bemServico = {}; | |
1220 | + }else{ | |
1221 | + $scope.$modalInstance.dismiss('cancel'); | |
1222 | + } | |
1202 | 1223 | }; |
1203 | 1224 | |
1204 | 1225 | // ADICIONAR BENEFÍCIO ESPERADO |
1205 | - $scope.salvaBeneficioEsperado = function(formDialogBeneficioEsperado) { | |
1226 | + $scope.salvaBeneficioEsperado = function(formDialogBeneficioEsperado, continuarEditando) { | |
1206 | 1227 | |
1207 | 1228 | formDialogBeneficioEsperado.$submitted = true; |
1208 | 1229 | |
1209 | 1230 | //verifica se o formulario está valido para salvar |
1210 | - if (formDialogBeneficioEsperado.$valid) { | |
1211 | - if ($scope.estudoTecnico.etBeneficiosEsperados) { | |
1212 | - if ($scope.beneficioEsperado.$checked) { | |
1213 | - for (var i = 0; i < $scope.estudoTecnico.etBeneficiosEsperados.length; i++) { | |
1214 | - if ($scope.estudoTecnico.etBeneficiosEsperados[i].$checked) { | |
1215 | - $scope.estudoTecnico.etBeneficiosEsperados[i] = $scope.beneficioEsperado; | |
1216 | - } | |
1217 | - } | |
1218 | - } else { | |
1219 | - $scope.estudoTecnico.etBeneficiosEsperados.push($scope.beneficioEsperado); | |
1220 | - } | |
1221 | - } else { | |
1222 | - $scope.estudoTecnico.etBeneficiosEsperados = [$scope.beneficioEsperado]; | |
1223 | - } | |
1224 | - $scope.$modalInstance.dismiss('cancel'); | |
1225 | - } else { | |
1226 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
1231 | + if (formDialogBeneficioEsperado.$invalid) { | |
1232 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
1227 | 1233 | $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); |
1234 | + return; | |
1235 | + } | |
1236 | + | |
1237 | + if ($scope.estudoTecnico.etBeneficiosEsperados) { | |
1238 | + if ($scope.beneficioEsperado.$checked) { | |
1239 | + for (var i = 0; i < $scope.estudoTecnico.etBeneficiosEsperados.length; i++) { | |
1240 | + if ($scope.estudoTecnico.etBeneficiosEsperados[i].$checked) { | |
1241 | + $scope.estudoTecnico.etBeneficiosEsperados[i] = $scope.beneficioEsperado; | |
1242 | + } | |
1243 | + } | |
1244 | + } else { | |
1245 | + $scope.estudoTecnico.etBeneficiosEsperados.push($scope.beneficioEsperado); | |
1246 | + } | |
1247 | + } else { | |
1248 | + $scope.estudoTecnico.etBeneficiosEsperados = [$scope.beneficioEsperado]; | |
1249 | + } | |
1250 | + | |
1251 | + if(continuarEditando){ | |
1252 | + formDialogBeneficioEsperado.$submitted = false; | |
1253 | + formDialogBeneficioEsperado.$setPristine(); | |
1254 | + $scope.beneficioEsperado = {}; | |
1255 | + } else { | |
1256 | + $scope.$modalInstance.dismiss('cancel'); | |
1228 | 1257 | } |
1229 | 1258 | }; |
1230 | 1259 | |
1231 | 1260 | // responsavel por adicionar um recurso tecnico ao estudo tecnico |
1232 | - $scope.salvaRecursoMaterial = function (formDialogRecursoMaterial){ | |
1233 | - | |
1234 | - formDialogRecursoMaterial.$submitted = true; | |
1235 | - | |
1236 | - if (formDialogRecursoMaterial.$valid) { | |
1237 | - if ($scope.estudoTecnico.etRecursosMateriais){ | |
1238 | - if ($scope.estudoTecnicoRecursoMaterialTemp.$checked){ | |
1239 | - for (var i = 0; i < $scope.estudoTecnico.etRecursosMateriais.length; i++) { | |
1240 | - if ($scope.estudoTecnico.etRecursosMateriais[i].$checked) { | |
1241 | - $scope.estudoTecnico.etRecursosMateriais[i] = $scope.estudoTecnicoRecursoMaterialTemp; | |
1242 | - } | |
1243 | - } | |
1244 | - } else { | |
1245 | - $scope.estudoTecnico.etRecursosMateriais.push($scope.estudoTecnicoRecursoMaterialTemp); | |
1246 | - } | |
1247 | - } else { | |
1248 | - $scope.estudoTecnico.etRecursosMateriais = [$scope.estudoTecnicoRecursoMaterialTemp]; | |
1249 | - } | |
1250 | - $scope.estudoTecnicoRecursoMaterialTemp = {}; | |
1251 | - $scope.$modalInstance.dismiss('cancel'); | |
1252 | - } else { | |
1253 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
1254 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1255 | - } | |
1261 | + $scope.salvaRecursoMaterial = function (formDialogRecursoMaterial, continuarEditando){ | |
1262 | + | |
1263 | + formDialogRecursoMaterial.$submitted = true; | |
1264 | + | |
1265 | + if (formDialogRecursoMaterial.$invalid) { | |
1266 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
1267 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1268 | + return; | |
1269 | + } | |
1270 | + | |
1271 | + if ($scope.estudoTecnico.etRecursosMateriais){ | |
1272 | + if ($scope.estudoTecnicoRecursoMaterialTemp.$checked){ | |
1273 | + for (var i = 0; i < $scope.estudoTecnico.etRecursosMateriais.length; i++) { | |
1274 | + if ($scope.estudoTecnico.etRecursosMateriais[i].$checked) { | |
1275 | + $scope.estudoTecnico.etRecursosMateriais[i] = $scope.estudoTecnicoRecursoMaterialTemp; | |
1276 | + } | |
1277 | + } | |
1278 | + } else { | |
1279 | + $scope.estudoTecnico.etRecursosMateriais.push($scope.estudoTecnicoRecursoMaterialTemp); | |
1280 | + } | |
1281 | + } else { | |
1282 | + $scope.estudoTecnico.etRecursosMateriais = [$scope.estudoTecnicoRecursoMaterialTemp]; | |
1283 | + } | |
1284 | + | |
1285 | + if(continuarEditando){ | |
1286 | + formDialogRecursoMaterial.$submitted = false; | |
1287 | + formDialogRecursoMaterial.$setPristine(); | |
1288 | + $scope.estudoTecnicoRecursoMaterialTemp = { | |
1289 | + disponivel : true | |
1290 | + }; | |
1291 | + }else{ | |
1292 | + $scope.estudoTecnicoRecursoMaterialTemp = {}; | |
1293 | + $scope.$modalInstance.dismiss('cancel'); | |
1294 | + } | |
1256 | 1295 | }; |
1257 | 1296 | |
1258 | 1297 | // Responsavel por adicionar um recurso humano ao estudo tecnico |
1259 | - $scope.salvaRecursoHumano = function (formDialogRecursoHumano){ | |
1260 | - | |
1261 | - formDialogRecursoHumano.$submitted = true; | |
1262 | - | |
1263 | - if (formDialogRecursoHumano.$valid) { | |
1264 | - if ($scope.estudoTecnico.etRecursosHumanos){ | |
1265 | - if ($scope.estudoTecnicoRecursoHumanoTemp.$checked){ | |
1266 | - for (var i = 0; i < $scope.estudoTecnico.etRecursosHumanos.length; i++) { | |
1267 | - if ($scope.estudoTecnico.etRecursosHumanos[i].$checked) { | |
1268 | - $scope.estudoTecnico.etRecursosHumanos[i] = $scope.estudoTecnicoRecursoHumanoTemp; | |
1269 | - } | |
1270 | - } | |
1271 | - } else { | |
1272 | - $scope.estudoTecnico.etRecursosHumanos.push($scope.estudoTecnicoRecursoHumanoTemp); | |
1273 | - } | |
1274 | - } else { | |
1275 | - $scope.estudoTecnico.etRecursosHumanos = [$scope.estudoTecnicoRecursoHumanoTemp]; | |
1276 | - } | |
1277 | - $scope.estudoTecnicoRecursoHumanoTemp = {}; | |
1278 | - $scope.$modalInstance.dismiss('cancel'); | |
1279 | - } else { | |
1280 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
1281 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1282 | - } | |
1283 | - }; | |
1284 | - | |
1285 | - $scope.salvaAcaoCont = function(formDialogAcaoContingencia) { | |
1286 | - formDialogAcaoContingencia.$submitted = true; | |
1298 | + $scope.salvaRecursoHumano = function (formDialogRecursoHumano, continuarEditando){ | |
1299 | + | |
1300 | + formDialogRecursoHumano.$submitted = true; | |
1301 | + | |
1302 | + if (formDialogRecursoHumano.$invalid) { | |
1303 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
1304 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
1305 | + return; | |
1306 | + } | |
1307 | + | |
1308 | + if ($scope.estudoTecnico.etRecursosHumanos){ | |
1309 | + if ($scope.estudoTecnicoRecursoHumanoTemp.$checked){ | |
1310 | + for (var i = 0; i < $scope.estudoTecnico.etRecursosHumanos.length; i++) { | |
1311 | + if ($scope.estudoTecnico.etRecursosHumanos[i].$checked) { | |
1312 | + $scope.estudoTecnico.etRecursosHumanos[i] = $scope.estudoTecnicoRecursoHumanoTemp; | |
1313 | + } | |
1314 | + } | |
1315 | + } else { | |
1316 | + $scope.estudoTecnico.etRecursosHumanos.push($scope.estudoTecnicoRecursoHumanoTemp); | |
1317 | + } | |
1318 | + } else { | |
1319 | + $scope.estudoTecnico.etRecursosHumanos = [$scope.estudoTecnicoRecursoHumanoTemp]; | |
1320 | + } | |
1321 | + $scope.estudoTecnicoRecursoHumanoTemp = {}; | |
1322 | + | |
1323 | + if(continuarEditando){ | |
1324 | + formDialogRecursoHumano.$submitted = false; | |
1325 | + formDialogRecursoHumano.$setPristine(); | |
1326 | + }else{ | |
1327 | + $scope.$modalInstance.dismiss('cancel'); | |
1328 | + } | |
1329 | + | |
1330 | + }; | |
1331 | + | |
1332 | + $scope.salvaAcaoCont = function(formDialogAcaoContingencia, continuarEditando) { | |
1333 | + formDialogAcaoContingencia.$submitted = true; | |
1287 | 1334 | |
1288 | 1335 | //verifica se o formulario está valido para salvar |
1289 | - if (formDialogAcaoContingencia.$valid) { | |
1290 | - if ($scope.estudoTecnico.etAcoesContingencia) { | |
1291 | - if ($scope.acaoCont.$checked) { | |
1292 | - for (var i = 0; i < $scope.estudoTecnico.etAcoesContingencia.length; i++) { | |
1293 | - if ($scope.estudoTecnico.etAcoesContingencia[i].$checked) { | |
1294 | - $scope.estudoTecnico.etAcoesContingencia[i] = $scope.acaoCont; | |
1295 | - } | |
1296 | - } | |
1297 | - } else { | |
1298 | - $scope.acaoCont.$index = $scope.estudoTecnico.etAcoesContingencia.length + 1; | |
1299 | - $scope.estudoTecnico.etAcoesContingencia.push($scope.acaoCont); | |
1300 | - } | |
1301 | - } else { | |
1302 | - $scope.acaoCont.$index = 1; | |
1303 | - $scope.estudoTecnico.etAcoesContingencia = [$scope.acaoCont]; | |
1304 | - } | |
1305 | - $scope.$modalInstance.dismiss('cancel'); | |
1306 | - } else { | |
1307 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
1336 | + if (formDialogAcaoContingencia.$invalid) { | |
1337 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
1308 | 1338 | $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); |
1339 | + return; | |
1309 | 1340 | } |
1341 | + | |
1342 | + if ($scope.estudoTecnico.etAcoesContingencia) { | |
1343 | + if ($scope.acaoCont.$checked) { | |
1344 | + for (var i = 0; i < $scope.estudoTecnico.etAcoesContingencia.length; i++) { | |
1345 | + if ($scope.estudoTecnico.etAcoesContingencia[i].$checked) { | |
1346 | + $scope.estudoTecnico.etAcoesContingencia[i] = $scope.acaoCont; | |
1347 | + } | |
1348 | + } | |
1349 | + } else { | |
1350 | + $scope.acaoCont.$index = $scope.estudoTecnico.etAcoesContingencia.length + 1; | |
1351 | + $scope.estudoTecnico.etAcoesContingencia.push($scope.acaoCont); | |
1352 | + } | |
1353 | + } else { | |
1354 | + $scope.acaoCont.$index = 1; | |
1355 | + $scope.estudoTecnico.etAcoesContingencia = [$scope.acaoCont]; | |
1356 | + } | |
1357 | + | |
1358 | + $scope.acaoCont = {}; | |
1359 | + if(continuarEditando){ | |
1360 | + formDialogAcaoContingencia.$submitted = false; | |
1361 | + formDialogAcaoContingencia.$setPristine(); | |
1362 | + }else{ | |
1363 | + $scope.$modalInstance.dismiss('cancel'); | |
1364 | + } | |
1310 | 1365 | }; |
1311 | 1366 | |
1312 | 1367 | //Watch para calcular valor unitario | ... | ... |
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/OrdemFornecimentoController.js
... | ... | @@ -116,87 +116,93 @@ citApp.controller('OrdemFornecimentoController', ['$scope', 'OrdemFornecimentoRe |
116 | 116 | }; |
117 | 117 | |
118 | 118 | // ADICIONAR item |
119 | - $scope.salvaItem = function(formDialogItem) { | |
119 | + $scope.salvaItem = function(formDialogItem, continuarEditando) { | |
120 | 120 | |
121 | 121 | formDialogItem.$submitted = true; |
122 | 122 | |
123 | 123 | //verifica se o formulario está valido para salvar |
124 | - if (formDialogItem.$valid) { | |
125 | - | |
126 | - if(!isPeriodoValido($scope.item.dataInicioPrevisto, $scope.item.dataTerminoPrevisto)) { | |
127 | - $scope.showAlert('warning', $translate.instant('VALIDACAO.DATA_INICIO_PREVISTO_MAIOR_DATA_TERMINO_PREVISTO_CONTRATO')); | |
128 | - return; | |
129 | - } | |
130 | - | |
131 | - if(!isPeriodoValido($scope.ordemFornecimento.contrato.dataVigenciaInicial, $scope.item.dataInicioPrevisto) || | |
132 | - !isPeriodoValido($scope.item.dataTerminoPrevisto, $scope.ordemFornecimento.contrato.dataUltimaVigenciaFinal)) { | |
133 | - $scope.showAlert('warning', $translate.instant('VALIDACAO.PERIODO_INICIO_TERMINO_DENTRO_VIGENCIA_CONTRATO')); | |
134 | - return; | |
135 | - } | |
136 | - | |
137 | - if ($scope.item.quantidade == 0) { | |
138 | - $scope.showAlert('warning', $translate.instant('VALIDACAO.QUANTIDADE_MAIOR_ZERO')); | |
139 | - return; | |
140 | - } | |
141 | - | |
142 | - var qntParc = $scope.item.quantidade; | |
143 | - | |
144 | - if ($scope.ordemFornecimento.itensBensServicos) { | |
145 | - for (var i = 0; i < $scope.ordemFornecimento.itensBensServicos.length; i++) { | |
146 | - if (!$scope.ordemFornecimento.itensBensServicos[i].$checked && $scope.ordemFornecimento.itensBensServicos[i].itemBemServico.id == $scope.item.itemBemServico.id) { | |
147 | - qntParc = parseFloat(qntParc) + parseFloat($scope.ordemFornecimento.itensBensServicos[i].quantidade); | |
148 | - } | |
149 | - } | |
150 | - } | |
151 | - | |
152 | - if (qntParc > $scope.item.itemBemServico.quantidade) { | |
153 | - | |
154 | - var qntRestante = parseFloat($scope.item.itemBemServico.quantidade) - (parseFloat(qntParc) - parseFloat($scope.item.quantidade)); | |
155 | - | |
156 | - if (qntRestante < 0) { | |
157 | - qntRestante = 0; | |
158 | - } | |
159 | - | |
160 | - $scope.showAlert('warning', $translate.instant('VALIDACAO.QUANTIDADE_INSERIDA_ITEM_MAIOR_QUANTIDADE_CONTRATO') + qntRestante); | |
161 | - return; | |
162 | - } | |
163 | - | |
164 | - if ($scope.item.itemBemServico.originalElement) { | |
165 | - $scope.item.itemBemServico = $scope.item.itemBemServico.originalElement; | |
166 | - } | |
167 | - | |
168 | - if ($scope.ordemFornecimento.itensBensServicos) { | |
169 | - if ($scope.item.$checked) { | |
170 | - for (var i = 0; i < $scope.ordemFornecimento.itensBensServicos.length; i++) { | |
171 | - if ($scope.ordemFornecimento.itensBensServicos[i].$checked) { | |
172 | - $scope.ordemFornecimento.itensBensServicos[i] = $scope.item; | |
173 | - } | |
174 | - } | |
175 | - } else { | |
176 | - $scope.item.$index = $scope.ordemFornecimento.itensBensServicos.length + 1; | |
177 | - $scope.ordemFornecimento.itensBensServicos.push($scope.item); | |
178 | - } | |
179 | - } else { | |
180 | - $scope.item.$index = 1; | |
181 | - $scope.ordemFornecimento.itensBensServicos = [$scope.item]; | |
182 | - } | |
124 | + if (formDialogItem.$invalid) { | |
125 | + //Mensagem de erro de campos obrigatorios não preenchidos | |
126 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
127 | + return; | |
128 | + } | |
183 | 129 | |
184 | - var qnt = 0; | |
185 | - var total = 0; | |
186 | - | |
187 | - for (var i = 0; i < $scope.ordemFornecimento.itensBensServicos.length; i++) { | |
188 | - var item = $scope.ordemFornecimento.itensBensServicos[i]; | |
189 | - qnt = parseFloat(qnt) + parseFloat(item.quantidade); | |
190 | - total = parseFloat(total) + parseFloat(item.valorTotalItem); | |
130 | + if(!isPeriodoValido($scope.item.dataInicioPrevisto, $scope.item.dataTerminoPrevisto)) { | |
131 | + $scope.showAlert('warning', $translate.instant('VALIDACAO.DATA_INICIO_PREVISTO_MAIOR_DATA_TERMINO_PREVISTO_CONTRATO')); | |
132 | + return; | |
133 | + } | |
134 | + | |
135 | + if(!isPeriodoValido($scope.ordemFornecimento.contrato.dataVigenciaInicial, $scope.item.dataInicioPrevisto) || | |
136 | + !isPeriodoValido($scope.item.dataTerminoPrevisto, $scope.ordemFornecimento.contrato.dataUltimaVigenciaFinal)) { | |
137 | + $scope.showAlert('warning', $translate.instant('VALIDACAO.PERIODO_INICIO_TERMINO_DENTRO_VIGENCIA_CONTRATO')); | |
138 | + return; | |
139 | + } | |
140 | + | |
141 | + if ($scope.item.quantidade == 0) { | |
142 | + $scope.showAlert('warning', $translate.instant('VALIDACAO.QUANTIDADE_MAIOR_ZERO')); | |
143 | + return; | |
144 | + } | |
145 | + | |
146 | + var qntParc = $scope.item.quantidade; | |
147 | + | |
148 | + if ($scope.ordemFornecimento.itensBensServicos) { | |
149 | + for (var i = 0; i < $scope.ordemFornecimento.itensBensServicos.length; i++) { | |
150 | + if (!$scope.ordemFornecimento.itensBensServicos[i].$checked && $scope.ordemFornecimento.itensBensServicos[i].itemBemServico.id == $scope.item.itemBemServico.id) { | |
151 | + qntParc = parseFloat(qntParc) + parseFloat($scope.ordemFornecimento.itensBensServicos[i].quantidade); | |
152 | + } | |
191 | 153 | } |
192 | - | |
193 | - $scope.quantidadeTotal = qnt; | |
194 | - $scope.totalGeral = total; | |
154 | + } | |
155 | + | |
156 | + if (qntParc > $scope.item.itemBemServico.quantidade) { | |
195 | 157 | |
196 | - $scope.$modalInstance.dismiss('cancel'); | |
158 | + var qntRestante = parseFloat($scope.item.itemBemServico.quantidade) - (parseFloat(qntParc) - parseFloat($scope.item.quantidade)); | |
159 | + | |
160 | + if (qntRestante < 0) { | |
161 | + qntRestante = 0; | |
162 | + } | |
163 | + | |
164 | + $scope.showAlert('warning', $translate.instant('VALIDACAO.QUANTIDADE_INSERIDA_ITEM_MAIOR_QUANTIDADE_CONTRATO') + qntRestante); | |
165 | + return; | |
166 | + } | |
167 | + | |
168 | + if ($scope.item.itemBemServico.originalElement) { | |
169 | + $scope.item.itemBemServico = $scope.item.itemBemServico.originalElement; | |
170 | + } | |
171 | + | |
172 | + if ($scope.ordemFornecimento.itensBensServicos) { | |
173 | + if ($scope.item.$checked) { | |
174 | + for (var i = 0; i < $scope.ordemFornecimento.itensBensServicos.length; i++) { | |
175 | + if ($scope.ordemFornecimento.itensBensServicos[i].$checked) { | |
176 | + $scope.ordemFornecimento.itensBensServicos[i] = $scope.item; | |
177 | + } | |
178 | + } | |
179 | + } else { | |
180 | + $scope.item.$index = $scope.ordemFornecimento.itensBensServicos.length + 1; | |
181 | + $scope.ordemFornecimento.itensBensServicos.push($scope.item); | |
182 | + } | |
183 | + } else { | |
184 | + $scope.item.$index = 1; | |
185 | + $scope.ordemFornecimento.itensBensServicos = [$scope.item]; | |
186 | + } | |
187 | + | |
188 | + var qnt = 0; | |
189 | + var total = 0; | |
190 | + | |
191 | + for (var i = 0; i < $scope.ordemFornecimento.itensBensServicos.length; i++) { | |
192 | + var item = $scope.ordemFornecimento.itensBensServicos[i]; | |
193 | + qnt = parseFloat(qnt) + parseFloat(item.quantidade); | |
194 | + total = parseFloat(total) + parseFloat(item.valorTotalItem); | |
195 | + } | |
196 | + | |
197 | + $scope.quantidadeTotal = qnt; | |
198 | + $scope.totalGeral = total; | |
199 | + | |
200 | + if(continuarEditando){ | |
201 | + formDialogItem.$submitted = false; | |
202 | + formDialogItem.$setPristine(); | |
203 | + $scope.item = {}; | |
197 | 204 | } else { |
198 | - //Mensagem de erro de campos obrigatorios não preenchidos | |
199 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
205 | + $scope.$modalInstance.dismiss('cancel'); | |
200 | 206 | } |
201 | 207 | }; |
202 | 208 | ... | ... |
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/TermoReferenciaController.js
... | ... | @@ -343,100 +343,117 @@ citApp.controller('TermoReferenciaController', ['$scope', |
343 | 343 | }; |
344 | 344 | |
345 | 345 | // ADICIONAR Detalhamento Solucao |
346 | - $scope.addDetalhamentoSolucao = function(formDetalhamento) { | |
347 | - | |
348 | - var detalhe = $scope.termoReferenciaDetalhamentoSolucao; | |
349 | - | |
350 | - formDetalhamento.$submitted = true; | |
351 | - | |
352 | - //verifica se o formulario esta valido para salvar | |
353 | - if (formDetalhamento.$valid) { | |
354 | - | |
355 | - if (detalhe.formaPagamento && detalhe.formaPagamento.codigo===1){ | |
356 | - $scope.termoReferenciaDetalhamentoSolucao.numeroParcelas = null; | |
357 | - } | |
358 | - | |
359 | - $scope.setLoadingSalva(true); | |
360 | - | |
361 | - var isDuplicado = false; | |
362 | - angular.forEach($scope.termoReferencia.detalhamentosSolucoes, function (item, idx) { | |
363 | - if (item.bemServicoSolucao.id === detalhe.bemServicoSolucao.id) { | |
364 | - isDuplicado = true; | |
365 | - $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.BENS_E_SERVICOS_JA_ADD'), " ", false); | |
366 | - return; | |
367 | - } | |
368 | - }); | |
369 | - | |
370 | - if (!isDuplicado) { | |
371 | - | |
372 | - if (detalhe.$index != undefined && detalhe.$index != null) { | |
373 | - $scope.termoReferencia.detalhamentosSolucoes[detalhe.$index] = detalhe; | |
374 | - } else { | |
375 | - $scope.termoReferencia.detalhamentosSolucoes.push(detalhe); | |
376 | - } | |
377 | - | |
378 | -// $scope.atualizaListaEtBensServicos(); | |
379 | - $scope.$modalInstance.dismiss('cancel'); | |
380 | - } | |
381 | - $scope.setLoadingSalva(false); | |
382 | - | |
383 | - } else { | |
384 | - //Mensagem de erro de campos obrigatorios nao preenchidos | |
385 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
386 | - } | |
346 | + $scope.addDetalhamentoSolucao = function(formDetalhamento, continuarEditando) { | |
347 | + | |
348 | + var detalhe = $scope.termoReferenciaDetalhamentoSolucao; | |
349 | + formDetalhamento.$submitted = true; | |
350 | + | |
351 | + //verifica se o formulario esta valido para salvar | |
352 | + if (formDetalhamento.$invalid) { | |
353 | + //Mensagem de erro de campos obrigatorios nao preenchidos | |
354 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
355 | + return; | |
356 | + } | |
357 | + | |
358 | + if (detalhe.formaPagamento && detalhe.formaPagamento.codigo===1){ | |
359 | + $scope.termoReferenciaDetalhamentoSolucao.numeroParcelas = null; | |
360 | + } | |
361 | + $scope.setLoadingSalva(true); | |
362 | + var isDuplicado = false; | |
363 | + angular.forEach($scope.termoReferencia.detalhamentosSolucoes, function (item, idx) { | |
364 | + if (item.bemServicoSolucao.id === detalhe.bemServicoSolucao.id) { | |
365 | + isDuplicado = true; | |
366 | + $scope.showAlert('error', $translate.instant('CONTRATOS.VALIDACAO.BENS_E_SERVICOS_JA_ADD'), " ", false); | |
367 | + return; | |
368 | + } | |
369 | + }); | |
370 | + | |
371 | + if (!isDuplicado) { | |
372 | + | |
373 | + if (detalhe.$index != undefined && detalhe.$index != null) { | |
374 | + $scope.termoReferencia.detalhamentosSolucoes[detalhe.$index] = detalhe; | |
375 | + } else { | |
376 | + $scope.termoReferencia.detalhamentosSolucoes.push(detalhe); | |
377 | + } | |
378 | + | |
379 | + if(continuarEditando){ | |
380 | + formDetalhamento.$submitted = false; | |
381 | + formDetalhamento.$setPristine(); | |
382 | + $scope.termoReferenciaDetalhamentoSolucao = {}; | |
383 | + $scope.listEtBensServicos = $scope.termoReferencia.estudoTecnico.etBensServicosSolucoes; | |
384 | + }else{ | |
385 | + $scope.$modalInstance.dismiss('cancel'); | |
386 | + } | |
387 | + } | |
388 | + | |
389 | + $scope.setLoadingSalva(false); | |
390 | + | |
387 | 391 | }; |
388 | 392 | |
389 | 393 | // ADICIONAR Penalidade |
390 | - $scope.addPenalidade = function(formPenalidade) { | |
394 | + $scope.addPenalidade = function(formPenalidade, continuarEditando) { | |
391 | 395 | |
392 | 396 | var penalid = $scope.penalidade; |
393 | 397 | |
394 | 398 | formPenalidade.$submitted = true; |
395 | 399 | |
396 | 400 | //verifica se o formulario esta valido para salvar |
397 | - if (formPenalidade.$valid) { | |
398 | - | |
399 | - $scope.setLoadingSalva(true); | |
400 | - | |
401 | - if (penalid.$index != undefined && penalid.$index != null) { | |
402 | - $scope.termoReferencia.penalidades[penalid.$index] = penalid; | |
403 | - } else { | |
404 | - $scope.termoReferencia.penalidades.push(penalid); | |
405 | - } | |
401 | + if (formPenalidade.$invalid) { | |
402 | + //Mensagem de erro de campos obrigatorios nao preenchidos | |
403 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
404 | + return; | |
405 | + } | |
406 | 406 | |
407 | - $scope.setLoadingSalva(false); | |
408 | - $scope.$modalInstance.dismiss('cancel'); | |
407 | + $scope.setLoadingSalva(true); | |
409 | 408 | |
409 | + if (penalid.$index != undefined && penalid.$index != null) { | |
410 | + $scope.termoReferencia.penalidades[penalid.$index] = penalid; | |
410 | 411 | } else { |
411 | - //Mensagem de erro de campos obrigatorios nao preenchidos | |
412 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
412 | + $scope.termoReferencia.penalidades.push(penalid); | |
413 | + } | |
414 | + | |
415 | + $scope.setLoadingSalva(false); | |
416 | + | |
417 | + if(continuarEditando){ | |
418 | + formPenalidade.$submitted = false; | |
419 | + formPenalidade.$setPristine(); | |
420 | + $scope.penalidade = {}; | |
421 | + }else{ | |
422 | + $scope.$modalInstance.dismiss('cancel'); | |
413 | 423 | } |
424 | + | |
414 | 425 | }; |
415 | 426 | |
416 | 427 | // ADICIONAR Penalidade |
417 | - $scope.addSancao = function(formSancao) { | |
428 | + $scope.addSancao = function(formSancao, continuarEditando) { | |
418 | 429 | |
419 | 430 | var sans = $scope.sancao; |
420 | 431 | |
421 | 432 | formSancao.$submitted = true; |
422 | 433 | |
423 | 434 | //verifica se o formulario esta valido para salvar |
424 | - if (formSancao.$valid) { | |
435 | + if (formSancao.$invalid) { | |
436 | + //Mensagem de erro de campos obrigatorios nao preenchidos | |
437 | + $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
438 | + return; | |
439 | + } | |
425 | 440 | |
426 | - $scope.setLoadingSalva(true); | |
441 | + $scope.setLoadingSalva(true); | |
427 | 442 | |
428 | - if (sans.$index != undefined && sans.$index != null) { | |
429 | - $scope.termoReferencia.sancoes[sans.$index] = sans; | |
430 | - } else { | |
431 | - $scope.termoReferencia.sancoes.push(sans); | |
432 | - } | |
443 | + if (sans.$index != undefined && sans.$index != null) { | |
444 | + $scope.termoReferencia.sancoes[sans.$index] = sans; | |
445 | + } else { | |
446 | + $scope.termoReferencia.sancoes.push(sans); | |
447 | + } | |
433 | 448 | |
434 | - $scope.setLoadingSalva(false); | |
435 | - $scope.$modalInstance.dismiss('cancel'); | |
449 | + $scope.setLoadingSalva(false); | |
436 | 450 | |
451 | + if(continuarEditando){ | |
452 | + formSancao.$submitted = false; | |
453 | + formSancao.$setPristine(); | |
454 | + $scope.sancao = {}; | |
437 | 455 | } else { |
438 | - //Mensagem de erro de campos obrigatorios nao preenchidos | |
439 | - $scope.showAlert('error', $translate.instant('VALIDACAO.ALERTA_OBRIGATORIOS'), " ", false); | |
456 | + $scope.$modalInstance.dismiss('cancel'); | |
440 | 457 | } |
441 | 458 | }; |
442 | 459 | ... | ... |
cit-contratos-web/src/main/webapp/html/contrato/dialog_empenho.html
1 | 1 | <ng-form name="formDialogEmpenho" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | 3 | <button title="{{$translate.instant('LABEL.ADICIONAR')}}" alt="{{$translate.instant('LABEL.ADICIONAR')}}" |
4 | - ng-click="adicionarEmpenho(formDialogEmpenho)" ng-if="editEmpenho" class="btn btn-clear" type="button"> | |
4 | + ng-click="adicionarEmpenho(formDialogEmpenho, false)" ng-if="editEmpenho" class="btn btn-clear" type="button"> | |
5 | 5 | <i class="fa fa-save green"></i> |
6 | 6 | <translate>LABEL.ADICIONAR</translate> |
7 | 7 | </button> |
8 | 8 | |
9 | + <button title="{{$translate.instant('LABEL.ADICIONAR_CONTINUAR')}}" alt="{{$translate.instant('LABEL.ADICIONAR_CONTINUAR')}}" | |
10 | + ng-click="adicionarEmpenho(formDialogEmpenho, true)" ng-if="editEmpenho" class="btn btn-clear" type="button"> | |
11 | + <i class="fa fa-save green"></i> | |
12 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
13 | + </button> | |
14 | + | |
9 | 15 | <button title="{{$translate.instant('LABEL.FECHAR')}}" alt="{{$translate.instant('LABEL.FECHAR')}}" |
10 | 16 | ng-click="$dismiss('cancel');" class="btn btn-clear" type="button"> |
11 | 17 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/contrato/dialog_item_contrato.html
1 | 1 | <ng-form name="formDialogItemContrato" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | 3 | <button title="{{$translate.instant('LABEL.ADICIONAR')}}" alt="{{$translate.instant('LABEL.ADICIONAR')}}" |
4 | - ng-click="adicionarItemContrato(formDialogItemContrato)" ng-if="editItemContrato" class="btn btn-clear" type="button"> | |
4 | + ng-click="adicionarItemContrato(formDialogItemContrato, false)" ng-if="editItemContrato" class="btn btn-clear" type="button"> | |
5 | 5 | <i class="fa fa-save green"></i> |
6 | 6 | <translate>LABEL.ADICIONAR</translate> |
7 | 7 | </button> |
8 | 8 | |
9 | + <button title="{{$translate.instant('LABEL.ADICIONAR_CONTINUAR')}}" alt="{{$translate.instant('LABEL.ADICIONAR_CONTINUAR')}}" | |
10 | + ng-click="adicionarItemContrato(formDialogItemContrato, true)" ng-if="editItemContrato" class="btn btn-clear" type="button"> | |
11 | + <i class="fa fa-save green"></i> | |
12 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
13 | + </button> | |
14 | + | |
9 | 15 | <button title="{{$translate.instant('LABEL.FECHAR')}}" alt="{{$translate.instant('LABEL.FECHAR')}}" |
10 | 16 | ng-click="$dismiss('cancel');" class="btn btn-clear" type="button"> |
11 | 17 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/estudoTecnico/dialog_acao_contingencia.html
1 | 1 | <ng-form name="formDialogAcaoContingencia" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editAcaoCont" ng-click="salvaAcaoCont(formDialogAcaoContingencia)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editAcaoCont" ng-click="salvaAcaoCont(formDialogAcaoContingencia, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-if="editAcaoCont" ng-click="salvaAcaoCont(formDialogAcaoContingencia, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editAcaoCont" |
9 | 14 | type="button"> | ... | ... |
cit-contratos-web/src/main/webapp/html/estudoTecnico/dialog_beneficio_esperado.html
1 | 1 | <ng-form name="formDialogBeneficioEsperado" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editBeneficioEsperado" ng-click="salvaBeneficioEsperado(formDialogBeneficioEsperado)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editBeneficioEsperado" ng-click="salvaBeneficioEsperado(formDialogBeneficioEsperado, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-if="editBeneficioEsperado" ng-click="salvaBeneficioEsperado(formDialogBeneficioEsperado, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editBeneficioEsperado" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/estudoTecnico/dialog_bens_servico.html
1 | 1 | <ng-form name="formDialogBensServico" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editBemServico" ng-click="salvaBemServico(formDialogBensServico)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editBemServico" ng-click="salvaBemServico(formDialogBensServico, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-if="editBemServico" ng-click="salvaBemServico(formDialogBensServico, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editBemServico" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/estudoTecnico/dialog_recurso_humano.html
1 | 1 | <ng-form name="formDialogRecursoHumano" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editRecursoHumano" ng-click="salvaRecursoHumano(formDialogRecursoHumano)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editRecursoHumano" ng-click="salvaRecursoHumano(formDialogRecursoHumano, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | 7 | |
8 | + <button class="btn btn-clear" type="button" ng-if="editRecursoHumano" ng-click="salvaRecursoHumano(formDialogRecursoHumano, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
12 | + | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editRecursoHumano" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> |
10 | 15 | <translate>LABEL.CANCELAR</translate> | ... | ... |
cit-contratos-web/src/main/webapp/html/estudoTecnico/dialog_recurso_material.html
1 | 1 | <ng-form name="formDialogRecursoMaterial" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editRecursoMaterial" ng-click="salvaRecursoMaterial(formDialogRecursoMaterial)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editRecursoMaterial" ng-click="salvaRecursoMaterial(formDialogRecursoMaterial, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | 7 | |
8 | + <button class="btn btn-clear" type="button" ng-if="editRecursoMaterial" ng-click="salvaRecursoMaterial(formDialogRecursoMaterial, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
12 | + | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editRecursoMaterial" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> |
10 | 15 | <translate>LABEL.CANCELAR</translate> | ... | ... |
cit-contratos-web/src/main/webapp/html/estudoTecnico/dialog_solucao.html
1 | 1 | <ng-form name="formDialogSolucao" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editSolucao" ng-click="salvaSolucao(formDialogSolucao)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editSolucao" ng-click="salvaSolucao(formDialogSolucao, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | - | |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-if="editSolucao" ng-click="salvaSolucao(formDialogSolucao, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
12 | + | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editSolucao" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> |
10 | 15 | <translate>LABEL.CANCELAR</translate> | ... | ... |
cit-contratos-web/src/main/webapp/html/ordemFornecimento/dialog_itens_bens_servicos.html
1 | 1 | <ng-form name="formDialogItem" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-if="editItem" ng-click="salvaItem(formDialogItem)"> | |
3 | + <button class="btn btn-clear" type="button" ng-if="editItem" ng-click="salvaItem(formDialogItem, false)"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-if="editItem" ng-click="salvaItem(formDialogItem, true)"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" ng-if="editItem" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/termoReferencia/dialog_detalhamento_solucao.html
1 | 1 | <ng-form name="formDetalhamentoSolucao" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-click="addDetalhamentoSolucao(formDetalhamentoSolucao)" ng-show="editDetalhamento"> | |
3 | + <button class="btn btn-clear" type="button" ng-click="addDetalhamentoSolucao(formDetalhamentoSolucao, false)" ng-show="editDetalhamento"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-click="addDetalhamentoSolucao(formDetalhamentoSolucao, true)" ng-show="editDetalhamento"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/termoReferencia/dialog_penalidade.html
1 | 1 | <ng-form name="formPenalidade" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-click="addPenalidade(formPenalidade)" ng-show="editPenalidade"> | |
3 | + <button class="btn btn-clear" type="button" ng-click="addPenalidade(formPenalidade, false)" ng-show="editPenalidade"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-click="addPenalidade(formPenalidade, true)" ng-show="editPenalidade"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> | ... | ... |
cit-contratos-web/src/main/webapp/html/termoReferencia/dialog_sancao.html
1 | 1 | <ng-form name="formSancao" autocomplete="off"> |
2 | 2 | <div class="modal-header"> |
3 | - <button class="btn btn-clear" type="button" ng-click="addSancao(formSancao)" ng-show="editSancao"> | |
3 | + <button class="btn btn-clear" type="button" ng-click="addSancao(formSancao, false)" ng-show="editSancao"> | |
4 | 4 | <i class="fa fa-save green"></i> |
5 | 5 | <translate>LABEL.SALVAR</translate> |
6 | 6 | </button> |
7 | + | |
8 | + <button class="btn btn-clear" type="button" ng-click="addSancao(formSancao, true)" ng-show="editSancao"> | |
9 | + <i class="fa fa-save green"></i> | |
10 | + <translate>LABEL.ADICIONAR_CONTINUAR</translate> | |
11 | + </button> | |
7 | 12 | |
8 | 13 | <button title="{{$translate.instant('LABEL.CANCELAR')}}" alt="{{$translate.instant('LABEL.CANCELAR')}}" ng-click="$dismiss('cancel');" class="btn btn-clear" type="button"> |
9 | 14 | <i class="fa fa-times red"></i> | ... | ... |