public async Task <IWrappedResponse> Search(LoadingLocationsSearchRequest request) { var query = _olmaLoadingLocationRepo.FindAll() .IgnoreQueryFilters().Where(i => !i.IsDeleted) .AsNoTracking().Where(d => !d.IsDeleted); if (request.Id.HasValue) { query = query.Where(d => d.Id == request.Id); return(Ok(await query.ProjectTo <LoadingLocationAdministration>(Mapper.ConfigurationProvider).FirstOrDefaultAsync())); } if (request.CustomerDivisionId.HasValue) { var olmaLoadingLocations = await query.Where(d => d.CustomerDivisionId == request.CustomerDivisionId) .Include(a => a.Address).ToListAsync(); return(Ok(Mapper.Map <IEnumerable <LoadingLocationAdministration> >(olmaLoadingLocations.AsEnumerable()))); } return(new WrappedResponse { ResultType = ResultType.BadRequest, State = ErrorHandler.Create().AddMessage(new GeneralError()).GetServiceState() }); }
public async Task <ActionResult <LoadingLocationAdministration> > GetById(int id) { var request = new LoadingLocationsSearchRequest { Id = id }; return(await _loadingLocationsService.Search(request).Convert <LoadingLocationAdministration>(this)); }
public async Task <ActionResult <IEnumerable <LoadingLocationAdministration> > > GetByCustomerDivisionId(int id) { var request = new LoadingLocationsSearchRequest { CustomerDivisionId = id }; return(await _loadingLocationsService.Search(request).Convert <IEnumerable <LoadingLocationAdministration> >(this)); }