public IHttpActionResult PutVoucherModel(int id, Voucher voucherModel)
        {
            //if (!ModelState.IsValid)
            //{
            //    return BadRequest(ModelState);
            //}

            //if (id != voucherModel.id)
            //{
            //    return BadRequest();
            //}

            //voucherService.UpdateVoucher(id, voucherModel);

            //return StatusCode(HttpStatusCode.NoContent);

            if (!ModelState.IsValid || voucherModel.offerId == null || voucherModel.userId == null)
            {
                return(BadRequest(ModelState));
            }

            if (id != voucherModel.id)
            {
                return(BadRequest());
            }

            Offer offer = offerService.GetOffer((int)voucherModel.offerId);
            User  buyer = userService.GetUser((int)voucherModel.userId);

            if (offer == null || buyer == null)
            {
                return(NotFound());
            }

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

            voucherModel.offerModel = offer;
            voucherModel.userModel  = buyer;
            Voucher updatedVoucher = voucherService.UpdateVoucher(id, voucherModel);

            if (updatedVoucher == null)
            {
                return(NotFound());
            }

            return(Ok(updatedVoucher));
        }
示例#2
0
        public IHttpActionResult PutVoucher(int id, VoucherModel voucher)
        {
            if (!ModelState.IsValid || voucher.OfferID == null || voucher.BuyerID == null)
            {
                return(BadRequest(ModelState));
            }

            if (id != voucher.ID)
            {
                return(BadRequest());
            }

            OfferModel offer = offersService.GetOffer((int)voucher.OfferID);
            UserModel  buyer = usersService.GetUser((int)voucher.BuyerID);

            if (offer == null || buyer == null)
            {
                return(NotFound());
            }

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

            voucher.Offer = offer;
            voucher.Buyer = buyer;
            VoucherModel updatedVoucher = vouchersService.UpdateVoucher(id, voucher);

            if (updatedVoucher == null)
            {
                return(NotFound());
            }

            return(Ok(updatedVoucher));
        }