public Task <ContractExecutionResult> PostTemperatureDetails([FromBody] TemperatureDetailRequest temperatureDetailRequest) { Log.LogInformation($"{nameof(PostTemperatureDetails)}: {Request.QueryString}"); temperatureDetailRequest.Validate(); ValidateFilterMachines(nameof(PostTemperatureDetails), temperatureDetailRequest.ProjectUid, temperatureDetailRequest.Filter); return(WithServiceExceptionTryExecuteAsync(() => RequestExecutorContainer .Build <DetailedTemperatureExecutor>(ConfigStore, LoggerFactory, ServiceExceptionHandler) .ProcessAsync(temperatureDetailRequest))); }
protected override async Task <ContractExecutionResult> ProcessAsyncEx <T>(T item) { var request = CastRequestObjectTo <TemperatureDetailsRequest>(item); var temperatureTargets = request.Targets.Select(t => (int)t).ToArray(); // already converted to 10ths #if RAPTOR if (UseTRexGateway("ENABLE_TREX_GATEWAY_TEMPERATURE")) { #endif var temperatureDetailsRequest = new TemperatureDetailRequest( request.ProjectUid.Value, request.Filter, temperatureTargets, AutoMapperUtility.Automapper.Map <OverridingTargets>(request.LiftBuildSettings), AutoMapperUtility.Automapper.Map <LiftSettings>(request.LiftBuildSettings)); var temperatureDetailsResult = await trexCompactionDataProxy.SendDataPostRequest <TemperatureDetailResult, TemperatureDetailRequest>(temperatureDetailsRequest, "/temperature/details", customHeaders); return(new CompactionTemperatureDetailResult(temperatureDetailsResult)); #if RAPTOR } var filter = RaptorConverters.ConvertFilter(request.Filter, request.ProjectId, raptorClient); var liftBuildSettings = RaptorConverters.ConvertLift(request.LiftBuildSettings, TFilterLayerMethod.flmNone); var raptorResult = raptorClient.GetTemperatureDetails(request.ProjectId ?? VelociraptorConstants.NO_PROJECT_ID, ASNodeRPC.__Global.Construct_TASNodeRequestDescriptor(Guid.NewGuid(), 0, TASNodeCancellationDescriptorType.cdtTemperatureDetailed), new TTemperatureDetailSettings { TemperatureList = temperatureTargets, } , filter, liftBuildSettings, out var temperatureDetails); if (raptorResult == TASNodeErrorStatus.asneOK) { return(new CompactionTemperatureDetailResult(temperatureDetails.Percents)); } throw CreateServiceException <DetailedTemperatureExecutor>((int)raptorResult); #endif }