示例#1
0
        private static void AdicionarPessoaFisica(InputAddPessoaFisica item, OutPutPessoaFisica retorno, PessoaFisica pessoaFisica, FIPEContratosContext db, PessoaFisica cpfCadastrado)
        {
            if (cpfCadastrado == null)
            {
                var objPessoaFisica = new bPessoaFisica(db);

                pessoaFisica.NmPessoa            = item.NmPessoa;
                pessoaFisica.NuCpf               = !String.IsNullOrEmpty(item.NuCpf) ? item.NuCpf : null;
                pessoaFisica.DtNascimento        = item.DtNascimento;
                pessoaFisica.CdSexo              = item.CdSexo;
                pessoaFisica.CdEmail             = item.CdEmail;
                pessoaFisica.NuCep               = item.NuCep;
                pessoaFisica.DsEndereco          = item.DsEndereco;
                pessoaFisica.NuEndereco          = item.NuEndereco;
                pessoaFisica.DsComplemento       = item.DsComplemento;
                pessoaFisica.NmBairro            = item.NmBairro;
                pessoaFisica.SgUf                = item.SgUf;
                pessoaFisica.IdCidade            = item.IdCidade;
                pessoaFisica.CdCvLattes          = item.CdCvLattes;
                pessoaFisica.CdLinkedIn          = item.CdLinkedIn;
                pessoaFisica.NuTelefoneComercial = item.NuTelefoneComercial;
                pessoaFisica.NuTelefoneFixo      = item.NuTelefoneFixo;
                pessoaFisica.NuCelular           = item.NuCelular;
                pessoaFisica.IdTipoVinculo       = item.IdTipoVinculo;
                pessoaFisica.DtCriacao           = DateTime.Now;
                pessoaFisica.IdUsuarioCriacao    = AppSettings.constGlobalUserID;

                db.PessoaFisica.Add(pessoaFisica);
                db.SaveChanges();

                var pessoa = new Pessoa();
                pessoa.IdPessoaFisica = pessoaFisica.IdPessoaFisica;

                db.Pessoa.Add(pessoa);
                db.SaveChanges();

                // Confirma operações
                db.Database.CommitTransaction();

                retorno.IdPessoaFisica = pessoaFisica.IdPessoaFisica;
                retorno.Result         = true;
            }
            else
            {
                retorno.Result        = false;
                retorno.CpfCadastrado = true;
            }
        }
示例#2
0
        public async Task <IActionResult> UpLoadCurriculo(int id)
        {
            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var files = Request.Form.Files;

                            var objPessoa = new bPessoaFisica(db).BuscarPessoaId(id);

                            if (files[0].Length > 0)
                            {
                                using (var ms = new MemoryStream())
                                {
                                    files[0].CopyTo(ms);

                                    var fileBytes = ms.ToArray();

                                    if (objPessoa != null)
                                    {
                                        objPessoa.NmCv = files[0].Name;
                                        objPessoa.DsCv = fileBytes;
                                    }
                                    else
                                    {
                                        var pessoaFisica = new PessoaFisica();

                                        pessoaFisica.NmCv = files[0].Name;
                                        pessoaFisica.DsCv = fileBytes;
                                    }
                                }
                            }

                            db.SaveChanges();

                            // Confirma operações
                            db.Database.CommitTransaction();

                            return(Ok());
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "PessoaFisicaController-UpLoadCurriculo");
                            throw;
                        }
                    }
                });
                return(Ok());
            }
        }
示例#3
0
        Task IJob.Execute(IJobExecutionContext context)
        {
            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var listaEntregaveis = new bEntregavel(db).ObterTodosEntregaiveis();
                            var listaParcelas    = new bParcela(db).ObterTodasParcelas();

                            foreach (var entregavel in listaEntregaveis)
                            {
                                if (DateTime.Now.Date > entregavel.DtProduto)
                                {
                                    if (entregavel.IdSituacao != 89 && entregavel.IdSituacao != 90 && entregavel.IdSituacao != 91)
                                    {
                                        entregavel.IcAtraso = true;
                                        if (entregavel.IdSituacao == 56)
                                        {
                                            entregavel.IdSituacao = 68;
                                        }
                                    }
                                }
                            }

                            foreach (var parcela in listaParcelas)
                            {
                                if (DateTime.Now.Date > parcela.DtFaturamento && parcela.IdSituacao == 92)
                                {
                                    parcela.IdSituacao = 93;
                                    parcela.IcAtraso   = true;
                                }
                            }

                            db.SaveChanges();
                            db.Database.CommitTransaction();
                        }
                        catch (Exception ex)
                        {
                        }
                    }

                    return(Task.CompletedTask);
                });

                return(Task.CompletedTask);
            }
        }
