public async Task <ActionResult> Editar(AlunoVM alunoVM, string returnUrl = "") { try { if (alunoVM.ImagemUpload != null) { alunoVM.ImagemUrl = AlunoHelper.ObterNomeArquivo(alunoVM); AlunoHelper.SalvarImagemAluno(alunoVM.ImagemUpload, AlunoHelper.ObterCaminhoImagemAluno(alunoVM, Server)); } var alunoModel = Mapper.Map <AlunoVM, Aluno>(alunoVM); await _bussinesAluno.AlterarAsync(alunoModel); if (string.IsNullOrEmpty(returnUrl)) { TempData["Mensagem"] = "Aluno alterado com sucesso."; return(RedirectToAction(nameof(Index))); } return(Redirect(returnUrl)); } catch (ArgumentException ex) { ViewBag.ReturnUrl = returnUrl; TempData["Mensagem"] = ex.Message; return(View(alunoVM)); } }
public ActionResult Cadastrar(AlunoVM alu) { repositorioAluno.Inserir(alu.Aluno); return(RedirectToAction("Listar")); }
public ActionResult Edit(AlunoVM alunoRecebido, string codTurma) { var query = ObterListaTurmas().Where(t => t.Codigo.Equals(codTurma)).ToList(); if (query.Count == 0) { return(HttpNotFound()); } Turma turmaRecebida = query.First(); Aluno novoAluno = alunoRecebido.ToAluno(turmaRecebida); ModelState["Turma"].Errors.Clear(); bool matriculaExistente = ObterListaAlunos() .FirstOrDefault(a => a.Matricula.Equals(novoAluno.Matricula, StringComparison.InvariantCultureIgnoreCase) && !a.Id.Equals(novoAluno.Id)) != null; if (matriculaExistente) { ModelState.AddModelError("Matricula", "Já existe um aluno com essa matricula"); } novoAluno.AnoApresentacao = alunoRecebido.AnoApresentacao; ModelState["AnoApresentacao"].Errors.Clear(); novoAluno.MesApresentacao = alunoRecebido.MesApresentacao; ModelState["MesApresentacao"].Errors.Clear(); Aluno alunoSalvo = ObterListaAlunos() .Where(a => a.Id == novoAluno.Id) .FirstOrDefault(); if (ObterPrevisaoInicialApresentacao(alunoSalvo)[0] > alunoRecebido.AnoApresentacao) { ModelState.AddModelError("MesApresentacao", "Restauramos a combinação Ano/Semestre pois a inserida não representava uma data posterior a data de previsão padrao"); } else if (ObterPrevisaoInicialApresentacao(alunoSalvo)[0] == alunoRecebido.AnoApresentacao && ObterPrevisaoInicialApresentacao(alunoSalvo)[1] > alunoRecebido.MesApresentacao) { ModelState.AddModelError("MesApresentacao", "Restauramos a combinação Ano/Semestre pois a inserida não representava uma data posterior a data de previsão padrao"); } if (ModelState.IsValid) { bool podeEditar = ObterListaAlunos().Where(a => a.Id == alunoSalvo.Id).FirstOrDefault() != null; if (!podeEditar) { return(RedirectToAction("Unauthorized", "Erro")); } _alunoRepository.Update(alunoSalvo, novoAluno, query.First()); return(RedirectToAction("Index")); } ViewBag.DataAntiga = new int[] { alunoSalvo.AnoApresentacao, alunoSalvo.MesApresentacao }; ViewBag.turmas = ObterListaTurmas() .ToTurmaVM(); novoAluno.AnoApresentacao = alunoSalvo.AnoApresentacao; novoAluno.MesApresentacao = novoAluno.MesApresentacao; return(View(novoAluno.ToAlunoVM())); }
public ActionResult Listar(string sortOrder, string currentFilter, string searchString, int?page) { ViewBag.CurrentSort = sortOrder; ViewBag.NomeParam = String.IsNullOrEmpty(sortOrder) ? "NOME" : ""; ViewBag.DataParam = sortOrder == "Datetime" ? "DataNascimento" : "Datetime"; var viewModel = new AlunoVM(); if (searchString != null) { page = 1; } else { searchString = currentFilter; } ViewBag.CurrentFilter = searchString; viewModel.Alunos = repositorioAluno.ListaAluno(); if (!String.IsNullOrEmpty(searchString)) { viewModel.Alunos = repositorioAluno.ListaAluno().Where(x => x.Nome.ToUpper().Contains(searchString.ToUpper()) || x.Email.ToUpper().Contains(searchString)); } switch (sortOrder) { case "NOME": viewModel.Alunos = viewModel.Alunos.OrderBy(x => x.Nome); break; case "Datetime": viewModel.Alunos = viewModel.Alunos.OrderBy(x => x.DataNascimento); break; case "DataNascimento": viewModel.Alunos = viewModel.Alunos.OrderByDescending(x => x.DataNascimento); break; default: viewModel.Alunos = viewModel.Alunos.OrderByDescending(x => x.Nome); break; } int pageSize = 3; int pageNumber = (page ?? 1); return(View(viewModel.Alunos.ToPagedList(pageNumber, pageSize))); }
public ActionResult Cadastrar() { var viewModel = new AlunoVM(); viewModel.ListaCurso = new SelectList(repositorioCurso.ListaCurso(), "COD_CURSO", "NOME"); viewModel.ListaSexo = new SelectList(repositorioSexo.ListaSexo(), "Cod_Sexo", "DESCRICAO"); return(View(viewModel)); }
public ActionResult Endereco(AlunoVM vm, int id) { vm.Aluno.Cod_Aluno = id; vm.Aluno.Cod_Curso = vm.Aluno.Cod_Curso; vm.Aluno.Cod_Sexo = vm.Aluno.Cod_Sexo; repositorioAluno.AtualizarEndereco(vm.Aluno); return(RedirectToAction("Listar")); }
public ActionResult Editar(int id) { var viewModel = new AlunoVM(); viewModel.ListaCurso = new SelectList(repositorioCurso.ListaCurso(), "COD_CURSO", "NOME"); viewModel.ListaSexo = new SelectList(repositorioSexo.ListaSexo(), "Cod_Sexo", "DESCRICAO"); viewModel.Aluno = repositorioAluno.ListaAluno().Single(x => x.Cod_Aluno == id); return(View(viewModel)); }
public static string ObterCaminhoImagemAluno(AlunoVM alunoVM, HttpServerUtilityBase server) { var caminhoFisico = server.MapPath(PathImagens); if (!Directory.Exists(caminhoFisico)) { Directory.CreateDirectory(caminhoFisico); } var path = Path.Combine(caminhoFisico, alunoVM.ImagemUrl); return(path); }
public IActionResult Pesquisa(AlunoVM vm) { LoadViewBags(); //Filters - BEGINS var alunosFiltrados = Db.Alunos.Where(r => !r.Excluded); alunosFiltrados = alunosFiltrados.Where(c => c.Matricula.ToString().Contains(vm.FilterMatricula.ToString())); alunosFiltrados = alunosFiltrados.Where(c => c.Idade.ToString().Contains(vm.FilterIdade.ToString())); alunosFiltrados = alunosFiltrados.Where(c => c.Nome.ToUpper().Contains(vm.FilterNome.ToUpper())); //Filters - ENDS //filtro parou aqui preciso verificar (ocorreu um erro) vm.Alunos = alunosFiltrados.ToList(); //vm.Alunos = alunosFiltrados.ToList(); return(View(vm)); //Model da View = List de Produtos }
public IActionResult CreateBulkInsert(AlunoVM vm) { if (!ModelState.IsValid) { return(View(vm)); } foreach (var aluno in vm.Alunos) { Db.Alunos.Add(aluno); } Db.SaveChanges(); LoadViewBags(); NotifySuccess("Sucesso:", "Cadastro inserido com sucesso!"); return(RedirectToAction("Index")); }
public static string ObterNomeArquivo(AlunoVM alunoVM) { if (alunoVM.ImagemUpload == null) { throw new ArgumentException("Nenhuma foto do aluno foi definida."); } var formatoImagem = alunoVM.ImagemUpload.ContentType; formatoImagem = formatoImagem.Substring(formatoImagem.IndexOf("/") + 1); if (!formatos.Contains(formatoImagem)) { throw new ArgumentException("Formato de imagem inválido."); } var fileName = $"{alunoVM.Id} - {alunoVM.Nome}.{formatoImagem}"; return(fileName); }
public async Task <ActionResult> Novo(AlunoVM alunoVM) { try { alunoVM.Id = await _bussinesAluno.ObterUltimoIdAsync() + 1; alunoVM.ImagemUrl = AlunoHelper.ObterNomeArquivo(alunoVM); var alunoModel = Mapper.Map <AlunoVM, Aluno>(alunoVM); await _bussinesAluno.InserirAsync(alunoModel); AlunoHelper.SalvarImagemAluno(alunoVM.ImagemUpload, AlunoHelper.ObterCaminhoImagemAluno(alunoVM, Server)); return(RedirectToRoute("Matricular", new { controller = "Matriculas", idAluno = alunoVM.Id })); } catch (ArgumentException ex) { ViewBag.TiposResponsaveis = Enum.GetValues(typeof(TipoResponsavelEnum)); TempData["Mensagem"] = ex.Message; return(View(alunoVM)); } }
public ActionResult Add(AlunoVM alunoRecebido, string codTurma) { var query = ObterListaTurmas().Where(t => t.Codigo.Equals(codTurma)).ToList(); if (query.Count == 0) { return(HttpNotFound()); } Turma turmaRecebida = query.First(); Aluno novoAluno = alunoRecebido.ToAluno(turmaRecebida); ModelState["Turma"].Errors.Clear(); bool matriculaExistente = ObterListaAlunos() .FirstOrDefault(a => a.Matricula.Equals(novoAluno.Matricula, StringComparison.InvariantCultureIgnoreCase) && !a.Id.Equals(novoAluno.Id)) != null; if (matriculaExistente) { ModelState.AddModelError("Matricula", "Já existe um aluno com essa matricula"); } ModelState["AnoApresentacao"].Errors.Clear(); novoAluno.AnoApresentacao = ObterPrevisaoInicialApresentacao(novoAluno)[0]; ModelState["MesApresentacao"].Errors.Clear(); novoAluno.MesApresentacao = ObterPrevisaoInicialApresentacao(novoAluno)[1]; if (ModelState.IsValid) { _alunoRepository.Persist(novoAluno); return(RedirectToAction("Index")); } ViewBag.turmas = ObterListaTurmas() .ToTurmaVM(); return(View(novoAluno.ToAlunoVM())); }
public ValidarIdadeAluno() { InitializeComponent(); BindingContext = new AlunoVM(); }