1. 重构用户、宠物模板、勋章、管理员状态更新接口,移除冗余参数改为自动切换状态 2. 重命名宠物背景枚举为宠物皮肤,调整商品状态字段为枚举类型 3. 新增商品上下架状态管理接口与对应逻辑 4. 新增勋章规则配置系统,支持动态加载可用表和字段 5. 优化商品查询与展示逻辑,适配新的状态字段
158 lines
3.2 KiB
C#
158 lines
3.2 KiB
C#
using QYZH.InteractiveMagazine.Models.Dto;
|
|
using QYZH.InteractiveMagazine.Models.Enum;
|
|
|
|
namespace QYZH.InteractiveMagazine.Models.Dto;
|
|
|
|
/// <summary>
|
|
/// 商品创建/更新输入
|
|
/// </summary>
|
|
public class ProductInput
|
|
{
|
|
/// <summary>
|
|
/// 商品名称
|
|
/// </summary>
|
|
public string Name { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 描述
|
|
/// </summary>
|
|
public string? Description { get; set; }
|
|
|
|
/// <summary>
|
|
/// 商品图片
|
|
/// </summary>
|
|
public string? ImageUrl { get; set; }
|
|
|
|
/// <summary>
|
|
/// 所需积分
|
|
/// </summary>
|
|
public int Price { get; set; }
|
|
|
|
/// <summary>
|
|
/// 商品类型: MakeUpCard, PetBg
|
|
/// </summary>
|
|
public string Type { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 售卖状态: OnSale, OffSale
|
|
/// </summary>
|
|
public ProductStatusEnum Status { get; set; } = ProductStatusEnum.OnSale;
|
|
|
|
/// <summary>
|
|
/// 扩展数据
|
|
/// </summary>
|
|
public string? MetaData { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否上架
|
|
/// </summary>
|
|
public bool IsActive { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// 库存(-1无限)
|
|
/// </summary>
|
|
public int Stock { get; set; } = -1;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 商品输出
|
|
/// </summary>
|
|
public class ProductOutput
|
|
{
|
|
/// <summary>
|
|
/// 主键ID
|
|
/// </summary>
|
|
public long Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// 商品名称
|
|
/// </summary>
|
|
public string Name { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 描述
|
|
/// </summary>
|
|
public string? Description { get; set; }
|
|
|
|
/// <summary>
|
|
/// 商品图片
|
|
/// </summary>
|
|
public string? ImageUrl { get; set; }
|
|
|
|
/// <summary>
|
|
/// 所需积分
|
|
/// </summary>
|
|
public int Price { get; set; }
|
|
|
|
/// <summary>
|
|
/// 商品类型
|
|
/// </summary>
|
|
public string Type { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 状态
|
|
/// </summary>
|
|
public string Status { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 扩展数据
|
|
/// </summary>
|
|
public string? MetaData { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否上架
|
|
/// </summary>
|
|
public bool IsActive { get; set; }
|
|
|
|
/// <summary>
|
|
/// 库存(-1无限)
|
|
/// </summary>
|
|
public int Stock { get; set; }
|
|
|
|
/// <summary>
|
|
/// 创建人
|
|
/// </summary>
|
|
public string? CreatedBy { get; set; }
|
|
|
|
/// <summary>
|
|
/// 创建时间
|
|
/// </summary>
|
|
public DateTime CreatedAt { get; set; }
|
|
|
|
/// <summary>
|
|
/// 更新人
|
|
/// </summary>
|
|
public string? UpdatedBy { get; set; }
|
|
|
|
/// <summary>
|
|
/// 更新时间
|
|
/// </summary>
|
|
public DateTime? UpdatedAt { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 商品分页查询输入
|
|
/// </summary>
|
|
public class ProductQueryInput : PageQueryModel
|
|
{
|
|
/// <summary>
|
|
/// 商品名称(模糊查询)
|
|
/// </summary>
|
|
public string? Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// 商品类型
|
|
/// </summary>
|
|
public string? Type { get; set; }
|
|
|
|
/// <summary>
|
|
/// 售卖状态
|
|
/// </summary>
|
|
public ProductStatusEnum? Status { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否上架
|
|
/// </summary>
|
|
public bool? IsActive { get; set; }
|
|
}
|