Esempio n. 1
0
        public void CriarEntregaveisEmLote([FromBody] InputEntregavel entregavel)
        {
            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var bEntregavel = new bEntregavel(db);
                            bEntregavel.CriarEntregaveisEmLote(entregavel);

                            db.Database.CommitTransaction();
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "EntregavelController-CriarEntregaveisEmLote");

                            throw ex;
                        }
                    }
                });
            }
        }
Esempio n. 2
0
        public void SalvarEntregavel([FromBody] EntregavelDTO novoEntregavel)
        {
            using (var db = new FIPEContratosContext())
            {
                var strategy = db.Database.CreateExecutionStrategy();

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var bEntregavel = new bEntregavel(db);

                            if (novoEntregavel.Id == 0)
                            {
                                bEntregavel.CriarNovoEntregavel(novoEntregavel.Nome, novoEntregavel.DataPrevista, novoEntregavel.IdContrato, novoEntregavel.Frente.Id, novoEntregavel.Numero, novoEntregavel.Cliente.Id, novoEntregavel.Situacao.Id);
                            }
                            else
                            {
                                bEntregavel.AtualizarEntregavel(novoEntregavel);
                            }

                            db.Database.CommitTransaction();
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "EntregavelController-SalvarEntregavel");

                            throw ex;
                        }
                    }
                });
            }
        }
Esempio n. 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);
            }
        }
Esempio n. 4
0
        public List <EntregavelDTO> CarregarEntregaveisTemporaria(int idContrato)
        {
            var entregaveis = new List <EntregavelDTO>();

            using (var db = new FIPEContratosContext())
            {
                try
                {
                    var bEntregavel = new bEntregavel(db);
                    entregaveis = bEntregavel.ObterEntregaveisTemporaria(idContrato);
                }
                catch (Exception ex)
                {
                    new bEmail(db).EnviarEmailTratamentoErro(ex, "EntregavelController-CarregarEntregaveisTemporaria");


                    throw ex;
                }
                return(entregaveis);
            }
        }
Esempio n. 5
0
        public bool SalvarAlteracoesGridTemporaria([FromBody] EntregavelDTO[] entregaveisAlterados)
        {
            bool operacaoBemSucedida = false;

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

                strategy.Execute(() =>
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            var entregaveis = entregaveisAlterados.GroupBy(_ => _.Id).Select(_ => _.Last()).ToList();
                            var bEntregavel = new bEntregavel(db);

                            for (int i = 0; i < entregaveis.Count; i++)
                            {
                                bEntregavel.AtualizarEntregavelTemporaria(entregaveis[i]);
                            }

                            operacaoBemSucedida = true;

                            db.Database.CommitTransaction();
                        }
                        catch (Exception ex)
                        {
                            new bEmail(db).EnviarEmailTratamentoErro(ex, "EntregavelController-SalvarAlteracoesGridTemporaria");

                            throw ex;
                        }

                        return(operacaoBemSucedida);
                    }
                });
                return(operacaoBemSucedida);
            }
        }
Esempio n. 6
0
        public EntregavelDTO ConsultarEntregavelTemporaria(int idEntregavel)
        {
            var entregavel = new EntregavelDTO();

            using (var db = new FIPEContratosContext())
            {
                try
                {
                    var bEntregavel = new bEntregavel(db);
                    entregavel = bEntregavel.ConsultarEntregavelTemporaria(idEntregavel);
                }
                catch (Exception ex)
                {
                    new bEmail(db).EnviarEmailTratamentoErro(ex, "EntregavelController-ConsultarEntregavelTemporaria");


                    throw ex;
                }

                return(entregavel);
            }
        }
Esempio n. 7
0
        public List <EntregavelDTO> ObterEntregaveisPorIdTemporaria(int[] idsEntregaveis)
        {
            List <EntregavelDTO> entregaveis = new List <EntregavelDTO>();

            using (var db = new FIPEContratosContext())
            {
                try
                {
                    var bEntregavel = new bEntregavel(db);

                    foreach (int id in idsEntregaveis)
                    {
                        entregaveis.Add(bEntregavel.ConsultarEntregavelTemporaria(id));
                    }
                }
                catch (Exception ex)
                {
                    new bEmail(db).EnviarEmailTratamentoErro(ex, "EntregavelController-ObterEntregaveisPorIdTemporaria");
                    throw ex;
                }
            }

            return(entregaveis);
        }