Ejemplo n.º 1
0
        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()));
            }
        }
Ejemplo n.º 2
0
        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));
            }
        }
Ejemplo n.º 3
0
        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"));
        }