//public ActionResult Create([Bind(Include = "CheckRequestFId,MlsCo,CheckStatusId,PurchaseOrderNumber,PartNumber,PartDescription,CheckNo,Amount,Customer,Supplier,RequestDateTime,MailDateTime,ActualMailDateTime,ShipMethod,TrackingInfo,Notes")] CheckRequestF checkRequestF)
        public ActionResult Create(CheckRequestF checkRequestF)
        {
            if (ModelState.IsValid)
            {
                List <FileCheckRequestFDetail> fileCheckRequestFDetails = new List <FileCheckRequestFDetail>();
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];

                    if (file != null && file.ContentLength > 0)
                    {
                        var fileName = Path.GetFileName(file.FileName);
                        FileCheckRequestFDetail fileCheckRequestFDetail = new FileCheckRequestFDetail()
                        {
                            FileName  = fileName,
                            Extension = Path.GetExtension(fileName),
                            Id        = Guid.NewGuid()
                        };
                        fileCheckRequestFDetails.Add(fileCheckRequestFDetail);

                        var path = Path.Combine(Server.MapPath("~/images/"), fileCheckRequestFDetail.Id + fileCheckRequestFDetail.Extension);
                        file.SaveAs(path);
                    }
                }

                checkRequestF.FileCheckRequestFDetails = fileCheckRequestFDetails;
                db.CheckRequestFs.Add(checkRequestF);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View());
            //return View(checkRequestF);
        }
        //public ActionResult Edit([Bind(Include = "CheckRequestFId,MlsCo,CheckStatusId,PurchaseOrderNumber,PartNumber,PartDescription,CheckNo,Amount,Customer,Supplier,RequestDateTime,MailDateTime,ActualMailDateTime,ShipMethod,TrackingInfo,Notes")] CheckRequestF checkRequestF)
        public ActionResult Edit(CheckRequestF checkRequestF)
        {
            if (ModelState.IsValid)
            {
                //New Files
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];

                    if (file != null && file.ContentLength > 0)
                    {
                        var fileName = Path.GetFileName(file.FileName);
                        FileCheckRequestFDetail fileCheckRequestFDetail = new FileCheckRequestFDetail()
                        {
                            FileName        = fileName,
                            Extension       = Path.GetExtension(fileName),
                            Id              = Guid.NewGuid(),
                            CheckRequestFId = checkRequestF.CheckRequestFId
                        };
                        var path = Path.Combine(Server.MapPath("~/images/"), fileCheckRequestFDetail.Id + fileCheckRequestFDetail.Extension);
                        file.SaveAs(path);

                        db.Entry(fileCheckRequestFDetail).State = EntityState.Added;
                    }
                }

                db.Entry(checkRequestF).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View());
            //return View(checkRequestF);
        }
        // GET: CheckRequestFs/Edit/5
        public ActionResult Edit(int?id)
        {
            var checkrequestFs = db.CheckRequestFs.SingleOrDefault(c => c.CheckRequestFId == id);

            var checkstatuses = db.CheckStatuses.ToList();

            var viewModel = new SaveCheckRequestFViewModel()
            {
                CheckRequestF = checkrequestFs,
                CheckStatuses = checkstatuses
            };

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            CheckRequestF checkRequestF = db.CheckRequestFs.Include(s => s.FileCheckRequestFDetails).SingleOrDefault(x => x.CheckRequestFId == id);

            //CheckRequestF checkRequestF = db.CheckRequestFs.Find(id);
            if (checkRequestF == null)
            {
                return(HttpNotFound());
            }
            return(View("Edit", viewModel));
            //return View(checkRequestF);
        }
        public ActionResult DeleteConfirmed(int id)
        {
            CheckRequestF checkRequestF = db.CheckRequestFs.Find(id);

            db.CheckRequestFs.Remove(checkRequestF);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        // GET: CheckRequestFs/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            CheckRequestF checkRequestF = db.CheckRequestFs.Find(id);

            if (checkRequestF == null)
            {
                return(HttpNotFound());
            }
            return(View(checkRequestF));
        }