public void UpdateStatus(StatusPagamentoEnum status) { if (status == StatusPagamentoEnum.AGUARDANDO_PAGAMENTO && !(Id > 0)) { Status = StatusPagamentoEnum.AGUARDANDO_PAGAMENTO; } else if (status == StatusPagamentoEnum.PAGAMENTO_APROVADO && Status == StatusPagamentoEnum.AGUARDANDO_PAGAMENTO) { Status = StatusPagamentoEnum.PAGAMENTO_APROVADO; } else if (status == StatusPagamentoEnum.ENVIADO_PARA_TRANSPORTADORA && Status == StatusPagamentoEnum.PAGAMENTO_APROVADO) { Status = StatusPagamentoEnum.ENVIADO_PARA_TRANSPORTADORA; } else if (status == StatusPagamentoEnum.ENTREGUE && Status == StatusPagamentoEnum.ENVIADO_PARA_TRANSPORTADORA) { Status = StatusPagamentoEnum.ENTREGUE; } else if (status == StatusPagamentoEnum.CANCELADA && (Status == StatusPagamentoEnum.AGUARDANDO_PAGAMENTO || Status == StatusPagamentoEnum.PAGAMENTO_APROVADO)) { Status = StatusPagamentoEnum.CANCELADA; } else { Notificacoes.Add("Status inválido"); } }
public string UpdateVenda(int idVenda, StatusPagamentoEnum status) { try { var venda = _contexto.Vendas.FirstOrDefault(venda => venda.Id == idVenda); venda.UpdateStatus(status); if (venda == null || (venda != null && venda.Invalido)) { return("Não foi possível se comunicar com a base de dados!"); } venda.Status = status; _contexto.Entry(venda).State = Microsoft.EntityFrameworkCore.EntityState.Modified; _contexto.SaveChanges(); return("OK"); } catch (Exception) { return("Não foi possível se comunicar com a base de dados!"); } }