Esempio n. 1
0
        public async Task <ActionResult <Offer> > UptateOffer(int offerId, OfferToAddDto offerToAddDto)
        {
            var companyId = User.GetUserId();
            var company   = await _unitOfWork.UserRepository.GetUserByIdAsync(companyId);

            var offerToUpdate = await _unitOfWork.OfferRepository.GetOfferByIdAsync(offerId);

            if (offerToUpdate.CompanyName != company.UserName)
            {
                return(Unauthorized("You are not the creator of the offer"));
            }

            var offer = _mapper.Map(offerToAddDto, offerToUpdate);

            offer.CompanyName = company.UserName;

            if (await _unitOfWork.SaveAll())
            {
                return(Ok(offer));
            }

            return(BadRequest("Updating offer didn't succeed"));
        }
Esempio n. 2
0
        public async Task <ActionResult <Offer> > CreateOffer(OfferToAddDto offerToAddDto)
        {
            var companyId = User.GetUserId();
            var company   = await _unitOfWork.UserRepository.GetUserByIdAsync(companyId);

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

            var offer = _mapper.Map <Offer>(offerToAddDto);

            offer.CompanyName = company.UserName;

            _unitOfWork.OfferRepository.Add(offer);

            if (await _unitOfWork.SaveAll())
            {
                return(CreatedAtRoute("offers", new { offerId = offer.Id }, offer));
            }

            return(BadRequest("Adding offer didn't succeed"));
        }