diff --git a/yinmeng-ios/DingDangApp.xcodeproj/project.pbxproj b/yinmeng-ios/DingDangApp.xcodeproj/project.pbxproj index 18cebb0..7e76f78 100644 --- a/yinmeng-ios/DingDangApp.xcodeproj/project.pbxproj +++ b/yinmeng-ios/DingDangApp.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 54; + objectVersion = 53; objects = { /* Begin PBXBuildFile section */ @@ -760,6 +760,8 @@ 8C2C3F322B28DD95002C3C34 /* NSDate+DDDateUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2C3F312B28DD95002C3C34 /* NSDate+DDDateUtils.m */; }; 8C2C3F362B28DDCE002C3C34 /* NSCalendar+DDPick.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2C3F352B28DDCE002C3C34 /* NSCalendar+DDPick.m */; }; 8C2C3F3A2B28E22E002C3C34 /* YYAnimatedImageView+ShowImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2C3F392B28E22E002C3C34 /* YYAnimatedImageView+ShowImage.m */; }; + 8C2C3F492B29335E002C3C34 /* DDLoginAccountModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2C3F482B29335E002C3C34 /* DDLoginAccountModel.m */; }; + 8C2C3F4B2B294528002C3C34 /* login_logo.svga in Resources */ = {isa = PBXBuildFile; fileRef = 8C2C3F4A2B294528002C3C34 /* login_logo.svga */; }; 8CE493992B23F44800CA14D5 /* NSMutableDictionary+DDSafe.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CE493982B23F44800CA14D5 /* NSMutableDictionary+DDSafe.m */; }; 8CE4939C2B23F45C00CA14D5 /* NSArray+DDSafe.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CE4939B2B23F45C00CA14D5 /* NSArray+DDSafe.m */; }; 8CE493A02B23F5FA00CA14D5 /* DDUploadFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CE4939F2B23F5FA00CA14D5 /* DDUploadFile.m */; }; @@ -2175,6 +2177,9 @@ 8C2C3F352B28DDCE002C3C34 /* NSCalendar+DDPick.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSCalendar+DDPick.m"; sourceTree = ""; }; 8C2C3F382B28E22E002C3C34 /* YYAnimatedImageView+ShowImage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "YYAnimatedImageView+ShowImage.h"; sourceTree = ""; }; 8C2C3F392B28E22E002C3C34 /* YYAnimatedImageView+ShowImage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "YYAnimatedImageView+ShowImage.m"; sourceTree = ""; }; + 8C2C3F472B29335E002C3C34 /* DDLoginAccountModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DDLoginAccountModel.h; sourceTree = ""; }; + 8C2C3F482B29335E002C3C34 /* DDLoginAccountModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DDLoginAccountModel.m; sourceTree = ""; }; + 8C2C3F4A2B294528002C3C34 /* login_logo.svga */ = {isa = PBXFileReference; lastKnownFileType = file; path = login_logo.svga; sourceTree = ""; }; 8CAB97312B2259EA00ED8639 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; 8CE493972B23F44800CA14D5 /* NSMutableDictionary+DDSafe.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary+DDSafe.h"; sourceTree = ""; }; 8CE493982B23F44800CA14D5 /* NSMutableDictionary+DDSafe.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSMutableDictionary+DDSafe.m"; sourceTree = ""; }; @@ -2276,6 +2281,7 @@ 1802B3C42A540A1C0036DCEF /* Login */ = { isa = PBXGroup; children = ( + 8C2C3F462B293343002C3C34 /* Model */, 1802B3C82A540C830036DCEF /* View */, 1802B3C52A540A620036DCEF /* DDV2LoginVC.h */, 1802B3C62A540A620036DCEF /* DDV2LoginVC.m */, @@ -4996,6 +5002,7 @@ 18E00DDD2A66BBC900FD034C /* Resource */ = { isa = PBXGroup; children = ( + 8C2C3F4A2B294528002C3C34 /* login_logo.svga */, 18E00DDB2A66BABA00FD034C /* airplane_bg.png */, 186777902A42FB540096D802 /* avtarlive.gif */, 18EBAB5B2A42EFD300AEF467 /* noble_xuanguang.png */, @@ -5697,6 +5704,15 @@ path = YYAnimatedImageView; sourceTree = ""; }; + 8C2C3F462B293343002C3C34 /* Model */ = { + isa = PBXGroup; + children = ( + 8C2C3F472B29335E002C3C34 /* DDLoginAccountModel.h */, + 8C2C3F482B29335E002C3C34 /* DDLoginAccountModel.m */, + ); + path = Model; + sourceTree = ""; + }; 8CE493952B23F2B400CA14D5 /* DDBaseTool */ = { isa = PBXGroup; children = ( @@ -6083,6 +6099,7 @@ 18C1237C2A57EEAA00B89660 /* microrun_9.png in Resources */, 188EC0F02A47CF3200060F03 /* DDMEmoticon2.plist in Resources */, 188EC1CD2A47CF4300060F03 /* messages_icon_11@2x.png in Resources */, + 8C2C3F4B2B294528002C3C34 /* login_logo.svga in Resources */, 1802B3BE2A54061C0036DCEF /* messages_icon_29@2x.png in Resources */, 186C9D082A29EE3500209BB5 /* PlayButtonOverlayLarge@3x.png in Resources */, ); @@ -6600,6 +6617,7 @@ 188EC0F32A47CF3200060F03 /* DDMInputHelper.m in Sources */, 23B2A7F92B283ACA001C0913 /* BaseModel.m in Sources */, 188EC13E2A47CF3300060F03 /* HXPhotoEditResizeControl.m in Sources */, + 8C2C3F492B29335E002C3C34 /* DDLoginAccountModel.m in Sources */, 1867776F2A4292F70096D802 /* CreatRoomBgImageViewCell.m in Sources */, 181F75482A5407AF006FA7F5 /* DDLabelModel.m in Sources */, 23B2A7F72B283ACA001C0913 /* NSObject+AutoCoding.m in Sources */, @@ -7061,8 +7079,10 @@ "$(inherited)", "$(PROJECT_DIR)/DingDangApp/BsaseClass/Third/SdkLib", ); - MARKETING_VERSION = 1.1.1; - PRODUCT_BUNDLE_IDENTIFIER = cn.nnbc123.voices; + + MARKETING_VERSION = 1.4.1; + PRODUCT_BUNDLE_IDENTIFIER = cn.dingdang.voice; + PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; @@ -7119,8 +7139,10 @@ "$(inherited)", "$(PROJECT_DIR)/DingDangApp/BsaseClass/Third/SdkLib", ); - MARKETING_VERSION = 1.1.1; - PRODUCT_BUNDLE_IDENTIFIER = cn.nnbc123.voices; + + MARKETING_VERSION = 1.4.1; + PRODUCT_BUNDLE_IDENTIFIER = cn.dingdang.voice; + PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; diff --git a/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/Contents.json b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/Contents.json new file mode 100644 index 0000000..d3712ce --- /dev/null +++ b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "login_checkbox_checked@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "login_checkbox_checked@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/login_checkbox_checked@2x.png b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/login_checkbox_checked@2x.png new file mode 100644 index 0000000..a297261 Binary files /dev/null and b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/login_checkbox_checked@2x.png differ diff --git a/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/login_checkbox_checked@3x.png b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/login_checkbox_checked@3x.png new file mode 100644 index 0000000..40b0a85 Binary files /dev/null and b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_checked.imageset/login_checkbox_checked@3x.png differ diff --git a/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/Contents.json b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/Contents.json new file mode 100644 index 0000000..c0b302e --- /dev/null +++ b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "login_checkbox_uncheck@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "login_checkbox_uncheck@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/login_checkbox_uncheck@2x.png b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/login_checkbox_uncheck@2x.png new file mode 100644 index 0000000..9d07b6b Binary files /dev/null and b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/login_checkbox_uncheck@2x.png differ diff --git a/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/login_checkbox_uncheck@3x.png b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/login_checkbox_uncheck@3x.png new file mode 100644 index 0000000..c04eb82 Binary files /dev/null and b/yinmeng-ios/DingDangApp/Assets.xcassets/V2.0_Icon/LogIn/login_checkbox_uncheck.imageset/login_checkbox_uncheck@3x.png differ diff --git a/yinmeng-ios/DingDangApp/CodeClass/Resource/login_logo.svga b/yinmeng-ios/DingDangApp/CodeClass/Resource/login_logo.svga new file mode 100644 index 0000000..0d0cac2 Binary files /dev/null and b/yinmeng-ios/DingDangApp/CodeClass/Resource/login_logo.svga differ diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.h b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.h index 4fd43fb..6bea627 100644 --- a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.h +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.h @@ -6,10 +6,11 @@ // #import "WLBaseViewController.h" +#import "DDBaseVC.h" NS_ASSUME_NONNULL_BEGIN -@interface DDV2LoginVC : WLBaseViewController +@interface DDV2LoginVC : DDBaseVC @property (nonatomic, strong) NSDictionary *install_params; @end diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.m b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.m index 3793dbb..e4864ed 100644 --- a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.m +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2LoginVC.m @@ -6,10 +6,18 @@ // #import "DDV2LoginVC.h" -#import "DDProtocolView.h" +/// Controller #import "DDWebViewController.h" -#import #import "DDV2PhoneLoginVC.h" +/// View +#import "DDProtocolView.h" +/// Third +#import +#import +#import +/// Tool +#import "DDAppColor.h" +#import "UIImage+Custom.h" @interface DDV2LoginVC () @@ -17,6 +25,7 @@ @property (nonatomic, strong) UIImageView *bgImgV; /**logo**/ @property (nonatomic, strong) UIImageView *logoImgV; +@property (nonatomic, strong) SVGAPlayer *logoSVGAPlayer; /**手机号登录**/ @property (nonatomic, strong) UIButton *phoneBtn; /**协议**/ @@ -26,12 +35,15 @@ @implementation DDV2LoginVC +#pragma mark - Life Cycle +- (BOOL)ishiddenNavigationView { + return YES; +} - (void)viewDidLoad { [super viewDidLoad]; - // Do any additional setup after loading the view. - self.customNavBar.hidden = YES; self.view.backgroundColor = UIColor.whiteColor; [self initSubView]; + [self initLoginAnimation]; [GeYanSdk preGetToken:^(NSDictionary *preDic) { NSLog(@"preGetToken: %@ %@", preDic, preDic[@"msg"]); @@ -41,39 +53,45 @@ }]; } +#pragma mark - Init - (void)initSubView { - - [self.view addSubview:self.bgImgV]; - [self.bgImgV mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.right.top.bottom.equalTo(self.view).inset(0); - }]; - - [self.view addSubview:self.logoImgV]; - [self.logoImgV mas_makeConstraints:^(MASConstraintMaker *make) { - make.top.mas_equalTo(145); - make.width.mas_equalTo(102); - make.height.mas_equalTo(150); - make.centerX.equalTo(self.view); - }]; - + [self.view addSubview:self.logoSVGAPlayer]; [self.view addSubview:self.phoneBtn]; + [self.view addSubview:self.protocolView]; + + + [self.logoSVGAPlayer mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.right.top.mas_equalTo(self.view); + make.height.mas_equalTo(KScreenWidth * kScaleX); + }]; + [self.phoneBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.left.right.equalTo(self.view).inset(49); - make.top.equalTo(self.logoImgV.mas_bottom).offset(140); + make.top.equalTo(self.logoSVGAPlayer.mas_bottom); make.height.mas_equalTo(52); }]; - self.phoneBtn.layer.masksToBounds = YES; - self.phoneBtn.layer.cornerRadius = 52/2; + - [self.view addSubview:self.protocolView]; [self.protocolView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(self.view); make.right.mas_equalTo(self.view); make.height.mas_equalTo(44); - make.bottom.mas_equalTo(self.view).mas_offset(-DDBottomHeight() - 44 -18); + make.top.mas_equalTo(self.phoneBtn.mas_bottom).offset(20); }]; } +- (void)initLoginAnimation { + SVGAParser *parser = [[SVGAParser alloc] init]; + WeakSelf(weakSelf); + [parser parseWithNamed:@"login_logo" inBundle:nil completionBlock:^(SVGAVideoEntity * _Nonnull videoItem) { + if (videoItem != nil) { + weakSelf.logoSVGAPlayer.videoItem = videoItem; + [weakSelf.logoSVGAPlayer startAnimation]; + } + } failureBlock:nil]; + +} + //登录 - (void)phoneBtnClick { @@ -87,7 +105,22 @@ [self.navigationController pushViewController:VC animated:YES]; } -#pragma mark ------ 懒加载 ------ +- (void)getLinkPath:(NSString *)path params:(NSDictionary *)params{ + self.install_params = params; + [[NSNotificationCenter defaultCenter] postNotificationName:KNoti_InviteCodeUpdateKey object:params userInfo:@{}]; +} + + +#pragma mark - Get +- (SVGAPlayer *)logoSVGAPlayer { + if (!_logoSVGAPlayer) { + _logoSVGAPlayer = [[SVGAPlayer alloc] init]; + _logoSVGAPlayer.loops = 1; + _logoSVGAPlayer.clearsAfterStop = NO; + } + return _logoSVGAPlayer; +} + - (UIImageView *)bgImgV { if (!_bgImgV) { _bgImgV = [UIImageView new]; @@ -108,9 +141,12 @@ if (!_phoneBtn) { _phoneBtn = [UIButton buttonWithType:UIButtonTypeCustom]; _phoneBtn.titleLabel.font = DDFont(16); + _phoneBtn.layer.masksToBounds = YES; + _phoneBtn.layer.cornerRadius = 52/2; [_phoneBtn setTitle:@"手机号码登录" forState:UIControlStateNormal]; - [_phoneBtn setTitleColor:UIColor.whiteColor forState:UIControlStateNormal]; - [_phoneBtn setBackgroundImage:[UIImage imageNamed:@"v2_com_btn"] forState:UIControlStateNormal]; + [_phoneBtn setTitleColor:[DDAppColor dd_MajorTitleColor] forState:UIControlStateNormal]; + UIImage *bgImage = [UIImage imageWithColor:[DDAppColor dd_sureBtnGradientBeginColor]]; + [_phoneBtn setBackgroundImage:bgImage forState:UIControlStateNormal]; [_phoneBtn addTarget:self action:@selector(phoneBtnClick) forControlEvents:UIControlEventTouchUpInside]; } return _phoneBtn; } @@ -131,18 +167,4 @@ } return _protocolView; } -- (void)getLinkPath:(NSString *)path params:(NSDictionary *)params{ - self.install_params = params; - [[NSNotificationCenter defaultCenter] postNotificationName:KNoti_InviteCodeUpdateKey object:params userInfo:@{}]; -} -/* -#pragma mark - Navigation - -// In a storyboard-based application, you will often want to do a little preparation before navigation -- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { - // Get the new view controller using [segue destinationViewController]. - // Pass the selected object to the new view controller. -} -*/ - @end diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.h b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.h index 92b783d..ccc026b 100644 --- a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.h +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.h @@ -5,11 +5,12 @@ // Created by apple on 2023/7/4. // -#import "WLBaseViewController.h" +//#import "WLBaseViewController.h" +#import "DDBaseVC.h" NS_ASSUME_NONNULL_BEGIN -@interface DDV2PhoneLoginVC : WLBaseViewController +@interface DDV2PhoneLoginVC : DDBaseVC @property (nonatomic, strong) NSDictionary *install_params; @end diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.m b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.m index c9e1b76..2225fbd 100644 --- a/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.m +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/DDV2PhoneLoginVC.m @@ -6,18 +6,43 @@ // #import "DDV2PhoneLoginVC.h" +#import "AppDelegate.h" +/// View +#import "DDLoginTextView.h" +#import "DDWebViewController.h" +/// Tool +#import "AppDelegate+CYLTabBar.h" +#import "HttpRequestHelper.h" +#import "DDDESEncrypt.h" +//#import "DDLoginAccountModel.h" +/// Model +#import "AccountInfoStorage.h" +#import "AccountModel.h" +/// Third +#import +#import #import #import -#import "DDLoginTextView.h" -#import "AppDelegate.h" -#import "AppDelegate+CYLTabBar.h" -#import "DDWebViewController.h" + +typedef enum : NSUInteger { + DD_Login_Input_Phone, + DD_Login_Input_Password, + DD_Login_Input_Code, +} DDLoignType; @interface DDV2PhoneLoginVC () +@property (nonatomic, strong) SVGAPlayer *logoSVGAPlayer; + /**标题**/ -@property (nonatomic, strong) UILabel *titleLabel; +//@property (nonatomic, strong) UILabel *titleLabel; /**账号**/ @property (nonatomic, strong) DDLoginTextView *phoneView; +/** 获取验证码 **/ +@property (nonatomic, strong) UIButton *codeButton; + + + + /**验证码**/ @property (nonatomic, strong) DDLoginTextView *codeView; /**密码**/ @@ -36,6 +61,121 @@ @end @implementation DDV2PhoneLoginVC + + +- (void)dealloc { + [[NSNotificationCenter defaultCenter] removeObserver:self name:KNoti_InviteCodeUpdateKey object:nil]; +} + +#pragma mark - Life Cycle +- (void)viewWillAppear:(BOOL)animated { + [super viewWillAppear:animated]; + [IQKeyboardManager sharedManager].enable = YES; +} + +- (void)viewWillDisappear:(BOOL)animated { + [super viewWillDisappear:animated]; + [IQKeyboardManager sharedManager].enable = NO; +} + +- (void)viewDidLoad { + [super viewDidLoad]; + + self.isLoginType = 1; + // [self defaultNavTitle:@"" hideLine:YES]; + [self dd_addNavImage:@[@"myinfo_6"] isLeft:YES target:self action:@selector(backButtonAction) tags:nil]; + self.view.backgroundColor = [UIColor whiteColor]; + + [self initSubView]; + + //一键登录 + // [self initCLShanYanWithLogin]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(inviteCodeUpdate:) name:KNoti_InviteCodeUpdateKey object:nil]; +} + +#pragma mark - inviteView +- (void)initSubView { + [self.view addSubview:self.logoSVGAPlayer]; + [self.view addSubview:self.phoneView]; + + [self.logoSVGAPlayer mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.right.top.mas_equalTo(self.view); + make.height.mas_equalTo(KScreenWidth * kScaleX); + }]; + +// [self.view addSubview:self.titleLabel]; +// [self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) { +// make.left.equalTo(self.view).offset(25); +// make.top.equalTo(self.view).offset(DDNavigationBarHeight()+20); +// make.width.mas_equalTo(300); +// make.height.mas_equalTo(28); +// }]; +// + + [self.phoneView mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.right.equalTo(self.view); + make.top.mas_equalTo(self.logoSVGAPlayer.mas_bottom).mas_offset(20); + make.height.mas_equalTo(40); + }]; +// +// [self.view addSubview:self.codeView]; +// [self.codeView mas_makeConstraints:^(MASConstraintMaker *make) { +// make.left.right.equalTo(self.view); +// make.top.mas_equalTo(self.phoneView.mas_bottom).mas_offset(22); +// make.height.mas_equalTo(40); +// }]; +// +// [self.view addSubview:self.passWordView]; +// self.passWordView.hidden = YES; +// [self.passWordView mas_makeConstraints:^(MASConstraintMaker *make) { +// make.left.right.equalTo(self.view); +// make.top.mas_equalTo(self.phoneView.mas_bottom).mas_offset(22); +// make.height.mas_equalTo(40); +// }]; +// +// [self.view addSubview:self.inviteView]; +// [self.inviteView mas_makeConstraints:^(MASConstraintMaker *make) { +// make.left.right.equalTo(self.view); +// make.top.mas_equalTo(self.codeView.mas_bottom).mas_offset(22); +// make.height.mas_equalTo(40); +// }]; +// [self.view addSubview:self.loginTypeBtn]; +// [self.loginTypeBtn mas_makeConstraints:^(MASConstraintMaker *make) { +// make.top.mas_equalTo(self.phoneView.mas_bottom).offset(123); +// make.left.equalTo(self.view).offset(25); +// make.width.mas_equalTo(100); +// make.height.mas_equalTo(52); +// }]; +// [self.view addSubview:self.noLoginlabel]; +// CGFloat width = [ToolsObject sizeWithText:@"如无法登录,请点击这里" andFont:DDFont(12) maxSize:CGSizeMake(230, 52) andlineSpacing:1].width; +// [self.noLoginlabel mas_makeConstraints:^(MASConstraintMaker *make) { +// make.right.equalTo(self.view).offset(-25); +// make.height.mas_equalTo(52); +// make.centerY.equalTo(self.loginTypeBtn); +// make.width.mas_equalTo(width+10); +// }]; +// [self.view addSubview:self.loginBtn]; +// [self.loginBtn mas_makeConstraints:^(MASConstraintMaker *make) { +// make.centerX.equalTo(self.view); +// make.width.mas_equalTo(250); +// make.height.mas_equalTo(50); +// make.top.mas_equalTo(self.loginTypeBtn.mas_bottom).mas_offset(30); +// }]; +// NSString * invite_code = [ToolsObject getInfoObject:@"invite_code"]; +// self.inviteView.textField.text = invite_code?:@""; +} + + + +#pragma mark - Action +- (void)backButtonAction { + [self.navigationController popViewControllerAnimated:NO]; +} + +- (void)getCodeNumberAction { + +} + #pragma mark ------ 一键登录相关方法及配置 ------ - (void)initCLShanYanWithLogin { //默认 @@ -178,14 +318,14 @@ NSFontAttributeName: [UIFont systemFontOfSize:11] }; authViewModel.termTextColor = DDHEXColor(0x999999); - + NSString * userAgreementUrl = [NSString stringWithFormat:@"%@#/publicpage?position=1010",KWebURL]; NSString * privacyPolicyUrl = [NSString stringWithFormat:@"%@#/publicpage?position=1009",KWebURL]; // 加载本地的html NSURLRequest *userAgreementUrlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:userAgreementUrl?:@""]]; NSURLRequest *privacyPolicyUrlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:privacyPolicyUrl?:@""]]; - - + + GyAuthPrivacyItem *item1 = [[GyAuthPrivacyItem alloc] initWithTitle:@"《啵柚语音用户协议》" urlRequest:userAgreementUrlRequest index:1 @@ -230,7 +370,7 @@ authViewModel.authVCTransitionBlock = ^(CGSize size, id coordinator, UIView *customAreaView) { NSLog(@"页面生命周期 回调: 自定义VIEW"); }; - + return authViewModel; } @@ -255,68 +395,61 @@ AppUserModel * myModel = [AppUserModel new]; myModel.token = response.data[@"token"]; [ToolsObject saveUserModel:myModel]; - [ws getUserInfo:response.data[@"token"]]; + // [ws getUserInfo:response.data[@"token"]]; } }]; } --(void)getUserInfo:(NSString *)token -{ +- (void)getUserInfo:(NSString *)uid token:(NSString *)token { NSMutableDictionary *requestDict = [NSMutableDictionary dictionary]; - [NetworkRequest requestPOST:@"/user/info" parameters:requestDict block:^(BaseResponse * _Nonnull response) { - if (response.code == 200){ - if ([ToolsObject IsNullWithObject:response.data]) { - return; - } - AppUserModel *model = [AppUserModel yy_modelWithJSON:response.data]; - AppUserModel * myModel = [ToolsObject getUserModel]; - myModel = model; - myModel.token = token; - [ToolsObject saveUserModel:myModel]; - [[DDSocketTool shareTool] starConnection]; - [DDSocketTool shareTool].socketConnectBlock = ^(BOOL isSuccess) { - if (!isSuccess){ - [ToolsObject removeUserInfo]; - } - AppDelegate *delegate =(AppDelegate *)[UIApplication sharedApplication].delegate; - [delegate configureForTabBarController]; - }; - } + requestDict[@"uid"] = uid; + [HttpRequestHelper GET:@"/user/get" params:requestDict success:^(BaseModel * _Nonnull data) { + AppUserModel *model = [AppUserModel yy_modelWithJSON:data.data]; + model.token = token; + [ToolsObject saveUserModel:model]; + + [ToolsObject addPopVieToText:@"登录成功"]; + [self.navigationController popToRootViewControllerAnimated:NO]; + + AppDelegate *delegate =(AppDelegate *)[UIApplication sharedApplication].delegate; + [delegate configureForTabBarController]; + + } failure:^(NSInteger resCode, NSString * _Nonnull message) { + }]; + // [NetworkRequest requestPOST:@"/user/info" parameters:requestDict block:^(BaseResponse * _Nonnull response) { + // if (response.code == 200){ + // if ([ToolsObject IsNullWithObject:response.data]) { + // return; + // } + // AppUserModel *model = [AppUserModel yy_modelWithJSON:response.data]; + // AppUserModel * myModel = [ToolsObject getUserModel]; + // myModel = model; + // myModel.token = token; + // [ToolsObject saveUserModel:myModel]; + // [[DDSocketTool shareTool] starConnection]; + // [DDSocketTool shareTool].socketConnectBlock = ^(BOOL isSuccess) { + // if (!isSuccess){ + // [ToolsObject removeUserInfo]; + // } + // AppDelegate *delegate =(AppDelegate *)[UIApplication sharedApplication].delegate; + // [delegate configureForTabBarController]; + // }; + // } + // }]; } -- (void)viewWillAppear:(BOOL)animated { - [super viewWillAppear:animated]; - [IQKeyboardManager sharedManager].enable = YES; -} -- (void)viewWillDisappear:(BOOL)animated { - [super viewWillDisappear:animated]; - [IQKeyboardManager sharedManager].enable = NO; -} -- (void)viewDidLoad { - [super viewDidLoad]; - // Do any additional setup after loading the view. - self.isLoginType = 1; - [self defaultNavTitle:@"" hideLine:YES]; - self.view.backgroundColor = [UIColor whiteColor]; - - [self initSubView]; - - //一键登录 - [self initCLShanYanWithLogin]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(inviteCodeUpdate:) name:KNoti_InviteCodeUpdateKey object:nil]; -} + - (void)inviteCodeUpdate:(NSNotification *)noti { - if ([noti.object isKindOfClass:[NSDictionary class]]){ + if ([noti.object isKindOfClass:[NSDictionary class]]){ NSDictionary * dataDic = noti.object; - if ([ToolsObject IsNullWithObject:dataDic]) { - return; - } - self.install_params = dataDic; + if ([ToolsObject IsNullWithObject:dataDic]) { + return; + } + self.install_params = dataDic; } } - (void)loginTypeBtnClick:(UIButton *)btn { - self.loginTypeBtn.selected = !self.loginTypeBtn.selected; self.passWordView.textField.text = @""; self.codeView.textField.text = @""; @@ -340,69 +473,9 @@ } } -- (void)initSubView { - - [self.view addSubview:self.titleLabel]; - [self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.equalTo(self.view).offset(25); - make.top.equalTo(self.view).offset(DDNavigationBarHeight()+20); - make.width.mas_equalTo(300); - make.height.mas_equalTo(28); - }]; - - [self.view addSubview:self.phoneView]; - [self.phoneView mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.right.equalTo(self.view); - make.top.mas_equalTo(self.titleLabel.mas_bottom).mas_offset(44); - make.height.mas_equalTo(40); - }]; - - [self.view addSubview:self.codeView]; - [self.codeView mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.right.equalTo(self.view); - make.top.mas_equalTo(self.phoneView.mas_bottom).mas_offset(22); - make.height.mas_equalTo(40); - }]; - - [self.view addSubview:self.passWordView]; - self.passWordView.hidden = YES; - [self.passWordView mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.right.equalTo(self.view); - make.top.mas_equalTo(self.phoneView.mas_bottom).mas_offset(22); - make.height.mas_equalTo(40); - }]; -#pragma mark inviteView - [self.view addSubview:self.inviteView]; - [self.inviteView mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.right.equalTo(self.view); - make.top.mas_equalTo(self.codeView.mas_bottom).mas_offset(22); - make.height.mas_equalTo(40); - }]; - [self.view addSubview:self.loginTypeBtn]; - [self.loginTypeBtn mas_makeConstraints:^(MASConstraintMaker *make) { - make.top.mas_equalTo(self.phoneView.mas_bottom).offset(123); - make.left.equalTo(self.view).offset(25); - make.width.mas_equalTo(100); - make.height.mas_equalTo(52); - }]; - [self.view addSubview:self.noLoginlabel]; - CGFloat width = [ToolsObject sizeWithText:@"如无法登录,请点击这里" andFont:DDFont(12) maxSize:CGSizeMake(230, 52) andlineSpacing:1].width; - [self.noLoginlabel mas_makeConstraints:^(MASConstraintMaker *make) { - make.right.equalTo(self.view).offset(-25); - make.height.mas_equalTo(52); - make.centerY.equalTo(self.loginTypeBtn); - make.width.mas_equalTo(width+10); - }]; - [self.view addSubview:self.loginBtn]; - [self.loginBtn mas_makeConstraints:^(MASConstraintMaker *make) { - make.centerX.equalTo(self.view); - make.width.mas_equalTo(250); - make.height.mas_equalTo(50); - make.top.mas_equalTo(self.loginTypeBtn.mas_bottom).mas_offset(30); - }]; - NSString * invite_code = [ToolsObject getInfoObject:@"invite_code"]; - self.inviteView.textField.text = invite_code?:@""; -} + + + - (void)setInstall_params:(NSDictionary *)install_params{ _install_params = install_params; if (![ToolsObject IsNullWithObject:install_params]){ @@ -412,49 +485,15 @@ } } -#pragma mark ------ 懒加载 ------ -- (UILabel *)titleLabel { - if (!_titleLabel) { - _titleLabel = [UILabel new]; - _titleLabel.text = @"登录解锁更多精彩内容"; - _titleLabel.font = [UIFont boldSystemFontOfSize:20]; - _titleLabel.textColor = DDHEXColor(0x333333); - _titleLabel.textAlignment = NSTextAlignmentLeft; - } return _titleLabel; + +- (NSString *)getPhoneEncryptDes{ + return [DDDESEncrypt DD_EncryptUseDES:self.phoneView.textField.text key:@"1ea53d260ecf11e7b56e00163e046a26"]; } --(DDLoginTextView *)phoneView -{ - if (!_phoneView) { - _phoneView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldPhone]; - } - return _phoneView; -} --(DDLoginTextView *)passWordView -{ - if (!_passWordView) { - _passWordView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldPassWord]; - } - return _passWordView; -} --(DDLoginTextView *)inviteView -{ - if (!_inviteView) { - _inviteView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldInvideCode]; - } - return _inviteView; -} --(DDLoginTextView *)codeView -{ - if (!_codeView) { - _codeView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldGetCode]; - WeakSelf(ws) - _codeView.getCodeBlock = ^{ - [ws requestCode]; - }; - } - return _codeView; +- (NSString *)getPasswordEncryptDes { + return [DDDESEncrypt DD_EncryptUseDES:self.passWordView.textField.text key:@"1ea53d260ecf11e7b56e00163e046a26"]; } + //获取手机验证码 - (void)requestCode{ @@ -469,25 +508,179 @@ self.codeView.getCodeBtn.enabled = NO; WeakSelf(ws) - NSMutableDictionary *parameter = @{@"mobile":self.phoneView.textField.text,@"type":@(1)}.mutableCopy; - [NetworkRequest requestPOST:@"sms/getCode" parameters:parameter block:^(BaseResponse * _Nonnull response) { - if (response.isSuccess) { - [ToolsObject addPopVieToText:response.msg]; - [ws.codeView.getCodeBtn startCountDownWithSecond:60]; - [ws.codeView.getCodeBtn countDownChanging:^NSString *(JKCountDownButton *countDownButton,NSUInteger second) { - NSString *title = [NSString stringWithFormat:@" %zds后可重发 ",second]; - return title; - }]; - [ws.codeView.getCodeBtn countDownFinished:^NSString *(JKCountDownButton *countDownButton, NSUInteger second) { - ws.codeView.getCodeBtn.enabled = YES; - return @" 重新获取 "; - }]; - - } else { - [ToolsObject addPopVieToText:response.msg]; + // NSString *desPhone = [DDDESEncrypt DD_EncryptUseDES:self.phoneView.textField.text key:@"1ea53d260ecf11e7b56e00163e046a26"]; + NSMutableDictionary *parameter = @{@"mobile":[self getPhoneEncryptDes], @"type":@(1)}.mutableCopy; + [HttpRequestHelper POST:@"sms/getCode" params:parameter success:^(BaseModel * _Nonnull data) { + [ToolsObject addPopVieToText:data.message]; + [ws.codeView.getCodeBtn startCountDownWithSecond:60]; + [ws.codeView.getCodeBtn countDownChanging:^NSString *(JKCountDownButton *countDownButton,NSUInteger second) { + NSString *title = [NSString stringWithFormat:@" %zds后可重发 ",second]; + return title; + }]; + [ws.codeView.getCodeBtn countDownFinished:^NSString *(JKCountDownButton *countDownButton, NSUInteger second) { ws.codeView.getCodeBtn.enabled = YES; - } + return @" 重新获取 "; + }]; + } failure:^(NSInteger resCode, NSString * _Nonnull message) { + [ToolsObject addPopVieToText:message]; + ws.codeView.getCodeBtn.enabled = YES; }]; + + // [NetworkRequest requestPOST:@"sms/getCode" parameters:parameter block:^(BaseResponse * _Nonnull response) { + // if (response.isSuccess) { + // [ToolsObject addPopVieToText:response.msg]; + // [ws.codeView.getCodeBtn startCountDownWithSecond:60]; + // [ws.codeView.getCodeBtn countDownChanging:^NSString *(JKCountDownButton *countDownButton,NSUInteger second) { + // NSString *title = [NSString stringWithFormat:@" %zds后可重发 ",second]; + // return title; + // }]; + // [ws.codeView.getCodeBtn countDownFinished:^NSString *(JKCountDownButton *countDownButton, NSUInteger second) { + // ws.codeView.getCodeBtn.enabled = YES; + // return @" 重新获取 "; + // }]; + // + // } else { + // [ToolsObject addPopVieToText:response.msg]; + // ws.codeView.getCodeBtn.enabled = YES; + // } + // }]; +} + + + +- (void)loginBtnClick { + + [self loginRequest]; +} + +- (void)loginRequest +{ + [self.view endEditing:YES]; + + if ([ToolsObject IsNullWithObject:self.phoneView.textField.text]) { + [ToolsObject addPopVieToText:@"手机号不能为空"]; + return; + } + if (self.phoneView.textField.text.length != 11) { + [ToolsObject addPopVieToText:@"请输入正确的手机号"]; + return; + } + NSMutableDictionary *dic = [NSMutableDictionary dictionary]; + + NSString *loginUrl = @"oauth/token"; + if (self.isLoginType == 1) { + // loginUrl = @"oauth/token"; + if ([ToolsObject IsNullWithObject:self.codeView.textField.text]) { + [ToolsObject addPopVieToText:@"请输入验证码"]; + return; + } + if (self.codeView.textField.text.length != 5) { + [ToolsObject addPopVieToText:@"请输入6位验证码"]; + return; + } + [dic setObject:self.codeView.textField.text forKey:@"code"]; + [dic setObject:self.inviteView.textField.text?:@"" forKey:@"invite_code"]; + + + }else if (self.isLoginType == 2){ + // loginUrl = @"/pwd/login"; + if ([ToolsObject IsNullWithObject:self.passWordView.textField.text]) { + [ToolsObject addPopVieToText:@"请输入密码"]; + return; + } + if (self.passWordView.textField.text.length < 6) { + [ToolsObject addPopVieToText:@"密码需要同时包含6-12位字母和数字"]; + return; + } + [dic setObject:[self getPasswordEncryptDes] forKey:@"password"]; + } + + [dic setObject:[self getPhoneEncryptDes] forKey:@"phone"]; + [dic setObject:@"uyzjdhds" forKey:@"client_secret"]; + [dic setObject:@"1" forKey:@"version"]; + [dic setObject:@"erban-client" forKey:@"client_id"]; + [dic setObject:@"password" forKey:@"grant_type"]; + + WeakSelf(ws) + [HttpRequestHelper POST:loginUrl params:dic success:^(BaseModel * _Nonnull data) { + AccountModel *accountModel = [AccountModel DD_ModelWithDict:data.data]; + + if (accountModel && accountModel.access_token.length > 0) { + [[AccountInfoStorage instance] saveAccountInfo:accountModel]; + } + + AppUserModel *model = [AppUserModel new]; + model.token = accountModel.access_token; + [ToolsObject saveUserModel:model]; + [ws getUserInfo:accountModel.uid token:accountModel.access_token]; + + } failure:^(NSInteger resCode, NSString * _Nonnull message) { + [ToolsObject addPopVieToText:message]; + }]; + // [NetworkRequest requestPOST:loginUrl parameters:dic block:^(BaseResponse * _Nonnull response) { + // if (response.isSuccess) { + // if ([ToolsObject IsNullWithObject:response.data]) { + // return; + // } + // AppUserModel * myModel = [AppUserModel new]; + // myModel.token = response.data[@"token"]; + // [ToolsObject saveUserModel:myModel]; + // [ws getUserInfo:response.data[@"token"]]; + // } else { + // [ToolsObject addPopVieToText:response.msg]; + // } + // }]; +} + +#pragma mark - Get +- (SVGAPlayer *)logoSVGAPlayer { + if (!_logoSVGAPlayer) { + _logoSVGAPlayer = [[SVGAPlayer alloc] init]; + _logoSVGAPlayer.loops = 1; + _logoSVGAPlayer.clearsAfterStop = NO; + } + return _logoSVGAPlayer; +} + +- (UIButton *)codeButton { + if (!_codeButton) { + _codeButton = [[UIButton alloc] init]; + [_codeButton setTitle:@"获取验证码" forState:UIControlStateNormal]; + [_codeButton addTarget:self action:@selector(getCodeNumberAction) forControlEvents:UIControlEventTouchUpInside]; + } + return _codeButton; +} + + +- (DDLoginTextView *)phoneView { + if (!_phoneView) { + _phoneView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldPhone]; + } + return _phoneView; +} + +- (DDLoginTextView *)passWordView { + if (!_passWordView) { + _passWordView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldPassWord]; + } + return _passWordView; +} + +-(DDLoginTextView *)inviteView { + if (!_inviteView) { + _inviteView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldInvideCode]; + } + return _inviteView; +} +- (DDLoginTextView *)codeView { + if (!_codeView) { + _codeView = [[DDLoginTextView alloc]initWithFrame:CGRectZero withType:DDTextFieldGetCode]; + WeakSelf(ws) + _codeView.getCodeBlock = ^{ + [ws requestCode]; + }; + } + return _codeView; } - (UIButton *)loginTypeBtn { @@ -503,8 +696,7 @@ } return _loginTypeBtn; } --(YYLabel *)noLoginlabel -{ +- (YYLabel *)noLoginlabel { if (!_noLoginlabel) { _noLoginlabel = [[YYLabel alloc]init]; _noLoginlabel.textColor = DDHEXColor(0x333333); @@ -523,15 +715,14 @@ return _noLoginlabel; } --(UIButton *)loginBtn -{ +- (UIButton *)loginBtn { if (!_loginBtn) { _loginBtn = [UIButton buttonWithType:(UIButtonTypeCustom)]; [_loginBtn setTitle:@"登录" forState:(UIControlStateNormal)]; [_loginBtn setBackgroundImage:[UIImage imageNamed:@"v2_com_btn"] forState:UIControlStateNormal]; [_loginBtn setBackgroundImage:[UIImage imageNamed:@"v2_com_btn3"] forState:UIControlStateDisabled]; [_loginBtn setTitleColor:UIColor.whiteColor forState:(UIControlStateDisabled)]; - + [_loginBtn setTitleColor:UIColor.whiteColor forState:(UIControlStateNormal)]; _loginBtn.titleLabel.font = DDFont(16); [_loginBtn addTarget:self action:@selector(loginBtnClick) forControlEvents:UIControlEventTouchUpInside]; @@ -539,77 +730,5 @@ return _loginBtn; } -- (void)loginBtnClick { - - [self loginRequest]; -} - --(void)loginRequest -{ - [self.view endEditing:YES]; - - if ([ToolsObject IsNullWithObject:self.phoneView.textField.text]) { - [ToolsObject addPopVieToText:@"手机号不能为空"]; - return; - } - if (self.phoneView.textField.text.length != 11) { - [ToolsObject addPopVieToText:@"请输入正确的手机号"]; - return; - } - NSMutableDictionary *dic = [NSMutableDictionary dictionary]; - [dic setObject:self.phoneView.textField.text forKey:@"tel"]; - NSString *loginUrl = @"/sms/login"; - if (self.isLoginType == 1) { - loginUrl = @"/sms/login"; - if ([ToolsObject IsNullWithObject:self.codeView.textField.text]) { - [ToolsObject addPopVieToText:@"请输入验证码"]; - return; - } - if (self.codeView.textField.text.length != 6) { - [ToolsObject addPopVieToText:@"请输入6位验证码"]; - return; - } - [dic setObject:self.codeView.textField.text forKey:@"code"]; - [dic setObject:self.inviteView.textField.text?:@"" forKey:@"invite_code"]; - - }else if (self.isLoginType == 2){ - loginUrl = @"/pwd/login"; - if ([ToolsObject IsNullWithObject:self.passWordView.textField.text]) { - [ToolsObject addPopVieToText:@"请输入密码"]; - return; - } - if (self.passWordView.textField.text.length < 6) { - [ToolsObject addPopVieToText:@"密码需要同时包含6-12位字母和数字"]; - return; - } - [dic setObject:self.passWordView.textField.text forKey:@"pwd"]; - } - [dic setObject:[ToolsObject getDeviceIdentifier] forKey:@"phone_model"]; - [dic setObject:[UIDevice currentDevice].systemVersion forKey:@"system_version"]; - WeakSelf(ws) - [NetworkRequest requestPOST:loginUrl parameters:dic block:^(BaseResponse * _Nonnull response) { - if (response.isSuccess) { - if ([ToolsObject IsNullWithObject:response.data]) { - return; - } - AppUserModel * myModel = [AppUserModel new]; - myModel.token = response.data[@"token"]; - [ToolsObject saveUserModel:myModel]; - [ws getUserInfo:response.data[@"token"]]; - } else { - [ToolsObject addPopVieToText:response.msg]; - } - }]; -} - -/* -#pragma mark - Navigation - -// In a storyboard-based application, you will often want to do a little preparation before navigation -- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { - // Get the new view controller using [segue destinationViewController]. - // Pass the selected object to the new view controller. -} -*/ @end diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/Model/DDLoginAccountModel.h b/yinmeng-ios/DingDangApp/V2Versions/Login/Model/DDLoginAccountModel.h new file mode 100644 index 0000000..417ff7e --- /dev/null +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/Model/DDLoginAccountModel.h @@ -0,0 +1,23 @@ +// +// DDLoginAccountModel.h +// DingDangApp +// +// Created by 触海 on 2023/12/12. +// + +#import "NSObject+DDExtension.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface DDLoginAccountModel : NSObject + +@property (nonatomic , assign) NSString *uid; +@property (nonatomic , copy) NSString *jti; +@property (nonatomic , copy) NSString *token_type; +@property (nonatomic , copy) NSString *refresh_token; +@property (nonatomic , copy) NSString *netEaseToken; +@property (nonatomic , copy) NSString *access_token; +@property (nonatomic , assign) NSNumber *expires_in; +@end + +NS_ASSUME_NONNULL_END diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/Model/DDLoginAccountModel.m b/yinmeng-ios/DingDangApp/V2Versions/Login/Model/DDLoginAccountModel.m new file mode 100644 index 0000000..0a68ec8 --- /dev/null +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/Model/DDLoginAccountModel.m @@ -0,0 +1,12 @@ +// +// DDLoginAccountModel.m +// DingDangApp +// +// Created by 触海 on 2023/12/12. +// + +#import "DDLoginAccountModel.h" + +@implementation DDLoginAccountModel + +@end diff --git a/yinmeng-ios/DingDangApp/V2Versions/Login/View/DDProtocolView.m b/yinmeng-ios/DingDangApp/V2Versions/Login/View/DDProtocolView.m index 5a57bb5..4fc2945 100644 --- a/yinmeng-ios/DingDangApp/V2Versions/Login/View/DDProtocolView.m +++ b/yinmeng-ios/DingDangApp/V2Versions/Login/View/DDProtocolView.m @@ -6,6 +6,7 @@ // #import "DDProtocolView.h" +#import "DDAppColor.h" @implementation DDProtocolView - (instancetype)initWithFrame:(CGRect)frame { @@ -29,8 +30,8 @@ - (UIButton *)submitBtn { if (!_submitBtn) { _submitBtn = [UIButton buttonWithType:UIButtonTypeCustom]; - [_submitBtn setImage:[UIImage imageNamed:@"v2_com_2"] forState:UIControlStateNormal]; - [_submitBtn setImage:[UIImage imageNamed:@"v2_com_1"] forState:UIControlStateSelected]; + [_submitBtn setImage:[UIImage imageNamed:@"login_checkbox_uncheck"] forState:UIControlStateNormal]; + [_submitBtn setImage:[UIImage imageNamed:@"login_checkbox_checked"] forState:UIControlStateSelected]; [_submitBtn addTarget:self action:@selector(submitBtnClick) forControlEvents:UIControlEventTouchUpInside]; [_submitBtn setContentHorizontalAlignment:UIControlContentHorizontalAlignmentRight]; } return _submitBtn; @@ -49,13 +50,13 @@ text.yy_alignment = NSTextAlignmentLeft; text.yy_color = DDHEXColor(0x999999); WeakSelf(ws) - [text yy_setTextHighlightRange:[text.string rangeOfString:@"《啵柚语音用户协议》"] color:DDHEXColor(0x5981FF) backgroundColor:[UIColor whiteColor] userInfo:nil tapAction:^(UIView * _Nonnull containerView, NSAttributedString * _Nonnull text, NSRange range, CGRect rect) { + [text yy_setTextHighlightRange:[text.string rangeOfString:@"《啵柚语音用户协议》"] color:[DDAppColor dd_subTitleColor] backgroundColor:[UIColor whiteColor] userInfo:nil tapAction:^(UIView * _Nonnull containerView, NSAttributedString * _Nonnull text, NSRange range, CGRect rect) { if (ws.userBlock) { ws.userBlock(); } } longPressAction:nil]; - [text yy_setTextHighlightRange:[text.string rangeOfString:@"《啵柚语音隐私政策》"] color:DDHEXColor(0x5981FF) backgroundColor:[UIColor whiteColor] userInfo:nil tapAction:^(UIView * _Nonnull containerView, NSAttributedString * _Nonnull text, NSRange range, CGRect rect) { + [text yy_setTextHighlightRange:[text.string rangeOfString:@"《啵柚语音隐私政策》"] color:[DDAppColor dd_subTitleColor] backgroundColor:[UIColor whiteColor] userInfo:nil tapAction:^(UIView * _Nonnull containerView, NSAttributedString * _Nonnull text, NSRange range, CGRect rect) { if (ws.privacyBlock) { ws.privacyBlock(); } diff --git a/yinmeng-ios/Podfile.lock b/yinmeng-ios/Podfile.lock index a1bebb0..de00cc7 100644 --- a/yinmeng-ios/Podfile.lock +++ b/yinmeng-ios/Podfile.lock @@ -591,4 +591,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: 4a3e8c3e3691165802b43178346af03c39e4ae9b -COCOAPODS: 1.12.1 +COCOAPODS: 1.14.2