public void StormsMilestoneRequirement(Models.DTO.WorkRequest workRequest, Models.DTO.WorkPacket workPacket) { try { //check to see if the requirement exists on the work request Forestry.Models.DTO.MilestoneRequirement mreq = _workRequestMilestoneRequirementRequestor.Get( new Uri(BaseManagedWorkApiUri + ResolveCurlyBrackets(Properties.Settings.Default.ManagedWorkOrderApiResourse_MilestoneRequirement, workPacket.WorkRequestId.ToString(), "624")) ); if (mreq == null) { CreateMilestoneRequirement(workRequest, workPacket); } else { mreq.Status = "R"; UpdateMilestoneRequirement(workRequest, workPacket, mreq); } } catch (HttpResponseException ex) { Console.WriteLine("[WR:" + workPacket.WorkRequestId + " " + "WP:" + workPacket.WorkPacketId + "][FAILED-]-failed to log to STORMS milestone requirement"); Console.WriteLine("Http Status Code:" + ex.Response.StatusCode.ToString()); Console.WriteLine("*************Http Response Error***************"); foreach (var header in ex.Response.Headers) { Console.WriteLine(header.Key + ", " + header.Value.ToList()[0]); } Console.WriteLine("*************Http Response Error***************"); CreateRemedyTicket(workRequest, workPacket, ex); } }
public Forestry.Models.DTO.WorkRequest GetWorkRequestFromApi(Forestry.Models.DTO.WorkPacket workPacket) { //get the work request resourse dynamic workRequest = _workRequestRequestor.Get(new Uri(BaseManagedWorkApiUri + ResolveCurlyBrackets(Properties.Settings.Default.ManagedWorkOrderApiResourse_WorkRequest, workPacket.WorkRequestId.ToString()))); //transform dynamic into work request DTO and resolve HATEOAS uri's Forestry.Models.DTO.WorkRequest wr = TransformDynamicWorkRequest(workRequest); Console.WriteLine("[WR:" + workPacket.WorkRequestId + " " + "WP:" + workPacket.WorkPacketId + "][SUCCESS]-retrieved Managed Work Order data"); return(wr); }
private Forestry.Models.DTO.WorkRequest TransformDynamicWorkRequest(dynamic workRequest) { var json = Newtonsoft.Json.JsonConvert.SerializeObject(workRequest); Forestry.Models.DTO.WorkRequest wr = Newtonsoft.Json.JsonConvert.DeserializeObject <Forestry.Models.DTO.WorkRequest>( json, new JsonSerializerSettings() { DefaultValueHandling = DefaultValueHandling.Ignore, TypeNameHandling = TypeNameHandling.None, NullValueHandling = NullValueHandling.Include, ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver(), Converters = { new Newtonsoft.Json.Converters.ExpandoObjectConverter() } } ); wr.Customers = _workRequestCustomersRequestor.Get(new Uri(UriHack(workRequest.customersUri.ToString()))); wr.Premises = _workRequestPremisesRequestor.Get(new Uri(UriHack(workRequest.premisesUri.ToString()))); wr.ExtraDetails = _workRequestExtraDetailsRequestor.Get(new Uri(UriHack(workRequest.extraDetailsUri.ToString()))); wr.Remarks = _workRequestRemarksRequestor.Get(new Uri(UriHack(workRequest.remarksUri.ToString()))); return(wr); }