using QYZH.InteractiveMagazine.Models.Dto;
namespace QYZH.InteractiveMagazine.Models.Dto.CheckIn;
///
/// 签到输出
///
public class CheckInOutput
{
///
/// 签到记录Id
///
public long RecordId { get; set; }
///
/// 签到日期
///
public DateTime CheckInDate { get; set; }
///
/// 连续签到天数
///
public int ConsecutiveDays { get; set; }
///
/// 本次获得积分
///
public int PointsAwarded { get; set; }
///
/// 本次获得成长值
///
public int GrowthPointsAwarded { get; set; }
///
/// 签到后用户积分余额
///
public int PointsBalance { get; set; }
///
/// 签到后用户成长值余额
///
public int GrowthPointsBalance { get; set; }
///
/// 是否有宠物(成长值是否喂养到宠物)
///
public bool HasPet { get; set; }
///
/// 宠物是否触发进化
///
public bool HasEvolved { get; set; }
///
/// 进化后的阶段名称(未进化则为空)
///
public string? EvolvedStageName { get; set; }
}
///
/// 签到信息输出(查询用)
///
public class CheckInInfoOutput
{
///
/// 今日是否已签到
///
public bool HasCheckedInToday { get; set; }
///
/// 当前连续签到天数
///
public int ConsecutiveDays { get; set; }
///
/// 累计签到天数
///
public int TotalCheckInDays { get; set; }
///
/// 用户当前积分余额
///
public int PointsBalance { get; set; }
///
/// 用户当前成长值余额
///
public int GrowthPointsBalance { get; set; }
///
/// 最近签到记录
///
public List RecentRecords { get; set; } = [];
}
///
/// 补签输入
///
public class MakeUpCheckInInput
{
///
/// 补签目标日期(yyyy-MM-dd)
///
public DateTime TargetDate { get; set; }
}
///
/// 签到记录输出
///
public class CheckInRecordOutput
{
///
/// 记录Id
///
public long Id { get; set; }
///
/// 签到日期
///
public DateTime CheckInDate { get; set; }
///
/// 签到时间
///
public DateTime CreatedAt { get; set; }
///
/// 连续签到天数
///
public int ConsecutiveDays { get; set; }
///
/// 本次获得积分
///
public int PointsAwarded { get; set; }
///
/// 本次获得成长值
///
public int GrowthPointsAwarded { get; set; }
///
/// 签到类型: Normal, MakeUp
///
public string Type { get; set; } = string.Empty;
///
/// 状态
///
public string Status { get; set; } = string.Empty;
}