示例#4
0
        public OutPutPessoaFisica AtualizarPessoaFisica([FromBody] InputUpdatePessoaFisica item)
        {
            var retorno = new OutPutPessoaFisica();

            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            PessoaFisica cpfCadastrado = null;
                            if (!String.IsNullOrEmpty(item.NuCpf))
                            {
                                cpfCadastrado = new PessoaFisica();
                                string cpf    = Regex.Replace(item.NuCpf, "[^0-9a-zA-Z]+", "");
                                cpfCadastrado = new bPessoaFisica(db).VerificaCPFCadastrado(cpf, item.IdPessoaFisica);
                                UpdatePessoaFisica(item, retorno, db, cpfCadastrado);
                            }
                            else
                            {
                                UpdatePessoaFisica(item, retorno, db, cpfCadastrado);
                            }
                            // Confirma operações
                            db.SaveChanges();
                            db.Database.CommitTransaction();
                        }
                        catch (Exception ex)
                        {
                            if (ex.InnerException.Message.Contains("UQ_PessoaFisicaCPF"))
                            {
                                retorno.CpfCadastrado = true;
                            }
                            else
                            {
                                new bEmail(db).EnviarEmailTratamentoErro(ex, "PessoaFisicaController-AtualizarPessoaFisica");
                            }
                        }
                    }
                });
            }

            return(retorno);
        }
        public bool SalvarTotaisEquipeTecnica([FromBody] InputTotaisEquipeTecnica item)
        {
            var retorno = false;

            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            // Inicia transação
                            var contrato            = db.Contrato.Where(w => w.IdContrato == item.IdContrato).FirstOrDefault();
                            contrato.VlCustoProjeto = item.VlCustoProjeto;
                            contrato.VlOutrosCustos = item.VlOutrosCustos;
                            contrato.VlOverhead     = item.VlOverHead;
                            contrato.VlDiferenca    = item.VlDiferenca;

                            db.SaveChanges();
                            // Confirma operações
                            db.Database.CommitTransaction();

                            retorno = true;

                            return(retorno);
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "ContratoEquipeTecnicaController-SalvarTotaisEquipeTecnica");
                            retorno = false;
                        }

                        return(retorno);
                    }
                });
                return(retorno);
            }
        }
