public async Task UpdateVehicleToBedConfigChangeRequestIdAsync(int vehicleToBedConfigId, long vehicleToBedConfigChangeRequestId) { VehicleToBedConfigDocument document = new VehicleToBedConfigDocument { VehicleToBedConfigId = vehicleToBedConfigId.ToString(), VehicleToBedConfigChangeRequestId = vehicleToBedConfigChangeRequestId, }; await _vehicleToBedConfigIndexingRepositoryService.UpdateDocumentAsync(document); }
public async Task AddChangeRequestIndexerAsync(long changeRequestId) { var bedConfigRepositoryService = _vcdbUnitOfWork.GetRepositoryService <BedConfig>() as IVcdbSqlServerEfRepositoryService <BedConfig>; if (bedConfigRepositoryService == null) { return; } var addedBedConfigs = await bedConfigRepositoryService.GetAsync( item => item.ChangeRequestId == changeRequestId, 100000, "BedLength", "BedType"); if (addedBedConfigs == null || !addedBedConfigs.Any()) { throw new InvalidOperationException( "Bed Config Index cannot be updated before the transactional table is updated"); } var addedBedConfig = addedBedConfigs.First(); var vehicleToBedConfigSearchResult = await _vehicletoBedConfigSearchService.SearchAsync(null, $"bedConfigId eq {addedBedConfig.Id}"); var existingVehicleToBedConfigDocuments = vehicleToBedConfigSearchResult.Documents; if (existingVehicleToBedConfigDocuments != null && existingVehicleToBedConfigDocuments.Any()) { throw new InvalidOperationException( "BedConfig already exisit in VehicleToBedConfigIndex. So, this change request cannot be an add request"); } //bed config is new and therefore not yet available in "vehicletobedconfigs" azure search index VehicleToBedConfigDocument newVehicleToBedConfigDocument = new VehicleToBedConfigDocument { VehicleToBedConfigId = Guid.NewGuid().ToString(), BedConfigId = addedBedConfig.Id, BedLengthId = addedBedConfig.BedLengthId, BedLength = addedBedConfig.BedLength.Length, BedLengthMetric = addedBedConfig.BedLength.BedLengthMetric, BedTypeId = addedBedConfig.BedTypeId, BedTypeName = addedBedConfig.BedType.Name }; await this._vehicleToBedConfigIndexingService.UploadDocumentAsync(newVehicleToBedConfigDocument); }
private async Task InsertOrUpdateVehicleToBedConfigDocuments(List <VehicleToBedConfig> updatedVehicleToBedConfigs, bool isReplace = false) { if (updatedVehicleToBedConfigs == null) { return; } foreach (var updatedVehicleToBedConfig in updatedVehicleToBedConfigs) //NOTE: updatedVehicles will contain more than 1 item when processing base vehicle replace { var vehicletoBedConfigDocument = new VehicleToBedConfigDocument { VehicleToBedConfigId = updatedVehicleToBedConfig.Id.ToString(), BedConfigChangeRequestId = isReplace ? -1 : (long?)null, VehicleToBedConfigChangeRequestId = -1, BaseVehicleId = updatedVehicleToBedConfig.Vehicle.BaseVehicleId, BedTypeId = updatedVehicleToBedConfig.BedConfig.BedTypeId, BedTypeName = updatedVehicleToBedConfig.BedConfig.BedType.Name, BedLengthId = updatedVehicleToBedConfig.BedConfig.BedTypeId, BedLength = updatedVehicleToBedConfig.BedConfig.BedLength.Length, BedLengthMetric = updatedVehicleToBedConfig.BedConfig.BedLength.BedLengthMetric, BedConfigId = updatedVehicleToBedConfig.BedConfigId, MakeId = updatedVehicleToBedConfig.Vehicle.BaseVehicle.MakeId, MakeName = updatedVehicleToBedConfig.Vehicle.BaseVehicle.Make.Name, ModelId = updatedVehicleToBedConfig.Vehicle.BaseVehicle.ModelId, ModelName = updatedVehicleToBedConfig.Vehicle.BaseVehicle.Model.Name, RegionId = updatedVehicleToBedConfig.Vehicle.RegionId, RegionName = updatedVehicleToBedConfig.Vehicle.Region.Name, Source = updatedVehicleToBedConfig.Vehicle.SourceName, SubModelId = updatedVehicleToBedConfig.Vehicle.SubModelId, SubModelName = updatedVehicleToBedConfig.Vehicle.SubModel.Name, VehicleId = updatedVehicleToBedConfig.VehicleId, VehicleTypeGroupId = updatedVehicleToBedConfig.Vehicle.BaseVehicle.Model.VehicleType.VehicleTypeGroupId, VehicleTypeGroupName = updatedVehicleToBedConfig.Vehicle.BaseVehicle.Model.VehicleType.VehicleTypeGroup.Name, VehicleTypeId = updatedVehicleToBedConfig.Vehicle.BaseVehicle.Model.VehicleTypeId, VehicleTypeName = updatedVehicleToBedConfig.Vehicle.BaseVehicle.Model.VehicleType.Name, YearId = updatedVehicleToBedConfig.Vehicle.BaseVehicle.YearId, }; await this._vehicleToBedConfigIndexingService.UploadDocumentAsync(vehicletoBedConfigDocument); } }
public async Task RejectChangeRequestIndexerAsync(long changeRequestId) { var vehicletoBedConfigRepositoryService = _vcdbUnitOfWork.GetRepositoryService <VehicleToBedConfig>() as IVcdbSqlServerEfRepositoryService <VehicleToBedConfig>; if (vehicletoBedConfigRepositoryService == null) { return; } var updatedVehicleToBedConfigs = await vehicletoBedConfigRepositoryService.GetAsync(item => item.ChangeRequestId == changeRequestId); if (updatedVehicleToBedConfigs == null || !updatedVehicleToBedConfigs.Any()) { //Pushkar: need to test this condition throw new InvalidOperationException( "Vehicle To Bed Config Index cannot be updated before the transactional table is updated"); } foreach (var updatedVehicleToBedConfig in updatedVehicleToBedConfigs) { var vehicletoBedConfigDocument = new VehicleToBedConfigDocument { VehicleToBedConfigId = updatedVehicleToBedConfig.Id.ToString(), VehicleToBedConfigChangeRequestId = -1, }; await this._vehicleToBedConfigIndexingService.UploadDocumentAsync(vehicletoBedConfigDocument); } //Required when processing bedconfig REPLACE CR await ClearBedConfigChangeRequestId(changeRequestId); }
public async Task <DocumentIndexResult> UpdateDocumentAsync(VehicleToBedConfigDocument vehicleToBedConfigDocument) { return(await UpdateDocumentsAsync(new List <VehicleToBedConfigDocument> { vehicleToBedConfigDocument })); }
public Task UploadDocumentAsync(VehicleToBedConfigDocument vehicleToBedConfigDocument) { throw new NotImplementedException(); }
public async Task UploadDocumentAsync(VehicleToBedConfigDocument vehicleToBedConfigDocument) { await _vehicleToBedConfigIndexingRepositoryService.UpdateDocumentAsync(vehicleToBedConfigDocument); }