cdts/xdts-ios 3/TreeHole/Code/Features/User/UserService.h

114 lines
3.9 KiB
C
Raw Normal View History

2023-07-27 09:20:00 +08:00
//
// UserService.h
// BabyAlbum
//
// Created by mambaxie on 2021/7/27.
//
#import <Foundation/Foundation.h>
#import "User.h"
#import "ProfilePhoto.h"
typedef NS_ENUM(NSUInteger, UserListScene) {
UserListSceneFriends = 0, // 好友
UserListSceneFollowing, // 我关注
UserListSceneFollowers, // 关注我
UserListSceneGroupMember // 群成员
};
UIKIT_EXTERN NSNotificationName const LoadedUserOtherInfosNotification;
UIKIT_EXTERN NSNotificationName const UpdatedUserInfoNotification;
NS_ASSUME_NONNULL_BEGIN
@interface UserService : NSObject
// 当前用户
+ (User *)currentUser;
// 当前用户ID
+ (int)currentUserID;
// 更新用户
+ (void)updateUser:(User *)user;
// 更新用户到服务器
+ (void)updateUserToRemoteWithUser:(User *)user completion:(void(^)(BOOL succeed))completion;
// 更新指定信息
+ (void)updateUserToRemoteWithParams:(NSDictionary *)params completion:(PYHTTPManagerCallback)completion;
+ (BOOL)isLogined;
// 清除用户
+ (void)clearUser;
//idfa
+ (NSString *)idfa;
+ (void)setIdfa:(NSString *)idfa;
//listen
+ (int )registerBeListener;
+ (void)setRegisterBeListener:(int)registerBeListener;
// 获取用户信息
+ (void)getUserInfoWithCompletion:(void(^)(User *user))completion;
/// 获取用户列表
+ (void)getUserListWithScene:(UserListScene)scene pageIndex:(NSInteger)index completion:(void(^)(NSArray<User *> *users, int totalSize))completion;
/// 获取其他用户信息
+ (void)getUserInfoWithUserID:(int)userID completion:(void(^)(User *user))completion;
/// 设置黑名单
+ (void)setUserBlackWithUserID:(int)userID isBlack:(BOOL)isBlack completion:(PYHTTPManagerCallback)completion;
/// 获取黑名单
+ (void)getUserBlackWithUserID:(int)userID completion:(void(^)(BOOL isBlack))completion;
/// 获取黑名单列表
+ (void)getUserBlackListWithStartDate:(NSString *)startDate completion:(void(^)(NSArray<User *> *users, NSString *nextStartDate))completion;
/// 关注用户
+ (void)followUserWIthUserID:(int)userID completion:(PYHTTPManagerCallback)completion;
/// 取消关注
+ (void)unfollowUserWIthUserID:(int)userID completion:(PYHTTPManagerCallback)completion;
/// 修改手机号
+ (void)modifyPhoneWhshCode:(NSString *)code newPhone:(NSString *)newPhone completion:(PYHTTPManagerCallback)completion;
+ (UserOtherInfo *)userOtherInfoForUserID:(NSString *)userID;
+ (void)loadUserOtherInfosWithUserIDs:(NSArray<NSString *> *)userIDs userCache:(BOOL)userCache comoletion:(PYHTTPManagerCallback)completion;
+ (NSString *)userIDFromIMUserID:(NSString *)imUserID;
/// 当前用户开关是否开启
+ (BOOL)isSecurityCodeOpen;
+ (int)registerListenerSucceed;
+ (void)setRegisterListenerSucceed:(int)succeed;
/// 返回主账号
+ (void)backToMainWithCompletion:(PYHTTPManagerCallback)completion;
/// 进入分身账户
+ (void)changeToCloneWithCompletion:(PYHTTPManagerCallback)completion;
/// 获取未读单聊消息数
+ (void)getC2CUnreadMsgCountWithCompletion:(PYHTTPManagerCallback)completion;
//更新用户App密码锁
+ (void)updateUserSecurityToRemote:(NSDictionary *)params completion:(PYHTTPManagerCallback)completion;
/// 获取用户相册
+ (void)getUserPhotosWithUserID:(int)userID completion:(void(^)(NSArray<ProfilePhoto *> *))completion;
+ (void)uploadUserPhotoWithImages:(NSArray<UIImage *> *)images completion:(PYHTTPManagerCallback)completion;
+ (void)topUserPhotoWithImageURL:(NSString *)imageURL isTop:(BOOL)isTop completion:(PYHTTPManagerCallback)completion;
+ (void)deleteUserPhotoWithImageURL:(NSString *)imageURL completion:(PYHTTPManagerCallback)completion;
/// 强制VIP仅限管理员账户操作
+ (void)dealUser:(int)userId;
+ (void)tagUserAccount:(int)userId accountType:(NSString *)accountType;
+ (void)modifyAccount:(int)uid param:(NSString *)param completion:(PYHTTPManagerCallback)completion;
//封号(仅限管理员账户操作)
//+ (void)banAccount:(int)uid hours:(int)hours completion:(PYHTTPManagerCallback)completion;
@end
NS_ASSUME_NONNULL_END