public ResponseOFSC Create(WorkZone workZone) { ResponseOFSC result = new ResponseOFSC(); RootWorkZone rootWorkZone = new RootWorkZone(); rootWorkZone.items = new List <WorkZone>(); WorkZone workZoneItem = new WorkZone(); // start if (workZone.travelArea != "MX") { workZoneItem.workZoneLabel = workZone.keylabel.FirstOrDefault(); } else { workZoneItem.workZoneLabel = workZone.workZoneLabel; } workZoneItem.status = workZone.status; workZoneItem.travelArea = workZone.travelArea; workZoneItem.workZoneName = workZone.workZoneName; workZoneItem.keys.Add(workZone.keylabel.FirstOrDefault()); rootWorkZone.items.Add(workZoneItem); // end result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones", enumMethod.POST, JsonConvert.SerializeObject(workZoneItem, Formatting.Indented)); if (result.statusCode >= 200 && result.statusCode <= 300) { result.flag = true; return(result); } // exist current workzone then set info workzone if (result.statusCode == 409) { result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones/" + workZone.workZoneLabel, enumMethod.PUT, JsonConvert.SerializeObject(workZoneItem, Formatting.Indented)); if (result.statusCode == 200 || result.statusCode == 201) { result.flag = true; } else { result.flag = false; } Program.Logger(result.ErrorMessage, 2); } else { // Program.Logger(string.Format("Bad Zona Trabajo:{0}|Contenido:{1}|Mensaje:{2}", workZone.workZoneName + "&" + workZone.keylabel, result.Content, result.ErrorMessage), 2); result.flag = false; Program.Logger(result.ErrorMessage, 2); } return(result); }
private static void WorkZoneMain(WorkZone workZone) { ResponseOFSC responseOFSC = new ResponseOFSC(); Console.WriteLine("workZone :" + workZone.workZoneLabel + "travelArea: " + workZone.travelArea); JsonSerializerSettings settings = new JsonSerializerSettings(); settings.Formatting = Formatting.None; Logger(string.Format("workzone {0}", workZone.workZoneLabel)); if (!ctrlworkZone.Exist(workZone).flag) { responseOFSC = ctrlworkZone.Create(workZone); } else { responseOFSC = ctrlworkZone.Set(workZone); } if (responseOFSC.flag) { rowOK = rowOK += 1; Logger(JsonConvert.SerializeObject(workZone, settings), 4); } else { rowBAD = rowBAD += 1; Logger(JsonConvert.SerializeObject(workZone, settings), 5); } }
public ResponseOFSC Add(string resource, string workZone) { DateTime dateTimeStart = DateTime.Now; DateTime dateTimeEnd = dateTimeStart.AddYears(1); Console.WriteLine(dateTimeStart.ToString("yyyy-MM-dd")); dynamic objResource = new JObject(); objResource.workZone = workZone; objResource.startDate = dateTimeStart.ToString("yyyy-MM-dd"); objResource.endDate = dateTimeEnd.ToString("yyyy-MM-dd"); objResource.ratio = 100; objResource.recurrence = ""; ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscCore/v1/resources/" + resource + "/workZones", enumMethod.PUT, objResource.ToString(Formatting.None)); if (result.statusCode >= 200 && result.statusCode <= 400) { result.flag = true; } else { // /Program.Logger(string.Format("Bad Recurso:{0}|Zona Trabajo:{1}|Contenido:{2}|Mensaje:{3}", resource, workZone, result.Content, result.ErrorMessage), 2); result.flag = false; } return(result); }
public bool ExistAsync(string zipCode) { bool flag = false; try { ResponseOFSC result = UtilWebRequest.SendWayAsync(string.Format("https://api-codigos-postales.herokuapp.com/v2/codigo_postal/{0}", zipCode), enumMethod.GET, ""); dynamic results = JsonConvert.DeserializeObject <dynamic>(result.Content); var municipio = results.municipio; if (string.IsNullOrEmpty(municipio.Value)) { flag = false; } else { flag = true; } } catch (Exception ex) { Console.WriteLine(ex.Message); } return(flag); }
// DEV // const string token = "Basic YThhM2VjMmIzNjQxNTkzYTM5MjVlNjQ5MGJjMjg0ZGFlNjhmMDk5MzZAc2t5LW14Mi50ZXN0OjIyOTc5NTkwZjI0OTEwYTY4NDgwZjQ4MzcyYzFhOGE4NmVlNWM3OTdjMjI5Y2U5MjE1ZmFkZmNlN2FhZjE1YzY="; // PROD // const string token = "Basic YThhM2VjMmIzNjQxNTkzYTM5MjVlNjQ5MGJjMjg0ZGFlNjhmMDk5MzZAc2t5LW14OjAwZTVlZTRkNmI2ODc0NTQ0NDI3ZDZlMGM3ZDg1YWY4ZDdiNDQzM2E4MzE1ZGQ3NzllYWEzM2QyYmM4NGY0NDk="; public static ResponseOFSC SendWayAsync(string endpoint, enumMethod enumMethod, string data) { var client = new RestClient("https://api.etadirect.com/" + endpoint); string token = ConfigurationManager.AppSettings["execute"]; RestRequest request = new RestRequest(); switch (enumMethod.ToString()) { case "PUT": request.Method = Method.PUT; break; case "POST": request.Method = Method.POST; break; case "PATCH": request.Method = Method.PATCH; break; case "GET": request.Method = Method.GET; break; case "DELETE": request.Method = Method.DELETE; break; default: break; } // request.AddHeader("Cache-Control", "no-cache"); request.AddHeader("Authorization", token); request.AddHeader("Content-Type", "application/json"); if (!string.IsNullOrEmpty(data)) { request.AddParameter("", data, ParameterType.RequestBody); } IRestResponse response = client.Execute(request); ResponseOFSC responseOFSC = new ResponseOFSC(); responseOFSC.Content = response.Content; responseOFSC.statusCode = (int)response.StatusCode; responseOFSC.ErrorMessage = response.ErrorMessage; return(responseOFSC); }
public ResponseOFSC Exist(WorkZone workZone) { // check exist ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones/" + workZone.keylabel.FirstOrDefault(), enumMethod.GET, string.Empty); //ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones/" + workZone.workZoneLabel, // enumMethod.GET, // string.Empty); if (result.statusCode >= 200 && result.statusCode < 300) { result.flag = true; } else { result.flag = false; } return(result); }
public ResponseOFSC Set(WorkZone workZone) { RootWorkZone rootWorkZone = new RootWorkZone(); WorkZone workZoneItem = new WorkZone(); rootWorkZone.items = new List <WorkZone>(); if (workZone.travelArea != "MX") { workZoneItem.workZoneLabel = workZone.keylabel.FirstOrDefault(); } else { workZoneItem.workZoneLabel = workZone.workZoneLabel; } workZoneItem.status = workZone.status; workZoneItem.travelArea = workZone.travelArea; workZoneItem.workZoneName = workZone.workZoneName; workZoneItem.keys.Add(workZone.keylabel.FirstOrDefault()); rootWorkZone.items.Add(workZoneItem); ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones", enumMethod.PATCH, JsonConvert.SerializeObject(rootWorkZone, Formatting.Indented)); if (result.statusCode >= 200 && result.statusCode < 300) { result.flag = true; } else { result.flag = false; } return(result); }