public ActionResult _InsertWhtrans(BulkSaleImpItem editModel)
 {
     BulkSaleImport newImport = new BulkSaleImport();
     if (TryUpdateModel(newImport))
     {
         if (!String.IsNullOrWhiteSpace(newImport.SerialNum))
         {
             BulkSaleImport existImport = (from i in UtilDBContext.BulkSaleImports
                                      where i.RunName == newImport.RunName && i.SerialNum == newImport.SerialNum
                                      select i).FirstOrDefault();
             if (existImport == null)
             {
                 UtilDBContext.BulkSaleImports.AddObject(newImport);
                 UtilDBContext.SaveChanges();
             }
             else
             {
                 ModelState.AddModelError(editModel.FullPropertyName(m => m.SerialNum), "Already exists");
             }
         }
         else {
             ModelState.AddModelError(editModel.FullPropertyName(m => m.SerialNum), "Required");
         }
     }
     return View(UnlockedSerialPoGridList(editModel.RunName));
 }
 public ActionResult _SaveWhtrans(string id, BulkSaleImpItem editModel)
 {
     if (String.IsNullOrWhiteSpace(editModel.SerialNum))
     {
         ModelState.AddModelError(editModel.FullPropertyName(m => m.SerialNum), "Required");
     }
     else
     {
         BulkSaleImpItem idModel = new BulkSaleImpItem();
         if (idModel.ParseItemKey(id))
         {
             BulkSaleImport import = (from i in UtilDBContext.BulkSaleImports
                                      where i.RunName == idModel.RunName && i.SerialNum == idModel.SerialNum
                                      select i).FirstOrDefault();
             if (import != null)
             {
                 if (import.SerialNum == editModel.SerialNum)
                 {
                     if (TryUpdateModel(import))
                     {
                         UtilDBContext.SaveChanges();
                     }
                 }
                 else
                 {
                     BulkSaleImport newImport = new BulkSaleImport();
                     if (TryUpdateModel(newImport))
                     {
                         BulkSaleImport existImport = (from i in UtilDBContext.BulkSaleImports
                                                       where i.RunName == newImport.RunName && i.SerialNum == newImport.SerialNum
                                                       select i).FirstOrDefault();
                         if (existImport == null)
                         {
                             //Delete
                             UtilDBContext.DeleteObject(import);
                             UtilDBContext.SaveChanges();
                             //insert
                             UtilDBContext.BulkSaleImports.AddObject(newImport);
                             UtilDBContext.SaveChanges();
                         }
                         else
                         {
                             ModelState.AddModelError(editModel.FullPropertyName(m => m.SerialNum), "Already exists");
                         }
                     }
                 }
             }
         }
     }
     return View(UnlockedSerialPoGridList(editModel.RunName));
 }
        public ActionResult UploadWrhse(BulkSaleImpIModel model, IEnumerable<HttpPostedFileBase> uploadedFiles)
        {
            CountUnLocked(model.IfNotNull(m => m.RunName));

            HttpPostedFileBase file = uploadedFiles.IfNotNull(f => f.First());
            if (file == null)
            {
                ModelState.AddModelError("", "No file was uploaded");
            }
            if (ModelState.IsValid)
            {
                Stream stream = file.InputStream;
                StreamReader sr = new StreamReader(stream);

                int rowCount = 0;
                if (model.SkipFirstRow)
                {
                    sr.ReadLine();
                }
                string line;
                string[] row;
                while ((line = sr.ReadLine()) != null)
                {
                    if (!String.IsNullOrWhiteSpace(line))
                    {
                        row = line.Trim().Split(',');

                        BulkSaleImport newImport = new BulkSaleImport();
                        newImport.RunName = model.RunName;
                        newImport.SerialNum = row[0];
                        if (row.Length > 1)
                        {
                            newImport.CustPO = row[1];
                        }

                        BulkSaleImport existImport = null;
                        if (!model.Insert)
                        {
                            existImport = (from i in UtilDBContext.BulkSaleImports
                                           where i.RunName == newImport.RunName && i.SerialNum == newImport.SerialNum
                                           select i).FirstOrDefault();
                        }
                        if (existImport == null)
                        {
                            UtilDBContext.BulkSaleImports.AddObject(newImport);
                        }
                        else
                        {
                            existImport.CustPO = newImport.CustPO;
                        }

                        rowCount++;
                    }
                }
                if (rowCount > 0)
                {
                    UtilDBContext.SaveChanges();
                    return RedirectToAction("EditWrhse", new {id = model.RunName});
                }
                else
                    ModelState.AddModelError("", "No rows were imported");
            }
            return View(model);
        }