Files
mier_ios/SweetParty/Expand/UserData/BJUserManager.m
2025-08-11 10:43:19 +08:00

92 lines
2.5 KiB
Objective-C
Executable File

//
// UserManager.m
// MoHuanXingYu
//
// Created by aa on 2019/6/12.
// Copyright © 2019 MoHuanXingYu. All rights reserved.
//
#import "BJUserManager.h"
@implementation BJUserInfo
- (NSString *)login_token {
return C_string(GVUSER.token);
}
@end
@implementation BJUserManager
+ (void)onUpdatePhoneHistory:(NSString *)head_pic user_name:(NSString *)user_name {
if (user_name.length <= 0) {
return;
}
NSArray *arr = [[NSUserDefaults standardUserDefaults] objectForKey:Login_Phone_History];
NSMutableArray *mArr = [[NSMutableArray alloc] initWithArray:arr];
NSInteger index = -1;
for (NSInteger i = 0; i < mArr.count; i++) {
NSDictionary *dict = mArr[i];
if ([user_name isEqualToString:dict[@"user_name"]]) {
index = i;
}
}
NSDictionary *dict = @{@"head_pic":head_pic, @"user_name":user_name};
if (index == -1) {
[mArr insertObject:dict atIndex:0];
}else {
mArr[index] = dict;
}
[[NSUserDefaults standardUserDefaults] setObject:[mArr copy] forKey:Login_Phone_History];
[[NSUserDefaults standardUserDefaults] synchronize];
}
+ (void)bj_refreshUserInfo:(void(^)(BOOL isOk))finishBlock {
[RCMicHTTP postWithURLString:@"/api/user/get_user_info" parameters:nil response:^(RCMicHTTPResult *result) {
if (result.success) {
if (result.errorCode == 200 && [result.content isKindOfClass:NSDictionary.class]) {
[BJUserManager saveUserInfo:result.content];
finishBlock? finishBlock(YES) : nil;
}else {
finishBlock? finishBlock(NO) : nil;
// [SVProgressHUD showInfoWithStatus:result.message];
}
}else {
finishBlock? finishBlock(NO) : nil;
// [SVProgressHUD showInfoWithStatus:@"网络错误"];
}
}];
}
+ (BOOL)saveUserInfo:(NSDictionary *)dic {
GVUSER.rawUserDict = dic;
NSString *loginToken = [dic safeStringForKey:@"login_token"];
if (loginToken.length > 0) {
GVUSER.token = loginToken;
}
[BJUserManager onUpdatePhoneHistory:[dic safeStringForKey:@"head_pic"] user_name:[dic safeStringForKey:@"user_name"]];
return YES;
}
+ (BJUserInfo *)userInfo {
NSDictionary *data = GVUSER.rawUserDict;
if ([data isKindOfClass:NSDictionary.class] && data.allKeys.count>0) {
BJUserInfo *model = [BJUserInfo mj_objectWithKeyValues:data];
return model;
}
return nil;
}
+ (BOOL)clearUserInfo
{
GVUSER.rawUserDict = @{};
GVUSER.token = @"";
return YES;
}
@end