public HttpResponseMessage Atualizar(HttpRequestMessage request, MembroDemandaViewModel membroDemandaViewModel) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; if (!ModelState.IsValid) { response = request.CreateResponse(HttpStatusCode.BadRequest, ModelState.Keys.SelectMany(k => ModelState[k].Errors) .Select(m => m.ErrorMessage).ToArray()); } else { MembroDemanda _membroDemanda = _membroDemandaRep.GetSingle(membroDemandaViewModel.Id); Usuario usuario = _usuarioRep.GetSingle(int.Parse(HttpContext.Current.User.Identity.GetUserId())); _membroDemanda.AtualizarMembroDemanda(membroDemandaViewModel, usuario); _unitOfWork.Commit(); // Update view model membroDemandaViewModel = Mapper.Map <MembroDemanda, MembroDemandaViewModel>(_membroDemanda); response = request.CreateResponse(HttpStatusCode.OK, membroDemandaViewModel); //TODO: Verificar se deve enviar e-mail ao cadastrar demanda. //_utilService.MembroInserirUsuarioEnviarEmail(membroDemandaViewModel.Id, usuario.Id); } return response; })); }
public static void AtualizarMembroDemanda(this MembroDemanda membroDemanda, MembroDemandaViewModel membroDemandaVm, Usuario usuario) { membroDemanda.UsuarioAlteracao = usuario; membroDemanda.SubCategoriaId = membroDemandaVm.SubCategoriaId; membroDemanda.UnidadeMedidaId = membroDemandaVm.UnidadeMedidaId; membroDemanda.PeriodicidadeId = membroDemandaVm.PeriodicidadeId; membroDemanda.Quantidade = membroDemandaVm.Quantidade; membroDemanda.Observacao = membroDemandaVm.Observacao; membroDemanda.Ativo = membroDemandaVm.Ativo; }
public HttpResponseMessage Inserir(HttpRequestMessage request, MembroDemandaViewModel membroDemandaViewModel) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; if (ModelState.IsValid) { Usuario usuario = _usuarioRep.GetSingle(int.Parse(HttpContext.Current.User.Identity.GetUserId())); MembroDemanda novoMembroDemanda = new MembroDemanda() { MembroId = membroDemandaViewModel.MembroId, UsuarioCriacao = usuario, DtCriacao = DateTime.Now, PeriodicidadeId = membroDemandaViewModel.PeriodicidadeId, UnidadeMedidaId = membroDemandaViewModel.UnidadeMedidaId, SubCategoriaId = membroDemandaViewModel.SubCategoriaId, Quantidade = membroDemandaViewModel.Quantidade, Observacao = membroDemandaViewModel.Observacao, Ativo = membroDemandaViewModel.Ativo }; _membroDemandaRep.Add(novoMembroDemanda); _unitOfWork.Commit(); // Update view model membroDemandaViewModel = Mapper.Map <MembroDemanda, MembroDemandaViewModel>(novoMembroDemanda); response = request.CreateResponse(HttpStatusCode.Created, membroDemandaViewModel); } else { response = request.CreateResponse(HttpStatusCode.BadRequest, ModelState.Keys.SelectMany(k => ModelState[k].Errors) .Select(m => m.ErrorMessage).ToArray()); } return response; })); }