Пример #1
0
        public RentalAgreement UpdateRentalAgreement(Guid rentalAgreementId,
                                                     EditableRentalAgreement editableRentalAgreement)
        {
            var rentalAgreementCol   = db.GetCollection <RentalAgreement>("RentalAgreements");
            var foundRentalAgreement = rentalAgreementCol.FindById(rentalAgreementId);

            if (foundRentalAgreement == null)
            {
                return(null);
            }

            if (editableRentalAgreement.MonthlyRate.HasValue)
            {
                foundRentalAgreement.MonthlyRate = editableRentalAgreement.MonthlyRate.Value;
            }

            if (editableRentalAgreement.PropertyId.HasValue)
            {
                foundRentalAgreement.PropertyId = editableRentalAgreement.PropertyId.Value;
            }

            rentalAgreementCol.Update(foundRentalAgreement);

            return(foundRentalAgreement);
        }
Пример #2
0
        // PUT: api/RentalAgreements/5
        public IHttpActionResult Put(Guid id, [FromBody] EditableRentalAgreement updatedRentalAgreement)
        {
            var rentalAgreementDao   = new RentalAgreementDao();
            var foundRentalAgreement = rentalAgreementDao.UpdateRentalAgreement(id, updatedRentalAgreement);

            if (foundRentalAgreement == null)
            {
                return(NotFound());
            }
            else
            {
                return(Ok(foundRentalAgreement));
            }
        }
Пример #3
0
        public RentalAgreement AddNewRentalAgreement(EditableRentalAgreement editableRentalAgreement)
        {
            if (!editableRentalAgreement.OwnerId.HasValue || !editableRentalAgreement.RenterId.HasValue ||
                !editableRentalAgreement.MonthlyRate.HasValue || !editableRentalAgreement.PropertyId.HasValue)
            {
                throw new ValidationException("Rental Agreement requires a Renter Id, Owner Id, and a Monthly Rate");
            }

            var rentalAgreementCol = db.GetCollection <RentalAgreement>("RentalAgreements");
            var newRentalAgreement = new RentalAgreement()
            {
                Id          = Guid.NewGuid(),
                OwnerId     = editableRentalAgreement.OwnerId.Value,
                RenterId    = editableRentalAgreement.RenterId.Value,
                PropertyId  = editableRentalAgreement.PropertyId.Value,
                MonthlyRate = editableRentalAgreement.MonthlyRate.Value
            };

            rentalAgreementCol.Insert(newRentalAgreement);

            return(newRentalAgreement);
        }
Пример #4
0
        // POST: api/RentalAgreements
        public IHttpActionResult Post([FromBody] EditableRentalAgreement inputRentalAgreement)
        {
            var rentalAgreementDao = new RentalAgreementDao();

            return(Ok(rentalAgreementDao.AddNewRentalAgreement(inputRentalAgreement)));
        }