Files
peko-ios/YuMi/Modules/YMMine/Presenter/XPMineUserInfoPresenter.m

68 lines
2.1 KiB
Mathematica
Raw Normal View History

2023-07-14 18:50:55 +08:00
//
// YMMineUserInfoPresenter.m
// YUMI
//
// Created by YUMI on 2021/9/23.
//
#import "XPMineUserInfoPresenter.h"
///Tool
#import "Api+Mine.h"
#import "AccountInfoStorage.h"
///Model
#import "UserInfoModel.h"
///P
#import "XPMineUserInfoProtocol.h"
@implementation XPMineUserInfoPresenter
//
- (void)getUserInfoWithUid:(NSString *)uid {
[Api getUserInfo:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
UserInfoModel * infoModel = [UserInfoModel modelWithDictionary:data.data];
[[self getView] onGetUserInfoSuccess:infoModel];
} fail:^(NSInteger code, NSString * _Nullable msg) {
}] uid:uid];
}
//
- (void)getUserDetailInfoWithUid:(NSString *)uid {
[Api userDetailInfoCompletion:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
UserInfoModel * infoModel = [UserInfoModel modelWithDictionary:data.data];
[[self getView] ongetDetailInfoSuccess:infoModel];
}] uid:uid page:@"1" pageSize:@"20"];
}
///
/// @param targetUid uid
- (void)getUserAttentionState:(NSString *)targetUid; {
NSString * uid = [[AccountInfoStorage instance] getUid];
[Api attentionStatusCompletion:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
BOOL isLike = ((NSNumber *)data.data).boolValue;
[[self getView] getAttentionStateSuccess:isLike];
}] uid:uid isLikeUid:targetUid];
}
/// /
/// @param targetUid uid
/// @param state yes NO
- (void)attentionUser:(NSString *)targetUid state:(BOOL)state {
NSString * uid = [[AccountInfoStorage instance] getUid];
NSString * ticket = [[AccountInfoStorage instance] getTicket];
NSString * type = state ? @"1" : @"2";
[Api attentionCompletion:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] attentionUserSuccess:state];
}] uid:uid likedUid:targetUid ticket:ticket type:type];
}
///访
///@param targetUid 访uid
- (void)visitUser:(NSString *)targetUid {
[Api uploadVisitUserCompletion:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
}] uid:targetUid];
}
@end