예제 #1
0
        public override async Task Import(ImportVM datiImport)
        {
            var f = new FileInfo(datiImport.FilePath);

            using (var reader = new StreamReader(f.OpenRead()))
            {
                bool isPrimaRigaIntestazione = datiImport.IsPrimaRigaIntestazione;
                var  properties = GetReadWriteProperties();
                while (!reader.EndOfStream)
                {
                    var line = await reader.ReadLineAsync();

                    if (isPrimaRigaIntestazione)
                    {
                        isPrimaRigaIntestazione = false;
                    }
                    else
                    {
                        var values = line.Split(datiImport.SeparatoreCsv);
                        T   model  = (T)Activator.CreateInstance(typeof(T));
                        for (int i = 0; i < values.Length; i++)
                        {
                            var propName = datiImport.Colonne[i];
                            var item     = values[i];
                            SetData(model, properties, propName, item);
                        }
                        Aggiungi(model);
                    }
                }
                await Salva();
            }
        }
예제 #2
0
        public ActionResult Create(ImportVM v)
        {
            if (ModelState.IsValid)
            {
                Import a   = new Import();
                int    max = (from c in db.Imports orderby c.ImportID descending select c.ImportID).FirstOrDefault();

                a.ImportID = max + 1;
                a.ImportNo = v.ImportNo;
                if (a.ImportDate == null)
                {
                    a.ImportDate = Convert.ToDateTime(v.ImportDate);
                }
                a.Consignor    = v.Agent;
                a.FlightNo     = v.FlightNo;
                a.MAWBNO       = v.MAWBNo;
                a.TotPackage   = v.Package;
                a.StatedWeight = v.Weight;
                a.Pieces       = v.Pieces;



                db.Imports.Add(a);
                db.SaveChanges();


                TempData["SuccessMsg"] = "You have successfully added Import Data.";
                return(RedirectToAction("Index"));
            }
            return(View());
        }
예제 #3
0
        public override async Task Import(ImportVM datiImport)
        {
            using (var p = new ExcelPackage(new FileInfo(datiImport.FilePath)))
            {
                var ws   = p.Workbook.Worksheets.First();
                var riga = 1;
                if (datiImport.IsPrimaRigaIntestazione)
                {
                    riga++;
                }
                var properties = GetReadWriteProperties();

                for (int r = riga; r < ws.Dimension.Rows; r++)
                {
                    T model = (T)Activator.CreateInstance(typeof(T));
                    for (int c = 1; c < ws.Dimension.Columns; c++)
                    {
                        var propName = datiImport.Colonne[c - 1];
                        var item     = ws.GetValue(r, c);
                        SetData(model, properties, propName, item);
                    }
                    Aggiungi(model);
                }
                await Salva();
            }
        }
예제 #4
0
        public IActionResult Import(int testId)
        {
            var viewModel = new ImportVM()
            {
                TestId = testId
            };

            return(View(viewModel));
        }
예제 #5
0
        /// <summary>
        /// Import theo nhóm danh mục
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult Import(int id)
        {
            ImportVM model = new ImportVM();

            DM_NHOMDANHMUCBusiness = Get <DM_NHOMDANHMUCBusiness>();
            model.DanhMuc          = DM_NHOMDANHMUCBusiness.Find(id);
            model.PathTemplate     = Path.Combine(HostUpload, WebConfigurationManager.AppSettings["ImportDanhMucTemplate"]);
            return(View(model));
        }
예제 #6
0
        public async Task <IActionResult> Import(ImportVM formFile)
        {
            TempData["url"] = "bankacount";
            // upload
            var filePath = Path.GetTempFileName();

            using (var stream = new FileStream(filePath, FileMode.Create))
            {
                await formFile.Myfile.CopyToAsync(stream);
            }

            var list = ExcelComunication.DataTableToBankAccount(ExcelComunication.ExcelToDataTable(filePath));

            _context.BankAccount.AddRange(list);
            await _context.SaveChangesAsync();

            await _context.Database.ExecuteSqlCommandAsync("modify_banks_transaction");

            return(RedirectToAction("Index"));
        }
예제 #7
0
        public async Task <IActionResult> Import(ImportVM formFile)
        {
            var batch = _context.OriginalListing.OrderByDescending(v => v.Batch).Where(c => c.Year == formFile.Year).FirstOrDefault()?.Batch ?? 0;

            batch++;
            // upload
            var filePath = Path.GetTempFileName();

            using (var stream = new FileStream(filePath, FileMode.Create))
            {
                await formFile.Myfile.CopyToAsync(stream);
            }

            var list = ExcelComunication.DataTableTooriginal_listing(ExcelComunication.ExcelToDataTable(filePath), formFile.Year, batch);

            _context.OriginalListing.AddRange(list);
            await _context.SaveChangesAsync();

            await _context.Database.ExecuteSqlCommandAsync("init_transaction");

            return(RedirectToAction("Index"));
        }
예제 #8
0
 public abstract Task Import(ImportVM datiImport);