public async Task <IActionResult> EfetuarPagamento(int id)
        {
            var pagamento = await PagamentoRepositorio.PegarPeloId(id);

            pagamento.DataPagamento = DateTime.Now.Date;
            pagamento.Status        = StatusPagamento.Pago;

            await PagamentoRepositorio.Atualizar(pagamento);

            var aluguel = await AluguelRepositorio.PegarPeloId(pagamento.AluguelId);

            var hr = new HistoricoRecurso
            {
                Valor = aluguel.Valor,
                MesId = aluguel.MesId,
                Dia   = DateTime.Now.Day,
                Ano   = aluguel.Ano,
                Tipo  = Tipo.Entrada
            };

            await HistoricoRecursoRepositorio.Inserir(hr);

            TempData["NovoRegistro"] = $"Pagamento no valor de {pagamento.Aluguel.Valor} realizado";

            return(RedirectToAction(nameof(Index)));
        }
Example #2
0
        public async Task <IActionResult> AprovarServico(ServicoAprovadoViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var servico = await ServicoRepositorio.PegarPeloId(viewModel.ServicoId);

                servico.Status = StatusServico.Aceito;
                await ServicoRepositorio.Atualizar(servico);

                var servicoPredio = new ServicoPredio
                {
                    ServicoId    = viewModel.ServicoId,
                    DataExecucao = viewModel.Data
                };

                await ServicoPredioRepositorio.Inserir(servicoPredio);

                var hr = new HistoricoRecurso
                {
                    Valor = servico.Valor,
                    MesId = servicoPredio.DataExecucao.Month,
                    Dia   = servicoPredio.DataExecucao.Day,
                    Ano   = servicoPredio.DataExecucao.Year,
                    Tipo  = Tipo.Saida
                };

                await HistoricoRecursoRepositorio.Inserir(hr);

                TempData["NovoRegistro"] = $"{servico.Nome} escalado com sucesso";

                return(RedirectToAction(nameof(Index)));
            }

            return(View(viewModel));
        }