Commit fdf75265379694deec3fbe612f1510140c44a005
1 parent
d94160fb
Exists in
master
Redmine #4545
Showing
1 changed file
with
15 additions
and
19 deletions
Show diff stats
cit-contratos-web/src/main/webapp/assets/js/angular/custom/controller/CronogramaExecucaoController.js
| ... | ... | @@ -20,7 +20,7 @@ citApp.controller('CronogramaExecucaoController', ['$scope', '$translate', '$tim |
| 20 | 20 | |
| 21 | 21 | $scope.uploader = new FileUploader({ |
| 22 | 22 | autoUpload: false, |
| 23 | - queueLimit: 1, | |
| 23 | + queueLimit: 99, | |
| 24 | 24 | url: '/cit-tabelas-corp-web/rest/anexo/uploadAnexo?idDocumento=' |
| 25 | 25 | }); |
| 26 | 26 | |
| ... | ... | @@ -153,15 +153,16 @@ citApp.controller('CronogramaExecucaoController', ['$scope', '$translate', '$tim |
| 153 | 153 | $scope.setLoadingSalva(true); |
| 154 | 154 | |
| 155 | 155 | var cronogramaExecucaoTemp = { |
| 156 | - documentos: [] | |
| 156 | + documentos: [] | |
| 157 | 157 | }; |
| 158 | 158 | |
| 159 | 159 | // preencher lista de documentos temporarios para verificacao dos anexos. verificar qual anexo e de qual documento pelo numero do documento |
| 160 | 160 | angular.forEach($scope.cronogramaExecucao.documentos, function(documento, key) { |
| 161 | 161 | if (documento.uploadsDocumento) { |
| 162 | + documento.uuid = getUuid(); | |
| 162 | 163 | cronogramaExecucaoTemp.documentos.push({ |
| 163 | - uploadsDocumento: clone(documento.uploadsDocumento), | |
| 164 | - numero: clone(documento.numero) | |
| 164 | + file: documento.uploadsDocumento[0], | |
| 165 | + uuid: clone(documento.uuid) | |
| 165 | 166 | }); |
| 166 | 167 | // deleta esse atributo por causa de um erro de ciclo no json |
| 167 | 168 | delete documento.uploadsDocumento; |
| ... | ... | @@ -192,33 +193,28 @@ citApp.controller('CronogramaExecucaoController', ['$scope', '$translate', '$tim |
| 192 | 193 | |
| 193 | 194 | // metodo utilizado para percorrer a lista de documentos persistidos e verificar com a lista de documentos temporarios para verificacao de qual anexo pertence a qual documento |
| 194 | 195 | var salvarListaDocumentos = function(cronogramaExecucaoTemp) { |
| 195 | - | |
| 196 | + $scope.uploader.queue = []; | |
| 197 | + | |
| 196 | 198 | angular.forEach($scope.cronogramaExecucao.documentos, function(documentoSalvo, key) { |
| 197 | 199 | // verifica se a entidade documento foi salva |
| 198 | 200 | if (documentoSalvo !== undefined && documentoSalvo.id !== undefined) { |
| 199 | 201 | // percorre todos os documentos temporarios para verificacao do numero do documento |
| 200 | 202 | angular.forEach(cronogramaExecucaoTemp.documentos, function(documentoTransient, key) { |
| 201 | 203 | // verifica se o numero do documento salvo e igual ao numero do documento transient que o anexo ainda esta vinculado |
| 202 | - if (documentoSalvo.numero === documentoTransient.numero) { | |
| 204 | + if (documentoTransient.file && documentoSalvo.uuid === documentoTransient.uuid) { | |
| 203 | 205 | //salva o anexo ao documento que tiver o mesmo numero do documento transient |
| 204 | - salvarUpload(documentoSalvo, documentoTransient.uploadsDocumento); | |
| 206 | + | |
| 207 | + documentoTransient.file.url = documentoTransient.file.url + documentoSalvo.id | |
| 208 | + $scope.uploader.queue.push(documentoTransient.file) | |
| 205 | 209 | } |
| 206 | 210 | }); |
| 207 | 211 | } |
| 208 | 212 | }); |
| 209 | - }; | |
| 210 | - | |
| 211 | - // metodo responsavel para salvar os anexos do contrato depois de ter salvo o contrato, utilizando a referencia do id contrato.documento.id | |
| 212 | - var salvarUpload = function(documento, uploadsDocumento) { | |
| 213 | - $scope.uploader.queue = uploadsDocumento; | |
| 214 | - // percorre a lista de uploads a serem enviados | |
| 215 | - angular.forEach($scope.uploader.queue, function(item, key) { | |
| 216 | - item.url = item.url + documento.id; | |
| 217 | - }); | |
| 218 | - if ($scope.uploader.queue && $scope.uploader.queue.length > 0) { | |
| 219 | - // realiza o upload se existir no minimo um arquivo para upload | |
| 220 | - $scope.uploader.uploadAll(); | |
| 213 | + | |
| 214 | + if($scope.uploader.queue.length > 0){ | |
| 215 | + $scope.uploader.uploadAll(); | |
| 221 | 216 | } |
| 217 | + delete $scope.cronogramaExecucaoTemp; | |
| 222 | 218 | }; |
| 223 | 219 | |
| 224 | 220 | // Limpa o formulario preenchido | ... | ... |