美文网首页iOS实战开发
iOS-关注功能本地模型数据需要做的逻辑处理

iOS-关注功能本地模型数据需要做的逻辑处理

作者: 暖游丶 | 来源:发表于2016-05-31 09:23 被阅读107次

一.当我们请求服务器关注成功后,本地的模型数据也要进行处理,因为服务器是取反Type为0的时候说明关注成功,Type为1的时候请求,则取消关注,(1-0,0-1)

请求关注

//--关注人

-(void)requestFoucsPeople:(NSMutableArray *)array

{

NSString *userID = [UserManager sharedUserManager].user.userid;

NSMutableArray *dataArray = [[NSMutableArray alloc] init];

for (floorModel *model in array) {

NSDictionary *countDic = @{@"id":[NSString stringWithFormat:@"%ld",(long)model.userid]};

[dataArray addObject:countDic];

}

NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dataArray options:NSJSONWritingPrettyPrinted error:nil];

NSString *contras = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];

NSDictionary *parameter =

@{@"userid":userID,@"type":@"0",@"counterpartyid":contras};

[[RequestManager shareManager] requestDataWithRequestType:GetAttend parameters:parameter filePath:@""httpMethod:KHTTPPOST completionHandler:^(ResponseItem *respones) {

NSLog(@"%@",respones.dataDic);

RequestStatus status = [respones.dataDic[KResult] integerValue];

if (status == RequestStatusSuccess) {

[MBProgressHUD showSuccess:@"成功" toView:self.view];

[self.tableViewOne addAllPeopleAttention:nil];

}

else

{

[MBProgressHUD hideHUDForView:self.view animated:YES];

[MBProgressHUD showError:@"请求失败" toView:self.view];

}} failedHandler:^(NSError *error) {

NSLog(@"%@",error.localizedDescription);

[MBProgressHUD hideHUDForView:self.view animated:YES];

[MBProgressHUD showError:@"请求失败" toView:self.view];}];}

二,请求成功后,需要对已经关注的数组进行涮选本地取反从而达到正确的显示本地的关注状态

- (void)addAllPeopleAttention:(NSArray*)array{

floorModel *changeModel;

if(array)

{

changeModel = [array objectAtIndex:0];

}

else

{

changeModel = nil;

}

NSMutableArray *tmpArray = [NSMutableArray arrayWithCapacity:0];

for(int i = 0;i<self.peopleArr.count;i++)

{

floorModel *model1 = self.peopleArr[i];

floorModel *model = [[floorModel alloc]init];

model = model1;

BOOL focus = [model1.focused boolValue];

if(changeModel)

{

if(model1 == changeModel)//关注或取消关注某一个

{

model.focused = [NSNumber numberWithBool:!focus];

}

[tmpArray addObject:model];

}

else

{

if(!focus)

{

focus = !focus;

model.focused = [NSNumber numberWithBool:focus];

}

[tmpArray addObject:model];

}

}

[self.peopleArr removeAllObjects];

self.peopleArr = [NSMutableArray arrayWithArray:tmpArray];

[self reloadData];

}

相关文章

  • iOS-关注功能本地模型数据需要做的逻辑处理

    一.当我们请求服务器关注成功后,本地的模型数据也要进行处理,因为服务器是取反Type为0的时候说明关注成功,Typ...

  • 通过实现登录页面理解MVC

    MVC简介 Models(模型) : 处理业务逻辑(封装业务逻辑的javaBean) 处理数据(封装数据的Java...

  • MVC,MVP,MVVM归纳

    MVC M:model (模型,用于处理应用程序数据逻辑部分。如数据处理,mySQL数据库处理)V:layout,...

  • Thinkphp 模型和数据库:模型数据处理

    模型提供了比数据库类更为强大的数据处理功能,本章讲解了如何使用模型的各种数据自动处理机制来简化开发,包括模型数据的...

  • MVC三层结构

    Model模型层,处理数据库的数据,业务逻辑处理 View视图层,界面层,前台的结构 Controller控制层,...

  • Vue基础知识点

    一、Vue中的MVVM的理解 M - 模型(Model):数据模型。负责数据存储。泛指后端进行的各种业务逻辑处理和...

  • 探索红葡萄酒的质量

    探索性的数据价值深度挖掘的一般逻辑 背景和目的——数据获取——数据分析预处理——算法模型运用——模型结果验证——结...

  • 设计模式,MVC和MVVM等

    设计原则 MVC 1)Modal模型对象:模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。例如,...

  • ElasticSearch | 数据建模

    数据建模 逻辑模型 | 功能需求 实体属性 实体之间的关系 搜索相关的配置 物理模型 | 性能需求 Setting...

  • 云原生技术系列-监控系统Prometheus之列二:组成与架构

    功能特性与组成架构 功能特性 拉模型:Prometheus主动从客户端拉取指标监控数据 本地存储:Promethe...

网友评论

    本文标题:iOS-关注功能本地模型数据需要做的逻辑处理

    本文链接:https://www.haomeiwen.com/subject/hgucdttx.html