fengling-platform/Fengling.Platform.Domain/AggregatesModel/GatewayAggregate/GwTenantRoute.cs
movingsam 3fbd9d07a6 feat(03-gateway-route-update): extend GwTenantRoute and delete obsolete entities
- Add Methods, Hosts, Headers, LoadBalancingPolicy, AuthorizationPolicy, CorsPolicy, Transforms fields to GwTenantRoute
- Delete GwTenant entity (use Platform.Tenant instead)
- Delete GwServiceInstance entity (use GwCluster embedded Destination)
2026-03-03 15:36:37 +08:00

116 lines
2.6 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

namespace Fengling.Platform.Domain.AggregatesModel.GatewayAggregate;
/// <summary>
/// 网关租户路由实体 - 表示路由规则配置
/// </summary>
public class GwTenantRoute
{
public string Id { get; set; } = Guid.CreateVersion7().ToString("N");
/// <summary>
/// 租户代码
/// </summary>
public string TenantCode { get; set; } = string.Empty;
/// <summary>
/// 服务名称
/// </summary>
public string ServiceName { get; set; } = string.Empty;
/// <summary>
/// 集群ID
/// </summary>
public string ClusterId { get; set; } = string.Empty;
/// <summary>
/// 路径匹配模式
/// </summary>
public string PathPattern { get; set; } = string.Empty;
/// <summary>
/// 优先级
/// </summary>
public int Priority { get; set; } = 0;
/// <summary>
/// 状态
/// </summary>
public int Status { get; set; } = 1;
/// <summary>
/// 是否全局路由
/// </summary>
public bool IsGlobal { get; set; } = false;
/// <summary>
/// 创建人ID
/// </summary>
public long? CreatedBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreatedTime { get; set; } = DateTime.UtcNow;
/// <summary>
/// 更新人ID
/// </summary>
public long? UpdatedBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime? UpdatedTime { get; set; }
/// <summary>
/// 是否删除
/// </summary>
public bool IsDeleted { get; set; } = false;
/// <summary>
/// 版本号,用于乐观并发
/// </summary>
public int Version { get; set; } = 0;
// ===== 路由匹配能力 =====
/// <summary>
/// HTTP 方法匹配(如 "GET,POST"
/// </summary>
public string? Methods { get; set; }
/// <summary>
/// Host 头匹配(如 "api.example.com"
/// </summary>
public string? Hosts { get; set; }
/// <summary>
/// Header 匹配规则JSON 格式)
/// </summary>
public string? Headers { get; set; }
// ===== 策略配置 =====
/// <summary>
/// 路由级别负载均衡策略覆盖
/// </summary>
public string? LoadBalancingPolicy { get; set; }
/// <summary>
/// 授权策略
/// </summary>
public string? AuthorizationPolicy { get; set; }
/// <summary>
/// CORS 策略
/// </summary>
public string? CorsPolicy { get; set; }
// ===== 请求转换 =====
/// <summary>
/// 请求/响应转换规则JSON 格式)
/// </summary>
public string? Transforms { get; set; }
}