private twmwr GetWorkRequestOrigin(Forestry.Models.DTO.WorkRequest workRequest) { var obj = UowStorms.GenericSqlRepo .RunRawSql <twmwr>( " select twmwr.no_ext_sys_id externalid, twmwr.no_ext_job externaljob " + " from twmwr " + " where twmwr.cd_wr = " + workRequest.Id.ToString()) .FirstOrDefault(); return(obj); }
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); }
public void CreateRemedyTicket(Forestry.Models.DTO.WorkRequest workRequest, Forestry.Models.DTO.WorkPacket workPacket, List <ValidationResult> errors) { try { Console.WriteLine("[WR:" + workPacket.WorkRequestId + " " + "WP:" + workPacket.WorkPacketId + "][BEGIN--]-sending invalid data to Remedy"); string allErrors = string.Empty; foreach (var str in errors) { allErrors += str + $"\r\n"; } string notes = "[WR: " + workPacket.WorkRequestId + " " + "WP: " + workPacket.WorkPacketId + "]" + "\r\n" + allErrors; HttpResponseMessage hrm = _incidentRequestor.Post( new Uri(Properties.Settings.Default.RemedyUriHost + Properties.Settings.Default.RemedyUri), new Incident { AssignedSupportGroup = "CO - Work Management Process", ClientService = "IT - Work Management", Company = "WEC Business Services", //or We Energies Impact = "4-Minor/Localized", Urgency = "4-Low", Notes = notes, Summary = "STORMS to Forestry validation failed." } ); var incident = hrm.Headers.Single(m => m.Key == "X-Id"); string incidentNumber = incident.Value.ToList()[0]; Console.WriteLine("[WR:" + workPacket.WorkRequestId + " " + "WP:" + workPacket.WorkPacketId + "][SUCCESS]-" + incidentNumber + "" + " created in Remedy"); } catch (HttpResponseException exception) { Console.WriteLine("[WR:" + workPacket.WorkRequestId + " " + "WP:" + workPacket.WorkPacketId + "][FAILED-]-failed to send invalid data to Remedy"); Console.WriteLine("*************Http Response Error***************"); Console.WriteLine("Http Status Code:" + exception.Response.StatusCode.ToString()); foreach (var header in exception.Response.Headers) { Console.WriteLine(header.Key + ", " + header.Value.ToList()[0]); } Console.WriteLine("*************Http Response Error***************"); } }
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); }