public IResult <IQueryable <FacilityReturn> > Execute(FacilityKey facilityKey, bool includeLocations, bool includeShippingLabel) { facilityKey = facilityKey ?? FacilityKey.Null.ToFacilityKey(); var filterFacilityKey = !facilityKey.Equals(FacilityKey.Null); var selector = FacilityProjectors.Select(includeLocations, includeShippingLabel); var result = _facilityUnitOfWork.FacilityRepository.Filter(w => (!filterFacilityKey || w.Id == facilityKey.FacilityKey_Id)); var results = result.OrderBy(w => w.Name).AsExpandable().Select(w => selector.Invoke(w)); return(new SuccessResult <IQueryable <FacilityReturn> >(results)); }
public IResult <IInventoryCycleCountReportReturn> GetInventoryCycleCountReport(string facilityKey, string groupName) { var facilityKeyResult = KeyParserHelper.ParseResult <IFacilityKey>(facilityKey); if (!facilityKeyResult.Success) { return(facilityKeyResult.ConvertTo <IInventoryCycleCountReportReturn>()); } var parsedFacilityKey = facilityKeyResult.ResultingObject.ToFacilityKey(); var predicate = parsedFacilityKey.FindByPredicate; var select = FacilityProjectors.SelectInventoryCycleCount(groupName); var facility = _inventoryUnitOfWork.FacilityRepository.Filter(predicate).Select(select).FirstOrDefault(); if (facility == null) { return(new InvalidResult <IInventoryCycleCountReportReturn>(null, string.Format(UserMessages.FacilityNotFound, facilityKey))); } facility.Initialize(); return(new SuccessResult <IInventoryCycleCountReportReturn>(facility)); }
public IResult <Dictionary <string, string> > GetFacilityKeys() { var facilities = _inventoryUnitOfWork.FacilityRepository.SourceQuery.Select(FacilityProjectors.Select(false, false)).ToList(); return(new SuccessResult <Dictionary <string, string> >(facilities.ToDictionary(f => f.FacilityKey, f => f.FacilityName))); }