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; } } }); } }
public void AtualizarEntregavelTemporaria(EntregavelDTO entregavel_) { ContratoEntregavelTemporaria entregavel = db.ContratoEntregavelTemporaria.Where(_ => _.IdContratoEntregavel == entregavel_.Id)?.FirstOrDefault(); if (entregavel != null) { entregavel.DsProduto = entregavel_.Nome; entregavel.DtProduto = entregavel_.DataPrevista; entregavel.IdFrente = entregavel_.Frente.Id; entregavel.IdSituacao = entregavel_.Situacao.Id; if (entregavel_.Situacao.Id == 89 || entregavel_.Situacao.Id == 90 || entregavel_.Situacao.Id == 91) { entregavel.IdSituacao = entregavel_.Situacao.Id; entregavel.IcAtraso = false; } else { if (entregavel_.DataPrevista != null) { if (entregavel_.DataPrevista.Value.Date < DateTime.Now.Date) { entregavel.IdSituacao = 68; entregavel.IcAtraso = true; } else { if (entregavel_.Situacao.Id == 68 || entregavel_.Situacao.Id == 97) { entregavel.IdSituacao = 56; entregavel.IcAtraso = false; } else { entregavel.IdSituacao = entregavel_.Situacao.Id; entregavel.IcAtraso = false; } } } else { entregavel.IdSituacao = entregavel_.Situacao.Id; entregavel.IcAtraso = false; } } entregavel.VlOrdem = entregavel_.Numero; entregavel.IdContratoCliente = entregavel_.Cliente.Id; db.SaveChanges(); } }
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); } }