Beispiel #1
0
        public async Task <PrazoViewModel> ObterPrazo(Guid userGuid, int?prazoId, int?casoId)
        {
            PrazoViewModel vm = new PrazoViewModel();

            Prazo prazo = new Prazo();

            if (prazoId.HasValue && prazoId.Value > 0)
            {
                prazo = await _prazoRepositorio.Obter(prazoId.Value);
            }
            if (casoId.HasValue && casoId.Value > 0)
            {
                prazo.IdProcesso = casoId.Value;
            }

            vm = _mapper.Map <PrazoViewModel>(prazo);

            vm.HoraAtividade = prazo.DataCompromisso;
            if (prazo.IdProcesso.HasValue && prazo.IdProcesso > 0)
            {
                ProcessoBase caso = await _processoRepositorio.Obter(prazo.IdProcesso.Value);

                vm.Processo = string.IsNullOrEmpty(caso.Titulo) ? "Caso sem título. Cliente: " + caso.ClienteNome : caso.Titulo;
            }

            int?idTituloPai = null;

            if (prazo.IdPai.HasValue && prazo.IdPai.Value > 0)
            {
                Prazo pai = await _prazoRepositorio.Obter(prazo.IdPai.Value);

                idTituloPai = pai.IdTituloCobranca;
            }
            if (!casoId.HasValue || casoId.Value < 1)
            {
                try
                {
                    vm.PossiveisClientesDefinitivos = await _clienteService.ListarClientes(userGuid);
                }
                catch (Exception ex)
                {
                    throw new MemberAccessException("Sessão expirada");
                }
            }
            var taskExecutores    = _executorService.ListaPossiveisExecutores(userGuid, Domain.Models.TipoDeTarefaEnum.Prazo);
            var taskParticipantes = _profissionalService.ListarProfissionais(userGuid);
            var taskCategorias    = _categoriaDeProfissioalService.Lista(userGuid);
            var taskTitulos       = _tituloCobrancaService.ListaAsync(userGuid, Domain.Models.TipoDeTarefaEnum.Prazo, idTituloPai);

            await Task.WhenAll(taskExecutores, taskParticipantes, taskCategorias, taskTitulos);

            vm.PossiveisExecutores      = taskExecutores.Result;
            vm.TodosPossiveisExecutores = taskExecutores.Result;
            vm.PossiveisParticipantes   = taskParticipantes.Result;
            vm.PossiveisCategorias      = taskCategorias.Result;
            vm.PossiveisTitulos         = taskTitulos.Result;

            return(vm);
        }
Beispiel #2
0
        public async Task <AudienciaViewModel> ObterAudiencia(Guid userGuid, int?audienciaId, int?idCaso)
        {
            AudienciaViewModel  vm           = new AudienciaViewModel();
            HierarquiaViewModel hierarquiaVM = new HierarquiaViewModel();

            Audiencia audiencia = new Audiencia();

            if (audienciaId.HasValue && audienciaId.Value > 0)
            {
                audiencia = await _audienciaRepositorio.Obter(audienciaId.Value);
            }
            if (idCaso.HasValue && idCaso.Value > 0)
            {
                audiencia.IdProcesso = idCaso.Value;
            }

            vm = _mapper.Map <AudienciaViewModel>(audiencia);

            vm.HoraAtividade = audiencia.DataAtividade;

            if (audiencia.IdProcesso.HasValue && audiencia.IdProcesso > 0)
            {
                ProcessoBase caso = await _processoRepositorio.Obter(audiencia.IdProcesso.Value);

                vm.Processo             = string.IsNullOrEmpty(caso.Titulo) ? "Caso sem título. Cliente: " + caso.ClienteNome : caso.Titulo;
                vm.TipoDoCaso           = caso.Tipo;
                vm.ForoDoCaso           = caso.ForoHierarquia;
                hierarquiaVM.ProcessoId = caso.Id;
                vm.IDForoDoCaso         = caso.IdForoVara;
                vm.LocalAudiencia       = caso.ForoHierarquia;
            }

            //if (audiencia.IdForo.HasValue && audiencia.IdForo.Value > 0)
            //{
            //    GrupoForo grupoForoSelecionado = await _hierarquiaService.ObtemPorForo(userGuid, audiencia.IdForo.Value);
            //    vm.IdForo = audiencia.IdForo;
            //    vm.IdGrupoFamilia = (int)grupoForoSelecionado.Instancia;
            //    vm.IdGrupoForo = grupoForoSelecionado.IdGrupoPai > 0 ? grupoForoSelecionado.IdGrupoPai : grupoForoSelecionado.Id;
            //    vm.Regiao = grupoForoSelecionado.Regiao;
            //    vm.UF = grupoForoSelecionado.UF;
            //}

            if (!idCaso.HasValue || idCaso.Value < 1)
            {
                vm.PossiveisClientesDefinitivos = await _clienteService.ListarClientes(userGuid);
            }

            var taskExecutores    = _executorService.ListaPossiveisExecutores(userGuid, Domain.Models.TipoDeTarefaEnum.Audiencia);
            var taskParticipantes = _profissionalService.ListarProfissionais(userGuid);
            var taskCategorias    = _categoriaDeProfissioalService.Lista(userGuid);
            int?idTituloPai       = null;

            if (audiencia.IdPai.HasValue && audiencia.IdPai > 0)
            {
                Audiencia pai = await _audienciaRepositorio.Obter(audiencia.IdPai.Value);

                idTituloPai = pai.IdTituloCobranca;
            }

            var taskTitulos = _tituloCobrancaService.ListaAsync(userGuid, Domain.Models.TipoDeTarefaEnum.Audiencia, idTituloPai);

            await Task.WhenAll(taskExecutores, taskParticipantes, taskCategorias, taskTitulos);

            vm.PossiveisExecutores      = taskExecutores.Result;
            vm.TodosPossiveisExecutores = taskExecutores.Result;
            vm.PossiveisParticipantes   = taskParticipantes.Result;
            vm.PossiveisCategorias      = taskCategorias.Result;
            vm.PossiveisTitulos         = taskTitulos.Result;

            return(vm);
        }