public async Task <JobItemDto> AddOrUpdateItemAsync(JobItemDto item) { if (item == null) { throw new ArgumentException("Job item is invalid!"); } JobItem jobItemEntity = null; if (item.JobItemId <= 0) { jobItemEntity = this.mapper.Map <JobItem>(item); this.context.Add(jobItemEntity); } else { jobItemEntity = await this.context.JobItems.FindAsync(item.JobItemId); if (jobItemEntity == null) { throw new ArgumentException("Job item was not found!"); } this.mapper.Map(item, jobItemEntity); this.context.Update(jobItemEntity); } await this.context.SaveChangesAsync(); return(await this.GetItemAsync(jobItemEntity.JobItemId)); }
public async Task <ActionResult <CustomerDto> > UpdateJobItem(JobItemDto jobItem) { var user = await _userManager.FindByEmailFromClaimsPrinciple(HttpContext.User); var itemToMap = _mapper.Map <JobItemDto, JobItem>(jobItem); var updateJobItem = await _unitOfWork.CustomerService.UpdateJobItemAsync(itemToMap); return(Ok(_mapper.Map <JobItem, JobItemDto>(updateJobItem))); }
public async Task <ActionResult <JobItemDto> > AddJobItem(JobItemDto jobItem) { try { var user = await _userManager.FindByEmailFromClaimsPrinciple(HttpContext.User); var itemToMap = _mapper.Map <JobItemDto, JobItem>(jobItem); var createdItem = await _unitOfWork.CustomerService.AddJobItemAsync(itemToMap); var ReturnToMap = _mapper.Map <JobItem, JobItemDto>(createdItem); return(Ok(ReturnToMap)); } catch (DbUpdateConcurrencyException) { return(NotFound()); } }