示例#6
0
        public OutPutExcluiCurriculo ExcluiCurriculo(int id)
        {
            var retorno = new OutPutExcluiCurriculo();

            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var objPessoa = new bPessoaFisica(db).BuscarPessoaId(id);

                            objPessoa.NmCv = null;
                            objPessoa.DsCv = null;

                            db.SaveChanges();

                            // Confirma operações
                            db.Database.CommitTransaction();
                            retorno.Result = true;
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "PessoaFisicaController-ExcluiCurriculo");

                            throw;
                        }
                        return(retorno);
                    }
                });
                return(retorno);
            }
        }
        public List <OutPutGridGetFrente> ListaFrenteIdContrato(int id)
        {
            using (var db = new FIPEContratosContext())
            {
                var listaFrentes = new List <OutPutGridGetFrente>();
                var strategy     = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var frentes = new bFrente(db).BuscaFrenteIdContrato(id);

                            if (frentes.Count > 0)
                            {
                                foreach (var f in frentes)
                                {
                                    var frente = new OutPutGridGetFrente();

                                    frente.IdFrente      = f.IdFrente;
                                    frente.NmFrente      = f.NmFrente;
                                    frente.CdFrenteTexto = f.CdFrenteTexto;
                                    frente.CdFrente      = f.CdFrente;

                                    var lstFrenteCoord = new bFrenteCoordenador(db).BuscaFrenteCoordenadorIdFrente(f.IdFrente);
                                    if (lstFrenteCoord.Count > 0)
                                    {
                                        frente.coordenadores = new List <OutPutGetFrentePessoaFisica>();
                                        foreach (var frenteCoordenador in lstFrenteCoord)
                                        {
                                            var pessoaFisica             = new bPessoaFisica(db).BuscarPessoaId(frenteCoordenador.IdPessoaFisica);
                                            var pessoaFisicaRetorno      = new OutPutGetFrentePessoaFisica();
                                            pessoaFisicaRetorno.IdPessoa = pessoaFisica.IdPessoaFisica;
                                            pessoaFisicaRetorno.NmPessoa = pessoaFisica.NmPessoa;

                                            frente.coordenadoresTexto += " " + pessoaFisica.NmPessoa;
                                            frente.coordenadores.Add(pessoaFisicaRetorno);
                                        }
                                    }

                                    listaFrentes.Add(frente);
                                }
                            }
                            else
                            {
                                var contrato = new bContrato(db).GetContratoById(id);

                                if (contrato.IcFrenteUnica != null)
                                {
                                    if (contrato.IcFrenteUnica.Value)
                                    {
                                        var frente = new OutPutGridGetFrente();

                                        var f = new Frente();

                                        f.NmFrente      = "Frente 01";
                                        f.IdContrato    = id;
                                        f.CdFrente      = 1;
                                        f.CdFrenteTexto = "01";

                                        db.Frente.Add(f);
                                        db.SaveChanges();

                                        var coordenadoresContrato = new bContratoCoordenador(db).BuscarCoordenador(id);
                                        foreach (var coordContrato in coordenadoresContrato)
                                        {
                                            var inputAddFrenteCoordenador      = new InputAddFrenteCoordenador();
                                            inputAddFrenteCoordenador.IdFrente = f.IdFrente;
                                            inputAddFrenteCoordenador.IdPessoa = coordContrato.IdPessoa;

                                            new bFrenteCoordenador(db).AddFrenteCoordenador(inputAddFrenteCoordenador);
                                        }
                                        db.Database.CommitTransaction();

                                        frente.IdFrente      = f.IdFrente;
                                        frente.NmFrente      = f.NmFrente;
                                        frente.CdFrenteTexto = f.CdFrenteTexto;
                                        frente.CdFrente      = f.CdFrente;

                                        var lstFrenteCoord = new bFrenteCoordenador(db).BuscaFrenteCoordenadorIdFrente(f.IdFrente);
                                        if (lstFrenteCoord.Count > 0)
                                        {
                                            frente.coordenadores = new List <OutPutGetFrentePessoaFisica>();
                                            foreach (var frenteCoordenador in lstFrenteCoord)
                                            {
                                                var pessoaFisica             = new bPessoaFisica(db).BuscarPessoaId(frenteCoordenador.IdPessoaFisica);
                                                var pessoaFisicaRetorno      = new OutPutGetFrentePessoaFisica();
                                                pessoaFisicaRetorno.IdPessoa = pessoaFisica.IdPessoaFisica;
                                                pessoaFisicaRetorno.NmPessoa = pessoaFisica.NmPessoa;

                                                frente.coordenadoresTexto += " " + pessoaFisica.NmPessoa;
                                                frente.coordenadores.Add(pessoaFisicaRetorno);
                                            }
                                        }

                                        listaFrentes.Add(frente);
                                    }
                                }
                            }

                            return(listaFrentes);
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "FrenteController-ListaFrenteIdContrato");

                            throw;
                        }
                    }
                });
                return(listaFrentes);
            }
        }
