public HttpResponseMessage Atualizar(HttpRequestMessage request, PeriodicidadeViewModel PeriodicidadeViewModel)
        {
            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
                {
                    Periodicidade _Periodicidade = _PeriodicidadeRep.GetSingle(PeriodicidadeViewModel.Id);

                    Usuario usuario = _usuarioRep.GetSingle(int.Parse(HttpContext.Current.User.Identity.GetUserId()));
                    _Periodicidade.AtualizarPeriodicidade(PeriodicidadeViewModel, usuario);

                    _unitOfWork.Commit();



                    // Update view model
                    PeriodicidadeViewModel = Mapper.Map <Periodicidade, PeriodicidadeViewModel>(_Periodicidade);
                    response = request.CreateResponse(HttpStatusCode.OK, PeriodicidadeViewModel);
                }

                return response;
            }));
        }
 public static void AtualizarPeriodicidade(this Periodicidade periodicidade, PeriodicidadeViewModel periodicidadeVm, Usuario usuario)
 {
     periodicidade.UsuarioAlteracao  = usuario;
     periodicidade.Ativo             = periodicidadeVm.Ativo;
     periodicidade.DescPeriodicidade = periodicidadeVm.DescPeriodicidade;
     periodicidade.DtAlteracao       = DateTime.Now;
 }
        public HttpResponseMessage Inserir(HttpRequestMessage request, PeriodicidadeViewModel PeriodicidadeViewModel)
        {
            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
                {
                    Usuario usuario = _usuarioRep.GetSingle(int.Parse(HttpContext.Current.User.Identity.GetUserId()));



                    Periodicidade novoPeriodicidade = new Periodicidade()
                    {
                        UsuarioCriacao = usuario,
                        DtCriacao = DateTime.Now,
                        DescPeriodicidade = PeriodicidadeViewModel.DescPeriodicidade,
                        Ativo = PeriodicidadeViewModel.Ativo
                    };
                    _PeriodicidadeRep.Add(novoPeriodicidade);

                    _unitOfWork.Commit();

                    // Update view model
                    PeriodicidadeViewModel = Mapper.Map <Periodicidade, PeriodicidadeViewModel>(novoPeriodicidade);
                    response = request.CreateResponse(HttpStatusCode.Created, PeriodicidadeViewModel);
                }

                return response;
            }));
        }