// // EPMomentAPIHelper.m // YuMi // // Created by AI on 2025-10-10. // #import #import "EPMomentAPIHelper.h" #import "Api+Moments.h" #import "AccountInfoStorage.h" #import "BaseModel.h" @implementation EPMomentAPIHelper - (void)fetchMomentsWithType:(EPMomentListSourceType)sourceType page:(NSInteger)page pageSize:(NSInteger)pageSize completion:(void (^)(NSArray * _Nullable list, NSInteger code, NSString * _Nullable msg))completion { // 兼容后端从 1 开始分页:若收到 0 则转成 1 NSInteger requestPage = page <= 0 ? 1 : page; NSString *pageStr = [NSString stringWithFormat:@"%ld", (long)requestPage]; NSString *pageSizeStr = [NSString stringWithFormat:@"%ld", (long)pageSize]; NSString *types = @"0,2"; // 图片+文字 if (sourceType == EPMomentListSourceTypeRecommend) { // [Api momentsRecommendList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) { // if (code == 200 && data.data) { // NSArray *array = [MomentsInfoModel modelsWithArray:data.data]; // if (completion) completion(array ?: @[], 200, @"success"); // } else { // if (completion) completion(@[], code, msg); // } // } page:pageStr pageSize:pageSizeStr types:types]; [Api momentsLatestList:[self createHttpCompletion:^(BaseModel * _Nonnull data) { MomentsListInfoModel *listInfo = [MomentsListInfoModel modelWithDictionary:data.data]; if (completion) completion(listInfo.dynamicList ?: @[], 200, @"success"); } fail:^(NSInteger code, NSString * _Nullable msg) { if (completion) completion(@[], code, msg); }] dynamicId:@"" pageSize:pageSizeStr types:types]; } else { // 预留:我的动态列表(暂时复用推荐接口,后续替换为真正的“我的动态”API) [Api momentsRecommendList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) { if (code == 200 && data.data) { NSArray *array = [MomentsInfoModel modelsWithArray:data.data]; if (completion) completion(array ?: @[], 200, @"success"); } else { if (completion) completion(@[], code, msg); } } page:pageStr pageSize:pageSizeStr types:types]; } } @end