// // YMCancellationAccountViewModel.m // MSYOUPAI // // Created by YoMi on 2024/3/17. // Copyright © 2024 MS. All rights reserved. // #import "YMCancellationAccountViewModel.h" @interface YMCancellationAccountViewModel () /// 注销账号提示 @property (nonatomic, strong, readwrite) NSAttributedString *cancellationAccountTips; /// 注销按钮有效性 @property (nonatomic, strong, readwrite) RACSignal *validCancellationSignal; @end @implementation YMCancellationAccountViewModel - (void)ym_initialize{ [super ym_initialize]; self.customNavTitle = @"注销账号"; /// 注销按钮有效性 self.validCancellationSignal = [[[RACSignal combineLatest:@[ RACObserve(self, isAgree), ] reduce:^(NSNumber *isAgree) { //是否不为空 return @([isAgree boolValue] ? YES : NO); }] distinctUntilChanged] takeUntil:self.rac_willDeallocSignal]; NSString *appName = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleDisplayName"]; NSString *cancellationAccountTipsStr = stringFormat(@"提交注销申请后,系统将注销%@账号并清除所有相关数据。注销%@账号是不可恢复的操作,你应自行备份相关的信息和数据,操作之前,请确认与%@账号相关的所有服务均已妥善处理。请递记:注销%@账号,你将无法再使用%@账号或找回你添加或绑定的任何内容或信息(即使你使用相同的手机号码再次注册并使用%@),包括但不限于:\n1. 你将无法登录、使用本%@账号,你的朋友(包括喜欢、好友等) 将无法通过本%@账号联系你;\n2. 你%@账号中的个人资料和历史信息(包括但不限手昵称、头像、财富值、收藏等)都将被永久全部清除,无法找回;\n3. 你%@账号绑定的手机号、第三方账号、实名信息都将被解绑,解绑后可重新注册新账号;\n4. 靓号将会被系统收回,并对平台其他用户开放申请;\n5 注销账号前,务必确认所有在%@内的收益已经提现,(相关无法提现的虛拟物品,你可以进行消费后再注销,或者直接舍奔),账号注销后,账户内的金币,购买的会员权益视为自动放弃。\n6. 请注意,注销你的%@账号并不代表本%@账号注销前的账号行为和相关责任得到豁免或减轻。\n7、用户自申请注销操作日起,给予7天的注销冷静期,期问可正常登录恢复使用,如申请注销后7天内未登录,则完成注销,所有数据不可恢复。",appName,appName,appName,appName,appName,appName,appName,appName,appName,appName,appName,appName,appName); NSMutableAttributedString *cancellationAccountTipsAttributed = [[NSMutableAttributedString alloc]initWithString:cancellationAccountTipsStr]; cancellationAccountTipsAttributed.yy_font = LCFont(15); cancellationAccountTipsAttributed.yy_color = HexColorFromRGB(0x333333); cancellationAccountTipsAttributed.yy_alignment = NSTextAlignmentJustified; cancellationAccountTipsAttributed.yy_lineSpacing = 5; self.cancellationAccountTips = cancellationAccountTipsAttributed; } - (void)submitCancellationAccountInfoData{ YMTipsPopupView *customView = [[YMTipsPopupView alloc]init]; [customView configutationWithTips:@"您确定要注销账号吗?" TipsAlignment:NSTextAlignmentCenter IsHideTitle:NO IsHideSingleButton:YES]; YMPopupView *popupView = [YMPopupView initWithCustomView:customView parentView:nil popStyle:YMPopupStyleFade dismissStyle:YMDismissStyleFade]; popupView.priority = 999; popupView.cornerRadius = adapt(10); popupView.rectCorners = UIRectCornerAllCorners; popupView.positionStyle = YMPositionStyleCenter; popupView.isHideBg = NO; popupView.bgAlpha = 0.3; [popupView pop]; @weakify(popupView) customView.buttonBlock = ^(BOOL isConfirm) { @strongify(popupView) if (isConfirm) { @weakify(self) [LCHttpHelper requestWithURLString:SubmitCancellationAccount parameters:@{ @"user_id":[LCSaveModel getUserModel].youpaipuserinfo.youpaipuser_id } needToken:YES type:HttpRequestTypePost success:^(id responseObject) { @strongify(self) NSDictionary* dict = (NSDictionary*)responseObject; NSInteger code = [[dict objectForKey:@"code"] integerValue]; if (code == 0) { [ZCHUDHelper showTitle:@"请耐心等待~" showtime:1.5]; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [LCTools changeRootToLogin]; }); } } failure:^(NSError *error) { [ZCHUDHelper showTitle:error.localizedDescription]; }]; } [popupView dismissWithStyle:YMDismissStyleFade duration:2.0]; }; } @end