public ActionResult Importar(ImportarViewModel viewModel) { try { foreach (var file in viewModel.Files) { if (file.ContentLength > 0) { string nome = Path.GetFileNameWithoutExtension(file.FileName); string tipo = Path.GetExtension(file.FileName); string caminho = Path.Combine(Server.MapPath("~/Content/Uploads"), nome + tipo); file.SaveAs(caminho); var response = _contratoNegocio.RealizarImportacao((TipoPlanilhaEnum)viewModel.TipoPlanilhaId, caminho, file.FileName); if (!response.Success) { TempData["ContratosErro"] = response.Data; return(RedirectToAction("ErroImportar")); } } } return(RedirectToAction("Index")); } catch (Exception ex) { TempData["mensagem"] = ex.Message; return(RedirectToAction("Erro")); } }
public IActionResult Importar(ImportarViewModel importarViewModel) { if (importarViewModel.Tipo == 0) { ModelState.AddModelError("", "Seleccione el TIPO de registro que desea importar"); return(View(importarViewModel)); } else if (importarViewModel.Archivo == null) { ModelState.AddModelError("", "Seleccione un ARCHIVO"); return(View(importarViewModel)); } else if (importarViewModel.Archivo.ContentType != "text/csv" && !importarViewModel.Archivo.FileName.EndsWith(".csv") && importarViewModel.Archivo.ContentType != "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" && !importarViewModel.Archivo.Name.EndsWith(".xlsx")) { ModelState.AddModelError("", "Seleccione el ARCHIVO de registros que desea importar (Excel o CSV)"); return(View(importarViewModel)); } else if (importarViewModel.Archivo.Length > 1024 * 1024 * 5) { ModelState.AddModelError("", "El tamaƱo MAXIMO del archivo es de [ 5 MB ]"); return(View(importarViewModel)); } else { try { //Todo bien con el archivo ImportarRepository importarRepository = new ImportarRepository(); importarRepository.Importar(importarViewModel.Tipo, importarViewModel.Archivo, Environment.WebRootPath); ModelState.AddModelError("", "Importacion realizada con exito"); return(View(importarViewModel)); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); return(View(importarViewModel)); } } }
public ActionResult Importar() { var viewModel = new ImportarViewModel(); return(View(viewModel)); }