示例#8
0
        public OutputAuth Auth([FromBody] InputAuth auth)
        {
            var retorno = new OutputAuth();

            using (var db = new FIPEContratosContext())
            {
                try
                {
                    if (auth.ResetSenha == true)
                    {
                        var login = db.Usuario.Where(w => w.DsLogin == auth.DsLogin).FirstOrDefault();

                        if (login != null)
                        {
                            // envio de email recuperação de senha
                            var nomePessoa = db.PessoaFisica.Where(w => w.IdPessoaFisica == login.IdPessoa).FirstOrDefault().NmPessoa;
                            var texto      = db.EmailConfigurado.Where(w => w.DsTitulo == "Recuperação de Senha").FirstOrDefault().DsTexto;
                            var corpoEmail = String.Format(texto, nomePessoa, auth.Url + login.NrToken);

                            byte[] anexo = null;
                            new bEmail(db).EnviarEmail(login.DsLogin, nomePessoa, "Recuperação de Senha", corpoEmail, anexo, "");

                            retorno.ResetSenha = true;
                        }
                        else
                        {
                            retorno.ResetSenha = false;
                        }
                        _GLog._GravaLog(login.IdUsuario, "Senha resetada de [" + login.DsLogin + "]");
                        return(retorno);
                    }
                    else
                    {
                        var usuario = new bUsuario(db).Auth(auth.DsLogin, Codificar(auth.CdSenha));

                        if (usuario != null)
                        {
                            var perfilUsuario = db.PerfilUsuario.Where(w => w.IdUsuario == usuario.IdUsuario).FirstOrDefault();
                            var perfil        = db.Perfil.Where(w => w.IdPerfil == perfilUsuario.IdPerfil).OrderBy(x => x.IdPerfil).FirstOrDefault();
                            var nUsuario      = db.PessoaFisica.Where(w => w.IdPessoaFisica == usuario.IdPessoa).FirstOrDefault();

                            usuario.NrToken = Guid.NewGuid();

                            db.SaveChanges();

                            retorno.Result         = true;
                            retorno.PrimeiroAcesso = false;
                            retorno.IdUsuario      = usuario.IdUsuario;
                            retorno.IdPessoa       = usuario.IdPessoa;
                            retorno.DsLogin        = usuario.DsLogin;
                            retorno.PerfilUsuario  = "";
                            retorno.NomeUsuario    = nUsuario.NmPessoa;
                            retorno.NrToken        = usuario.NrToken.ToString();
                            _GLog._GravaLog(usuario.IdUsuario, "Usuario [" + usuario.IdUsuario + "-" + usuario.DsLogin + "] conectado no sistema");
                        }
                        else
                        {
                            retorno.Result = false;
                        }
                    }
                }
                catch (Exception ex)
                {
                    new bEmail(db).EnviarEmailTratamentoErro(ex, "LoginController-Auth");


                    retorno.Result = false;
                }

                return(retorno);
            }
        }
        public OutPutPessoaJuridica AddPessoaJuridica([FromBody] InputAddPessoaJuridica item)
        {
            var retorno        = new OutPutPessoaJuridica();
            var pessoaJuridica = new PessoaJuridica();

            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            retorno.CNPJExiste       = false;
                            retorno.IdPessoaJuridica = 0;

                            var objPessoaJuridica = new bPessoaJuridica(db);
                            PessoaJuridica pessoaJuridicaExiste = null;
                            if (!String.IsNullOrEmpty(item.Cnpj))
                            {
                                pessoaJuridicaExiste = db.PessoaJuridica.Where(w => w.Cnpj == item.Cnpj).FirstOrDefault();
                            }
                            else
                            {
                                item.Cnpj = null;
                            }
                            if (pessoaJuridicaExiste == null)
                            {
                                pessoaJuridica.NmFantasia             = item.NmFantasia;
                                pessoaJuridica.RazaoSocial            = item.RazaoSocial;
                                pessoaJuridica.Cnpj                   = item.Cnpj;
                                pessoaJuridica.Cep                    = item.Cep;
                                pessoaJuridica.Uf                     = item.Uf;
                                pessoaJuridica.IdCidade               = item.IdCidade;
                                pessoaJuridica.Endereco               = item.Endereco;
                                pessoaJuridica.IdClassificacaoEmpresa = item.IdClassificacaoEmpresa;
                                pessoaJuridica.IdEsferaEmpresa        = item.IdEsferaEmpresa;
                                pessoaJuridica.NmBairro               = item.NmBairro;
                                pessoaJuridica.IdTipoAdministracao    = item.IdTipoAdministracao;
                                pessoaJuridica.IdEntidade             = item.IdEntidade;
                                pessoaJuridica.NuEndereco             = item.NuEndereco;
                                pessoaJuridica.Complemento            = item.Complemento;
                                pessoaJuridica.DtCriacao              = DateTime.Now;
                                pessoaJuridica.IdUsuarioCriacao       = AppSettings.constGlobalUserID;

                                if (item.IdClassificacaoEmpresa != 3)
                                {
                                    pessoaJuridica.IdPais = 76;
                                }
                                else
                                {
                                    pessoaJuridica.IdPais          = item.IdPais;
                                    pessoaJuridica.DsInternacional = item.DsInternacional;
                                }

                                db.PessoaJuridica.Add(pessoaJuridica);
                                db.SaveChanges();

                                var pessoa = new Pessoa();
                                pessoa.IdPessoaJuridica = pessoaJuridica.IdPessoaJuridica;

                                retorno.IdPessoaJuridica = pessoaJuridica.IdPessoaJuridica;

                                db.Pessoa.Add(pessoa);
                                db.SaveChanges();

                                db.Database.CommitTransaction();

                                retorno.Result = true;
                            }
                            else
                            {
                                retorno.CNPJExiste = true;
                                retorno.Result     = false;
                            }
                        }
                        catch (Exception ex)
                        {
                            if (ex.InnerException.Message.Contains("UQ_PessoaJuridicaCNPJ"))
                            {
                                retorno.Result     = false;
                                retorno.CNPJExiste = true;
                            }
                            else
                            {
                                new bEmail(db).EnviarEmailTratamentoErro(ex, "PessoaJuridicaController-AddPessoaJuridica");
                            }
                        }
                    }
                });

                return(retorno);
            }
        }