public ActionResult Create([Bind(Include = "id,idAluno,valor,dataProxima,dataBaseInicio,dataBaseFim")] Pagamento pagamento) { if (pagamento.valor > TipoPlano.Selecionar(Aluno.Selecionar(pagamento.idAluno).tipoPlano).valor) { ModelState.AddModelError("valor", "O valor pago não pode ser maior que o valor do plano atual"); } if (ModelState.IsValid) { if (TipoPlano.Selecionar(Aluno.Selecionar(pagamento.idAluno).tipoPlano).descricao.Equals("MENSAL")) { pagamento.dataBaseFim = pagamento.dataBaseInicio.AddMonths(1); pagamento.dataProxima = pagamento.dataBaseInicio.AddMonths(1); } else { pagamento.dataBaseFim = pagamento.dataBaseInicio.AddYears(1); pagamento.dataProxima = pagamento.dataBaseInicio.AddYears(1); } pagamento.dataProxima = pagamento.dataProxima.AddDays(1); Pagamento.Incluir(pagamento); return(RedirectToAction("Index", new { idAluno = pagamento.idAluno })); } return(View(pagamento)); }
// GET: /Pagamento/Create public ActionResult Create(int idAluno) { Pagamento pg = new Pagamento(); pg.idAluno = idAluno; pg.valor = TipoPlano.Selecionar(Aluno.Selecionar(idAluno).tipoPlano).valor; return(View(pg)); }
// GET: /Ferias/Create public ActionResult Create(int idAluno) { if (TipoPlano.Selecionar(Aluno.Selecionar(idAluno).tipoPlano).descricao.Equals("MENSAL")) { return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno })); } if (Pagamento.SelecionarTodos(idAluno).Count > 0) { Pagamento pg = Pagamento.SelecionarTodos(idAluno).OrderByDescending(x => x.dataProxima).ToList()[0]; if (DateTime.Now >= pg.dataProxima) { return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno })); } else { int qtdeFeriasExistentes = pg.dataProxima.AddDays(-1).Subtract(pg.dataBaseFim).Days; if (qtdeFeriasExistentes >= 30) { return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno })); } else { if (Ferias.SelecionarTodos(idAluno, pg.dataBaseFim).Count >= 3) { return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno })); } } } } else { return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno })); } Ferias ferias = new Ferias(); ferias.idAluno = idAluno; ferias.dataInicio = DateTime.Now; ferias.dataFim = DateTime.Now; return(View(ferias)); }
// GET: /Ferias/ public ActionResult Index(int idAluno) { ViewData["idAluno"] = idAluno; ViewData["Erro"] = ""; if (TipoPlano.Selecionar(Aluno.Selecionar(idAluno).tipoPlano).descricao.Equals("MENSAL")) { ViewData["Erro"] = "O plano do aluno " + Aluno.Selecionar(idAluno).nome + " não possui direito a férias"; } if (Pagamento.SelecionarTodos(idAluno).Count > 0) { Pagamento pg = Pagamento.SelecionarTodos(idAluno).OrderByDescending(x => x.dataProxima).ToList()[0]; if (DateTime.Now >= pg.dataProxima) { ViewData["Erro"] = "O aluno está inadimplente e não é possivel gerar novas férias"; } else { int qtdeFeriasExistentes = pg.dataProxima.AddDays(-1).Subtract(pg.dataBaseFim).Days; if (qtdeFeriasExistentes >= 30) { ViewData["Erro"] = "O aluno já excedeu a quantidade permitida de dias de férias para o plano vigente"; } else { if (Ferias.SelecionarTodos(idAluno, pg.dataBaseFim).Count >= 3) { ViewData["Erro"] = "O aluno já excedeu a quantidade permitida de períodos de férias"; } } } } else { ViewData["Erro"] = "O aluno não possui plano vigente para solicitar férias"; } return(View(Ferias.SelecionarTodos(idAluno).OrderByDescending(x => x.dataInicio).ToList())); }