public async Task <IActionResult> Create([FromBody] OfferCreateDTO offerDTO) { var location = GetControllerActionNames(); try { _logger.LogInfo($"{location}: Create Attempted"); if (offerDTO == null) { _logger.LogWarn($"{location}: Empty Request was submitted"); return(BadRequest(ModelState)); } if (!ModelState.IsValid) { _logger.LogWarn($"{location}: Data was Incomplete"); return(BadRequest(ModelState)); } var offer = _mapper.Map <Offer>(offerDTO); var isSuccess = await _offerRepository.Create(offer); if (!isSuccess) { return(InternalError($"{location}: Creation failed")); } _logger.LogInfo($"{location}: Creation was successful"); return(Created("Create", new { offer })); } catch (Exception e) { return(InternalError($"{location}: {e.Message} - {e.InnerException}")); } }
public async Task <ActionResult <Entities.Offer> > CreateOffer([FromBody] Entities.Offer offer) { await _repository.Create(offer); this.PublishEvent("create", "company.offer", offer: offer); this.PublishEvent("create", "customer.offer", offer: offer); this.PublishEvent("create", "demand.offer", offer: offer); return(CreatedAtAction("GetOffers", new { offer.Id }, offer)); }
public async Task <bool> CreateOffer(Offer offer) { try { _offerRepository.Create(offer); await _offerRepository.SaveAsync(); return(true); } catch (Exception ex) { throw new Exception(ex.ToString()); } }
public IActionResult Post([FromBody] Offer offer) { //var userName = User.Identity.Name; //var user = userRepository.ReadByName(username); if (ModelState.IsValid) { if (offer != null) { offer.DateOfCreate = DateTime.Now; offer.CustomerId = 1; //user.Id; исполнитель(создатель - аторизованный пользователь) repository.Create(offer); return(Ok(offer)); } } return(BadRequest()); }
public void CreateOffer(CreateOfferParams offerParams) { var employee = _employeeRepository.FindEmployeeById(offerParams.EmployeeId); if (employee == null) { throw new ObjectNotFoundException($"Employee profile with id={offerParams.EmployeeId} not found"); } var job = _jobRepository.FindJobById(offerParams.JobId); if (job == null) { throw new ObjectNotFoundException($"Job with id={offerParams.JobId} not found"); } if (offerParams.EmployeeId == job.CustomerId) { throw new ArgumentException("You cannot create offer on youe job"); } var offerForJob = _offerRepository.FindOffer(offerParams.JobId, offerParams.EmployeeId); if (offerForJob != null) { throw new ArgumentException($"At user with id={employee.Id} already have offer to job with id={job.Id}"); } var offer = new Offer() { Job = job, Employee = employee, Text = offerParams.Text, AddedDate = DateTime.UtcNow, OfferPayment = offerParams.OfferPayment, ImplementationDays = offerParams.ImplementationDays }; _offerRepository.Create(offer); }
public void AddOffer(OfferViewModel model) { var entity = mapper.Map <OfferViewModel, OfferEntity>(model); repository.Create(entity); }
public Task CreateOffer(Offer offer) { return(_offerRepository.Create(offer)); }