using System.Text.Json.Serialization;

namespace goods.Models.Coupang.Product
{
    public class Response
    {
        [JsonPropertyName("rCode")]
        public string RCode { get; set; } = null!;

        [JsonPropertyName("rMessage")]
        public string RMessage { get; set; } = null!;

        [JsonPropertyName("data")]
        public List<Data> Data { get; set; } = [];
    }

    public class Data
    {
        [JsonPropertyName("categoryName")]
        public string CategoryName { get; set; } = null!;

        [JsonPropertyName("keyword")]
        public string Keyword { get; set; } = null!;

        [JsonPropertyName("rank")]
        public int Rank { get; set; }

        [JsonPropertyName("isRocket")]
        public bool IsRocket { get; set; }

        [JsonPropertyName("isFreeShipping")]
        public bool IsFreeShipping { get; set; }

        [JsonPropertyName("productId")]
        public long ProductId { get; set; }

        [JsonPropertyName("productImage")]
        public string ProductImage { get; set; } = null!;

        [JsonPropertyName("productName")]
        public string ProductName { get; set; } = null!;

        [JsonPropertyName("productPrice")]
        [JsonNumberHandling(JsonNumberHandling.AllowReadingFromString)]
        public decimal ProductPrice { get; set; }

        [JsonPropertyName("productUrl")]
        public string ProductUrl { get; set; } = null!;
    }
}