// // ASMessageViewModel.m // Asteria // // Created by xingyu on 2024/7/19. // #import "ASMessageViewModel.h" @implementation ASMessageViewModel - (void)getMessageList:(UITableView *)tableV page:(NSInteger)page complate:(void(^)(void))complate { [tableV.mj_footer resetNoMoreData]; NSDictionary *dic = @{ @"user_id":ASUserInfoManager.shared.userInfo.Id, @"page":[NSNumber numberWithInteger:page], @"size":[NSNumber numberWithInteger:20]}; K_WEAK_SELF; [[ASNetTools shared] postMsgWithPath:MsgListDataUrl param:dic success:^(id _Nonnull responseObject) { K_STRONG_SELF; [tableV.mj_header endRefreshing]; [tableV.mj_footer endRefreshing]; NSLog(@"success:%@",responseObject); if (responseObject) { NSMutableArray *arr = [ASMessageModel mj_objectArrayWithKeyValuesArray:responseObject]; if (page == 1) { self.messageList = arr; } else { [self.messageList addObjectsFromArray:arr]; } if (arr.count < 20) { [tableV.mj_footer endRefreshingWithNoMoreData]; } } else { self.messageList = [NSMutableArray array]; [tableV.mj_footer endRefreshingWithNoMoreData]; } complate(); } faild:^(NSString * _Nonnull code, NSString * _Nonnull msg) { K_STRONG_SELF; [tableV.mj_header endRefreshing]; [tableV.mj_footer endRefreshing]; NSLog(@"err:%@",msg); self.messageList = [NSMutableArray array]; // [tableV.mj_footer endRefreshingWithNoMoreData]; complate(); }]; } /// type: 1=单条阅读 2=批量阅读 - (void)getMessageRead:(UIView *_Nullable)tableV messageId:(NSString *)messageId type:(NSString *)type complate:(void(^)(NSString *))complate { if (messageId == nil) { return; } if (tableV != nil) { [MBProgressHUD showHUDAddedTo:tableV animated:true]; } NSDictionary *dic = @{ @"user_id":ASUserInfoManager.shared.userInfo.Id, @"message_id":messageId, @"type":type}; [[ASNetTools shared] postMsgWithPath:MsgUpReadUrl param:dic success:^(id _Nonnull responseObject) { if (tableV != nil) { [MBProgressHUD hideHUDForView:tableV animated:true]; } if (complate) { complate(@""); } } faild:^(NSString * _Nonnull code, NSString * _Nonnull msg) { NSLog(@"err:%@",msg); if (tableV != nil) { [MBProgressHUD hideHUDForView:tableV animated:true]; } if (complate) { complate(@""); } }]; } @end