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);
        }
Beispiel #2
0
        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);
        }
Beispiel #5
0
        // 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);
        }