ComListViewModel.h 2.1 KB
//
//  ComListViewModel.h
//  DreamSleep
//
//  Created by peter on 2022/9/27.
//

#import "DSNetworkTool.h"
#import "ComDynModel.h"
#import "OfficialMessageModel.h"

NS_ASSUME_NONNULL_BEGIN

/// 社区动态列表、用户点赞
@interface ComListViewModel : DSNetworkTool

/// 服务器返回最新某一页的列表数据
@property (nonatomic, strong) NSArray *latestDataList;
/// 对外提供的社区动态列表数据
@property (nonatomic, strong) NSArray *listArr;
/// 自定义字段,用于标识是否是官方发布的动态
@property (nonatomic, assign) BOOL isOfficial;

/// 社区列表通知图标是否有新的通知标识
@property (nonatomic, assign) BOOL hasNoti;

/// 社区动态查询列表接口
/// @param loadMore 上下拉标识
/// @param offset offset
/// @param completion completion
- (NSURLSessionDataTask *)querySleepDynamicListWithLoadMore:(BOOL)loadMore offset:(int)offset completion:(void (^)(ComListViewModel *requestModel))completion;

/// 显示全部官方动态内容
- (void)showOfficialAllContent;

/// 临时插入用户动态数据
/// @param dyModel dyModel
- (void)insertUserDyModel:(ComDynModel *)dyModel;

/// 临时更新点赞数据
/// @param comDynModel comDynModel
+ (void)updateLikeData:(ComDynModel *)comDynModel;

/// 我的动态列表删除我的动态操作
/// @param dynamicID 动态id
- (void)deleteMyDynmic:(int)dynamicID;

/// 我的动态列表点赞、我的动态详情点赞和评论操作需要更新社区动态列表匹配上的动态点赞和评论UI
/// @param userInfo 动态id+点赞数据/评论数据
- (void)lookDynamicAndUpdateLikeOrRemarkWithUserInfo:(NSDictionary *)userInfo;

/// 用户点赞、取消点赞接口
/// @param comDynModel comDynModel
/// @param completion completion
+ (NSURLSessionDataTask *)userDynamicPraiseWithComDynModel:(ComDynModel *)comDynModel completion:(void (^)(ComListViewModel *requestModel))completion;

/// 社区广场右上角通知标识的接口
/// @param completion completion
+ (NSURLSessionDataTask *)queryCommunityNotifyFlagWithCompletion:(void (^)(ComListViewModel *requestModel))completion;
@end

NS_ASSUME_NONNULL_END