示例#1
0
        public OfferModel UpdateOfferStatus(int id, OfferModel.OfferStatus newStatus)
        {
            OfferModel offer = db.OffersRepository.GetByID(id);

            if (offer != null)
            {
                offer.offer_status = newStatus;
                db.OffersRepository.Update(offer);
                db.Save();
            }

            // ukoliko se ponuda proglasi isteklom potrebno je otkazati sve racune koji sadrze tu ponudu
            if (newStatus == OfferModel.OfferStatus.EXPIRED)
            {
                // racuni koji sadrze ponudu
                var bills = db.BillsRepository.Get(
                    filter: b => b.offerId == id);

                foreach (var bill in bills)
                {
                    bill.paymentCancelled = true;
                    db.BillsRepository.Update(bill);
                }

                db.Save();
            }

            return(offer);
        }
        public IHttpActionResult PutOfferModelChangeStatus(int id, OfferModel.OfferStatus status)
        {
            OfferModel offer = offerService.UpdateOfferStatus(id, status);

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

            return(Ok(offer));
        }
        public IHttpActionResult PutOfferModelChangeStatus(int id, OfferModel.OfferStatus status)
        {
            if (db.OfferRepository.GetByID(id) == null)
            {
                return(NotFound());
            }

            OfferModel savedModel = db.OfferRepository.GetByID(id);

            savedModel.offer_status = status;
            // db.OfferRepository.Update(savedModel);
            db.Save();

            return(StatusCode(HttpStatusCode.NoContent));
        }