Commit 9aa94e533196c619ed2ee6e241d3b9e5fb0352a9
Exists in
master
Merge branch 'desenvolvimento' of http://ferramentasgo.centralit.com.br:8080/scm…
…/git/cit-grp-ecm into desenvolvimento
Showing
1 changed file
with
483 additions
and
0 deletions
Show diff stats
cit-ecm-web/src/main/webapp/assets/js/angular/custom/controller/GerenciarProcessoListUnidadeController.js
0 → 100644
... | ... | @@ -0,0 +1,483 @@ |
1 | +'use strict'; | |
2 | + | |
3 | +citApp.controller('GerenciarProcessoListUnidadeController', ['$scope', 'workflowFilterCriteriaService', 'appService', 'environmentService', 'FormBuilderRepository', 'FlowRepository', 'BusinessProcessRepository', 'RuntimeManagerRepository', 'DomainRepository', '$compile', '$translate', '$modal', '$injector', '$parse', '$rootScope', '$timeout', 'BusinessProcessCategoryRepository','ProcessoRepository', | |
4 | + function GerenciarProcessoListUnidadeController($scope, workflowFilterCriteriaService, appService, environmentService, FormBuilderRepository, FlowRepository, BusinessProcessRepository, RuntimeManagerRepository, DomainRepository, $compile, $translate, $modal, $injector, $parse, $rootScope, $timeout, BusinessProcessCategoryRepository, ProcessoRepository) { | |
5 | + $scope.compile = $compile; | |
6 | + $scope.$showAdvancedFilters = false; | |
7 | + $scope.workflowFilterCriteriaService = workflowFilterCriteriaService; | |
8 | + | |
9 | + | |
10 | + $scope.signalEventInput = new SignalEventInput("", "", "", "", "", 0); | |
11 | + $scope.totalPagesFluxo = 10; | |
12 | + $scope.totalItensFluxo = 0; | |
13 | + | |
14 | + $scope.totalPages = 10; | |
15 | + $scope.totalItens = 0; | |
16 | + $scope.limit = 10; | |
17 | + $scope.processos = []; | |
18 | + $scope.businessProcess = null; | |
19 | + $scope.indexProcessoNegocio = null; | |
20 | + | |
21 | + $scope.idPainelItem = 0; | |
22 | + | |
23 | + $scope.tabAtual = 0; | |
24 | + | |
25 | + $scope.tabs = [ {active: true} | |
26 | + ,{active: false} | |
27 | + ]; | |
28 | + | |
29 | + // default criteria that will be sent to the server to request data from WorkItem | |
30 | + $scope.filterCriteria = { | |
31 | + start : 1, | |
32 | + sort : 'workItem.id', | |
33 | + limit : 10, | |
34 | + deadline : 1, | |
35 | + processDeadline : 1, | |
36 | + timeManagementStatus : "", | |
37 | + fields : [ 'workItem.id'], | |
38 | + filters : [{type: 'numeric', field: 'workItem.id'} | |
39 | + , {type: 'string', field: 'workItem.flowElement.name'} | |
40 | + , {type: 'numeric', field: 'workItem.processInstance.id'} | |
41 | + , {type: 'string', field: 'workItem.processInstance.businessProcess.description'} | |
42 | + , {type: 'string', field: 'workItem.processInstance.flowStatus.name'}] | |
43 | + }; | |
44 | + | |
45 | + $scope.fetchBusinessProcess = function() { | |
46 | + $scope.setLoading(true); | |
47 | + $scope.categorias = []; | |
48 | + BusinessProcessCategoryRepository.findParents().then(function(result) { | |
49 | + for(var i = 0; i < result.length; i++) { | |
50 | + result[i].originalElement.sinalPositivo = result[i].originalElement.hasChildren || result[i].originalElement.hasProcesses; | |
51 | + $scope.categorias.push(result[i].originalElement); | |
52 | + } | |
53 | + $scope.setLoading(false); | |
54 | + }, function() { | |
55 | + $scope.setLoading(false); | |
56 | + }); | |
57 | + }; | |
58 | + | |
59 | + $scope.filterProcessos = { | |
60 | + start : 1, | |
61 | + dir : 'asc', | |
62 | + sort : 'name', | |
63 | + limit : 999999, | |
64 | + fields: ['id', 'category.name', 'description', 'flow.description'], | |
65 | + filters : [{type: 'numeric', field: 'category.id'}, {type: 'string', field: 'category.name'}, {type: 'string', field: 'description'}, {type: 'string', field: 'flow.description'}] | |
66 | + }; | |
67 | + | |
68 | + // Will be called when filtering the grid, will reset the page number to one | |
69 | + $scope.filterResult = function() { | |
70 | + | |
71 | + //Timeout adicionado para que os filtros de pesquisa funcionem | |
72 | + $timeout(function(){ | |
73 | + $scope.filterCriteria.start = 1; | |
74 | + $scope.fetchResult().then(function() { | |
75 | + // The request fires correctly but sometimes the ui doesn't update, | |
76 | + // that's a fix | |
77 | + $scope.filterCriteria.start = 1; | |
78 | + }); | |
79 | + | |
80 | + }); | |
81 | + }; | |
82 | + | |
83 | + // call back function that we passed to our custom directive sortBy, will be | |
84 | + // called when clicking on any field to sort | |
85 | + $scope.onSort = function(sortedBy, sortDir) { | |
86 | + $scope.filterCriteria.dir = sortDir; | |
87 | + $scope.filterCriteria.sort = sortedBy; | |
88 | + $scope.filterCriteria.start = 1; | |
89 | + $scope.fetchResult().then(function() { | |
90 | + // The request fires correctly but sometimes the ui doesn't update, | |
91 | + // that's a fix | |
92 | + $scope.filterCriteria.start = 1; | |
93 | + }); | |
94 | + }; | |
95 | + | |
96 | + // RECUPERA LISTA DE TAREFAS E SETA RESULTADO NA GRID | |
97 | + $scope.fetchResult = function(page) { | |
98 | + $scope.setLoading(true); | |
99 | + | |
100 | + return BusinessProcessRepository.tasksByParam($scope.filterCriteria).then(function(result) { | |
101 | + var dataAtual = new Date(); | |
102 | + | |
103 | + $scope.assignments = result.originalElement.objects; | |
104 | + angular.forEach($scope.assignments, function (assignment) { | |
105 | + assignment.classePrazoProcesso = new Date(assignment.processInstance.estimatedEndTimestamp) >= dataAtual ? 'green' : 'red'; | |
106 | + assignment.classePrazoTarefa = new Date(assignment.estimatedEndTimestamp) >= dataAtual ? 'green' : 'red'; | |
107 | + | |
108 | + ProcessoRepository.getProcessoByIdProcessInstance(assignment.processInstance.id).then(function(result) { | |
109 | + if( result){ | |
110 | + assignment.processo = result.originalElement; | |
111 | + } | |
112 | + }); | |
113 | + | |
114 | + }); | |
115 | + | |
116 | + $scope.totalPages = result.originalElement.totalPages; | |
117 | + $scope.totalItens = result.originalElement.totalItens; | |
118 | + $scope.setLoading(false); | |
119 | + }, function() { | |
120 | + $scope.totalPages = 0; | |
121 | + $scope.totalItens = 0; | |
122 | + $scope.setLoading(false); | |
123 | + }); | |
124 | + }; | |
125 | + | |
126 | + $scope.filterSigad = function(){ | |
127 | + | |
128 | + if($scope.processoSigad && $scope.processoSigad != ''){ | |
129 | + ProcessoRepository.getProcessoByProtocolo($scope.processoSigad).then(function(result) { | |
130 | + if(result){ | |
131 | + $scope.filterCriteria.filters[2].value = result.originalElement.idProcessInstance; | |
132 | + $timeout(function(){ | |
133 | + $scope.filterResult(); | |
134 | + }); | |
135 | + }else{ | |
136 | + $scope.filterCriteria.filters[2].value = null; | |
137 | + $scope.filterResult(); | |
138 | + } | |
139 | + }); | |
140 | + }else{ | |
141 | + $scope.filterCriteria.filters[2].value = null; | |
142 | + $scope.filterResult(); | |
143 | + } | |
144 | + }; | |
145 | + | |
146 | + $scope.filterSigadProtocolo = function(){ | |
147 | + | |
148 | + if($scope.sigadProtocolo && $scope.sigadProtocolo != ''){ | |
149 | + | |
150 | + ProcessoRepository.getProcessoByProtocolo($scope.sigadProtocolo).then(function(result) { | |
151 | + if(result){ | |
152 | + $scope.filterCriteria.filters[2].value = result.originalElement.idProcessInstance; | |
153 | + $timeout(function(){ | |
154 | + $scope.filterResult(); | |
155 | + }); | |
156 | + }else{ | |
157 | + $scope.filterCriteria.filters[2].value = null; | |
158 | + $scope.filterResult(); | |
159 | + } | |
160 | + | |
161 | + }); | |
162 | + | |
163 | + }else{ | |
164 | + $scope.filterCriteria.filters[2].value = null; | |
165 | + $scope.filterResult(); | |
166 | + } | |
167 | + }; | |
168 | + | |
169 | + $scope.recuperarPermissoes = function(assignment){ | |
170 | + assignment.workItem = {}; | |
171 | + BusinessProcessRepository.getPermissions({id: assignment.id}).then(function(result) { | |
172 | + assignment.workItem = result.originalElement; | |
173 | + if (!assignment.workItem.execute && !assignment.workItem.delegate && !assignment.workItem.suspend && !assignment.workItem.restart && !assignment.workItem.visualize) { | |
174 | + $scope.fetchResult(); | |
175 | + } | |
176 | + }); | |
177 | + }; | |
178 | + | |
179 | + // ADICIONA CHECK NA VERSAOFLUXO SELECIONADA | |
180 | +/* $scope.checkProcessoNegocio = function (indexProcessoNegocio, processoNegocio) { | |
181 | + $scope.indexProcessoNegocio = indexProcessoNegocio; | |
182 | + $scope.businessProcess = processoNegocio; | |
183 | + };*/ | |
184 | + | |
185 | +/* $scope.iniciarProcessoNegocio = function(processo){ | |
186 | + BusinessProcessRepository.initialize(processo).then(function(result) { | |
187 | + $scope.businessProcess = result.originalElement.businessProcess; | |
188 | + | |
189 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/startBusinessProcess.html'; | |
190 | + if ($scope.businessProcess.target == 'FLOW') { | |
191 | + $scope.flowVersion = result.originalElement.flowVersion; | |
192 | + if ($scope.flowVersion.userInterface && $scope.flowVersion.userInterface.executeCustomPage) { | |
193 | + pagina = $scope.flowVersion.userInterface.URLCustomPage; | |
194 | + $scope.abrirPaginaProcesso(pagina); | |
195 | + }else if ($scope.flowVersion.userInterface && $scope.flowVersion.userInterface.resource && $scope.flowVersion.userInterface.resourceName) { | |
196 | + FormBuilderRepository.getByName($scope.flowVersion.userInterface.resourceName).then(function(result) { | |
197 | + pagina = '/cit-esi-web/forms/'+result.originalElement.path+'/'+result.originalElement.resource.name+"_process.html"; | |
198 | + $scope.abrirPaginaProcesso(pagina); | |
199 | + }); | |
200 | + }else{ | |
201 | + $scope.abrirPaginaProcesso(pagina); | |
202 | + } | |
203 | + }else if ($scope.businessProcess.target == 'FORM') { | |
204 | + FormBuilderRepository.getByName($scope.businessProcess.form.name).then(function(result) { | |
205 | + pagina = '/cit-esi-web/forms/'+result.originalElement.path+'/'+result.originalElement.resource.name+"_process.html"; | |
206 | + $scope.abrirPaginaProcesso(pagina); | |
207 | + }); | |
208 | + }else if ($scope.businessProcess.target == 'PAGE') { | |
209 | + pagina = '/cit-esi-web/pages/'+$scope.businessProcess.pageVersion.fileName; | |
210 | + $scope.abrirPaginaProcesso(pagina); | |
211 | + }else if ($scope.businessProcess.target == 'URL') { | |
212 | + pagina = $scope.businessProcess.url; | |
213 | + $scope.abrirPaginaProcesso(pagina); | |
214 | + }else{ | |
215 | + $scope.abrirPaginaProcesso(pagina); | |
216 | + } | |
217 | + }); | |
218 | + };*/ | |
219 | + | |
220 | +/* $scope.abrirPaginaProcesso = function(pagina) { | |
221 | + if (appService.existsWorkspace(pagina)) { | |
222 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_PROCESSO')); | |
223 | + return ; | |
224 | + } | |
225 | + | |
226 | + $rootScope.businessProcess = $scope.businessProcess; | |
227 | + $rootScope.controllerScope = $scope; | |
228 | + $rootScope.listaBreadcrumb = []; | |
229 | + | |
230 | + $scope.addNewWorkspace($rootScope.businessProcess.description, pagina, true, 'mod-orange', $rootScope.businessProcess); | |
231 | + };*/ | |
232 | + | |
233 | + $scope.executarTarefa = function(assignment){ | |
234 | + $scope.task = assignment.workItem; | |
235 | + | |
236 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/userTask.html'; | |
237 | + if ($scope.task.flowElement.userInterface && $scope.task.flowElement.userInterface.executeCustomPage) { | |
238 | + pagina = $scope.task.flowElement.userInterface.URLCustomPage; | |
239 | + $scope.abrirPaginaTarefa(pagina); | |
240 | + }else if ($scope.task.flowElement.userInterface && $scope.task.flowElement.userInterface.resource && $scope.task.flowElement.userInterface.resourceName) { | |
241 | + FormBuilderRepository.getByName($scope.task.flowElement.userInterface.resourceName).then(function(result) { | |
242 | + pagina = '/cit-esi-web/forms/'+result.originalElement.path+'/'+result.originalElement.resource.name+"_task.html"; | |
243 | + $scope.abrirPaginaTarefa(pagina); | |
244 | + }); | |
245 | + }else{ | |
246 | + $scope.abrirPaginaTarefa(pagina); | |
247 | + } | |
248 | + }; | |
249 | + | |
250 | + $scope.abrirPaginaTarefa = function(pagina){ | |
251 | + if (appService.existsWorkspace(pagina)) { | |
252 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_TAREFA')); | |
253 | + return ; | |
254 | + } | |
255 | + | |
256 | + $scope.processInstance = $scope.task.processInstance; | |
257 | + $scope.processInstance.collapsed = true; | |
258 | + $scope.processInstance.collapsedError = true; | |
259 | + | |
260 | + $rootScope.task = $scope.task; | |
261 | + $rootScope.processInstance = $scope.processInstance; | |
262 | + $rootScope.controllerScope = $scope; | |
263 | + | |
264 | + var nome = $scope.task.flowElement.description; | |
265 | + if (!nome || nome == '') | |
266 | + nome = $scope.task.flowElement.name; | |
267 | + | |
268 | + $scope.addNewWorkspace($translate.instant('ESI.PERMISSAO.EXECUTAR')+" "+$translate.instant('ESI.TAREFA').toLowerCase()+" '"+nome+"'", pagina, true, 'mod-orange', $scope.task); | |
269 | + }; | |
270 | + | |
271 | + $scope.delegarTarefa = function(assignment){ | |
272 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/userTaskDelegation.html'; | |
273 | + | |
274 | + if (appService.existsWorkspace(pagina)) { | |
275 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_DELEGACAO')); | |
276 | + return ; | |
277 | + } | |
278 | + | |
279 | + $scope.task = assignment.workItem; | |
280 | + | |
281 | + $scope.processInstance = $scope.task.processInstance; | |
282 | + $scope.processInstance.collapsed = true; | |
283 | + $scope.processInstance.collapsedError = true; | |
284 | + | |
285 | + $rootScope.task = $scope.task; | |
286 | + $rootScope.processInstance = $scope.processInstance; | |
287 | + $rootScope.controllerScope = $scope; | |
288 | + | |
289 | + var nome = $scope.task.flowElement.description; | |
290 | + if (!nome || nome == '') | |
291 | + nome = $scope.task.flowElement.name; | |
292 | + | |
293 | + $scope.addNewWorkspace($translate.instant('ESI.PERMISSAO.DELEGAR')+" "+$translate.instant('ESI.TAREFA').toLowerCase()+" '"+nome+"'", pagina, true, 'mod-orange', $scope.task); | |
294 | + }; | |
295 | + | |
296 | + $scope.capturarTarefa = function(assignment){ | |
297 | + $scope.$openModalConfirm({ | |
298 | + message: $translate.instant('ESI.MSG.CONFIRMA_CAPTURA'), | |
299 | + callback: function () { | |
300 | + $scope.$modalConfirmInstance.dismiss('cancel'); | |
301 | + | |
302 | + $scope.setLoading(true,$translate.instant('ESI.CAPTURANDO_TAREFA')+" "+assignment.workItem.flowElement.description); | |
303 | + | |
304 | + var param = new RuntimeEnvironmentInput("",[]); | |
305 | + param.workItemId = assignment.workItem.id; | |
306 | + | |
307 | + RuntimeManagerRepository.captureTask(param).then(function(result) { | |
308 | + $scope.setLoading(false); | |
309 | + $scope.fetchResult(); | |
310 | + $scope.showAlert("success","ESI.MSG.TAREFA_CAPTURADA",""); | |
311 | + }); | |
312 | + } | |
313 | + }); | |
314 | + | |
315 | + }; | |
316 | + | |
317 | + $scope.suspenderProcesso = function(assignment){ | |
318 | + $scope.$openModalConfirm({ | |
319 | + message: $translate.instant('ESI.MSG.CONFIRMA_SUSPENSAO'), | |
320 | + callback: function () { | |
321 | + $scope.$modalConfirmInstance.dismiss('cancel'); | |
322 | + | |
323 | + $scope.setLoading(true); | |
324 | + RuntimeManagerRepository.suspendProcessInstance(assignment.workItem.processInstance.id).then(function(result) { | |
325 | + $scope.setLoading(false); | |
326 | + $scope.fetchResult(); | |
327 | + $scope.showAlert("success","ESI.MSG.PROCESSO_SUSPENSO",""); | |
328 | + }); | |
329 | + } | |
330 | + }); | |
331 | + }; | |
332 | + | |
333 | + $scope.reativarProcesso = function(assignment){ | |
334 | + $scope.$openModalConfirm({ | |
335 | + message: $translate.instant('ESI.MSG.CONFIRMA_REATIVACAO'), | |
336 | + callback: function () { | |
337 | + $scope.$modalConfirmInstance.dismiss('cancel'); | |
338 | + | |
339 | + $scope.setLoading(true); | |
340 | + RuntimeManagerRepository.restartProcessInstance(assignment.workItem.processInstance.id).then(function(result) { | |
341 | + $scope.setLoading(false); | |
342 | + $scope.fetchResult(); | |
343 | + $scope.showAlert("success","ESI.MSG.PROCESSO_REATIVADO",""); | |
344 | + }); | |
345 | + } | |
346 | + }); | |
347 | + }; | |
348 | + | |
349 | + $scope.visualizarFluxo = function(assignment){ | |
350 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/visualizacaoEsi.html'; | |
351 | + | |
352 | + if (appService.existsWorkspace(pagina)) { | |
353 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_VISUALIZACAO')); | |
354 | + return ; | |
355 | + } | |
356 | + | |
357 | + $scope.tarefa = assignment.workItem; | |
358 | + $scope.instancia = $scope.tarefa.processInstance; | |
359 | + $rootScope.tarefa = $scope.tarefa; | |
360 | + $rootScope.instancia = $scope.instancia; | |
361 | + $rootScope.controllerScope = $scope; | |
362 | + $scope.addNewWorkspace(assignment.workItem.processInstance.businessProcess.description, pagina, true, 'mod-orange', $scope.tarefa); | |
363 | + }; | |
364 | + | |
365 | + $scope.consultarHistorico = function(assignment){ | |
366 | + var pagina = '/cit-esi-web/assets/js/angular/custom/directive/html/consultaLog.html'; | |
367 | + | |
368 | + if (appService.existsWorkspace(pagina)) { | |
369 | + $scope.showAlert('warning', $translate.instant('ESI.MSG.JA_EXISTE_TELA_HISTORICO')); | |
370 | + return ; | |
371 | + } | |
372 | + | |
373 | + $scope.processInstance = assignment.workItem.processInstance; | |
374 | + $rootScope.processInstance = $scope.processInstance; | |
375 | + $rootScope.controllerScope = $scope; | |
376 | + | |
377 | + $scope.processInstance.collapsed = true; | |
378 | + $scope.processInstance.collapsedError = true; | |
379 | + $scope.processInstance.instances = []; | |
380 | + | |
381 | + $scope.addNewWorkspace(assignment.workItem.processInstance.businessProcess.description, pagina, true, 'mod-orange', $scope.processInstance); | |
382 | + }; | |
383 | + | |
384 | + $scope.retrieveAditionalHtml = function(assignment) { | |
385 | + assignment.$show = !assignment.$show; | |
386 | + if (!assignment.$show) | |
387 | + return; | |
388 | + | |
389 | + if (!assignment.workItem) { | |
390 | + BusinessProcessRepository.getPermissions({id: assignment.id}).then(function(result) { | |
391 | + assignment.workItem = result.originalElement; | |
392 | + $scope.showAditionalHtml(assignment.workItem); | |
393 | + }); | |
394 | + }else{ | |
395 | + $scope.showAditionalHtml(assignment.workItem); | |
396 | + } | |
397 | + }; | |
398 | + | |
399 | + $scope.showAditionalHtml = function(workItem) { | |
400 | + var id = "divHtmlAdicional_" + $scope.idPainelItem + "_" + workItem.id; | |
401 | + | |
402 | + var el = document.getElementById(id); | |
403 | + if (!el || el.innerHTML != '') | |
404 | + return; | |
405 | + | |
406 | + var element = angular.element("#"+id); | |
407 | + environmentService.retrieveAditionalHtml($scope, workItem, element, $injector); | |
408 | + el.focus(); | |
409 | + }; | |
410 | + | |
411 | + $scope.signalEvent = function() { | |
412 | + $scope.setLoading(true); | |
413 | + RuntimeManagerRepository.signalEvent($scope.signalEventInput).then(function(result) { | |
414 | + $scope.setLoading(false); | |
415 | + }); | |
416 | + }; | |
417 | + | |
418 | + $scope.getAplicacaoFluxo = function(processoNegocio) { | |
419 | + return DomainRepository.getEnumDescription(processoNegocio['flow.flowApplication'], $scope.aplicacaoFluxo); | |
420 | + }; | |
421 | + | |
422 | + $scope.getTimeManagementStatus = function(processInstance) { | |
423 | + if (processInstance && processInstance.timeManagementStatus) { | |
424 | + processInstance.backgroundColorTimeStatus = processInstance.timeManagementStatus === 'SUSPENDED' ? "red" : processInstance.timeManagementStatus === 'NOT_STARTED' ? "yellow-dark" : "green"; | |
425 | + processInstance.textColorTimeStatus = processInstance.timeManagementStatus === 'NOT_STARTED' ? "black" : "white"; | |
426 | + return DomainRepository.getEnumDescription(processInstance.timeManagementStatus, $scope.timeManagementStatus); | |
427 | + }else{ | |
428 | + return ""; | |
429 | + } | |
430 | + }; | |
431 | + | |
432 | +/* $scope.mostrarFilhos = function(categoriaSelecionada){ | |
433 | + | |
434 | + // Valida se a estrutura possui filho | |
435 | + if(categoriaSelecionada.sinalPositivo) { | |
436 | + categoriaSelecionada.sinalPositivo = !categoriaSelecionada.sinalPositivo; | |
437 | + | |
438 | + $scope.setLoadingPesquisa(true); | |
439 | + | |
440 | + categoriaSelecionada.subCategories = []; | |
441 | + | |
442 | + var categoria = categoriaSelecionada.originalElement ? categoriaSelecionada.originalElement : categoriaSelecionada; | |
443 | + | |
444 | + $scope.scrollToCadastro('#categoria_'+categoria.id); | |
445 | + | |
446 | + $scope.recuperaProcessos(categoria); | |
447 | + | |
448 | + // busca os filhos da estrutura selecionada | |
449 | + BusinessProcessCategoryRepository.findChildrens(categoria.id).then(function(result) { | |
450 | + // Percorre as estruturas filhas setando a propriedade do sinal positivo/negativo e adiciona o filho na lista de filhos da estrutura selecionada | |
451 | + angular.forEach(result, function(categoriaFilha){ | |
452 | + categoriaFilha.originalElement.sinalPositivo = categoriaFilha.originalElement.hasChildren || categoriaFilha.originalElement.hasProcesses; | |
453 | + categoriaSelecionada.subCategories.push(categoriaFilha.originalElement); | |
454 | + categoriaFilha.originalElement.subCategories = []; | |
455 | + //$scope.recuperaProcessos(categoriaFilha); | |
456 | + }); | |
457 | + $scope.setLoadingPesquisa(false); | |
458 | + }); | |
459 | + | |
460 | + } else { | |
461 | + | |
462 | + categoriaSelecionada.sinalPositivo = !categoriaSelecionada.sinalPositivo; | |
463 | + | |
464 | + categoriaSelecionada.subCategories = []; | |
465 | + | |
466 | + categoriaSelecionada.processos = []; | |
467 | + } | |
468 | + | |
469 | + };*/ | |
470 | + | |
471 | + $scope.recuperaProcessos = function(categoria) { | |
472 | + $scope.setLoadingPesquisa(true); | |
473 | + categoria.processos = []; | |
474 | + $scope.filterProcessos.filters[0].value = categoria.id; | |
475 | + BusinessProcessRepository.getProcessesForStart($scope.usuarioLogado.username, $scope.filterProcessos).then(function(result) { | |
476 | + categoria.processos = result.originalElement.objects; | |
477 | + }); | |
478 | + }; | |
479 | + | |
480 | + $scope.fetchResult(); | |
481 | +}]); | |
482 | + | |
483 | + | ... | ... |