Example #1
0
        public IHttpActionResult PutLostStuff(int id, LostStuffRequestModel lostStuffRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            LostStuff lostStuff;

            try
            {
                lostStuff           = repository.GetById(id);
                lostStuffRequest.Id = lostStuff.Id;
            }
            catch (Exception ex)
            {
                return(this.NotFound());
            }

            if (lostStuff.Id != lostStuffRequest.Id)
            {
                return(BadRequest());
            }

            lostStuff.UpdatedAt   = DateTime.Now;
            lostStuff.UserId      = "2d1b6e60-70fa-4439-8532-40667bb76941";
            lostStuff.UserName    = "******";
            lostStuff.Name        = lostStuffRequest.Name;
            lostStuff.Description = lostStuffRequest.Description;
            lostStuff.Price       = lostStuffRequest.Price;
            lostStuff.PhoneNumber = lostStuffRequest.PhoneNumber;
            repository.Update(lostStuff);

            return(this.Ok(lostStuffRequest));
        }
        public IHttpActionResult PutLostStuff(int id, LostStuffRequestModel lostStuffRequest)
        {
            var userData = GetCurrentUser(db);

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            LostStuff lostStuff;

            try
            {
                lostStuff = repository.GetById(id);
                // lostStuffRequest.Id = lostStuff.Id;
            }
            catch (Exception ex)
            {
                return(this.NotFound());
            }

            //if (lostStuff.Id != lostStuffRequest.Id)
            //{
            //    return BadRequest();
            //}

            lostStuff.UpdatedAt   = DateTime.Now;
            lostStuff.UserId      = userData.Id;
            lostStuff.UserName    = userData.UserName;
            lostStuff.Name        = lostStuffRequest.Name;
            lostStuff.Description = lostStuffRequest.Description;
            lostStuff.Price       = lostStuffRequest.Price;
            lostStuff.PhoneNumber = lostStuffRequest.PhoneNumber;
            repository.Update(lostStuff);

            return(this.Ok(lostStuffRequest));
        }
        public IHttpActionResult PostLostStuff(LostStuffRequestModel lostStuffRequest)
        {
            var userData = GetCurrentUser(db);

            LostStuff lostStuff = new LostStuff();

            var httpRequest = HttpContext.Current.Request;

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            lostStuff.CreatedAt   = DateTime.Now;
            lostStuff.UpdatedAt   = DateTime.Now;
            lostStuff.UserId      = userData.Id;
            lostStuff.UserName    = userData.UserName;
            lostStuff.Name        = lostStuffRequest.Name;
            lostStuff.Description = lostStuffRequest.Description;
            lostStuff.Price       = lostStuffRequest.Price;
            lostStuff.PhoneNumber = lostStuffRequest.PhoneNumber;
            db.LostStuffs.Add(lostStuff);
            db.SaveChanges();

            ////create directory for entity
            string directoryPath = string.Format("~/Content/UploadedFiles/" + lostStuff.Id.ToString() + "/");

            if (!Directory.Exists(directoryPath))
            {
                Directory.CreateDirectory(HttpContext.Current.Server.MapPath(directoryPath));
            }

            if (httpRequest.Files.Count > 0)
            {
                foreach (string file in httpRequest.Files)
                {
                    var postedFile = httpRequest.Files[file];

                    if (file.Equals("mainImage"))
                    {
                        if (httpRequest.Files[file] != null)
                        {
                            lostStuff.ImageName = postedFile.FileName;
                            lostStuff.ImagePath = directoryPath + postedFile.FileName;
                            postedFile.SaveAs(HttpContext.Current.Server.MapPath(directoryPath + postedFile.FileName));
                            db.SaveChanges();
                        }
                        else
                        {
                            lostStuff.ImageName = "default.jpg";
                            lostStuff.ImagePath = "~/Content/UploadedFiles/default.jpg";
                            db.SaveChanges();
                        }
                    }
                    else
                    {
                        if (httpRequest.Files[file] != null)
                        {
                            postedFile.SaveAs(HttpContext.Current.Server.MapPath(directoryPath + postedFile.FileName));
                        }
                        else
                        {
                            continue;
                        }
                    }
                }
            }
            else
            {
                lostStuff.ImageName = "default.jpg";
                lostStuff.ImagePath = "~/Content/UploadedFiles/default.jpg";
                db.SaveChanges();
            }
            return(Ok());
        }