feat: 扩展领域模型与配置
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
using TakeoutSaaS.Shared.Abstractions.Entities;
|
||||
|
||||
namespace TakeoutSaaS.Domain.Navigation.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 地图 POI 信息,用于门店定位和推荐。
|
||||
/// </summary>
|
||||
public sealed class MapLocation : MultiTenantEntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 关联门店 ID,可空表示独立 POI。
|
||||
/// </summary>
|
||||
public Guid? StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 名称。
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 地址。
|
||||
/// </summary>
|
||||
public string Address { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 经度。
|
||||
/// </summary>
|
||||
public double Longitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 纬度。
|
||||
/// </summary>
|
||||
public double Latitude { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 打车/导航落点描述。
|
||||
/// </summary>
|
||||
public string? Landmark { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using TakeoutSaaS.Domain.Navigation.Enums;
|
||||
using TakeoutSaaS.Shared.Abstractions.Entities;
|
||||
|
||||
namespace TakeoutSaaS.Domain.Navigation.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 用户发起的导航请求日志。
|
||||
/// </summary>
|
||||
public sealed class NavigationRequest : MultiTenantEntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户 ID。
|
||||
/// </summary>
|
||||
public Guid UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 门店 ID。
|
||||
/// </summary>
|
||||
public Guid StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 来源通道(小程序、H5 等)。
|
||||
/// </summary>
|
||||
public NavigationChannel Channel { get; set; } = NavigationChannel.MiniProgram;
|
||||
|
||||
/// <summary>
|
||||
/// 跳转的地图应用。
|
||||
/// </summary>
|
||||
public NavigationTargetApp TargetApp { get; set; } = NavigationTargetApp.WechatMap;
|
||||
|
||||
/// <summary>
|
||||
/// 请求时间。
|
||||
/// </summary>
|
||||
public DateTime RequestedAt { get; set; } = DateTime.UtcNow;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
namespace TakeoutSaaS.Domain.Navigation.Enums;
|
||||
|
||||
/// <summary>
|
||||
/// 导航请求来源渠道。
|
||||
/// </summary>
|
||||
public enum NavigationChannel
|
||||
{
|
||||
/// <summary>
|
||||
/// 小程序。
|
||||
/// </summary>
|
||||
MiniProgram = 0,
|
||||
|
||||
/// <summary>
|
||||
/// H5/公众号。
|
||||
/// </summary>
|
||||
Web = 1,
|
||||
|
||||
/// <summary>
|
||||
/// App。
|
||||
/// </summary>
|
||||
MobileApp = 2
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
namespace TakeoutSaaS.Domain.Navigation.Enums;
|
||||
|
||||
/// <summary>
|
||||
/// 导航目标应用。
|
||||
/// </summary>
|
||||
public enum NavigationTargetApp
|
||||
{
|
||||
/// <summary>
|
||||
/// 微信地图。
|
||||
/// </summary>
|
||||
WechatMap = 0,
|
||||
|
||||
/// <summary>
|
||||
/// 腾讯地图。
|
||||
/// </summary>
|
||||
Tencent = 1,
|
||||
|
||||
/// <summary>
|
||||
/// 高德。
|
||||
/// </summary>
|
||||
Amap = 2,
|
||||
|
||||
/// <summary>
|
||||
/// 百度地图。
|
||||
/// </summary>
|
||||
Baidu = 3,
|
||||
|
||||
/// <summary>
|
||||
/// Apple Map。
|
||||
/// </summary>
|
||||
Apple = 4
|
||||
}
|
||||
Reference in New Issue
Block a user