コード例 #1
0
        public IActionResult DisplayFilesFromDb(UploadDataViewModel model)
        {
            bool userExists = _context.Users.Where(x => x.UserName == model.UserName).Any();
            List <LoadFileViewModel> ufls = new List <LoadFileViewModel>();

            if (userExists)
            {
                var userId    = _context.Users.Where(x => x.UserName == model.UserName).Select(x => x.Id).FirstOrDefault();
                var userFiles = _context.UserFiles.Where(x => x.UserId == userId).ToList();
                foreach (var userFile in userFiles)
                {
                    string type  = null;
                    int    index = userFile.FileType.IndexOf('/');
                    if (index > 0)
                    {
                        type = userFile.FileType.Substring(0, index);
                    }
                    ufls.Add(new LoadFileViewModel()
                    {
                        FileName = userFile.FileName, FileType = type, Id = userFile.Id
                    });
                }
                return(View(ufls));
            }
            else
            {
                ModelState.AddModelError("", "User Not Exists.");
                return(RedirectToAction("LoadFiles", "Home"));
            }
        }
コード例 #2
0
        public IActionResult UploadEmployee(UploadDataViewModel model)
        {
            List <Employee> employees = new List <Employee>();

            try
            {
                using (StreamReader reader = new StreamReader(model.File.OpenReadStream()))
                {
                    while (reader.Peek() >= 0)
                    {
                        string[] entries = (reader.ReadLine()).Split(";");
                        Employee data    = new Employee
                        {
                            Nombre          = entries[0],
                            Apellido        = entries[1],
                            Cedula          = entries[2],
                            direccion       = entries[3],
                            FechaIngreso    = DateTime.Parse(entries[4]), //Debe estar en el siguiente formato YYYY-MM-DD hh:mm:ss
                            FechaEntrega    = DateTime.Parse(entries[5]), //Debe estar en el siguiente formato YYYY-MM-DD hh:mm:ss
                            Tipo            = entries[6],
                            Serial          = entries[7],
                            Marca           = entries[8],
                            Descripcion     = entries[9],
                            Respuesta       = entries[10],
                            GarantiaMarca   = entries[11],
                            GarantiaTecnica = entries[12],
                            TipoServicio    = entries[13],
                            ValorPagar      = int.Parse(entries[14]),
                            CantidadEquipos = int.Parse(entries[15]),
                            NumeroCelular   = entries[16],
                            Correos         = entries[17],
                            Total           = int.Parse(entries[18])
                                              //ProfilePicture= entries[18]
                        };
                        dbContext.Employees.Add(data);
                    }
                }
                dbContext.SaveChanges();
                ViewBag.Message = $"El {model.File.FileName} Fue procesado exitosamente!";
            }
            catch (Exception ex)
            {
                ViewBag.Message = ex.Message;
            }

            return(View(model));
        }
コード例 #3
0
        public IActionResult UploadToDb(UploadDataViewModel model)
        {
            bool userExists = _context.Users.Where(x => x.UserName == model.UserName).Any();

            if (!userExists)
            {
                User us = new User {
                    Id = Guid.NewGuid().ToString(), UserName = model.UserName
                };
                _context.Users.Add(us);
                _context.SaveChanges();
            }
            if (model.Files != null && model.Files.Count > 0 && model.Files[0] != null)
            {
                foreach (var file in model.Files)
                {
                    var  fileName   = Path.GetFileName(file.FileName);
                    bool fileExists = _context.UserFiles.Where(x => x.FileName == fileName).Any();
                    if (!fileExists)
                    {
                        var          fileType    = file.ContentType;
                        Stream       stream      = file.OpenReadStream();
                        BinaryReader reader      = new BinaryReader(stream);
                        var          fileContent = reader.ReadBytes((int)file.Length);
                        var          userId      = _context.Users.Where(x => x.UserName == model.UserName).Select(x => x.Id).FirstOrDefault();
                        UserFiles    uf          = new UserFiles
                        {
                            Id       = Guid.NewGuid().ToString(),
                            FileName = fileName,
                            FileType = fileType,
                            UserFile = fileContent,
                            UserId   = userId
                        };
                        _context.UserFiles.Add(uf);
                        _context.SaveChanges();
                        ModelState.AddModelError("", "File Uploaded.");
                    }
                    else
                    {
                        ModelState.AddModelError("", "File exists.");
                    }
                }
            }
            return(RedirectToAction("UploadToDatabase"));
        }
コード例 #4
0
        public async Task <IActionResult> UploadCalls(UploadDataViewModel model)
        {
            List <CallsUploadedViewModel> dataUploaded = new List <CallsUploadedViewModel>();

            try
            {
                using (StreamReader reader = new StreamReader(model.File.OpenReadStream()))
                {
                    while (reader.Peek() >= 0)
                    {
                        string[] entries            = (reader.ReadLine()).Split(";");
                        CallsUploadedViewModel data = new CallsUploadedViewModel
                        {
                            CustomerId      = entries[0],
                            CustomerProduct = entries[1],
                            StartDate       = DateTime.Parse(entries[2]),
                            EndDate         = DateTime.Parse(entries[3]),
                            CodificationId  = Int32.Parse(entries[4]),
                            UserCode        = entries[5]
                        };
                        dataUploaded.Add(data);
                    }
                    List <CallEntity> callsUploaded = await _converterHelper.ToCallEntity(dataUploaded);

                    bool IsSuccess = await _callHelper.AddCalls(callsUploaded);

                    if (!IsSuccess)
                    {
                        ViewBag.Message = "There has been an error when trying to process the file";
                        return(View(model));
                    }
                }
                ViewBag.Message = $"The file {model.File.FileName} has been processed successfully!";
            }
            catch (Exception ex)
            {
                ViewBag.Message = ex.Message;
            }

            return(View(model));
        }
コード例 #5
0
        public async Task <IActionResult> UploadArrivals(UploadDataViewModel model)
        {
            List <ArrivalsUploadedViewModel> dataUploaded = new List <ArrivalsUploadedViewModel>();

            try
            {
                using (StreamReader reader = new StreamReader(model.File.OpenReadStream()))
                {
                    while (reader.Peek() >= 0)
                    {
                        string[] entries = (reader.ReadLine()).Split(";");
                        ArrivalsUploadedViewModel data = new ArrivalsUploadedViewModel
                        {
                            InDate   = DateTime.Parse(entries[0]),
                            OutDate  = DateTime.Parse(entries[1]),
                            UserCode = entries[2]
                        };
                        dataUploaded.Add(data);
                    }
                    List <ArrivalsEntity> arrivalsUploaded = _converterHelper.ToArrivalsEntity(dataUploaded);
                    bool IsSuccess = await _arrivalsHelper.AddArrivals(arrivalsUploaded);

                    if (!IsSuccess)
                    {
                        ViewBag.Message = "There has been an error when trying to process the file";
                        return(View(model));
                    }
                }
                ViewBag.Message = $"The file {model.File.FileName} has been processed successfully!";
            }
            catch (Exception)
            {
                ViewBag.Message = "There has been an error when trying to process the file";
            }

            return(View(model));
        }