NonInventPurchasingSystem/CPRNIMS.Infrastructure/Dto/Canvass/Result/GroqSupplierResult.cs
2026-04-21 11:59:21 +08:00

65 lines
1.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json;
using System.Text.Json.Serialization;
using System.Threading.Tasks;
namespace CPRNIMS.Infrastructure.Dto.Canvass.Result
{
public class GroqSupplierResult
{
[JsonPropertyName("company_name")]
public string CompanyName { get; set; } = string.Empty;
[JsonPropertyName("country")]
public string? Country { get; set; }
[JsonPropertyName("phone_number")]
public string? PhoneNumber { get; set; }
[JsonPropertyName("contact_email")]
public string? ContactEmail { get; set; }
[JsonPropertyName("website")]
public string? Website { get; set; }
[JsonPropertyName("source")]
public string? Source { get; set; }
[JsonPropertyName("estimated_price_usd")]
public decimal? EstimatedPriceUsd { get; set; }
[JsonPropertyName("item_specifications")]
public JsonElement? ItemSpecifications { get; set; }
}
public class TavilySearchResult
{
public List<TavilyResult> Results { get; set; } = new();
}
public class TavilyResult
{
public string Title { get; set; } = string.Empty;
public string Url { get; set; } = string.Empty;
public string Content { get; set; } = string.Empty;
public double Score { get; set; }
}
public class GroqResponse
{
public List<GroqChoice> Choices { get; set; } = new();
}
public class GroqChoice
{
public GroqMessage Message { get; set; } = new();
}
public class GroqMessage
{
public string Content { get; set; } = string.Empty;
}
}