diff --git a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductCreateProductRequest.cs b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductCreateProductRequest.cs index de8e6f6e..72376b90 100644 --- a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductCreateProductRequest.cs +++ b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductCreateProductRequest.cs @@ -464,6 +464,13 @@ public class Manufacturer [System.Text.Json.Serialization.JsonPropertyName("description")] public string? Description { get; set; } + /// + /// 获取或设置分类版本。 + /// + [Newtonsoft.Json.JsonProperty("category_version")] + [System.Text.Json.Serialization.JsonPropertyName("category_version")] + public string? CategoryVersion { get; set; } + /// /// 获取或设置分类 ID。 /// @@ -561,5 +568,12 @@ public class Manufacturer [Newtonsoft.Json.JsonProperty("manufacturer")] [System.Text.Json.Serialization.JsonPropertyName("manufacturer")] public Types.Manufacturer? Manufacturer { get; set; } + + /// + /// 获取或设置是否为非卖品。 + /// + [Newtonsoft.Json.JsonProperty("is_not_for_sale")] + [System.Text.Json.Serialization.JsonPropertyName("is_not_for_sale")] + public bool? IsNotForSale { get; set; } } } diff --git a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductGetProductDetailResponse.cs b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductGetProductDetailResponse.cs index 5d13c993..63d7fb06 100644 --- a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductGetProductDetailResponse.cs +++ b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductGetProductDetailResponse.cs @@ -134,6 +134,24 @@ public class Category public bool IsLeaf { get; set; } } + public class RecommendedCategory + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("id")] + [System.Text.Json.Serialization.JsonPropertyName("id")] + [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.NumericalStringReadOnlyConverter))] + public string CategoryId { get; set; } = default!; + + /// + /// 获取或设置名称。 + /// + [Newtonsoft.Json.JsonProperty("local_name")] + [System.Text.Json.Serialization.JsonPropertyName("local_name")] + public string Name { get; set; } = default!; + } + public class Brand { /// @@ -776,6 +794,13 @@ public class AuditFailedReason [System.Text.Json.Serialization.JsonPropertyName("category_chains")] public Types.Category[] CategoryList { get; set; } = default!; + /// + /// 获取或设置推荐分类列表。 + /// + [Newtonsoft.Json.JsonProperty("recommended_categories")] + [System.Text.Json.Serialization.JsonPropertyName("recommended_categories")] + public Types.RecommendedCategory[]? RecommendedCategoryList { get; set; } + /// /// 获取或设置品牌信息。 /// @@ -860,6 +885,13 @@ public class AuditFailedReason [System.Text.Json.Serialization.JsonPropertyName("manufacturer")] public Types.Manufacturer? Manufacturer { get; set; } + /// + /// 获取或设置是否为非卖品。 + /// + [Newtonsoft.Json.JsonProperty("is_not_for_sale")] + [System.Text.Json.Serialization.JsonPropertyName("is_not_for_sale")] + public bool IsNotForSale { get; set; } + /// /// 获取或设置审核失败原因列表。 /// diff --git a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductSearchProductsResponse.cs b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductSearchProductsResponse.cs index 7cb9187e..8c04db63 100644 --- a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductSearchProductsResponse.cs +++ b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductSearchProductsResponse.cs @@ -15,6 +15,24 @@ public class Product { public static class Types { + public class RecommendedCategory + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("id")] + [System.Text.Json.Serialization.JsonPropertyName("id")] + [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.NumericalStringReadOnlyConverter))] + public string CategoryId { get; set; } = default!; + + /// + /// 获取或设置名称。 + /// + [Newtonsoft.Json.JsonProperty("local_name")] + [System.Text.Json.Serialization.JsonPropertyName("local_name")] + public string Name { get; set; } = default!; + } + public class SKU { public static class Types @@ -131,6 +149,13 @@ public class Inventory [System.Text.Json.Serialization.JsonPropertyName("update_time")] public long UpdateTimestamp { get; set; } + /// + /// 获取或设置推荐分类列表。 + /// + [Newtonsoft.Json.JsonProperty("recommended_categories")] + [System.Text.Json.Serialization.JsonPropertyName("recommended_categories")] + public Types.RecommendedCategory[]? RecommendedCategoryList { get; set; } + /// /// 获取或设置 SKU 列表。 /// @@ -138,6 +163,13 @@ public class Inventory [System.Text.Json.Serialization.JsonPropertyName("skus")] public Types.SKU[] SKUList { get; set; } = default!; + /// + /// 获取或设置是否为非卖品。 + /// + [Newtonsoft.Json.JsonProperty("is_not_for_sale")] + [System.Text.Json.Serialization.JsonPropertyName("is_not_for_sale")] + public bool IsNotForSale { get; set; } + /// /// 获取或设置同步失败原因。 /// diff --git a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductUpdateProductRequest.cs b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductUpdateProductRequest.cs index c73b8943..791ffb08 100644 --- a/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductUpdateProductRequest.cs +++ b/src/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop/Models/Product/ProductUpdateProductRequest.cs @@ -135,6 +135,13 @@ public class Manufacturer : ProductCreateProductRequest.Types.Manufacturer [System.Text.Json.Serialization.JsonPropertyName("description")] public string? Description { get; set; } + /// + /// 获取或设置分类版本。 + /// + [Newtonsoft.Json.JsonProperty("category_version")] + [System.Text.Json.Serialization.JsonPropertyName("category_version")] + public string? CategoryVersion { get; set; } + /// /// 获取或设置分类 ID。 /// diff --git a/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductCreateProductRequest.json b/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductCreateProductRequest.json index 47602a18..48bc5c01 100644 --- a/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductCreateProductRequest.json +++ b/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductCreateProductRequest.json @@ -106,5 +106,6 @@ "title": "Men's Fashion Sports Low Cut Cotton Breathable Ankle Short Boat Invisible Socks", "video": { "id": "v09e40f40000cfu0ovhc77ub7fl97k4w" - } + }, + "is_not_for_sale": false } diff --git a/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductGetProductDetailResponse.json b/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductGetProductDetailResponse.json index 65588754..b2d7be0f 100644 --- a/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductGetProductDetailResponse.json +++ b/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductGetProductDetailResponse.json @@ -24,6 +24,12 @@ "parent_id": "851848" } ], + "recommended_categories": [ + { + "id": "853000", + "local_name": "Botol & Stoples Penyimpanan" + } + ], "certifications": [ { "files": [ @@ -193,7 +199,8 @@ "size": 1000, "url": "https://v16m-default.akamaized.net/bbae7099581b26cd340beaa7821b2d8c/64de6020/video/tos/alisg/tos-alisg-v-f466fc-sg/oMne9QuzIBN3fIDN7bFCCMbBKuGigg12ghDC8k/?a=0&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=2212&bt=1106&cs=0&ds=3&ft=dl9~j-Inz7TKnfsfiyq8Z&mime_type=video_mp4&qs=13&rc=anR4Ojk6ZmYzbTMzODRmNEBpanR4Ojk6ZmYzbTMzODRmNEBsYWFwcjRva2NgLS1kLy1zYSNsYWFwcjRva2NgLS1kLy1zcw%3D%3D&l=202308171159498F7B108584E58B010932&btag=e00048000", "width": 1280 - } + }, + "is_not_for_sale": false }, "message": "Success", "request_id": "202203070749000101890810281E8C70B7" diff --git a/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductSearchProductsResponse.json b/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductSearchProductsResponse.json index b2d84f71..94361c8a 100644 --- a/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductSearchProductsResponse.json +++ b/test/SKIT.FlurlHttpClient.ByteDance.TikTokGlobalShop.UnitTests/ModelSamples/_/Product/ProductSearchProductsResponse.json @@ -6,7 +6,14 @@ { "create_time": 1234567890, "id": "1729592969712207008", + "is_not_for_sale": true, "product_sync_fail_reasons": "The required qualification is missed.", + "recommended_categories": [ + { + "id": "853000", + "local_name": "Botol & Stoples Penyimpanan" + } + ], "sales_regions": [ "US" ],