public override async Task <ChangeRequestStagingModel <Vehicle> > GetChangeRequestStaging <TId>(TId changeRequestId) { ChangeRequestStagingModel <Vehicle> staging = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <Vehicle, TId>(changeRequestId); return(staging); }
public override async Task <ChangeRequestStagingModel <BodyNumDoors> > GetChangeRequestStaging <TId>(TId changeRequestId) { ChangeRequestStagingModel <BodyNumDoors> staging = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <BodyNumDoors, TId>(changeRequestId); return(staging); }
public override async Task <ChangeRequestStagingModel <BedType> > GetChangeRequestStaging <TId>(TId changeRequestId) { ChangeRequestStagingModel <BedType> staging = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <BedType, TId>(changeRequestId); //if (!staging.StagingItem.ChangeType.Equals(ChangeType.Add.ToString(), StringComparison.CurrentCultureIgnoreCase)) //{ // BrakeType currentBrakeType = await FindAsync(staging.StagingItem.EntityId); // staging.EntityCurrent = currentBrakeType; //} return(staging); }
public override async Task <ChangeRequestStagingModel <Region> > GetChangeRequestStaging <TId>(TId changeRequestId) { ChangeRequestStagingModel <Region> staging = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <Region, TId>(changeRequestId); // business specific task. // fill value of "EntityCurrent" //if (!staging.StagingItem.ChangeType.Equals(ChangeType.Add.ToString(), StringComparison.CurrentCultureIgnoreCase)) //{ // Region currentModel = await FindAsync(staging.StagingItem.EntityId); // staging.EntityCurrent = currentModel; //} return(staging); }
public override async Task <ChangeRequestStagingModel <VehicleToDriveType> > GetChangeRequestStaging <TId>( TId changeRequestId) { ChangeRequestStagingModel <VehicleToDriveType> staging = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <VehicleToDriveType, TId>( changeRequestId); //if ( // !staging.StagingItem.ChangeType.Equals(ChangeType.Add.ToString(), // StringComparison.CurrentCultureIgnoreCase)) //{ // VehicleToMfrBodyCode currentVehicleToMfrBodyCode = await FindAsync(staging.StagingItem.EntityId); // staging.EntityCurrent = currentVehicleToBodyCode; //} return(staging); }
public new async Task <DriveTypeChangeRequestStagingModel> GetChangeRequestStaging <TId>(TId changeRequestId) { var result = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <DriveType, TId>(changeRequestId); List <VehicleToDriveType> vehicleToDriveTypes = null; if (result.StagingItem.ChangeType == ChangeType.Replace.ToString()) { result.EntityStaging = result.EntityCurrent; var changeRequestIdLong = Convert.ToInt64(changeRequestId); var vehicleToDriveTypeChangeRequestItems = await this.ChangeRequestBusinessService.GetChangeRequestItemStagingsAsync(item => item.ChangeRequestId == changeRequestIdLong); if (vehicleToDriveTypeChangeRequestItems != null && vehicleToDriveTypeChangeRequestItems.Any()) { var vehicleToDriveTypeIds = vehicleToDriveTypeChangeRequestItems.Select(item => Convert.ToInt32(item.EntityId)).ToList(); vehicleToDriveTypes = await base.Repositories.GetRepositoryService <VehicleToDriveType>() .GetAsync(item => vehicleToDriveTypeIds.Any(id => id == item.Id) && item.DeleteDate == null); //1. Extract the replacement DriveType to DriveTypeid from the first deserialized vehicleToDriveTypeChangeRequestItems var vehicleToDriveType = Serializer.Deserialize <VehicleToDriveType>(vehicleToDriveTypeChangeRequestItems[0].Payload); //2. fill result.EntityStaging with the replacement DriveType details result.EntityStaging = await FindAsync(vehicleToDriveType.DriveTypeId); // 3. fill currentEntity result.EntityCurrent = await FindAsync(result.StagingItem.EntityId); } else { var vehicleToDriveTypeChangeRequestStoreItems = await this.ChangeRequestBusinessService.GetChangeRequestItemAsync(item => item.ChangeRequestId == changeRequestIdLong); if (vehicleToDriveTypeChangeRequestStoreItems != null && vehicleToDriveTypeChangeRequestStoreItems.Any()) { var vehicleToDriveTypeIds = vehicleToDriveTypeChangeRequestStoreItems.Select(item => Convert.ToInt32(item.EntityId)).ToList(); vehicleToDriveTypes = await base.Repositories.GetRepositoryService <VehicleToDriveType>() .GetAsync(item => vehicleToDriveTypeIds.Any(id => id == item.Id) && item.DeleteDate == null); //1. Extract the replacement base vehicle id from the first deserialized vehicleChangeRequestItems var vehicleToDriveType = Serializer.Deserialize <VehicleToDriveType>(vehicleToDriveTypeChangeRequestStoreItems[0].Payload); //2. fill result.EntityStaging with the replacement base vehicle details result.EntityStaging = await FindAsync(vehicleToDriveType.DriveTypeId); // 3. fill currentEntity result.EntityCurrent = await FindAsync(result.StagingItem.EntityId); } } } DriveTypeChangeRequestStagingModel staging = new DriveTypeChangeRequestStagingModel { EntityCurrent = result.EntityCurrent, EntityStaging = result.EntityStaging, //RequestorComments = result.RequestorComments, //ReviewerComments = result.ReviewerComments, Comments = result.Comments, StagingItem = result.StagingItem, ReplacementVehicleToDriveTypes = vehicleToDriveTypes, Attachments = result.Attachments }; return(staging); }
public new async Task <BaseVehicleChangeRequestStagingModel> GetChangeRequestStaging <TId>(TId changeRequestId) { var result = await ChangeRequestBusinessService.GetChangeRequestStagingByChangeRequestIdAsync <BaseVehicle, TId>(changeRequestId); // business specific task. // fill value of "EntityCurrent" //if (!result.StagingItem.ChangeType.Equals(ChangeType.Add.ToString(), StringComparison.CurrentCultureIgnoreCase)) //{ // result.EntityCurrent = await FindAsync(result.StagingItem.EntityId); //} List <Vehicle> vehicles = null; if (result.StagingItem.ChangeType == ChangeType.Replace.ToString()) { var changeRequestIdLong = Convert.ToInt64(changeRequestId); var vehicleChangeRequestItems = await this.ChangeRequestBusinessService.GetChangeRequestItemStagingsAsync(item => item.ChangeRequestId == changeRequestIdLong); if (vehicleChangeRequestItems != null && vehicleChangeRequestItems.Any()) { var vehicleIds = vehicleChangeRequestItems.Select(item => Convert.ToInt32(item.EntityId)).ToList(); vehicles = await base.Repositories.GetRepositoryService <Vehicle>() .GetAsync(item => vehicleIds.Any(id => id == item.Id) && item.DeleteDate == null); //1. Extract the replacement base vehicle id from the first deserialized vehicleChangeRequestItems var vehicle = Serializer.Deserialize <Vehicle>(vehicleChangeRequestItems[0].Payload); //2. fill result.EntityStaging with the replacement base vehicle details result.EntityStaging = await FindAsync(vehicle.BaseVehicleId); // 3. fill currentEntity result.EntityCurrent = await FindAsync(result.StagingItem.EntityId); //NOTE: vehicles will have existing base vehicle id, replacement base vehicle id can be found only in deserialized vehicle //foreach (var item in vehicleChangeRequestItems) //{ // vehicles.Add(Serializer.Deserialize<Vehicle>(item.Payload)); //} } else { var vehicleChangeRequestStoreItems = await this.ChangeRequestBusinessService.GetChangeRequestItemAsync(item => item.ChangeRequestId == changeRequestIdLong); if (vehicleChangeRequestStoreItems != null && vehicleChangeRequestStoreItems.Any()) { var vehicleIds = vehicleChangeRequestStoreItems.Select(item => Convert.ToInt32(item.EntityId)).ToList(); vehicles = await base.Repositories.GetRepositoryService <Vehicle>() .GetAsync(item => vehicleIds.Any(id => id == item.Id) && item.DeleteDate == null); //1. Extract the replacement base vehicle id from the first deserialized vehicleChangeRequestItems var vehicle = Serializer.Deserialize <Vehicle>(vehicleChangeRequestStoreItems[0].Payload); //2. fill result.EntityStaging with the replacement base vehicle details result.EntityStaging = await FindAsync(vehicle.BaseVehicleId); // 3. fill currentEntity result.EntityCurrent = await FindAsync(result.StagingItem.EntityId); } } } BaseVehicleChangeRequestStagingModel staging = new BaseVehicleChangeRequestStagingModel { EntityCurrent = result.EntityCurrent, EntityStaging = result.EntityStaging, //RequestorComments = result.RequestorComments, //ReviewerComments = result.ReviewerComments, Comments = result.Comments, StagingItem = result.StagingItem, ReplacementVehicles = vehicles, Attachments = result.Attachments }; return(staging); }