コード例 #1
0
        public IHttpActionResult PostOffer(OfferModel offer)
        {
            if (!ModelState.IsValid || offer.CategoryID == null || offer.SellerID == null)
            {
                return(BadRequest(ModelState));
            }

            CategoryModel category = categoriesService.GetCategory((int)offer.CategoryID);
            UserModel     seller   = usersService.GetUser((int)offer.SellerID);

            if (category == null || seller == null)
            {
                return(NotFound());
            }

            if (seller.UserRole != UserRoles.ROLE_SELLER)
            {
                return(BadRequest("User's role must be ROLE_SELLER"));
            }

            offer.Category = category;
            offer.Seller   = seller;
            OfferModel createdOffer = offersService.CreateOffer(offer);

            return(CreatedAtRoute("PostOffer", new { id = createdOffer.ID }, createdOffer));
        }
コード例 #2
0
        public IHttpActionResult PostOfferModel(Offer offerModel)
        {
            // Omoguciti dodavanje i izmenu kategorije i prodavca iz ponude
            // Bez Foreign Key svojstava stvari su mnogo komplikovane..
            // Sa Foreign Key JSON koji saljemo je znatno svedeniji ali je i logika bolja

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

            //if (!ModelState.IsValid || offerModel.categoryId == null || offerModel.userModel == null)

            // Mladen's code:

            // You also need to update your Model classes. Mladen's solution is to use 'normal' property
            // names and map them to the 'wacky' database column names
            if (!ModelState.IsValid || offerModel.categoryId == null || offerModel.sellerId == null)
            {
                return(BadRequest(ModelState));
            }

            Category category = categoryService.GetCategory((int)offerModel.categoryId);
            User     seller   = userService.GetUser((int)offerModel.sellerId);

            if (category == null || seller == null)
            {
                return(NotFound());
            }

            if (seller.user_role != Models.User.UserRoles.ROLE_SELLER)
            {
                return(base.BadRequest("User's role must be ROLE_SELLER"));
            }

            offerModel.category = category;
            offerModel.seller   = seller;
            Offer createdOffer = offerService.CreateOffer(offerModel);

            // my old stuff
            // offerService.CreateOffer(offerModel);

            return(CreatedAtRoute("SingleOfferById", new { id = offerModel.id }, offerModel));
        }