Ejemplo n.º 1
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            StockStandard stockstandard = _uow.StockStandardRepository.Get(id);

            if (stockstandard == null)
            {
                return(HttpNotFound());
            }

            StockStandardEditViewModel model = new StockStandardEditViewModel()
            {
                StockStandardId       = stockstandard.StockStandardId,
                LotNumber             = stockstandard.LotNumber,
                StockStandardName     = stockstandard.StockStandardName,
                IdCode                = stockstandard.IdCode,
                DateCreated           = stockstandard.DateCreated,
                ExpiryDate            = stockstandard.ExpiryDate,
                CertificateOfAnalysis = stockstandard.InventoryItems.Where(x => x.StockStandard.StockStandardId == stockstandard.StockStandardId).Select(x => x.CertificatesOfAnalysis.OrderBy(y => y.DateAdded).First()).First(),
                MSDS = stockstandard.InventoryItems.Where(x => x.StockStandard.StockStandardId == stockstandard.StockStandardId).Select(x => x.MSDS.OrderBy(y => y.DateAdded).First()).First()
            };

            foreach (var item in stockstandard.InventoryItems)
            {
                model.SupplierName = item.SupplierName;
            }

            return(View(model));
        }
Ejemplo n.º 2
0
        public ActionResult Edit([Bind(Include = "LotNumber,StockStandardId,ExpiryDate,IdCode,SupplierName,StockStandardName")] StockStandardEditViewModel stockstandard, HttpPostedFileBase uploadCofA, HttpPostedFileBase uploadMSDS)
        {
            var errors = ModelState.Values.SelectMany(v => v.Errors);

            if (ModelState.IsValid)
            {
                InventoryItemRepository inventoryRepo = _uow.InventoryItemRepository;
                var user = _uow.GetCurrentUser();

                InventoryItem invItem = inventoryRepo.Get()
                                        .Where(item => item.StockStandard != null && item.StockStandard.StockStandardId == stockstandard.StockStandardId)
                                        .FirstOrDefault();

                StockStandard updateStandard = invItem.StockStandard;
                updateStandard.StockStandardName = stockstandard.StockStandardName;
                updateStandard.IdCode            = stockstandard.IdCode;
                updateStandard.LotNumber         = stockstandard.LotNumber;
                updateStandard.LastModifiedBy    = user.UserName;
                updateStandard.DateModified      = DateTime.Today;
                updateStandard.ExpiryDate        = stockstandard.ExpiryDate;

                _uow.StockStandardRepository.Update(updateStandard);
                //_uow.Commit();

                if (uploadCofA != null)
                {
                    var cofa = new CertificateOfAnalysis()
                    {
                        FileName    = uploadCofA.FileName,
                        ContentType = uploadCofA.ContentType,
                        DateAdded   = DateTime.Today
                    };

                    using (var reader = new System.IO.BinaryReader(uploadCofA.InputStream)) {
                        cofa.Content = reader.ReadBytes(uploadCofA.ContentLength);
                    }
                    stockstandard.CertificateOfAnalysis = cofa;
                    //add certificate analysis
                    invItem.CertificatesOfAnalysis.Add(cofa);
                }
                if (uploadMSDS != null)
                {
                    var msds = new MSDS()
                    {
                        FileName    = uploadMSDS.FileName,
                        ContentType = uploadMSDS.ContentType,
                        DateAdded   = DateTime.Today
                    };
                    using (var reader = new System.IO.BinaryReader(uploadMSDS.InputStream)) {
                        msds.Content = reader.ReadBytes(uploadMSDS.ContentLength);
                    }

                    stockstandard.MSDS = msds;

                    var msdsRepo = new MSDSRepository();

                    var oldSDS = msdsRepo.Get()
                                 .Where(item => item.InventoryItem.StockStandard != null && item.InventoryItem.StockStandard.StockStandardId == stockstandard.StockStandardId)
                                 .First();

                    oldSDS.Content     = msds.Content;
                    oldSDS.FileName    = msds.FileName;
                    oldSDS.ContentType = msds.ContentType;
                    oldSDS.DateAdded   = DateTime.Today;

                    msdsRepo.Update(oldSDS);
                    _uow.Commit();
                }

                invItem.SupplierName = stockstandard.SupplierName;
                inventoryRepo.Update(invItem);
                //_uow.Commit();

                return(RedirectToAction("Details", new { id = stockstandard.StockStandardId }));
            }
            return(View(stockstandard));
        }