Esempio n. 1
0
        public async Task <ParteEnvolvimento> SalvarParteDoProcesso(PoloViewModel polo, Guid userGuid)
        {
            ParteEnvolvimento envolvimento = MontarObjeto(polo);
            var result = new ParteEnvolvimento();

            try
            {
                if (envolvimento.ParteExiste())
                {
                    await _envolvimentoRepositorio.AtualizarEnvolvido(envolvimento);

                    return(result);
                }
                else
                {
                    result = await _envolvimentoRepositorio.CadastrarEnvolvimento(envolvimento, userGuid);

                    return(result);
                }
            }
            catch (Exception ex)
            {
                //loggar erro
                throw;
            }
        }
Esempio n. 2
0
        public async Task IncluirParteDoProcesso(Guid guid, PoloViewModel polo)
        {
            //PODE ALTERAR ESSE METODO
            ParteEnvolvimento envolvimento = _mapper.Map <ParteEnvolvimento>(polo);

            try
            {
                List <Cliente> clientes;
                if (envolvimento.Parte?.IdCliente > 0)
                {
                    //int[] ids = new List<int>() { (int)envolvimento.Parte.IdCliente }.ToArray<int>();
                    clientes = await _clienteService.ListarClientesPorIdEscritorio(guid);

                    Cliente cliente = clientes.FirstOrDefault(x => x.Id == envolvimento.Parte.IdCliente);

                    envolvimento.Parte.Nome  = cliente.Nome;
                    envolvimento.Parte.Cpf   = cliente.CPF_CNJP;
                    envolvimento.Parte.Email = cliente.Email;
                }
                //verificar se ja existe cliente e/ou funcionario cadastrado como parte
                //if (envolvimento.Parte.CriadoNoCadastroExterno())
                //{
                await _envolvimentoRepositorio.CadastrarEnvolvimento(envolvimento, guid);

                //}
            }
            catch (Exception)
            {
                throw new Exception("Erro ao criar cliente como envolvido, contate o suporte.");
            }
        }
        public async Task <ParteEnvolvimento> CadastrarEnvolvimento(ParteEnvolvimento envolvimento, Guid userGuid)
        {
            using (var dbContext = _fabricaDeContextos.CriaContextoDe <CadastroExternoContext>(TipoDeConexao.PreCadastro))
            {
                _logger.Information("Cadastrar Envolvimento iniciado - Envolvimento->  {@ParteEnvolvimento}", envolvimento);

                ParteEnvolvimentoBD envolvimentoBD = _mapper.Map <ParteEnvolvimentoBD>(envolvimento);

                _logger.Information(" Mapper Envolvimento ok - Envolvimento->  {@ParteEnvolvimentoBD}", envolvimentoBD);

                await dbContext.Envolvimentos.AddAsync(envolvimentoBD);

                dbContext.SaveUserGuidForLog(userGuid);
                await dbContext.SaveChangesAsync();

                ParteEnvolvimentoBD response = dbContext.Envolvimentos.LastOrDefault();


                _logger.Information("Cadastrar Envolvimento ok - Envolvimento->  {@ParteEnvolvimentoBD}", response);

                //ParteEnvolvimento retorno = _mapper.Map<ParteEnvolvimento>(response);
                ParteEnvolvimento retorno = response.Converter();

                return(retorno);
            }
        }
        public async Task AtualizarEnvolvido(ParteEnvolvimento parte)
        {
            using (var dbContext = _fabricaDeContextos.CriaContextoDe <CadastroExternoContext>(TipoDeConexao.PreCadastro))
            {
                int idEnvolvimento = Convert.ToInt32(parte.Envolvimento);

                await AtualizarEnvolvimento(parte.IdProcesso, parte.IdParte, idEnvolvimento);

                dbContext.Envolvimentos.UpdateRange(_mapper.Map <ParteEnvolvimentoBD>(parte));
                dbContext.Update(parte);
                await dbContext.SaveChangesAsync();
            }
        }
        public async Task IncluirParteDoProcesso(Guid guid, PoloViewModel polo)
        {
            _logger.Information("IncluirParteDoProcesso iniciado - Envolvimento->  {@ParteEnvolvimento}");

            ParteEnvolvimento envolvimento = _mapper.Map <ParteEnvolvimento>(polo);

            try
            {
                List <Cliente> clientes;
                if (envolvimento.Parte?.IdCliente > 0)
                {
                    _logger.Information("IncluirParteDoProcesso IF iniciado - Envolvimento->  {@ParteEnvolvimento}", envolvimento);

                    //int[] ids = new List<int>() { (int)envolvimento.Parte.IdCliente }.ToArray<int>();
                    clientes = await _clienteService.ListarClientesPorIdEscritorio(guid);

                    Cliente cliente = clientes.FirstOrDefault(x => x.Id == envolvimento.Parte.IdCliente);

                    _logger.Information("IncluirParteDoProcesso - cliente->  {@Cliente}", cliente);

                    if (cliente.Tipo == Domain.ViewModels.enums.TipoCliente.PessoaFisica)
                    {
                        envolvimento.Parte.Nome  = cliente.Nome;
                        envolvimento.Parte.Cpf   = cliente.CPF_CNJP;
                        envolvimento.Parte.Email = cliente.Email;
                    }
                    else if (cliente.Tipo == Domain.ViewModels.enums.TipoCliente.PessoaJuridica)
                    {
                        envolvimento.Parte.Nome  = cliente.Nome;
                        envolvimento.Parte.Cnpj  = cliente.CPF_CNJP;
                        envolvimento.Parte.Email = cliente.Email;
                    }
                    else
                    {
                        envolvimento.Parte.Nome  = cliente.Nome;
                        envolvimento.Parte.Cnpj  = "";
                        envolvimento.Parte.Email = "";
                    }
                }
                //verificar se ja existe cliente e/ou funcionario cadastrado como parte
                //if (envolvimento.Parte.CriadoNoCadastroExterno())
                //{
                await _envolvimentoRepositorio.CadastrarEnvolvimento(envolvimento, guid);

                //}
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao criar cliente como envolvido.");
            }
        }
        internal ParteEnvolvimento Converter()
        {
            ParteEnvolvimento parteEnvolvimento = new ParteEnvolvimento
            {
                Envolvimento = this.Envolvimento,
                Id           = this.Id,
                IdParte      = this.IdParte,
                IdProcesso   = this.IdProcesso,
                Parte        = this.Parte.ConverterParaModelo(),
                Principal    = this.Principal,
                //Processo = this.Processo.ConverterParaModelo()
            };

            return(parteEnvolvimento);
        }
