feat: 完成激活码功能

This commit is contained in:
chenchun
2025-12-19 13:50:30 +08:00
parent 8021ca9eff
commit 75c208dafc
10 changed files with 560 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
using Yi.Framework.AiHub.Domain.Shared.Enums;
namespace Yi.Framework.AiHub.Application.Contracts.Dtos.ActivationCode;
/// <summary>
/// 批量生成激活码输入
/// </summary>
public class ActivationCodeCreateInput
{
/// <summary>
/// 商品类型
/// </summary>
public ActivationCodeGoodsTypeEnum GoodsType { get; set; }
/// <summary>
/// 数量
/// </summary>
public int Count { get; set; } = 1;
/// <summary>
/// 是否允许多人各使用一次
/// </summary>
public bool IsReusable { get; set; }
/// <summary>
/// 是否限制同类型只能兑换一次
/// </summary>
public bool IsSameTypeOnce { get; set; }
/// <summary>
/// 备注
/// </summary>
public string? Remark { get; set; }
}

View File

@@ -0,0 +1,24 @@
using Yi.Framework.AiHub.Domain.Shared.Enums;
namespace Yi.Framework.AiHub.Application.Contracts.Dtos.ActivationCode;
/// <summary>
/// 批量生成激活码输出
/// </summary>
public class ActivationCodeCreateOutput
{
/// <summary>
/// 商品类型
/// </summary>
public ActivationCodeGoodsTypeEnum GoodsType { get; set; }
/// <summary>
/// 数量
/// </summary>
public int Count { get; set; }
/// <summary>
/// 激活码列表
/// </summary>
public List<string> Codes { get; set; } = new();
}

View File

@@ -0,0 +1,12 @@
namespace Yi.Framework.AiHub.Application.Contracts.Dtos.ActivationCode;
/// <summary>
/// 激活码兑换输入
/// </summary>
public class ActivationCodeRedeemInput
{
/// <summary>
/// 激活码
/// </summary>
public string Code { get; set; } = string.Empty;
}

View File

@@ -0,0 +1,24 @@
using Yi.Framework.AiHub.Domain.Shared.Enums;
namespace Yi.Framework.AiHub.Application.Contracts.Dtos.ActivationCode;
/// <summary>
/// 激活码兑换输出
/// </summary>
public class ActivationCodeRedeemOutput
{
/// <summary>
/// 商品类型
/// </summary>
public ActivationCodeGoodsTypeEnum GoodsType { get; set; }
/// <summary>
/// 商品名称
/// </summary>
public string PackageName { get; set; } = string.Empty;
/// <summary>
/// 内容描述
/// </summary>
public string Content { get; set; } = string.Empty;
}