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 @@ | @@ -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 | + |