using QYZH.InteractiveMagazine.Models.Common;
using QYZH.InteractiveMagazine.Models.Dto;
using QYZH.InteractiveMagazine.Models.Dto.Pet;
using QYZH.InteractiveMagazine.Models.Entity;
namespace QYZH.InteractiveMagazine.IService;
///
/// 宠物服务接口
///
public interface IPetService : IBaseService
{
///
/// 获取用户宠物信息
///
/// 用户Id
/// 宠物信息
Task GetPetByUserIdAsync(long userId);
///
/// 为用户创建默认宠物(最低形态、成长值为0、未激活状态)
///
/// 用户Id
Task CreateDefaultPetAsync(long userId);
///
/// 激活宠物(将状态从 Inactive 改为 Active)
///
/// 用户Id
Task ActivatePetAsync(long userId);
///
/// 喂养宠物(增加成长值 + 记录喂养记录 + 触发进化检查)
///
/// 用户Id
/// 喂养输入
/// 喂养结果
Task FeedPetAsync(long userId, FeedPetInput input);
///
/// 获取宠物喂养记录列表
///
/// 用户Id
/// 宠物Id
/// 喂养记录列表
Task> GetFeedingRecordsAsync(long userId, long petId, PageQueryModel pageQuery);
}