public HttpResponseMessage Post(PROPOSTA_SERVICO obj) { try { Validate(obj); if (!ModelState.IsValid) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } var domain = ctx.Oferta.First(f => f.ID_SERVICO == obj.ID_SERVICO); domain.AceitarOferta(); ctx.Entry(domain).State = EntityState.Modified; var proposta = new PROPOSTA_SERVICO(obj.ID_SERVICO, obj.ID_USUARIO, obj.VL_PROPOSTA, obj.JUSTIFICATIVA, obj.DURACAO_SERVICO, obj.VALOR_DURACAO_SERVICO); ctx.Proposta.Add(proposta); ctx.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.Created)); } catch (Exception ex) { return(Request.CreateResponse(HttpStatusCode.BadRequest, ex.TratarMensagem())); } }
public ActionResult Create(PropostaViewModel obj, Guid id) { try { var servico = ctx.Servico.Find(id); if (servico.PUBLICO == false) { var domain = ctx.Oferta.First(f => f.ID_SERVICO == id); domain.AceitarOferta(); ctx.Entry(domain).State = EntityState.Modified; MoedaHelper.Movimentar(ctx, idUsuarioLogado, -100, "PROPOSTA EFETUADA"); } var prop = new PROPOSTA_SERVICO(id, idUsuarioLogado, obj.VL_PROPOSTA, obj.JUSTIFICATIVA, obj.DURACAO_SERVICO, obj.VALOR_DURACAO_SERVICO); ctx.Proposta.Add(prop); ctx.SaveChanges(); return(RedirectToAction("../Home/Index")); } catch (Exception ex) { ModelState.AddModelError("", ex.TratarMensagem()); return(View(obj)); } }
public ActionResult Aceitar(PropostaViewModel obj, Guid id) { var domain = ctx.Oferta.First(f => f.ID_SERVICO == id); domain.AceitarOferta(); ctx.Entry(domain).State = EntityState.Modified; var proposta = new PROPOSTA_SERVICO(id, User.Identity.GetId(), obj.VL_PROPOSTA, obj.JUSTIFICATIVA, obj.DURACAO_SERVICO, obj.VALOR_DURACAO_SERVICO); ctx.Proposta.Add(proposta); ctx.SaveChanges(); return(RedirectToAction("Index")); }