Ejemplo n.º 1
0
        //[InvalidateCacheOutput("GetClientes", typeof(ClienteController))]
        public HttpResponseMessage Put(MensalidadesViewModel mensalidade)
        {
            var cache = Configuration.CacheOutputConfiguration().GetCacheOutputProvider(Request);

            cache.RemoveStartsWith(Configuration.CacheOutputConfiguration().MakeBaseCachekey((ClienteController c) => c.GetClientes()));

            if (ModelState.IsValid)
            {
                if (mensalidade.isPersonal == false)
                {
                    mensalidade.ValorPersonal = 0;
                }

                var result = _mensalidadesApp.Update(mensalidade);

                if (!result.IsValid)
                {
                    foreach (var validationAppError in result.Erros)
                    {
                        ModelState.AddModelError(string.Empty, validationAppError.Message);
                    }
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
                }
                return(Request.CreateResponse(HttpStatusCode.Created, mensalidade));
            }
            return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
        }
Ejemplo n.º 2
0
        public ValidationAppResult AdicionarMensalidade(MensalidadesViewModel mensalidadesViewModel)
        {
            var mensalidade = Mapper.Map <MensalidadesViewModel, Mensalidades>(mensalidadesViewModel);

            BeginTransaction();

            var result = _mensalidadesService.AdicionarMensalidade(mensalidade);

            if (!result.IsValid)
            {
                return(DomainToApplicationResult(result));
            }

            //Atualiza situacao do cliente caso a mensalidade que esta sendo paga se refere ao mês atual
            var today = DateTime.Now;

            if (mensalidadesViewModel.MesReferencia >= today.Month && mensalidadesViewModel.AnoReferencia >= today.Year)
            {
                var cliente = _clienteService.GetById(mensalidadesViewModel.ClienteId);
                if (cliente.IsAtivo)
                {
                    cliente.Situacao = "Regular";
                    _clienteService.Update(cliente);

                    _logSistemaService.AddLog("Cliente", cliente.ClienteId, "Update", "Alteração da situacao para: REGULAR. Adicionado mensalidade: " + mensalidade.MensalidadesId);
                }
            }

            _logMensalidadesService.AddLog("Cadastro", mensalidade);

            Commit();

            return(DomainToApplicationResult(result));
        }
Ejemplo n.º 3
0
        public void Add(MensalidadesViewModel mensalidadesViewModel)
        {
            var mensalidade = Mapper.Map <MensalidadesViewModel, Mensalidades>(mensalidadesViewModel);

            BeginTransaction();

            _mensalidadesService.Add(mensalidade);

            _logMensalidadesService.AddLog("Cadastro", mensalidade);
            Commit();
        }
Ejemplo n.º 4
0
        public ValidationAppResult Update(MensalidadesViewModel mensalidadesViewModel)
        {
            var mensalidade = Mapper.Map <MensalidadesViewModel, Mensalidades>(mensalidadesViewModel);

            BeginTransaction();

            var result = _mensalidadesService.AdicionarMensalidade(mensalidade);

            if (!result.IsValid)
            {
                return(DomainToApplicationResult(result));
            }

            Commit();


            BeginTransaction();
            //Verifica se existe alguma mensalidade com mes e ano maior ou igual a data atual
            var  today             = DateTime.Now;
            bool existeMensalidade = false;
            var  cliente           = _clienteService.GetById(mensalidadesViewModel.ClienteId);

            foreach (var mensalidades in GetMensalidadesCliente(mensalidadesViewModel.ClienteId))
            {
                if (mensalidades.MesReferencia >= today.Month && mensalidades.AnoReferencia >= today.Year)
                {
                    existeMensalidade = true;
                }
            }
            if (cliente.IsAtivo)
            {
                if (existeMensalidade && cliente.Situacao != "Regular")
                {
                    cliente.Situacao = "Regular";
                    _clienteService.Update(cliente);
                    _logSistemaService.AddLog("Cliente", cliente.ClienteId, "Update",
                                              "Alteração da situacao para: REGULAR. Atualizado mensalidade: " + mensalidade.MensalidadesId);
                }
                else if ((!existeMensalidade))
                {
                    cliente.Situacao = "Pendente";
                    _clienteService.Update(cliente);
                    _logSistemaService.AddLog("Cliente", cliente.ClienteId, "Update",
                                              "Alteração da situacao para: PENDENTE. Atualizado mensalidade: " + mensalidade.MensalidadesId);
                }
            }

            _logMensalidadesService.AddLog("Update", mensalidade);
            Commit();

            return(DomainToApplicationResult(result));
        }
Ejemplo n.º 5
0
        public HttpResponseMessage Post(MensalidadesViewModel mensalidade)
        {
            mensalidade.SubCategoriaFinanceiraId = new Guid("0d57c87d-3bd9-420b-ab98-123fdb75a269");
            mensalidade.CategoriaFinanceiraId    = new Guid("1c1278df-f5a5-4407-a0c4-bdbb71c362b1");
            if (ModelState.IsValid)
            {
                var result = _mensalidadesApp.AdicionarMensalidade(mensalidade);

                if (!result.IsValid)
                {
                    foreach (var validationAppError in result.Erros)
                    {
                        ModelState.AddModelError(string.Empty, validationAppError.Message);
                    }
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
                }
                return(Request.CreateResponse(HttpStatusCode.Created, mensalidade));
            }
            return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
        }