Esempio n. 7
0
        public async Task Envolvimento_SalvarParteDoProcesso_Deve_Falhar_Se_Parte_Id_Menor_Que_Zero(PoloViewModel polo)
        {
            var pe = new ParteEnvolvimento
            {
                Parte = new Domain.Models.Processo.Parte
                {
                    Id             = (int)polo.IdParte,
                    IdCliente      = polo.IdCliente,
                    IdProfissional = polo.IdProfissional
                },
                IdParte = (int)polo.IdParte
            };

            Assert.GreaterOrEqual(pe.Parte.Id, 0);
            Assert.GreaterOrEqual(pe.Parte.IdCliente, 0);
            Assert.GreaterOrEqual(pe.Parte.IdProfissional, 0);

            var guid = Guid.NewGuid();

            _envolvimentoService.Setup(x => x.SalvarParteDoProcesso(polo, guid)).Returns(Task.FromResult(pe));
            var result = await _envolvimentoService.Object.SalvarParteDoProcesso(polo, guid);

            Assert.GreaterOrEqual(result.IdParte, 0);
        }
        public async Task <PoloViewModel> ObterPoloCadastrado(int id)
        {
            ParteEnvolvimento polo = await _envolvimentoRepositorio.ObterPolo(id);

            return(_mapper.Map <PoloViewModel>(polo));
        }