using Newtonsoft.Json;
using RestSharp;
using System.Collections.Generic;

namespace UnivateProperties_API.Helpers
{
    public static class TenderWeeksHelper
    {
        public static List<UniPointResorts> UniResorts = new List<UniPointResorts>();

        public static string GetResortName(string Code)
        {
            if (UniResorts.Count == 0)
            {
                var client = new RestClient("https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/resorts/list/")
                {
                    Timeout = -1
                };
                var request = new RestRequest(Method.GET);
                IRestResponse response = client.Execute(request);
                UniResorts = JsonConvert.DeserializeObject<List<UniPointResorts>>(response.Content);
            }

            var resort = UniResorts.Find(x => x.ResortCode == Code);
            if (resort != null)
                return resort.ResortName;
            else
                return Code;
        }

        public static string GetResortCode(string Name)
        {
            if (UniResorts.Count == 0)
            {
                var client = new RestClient("https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/resorts/list/")
                {
                    Timeout = -1
                };
                var request = new RestRequest(Method.GET);
                IRestResponse response = client.Execute(request);
                UniResorts = JsonConvert.DeserializeObject<List<UniPointResorts>>(response.Content);
            }

            var resort = UniResorts.Find(x => x.ResortName == Name);
            if (resort != null)
                return resort.ResortCode;
            else
                return "";
        }
    }

    public class UniPointResorts
    {
        public string ResortName { get; set; }
        public string ResortCode { get; set; }
        public string Town { get; set; }
        public string City { get; set; }
        public int Id { get; set; }
    }
}