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