YOUPAIRealPersonFaceVC.m 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. //
  2. // YOUPAIRealPersonFaceVC.m
  3. // MSYOUPAI
  4. //
  5. // Created by xiaohaoran on 2022/2/28.
  6. // Copyright © 2022 MS. All rights reserved.
  7. //
  8. #import "YOUPAIRealPersonFaceVC.h"
  9. #import "IQKeyboardManager.h"
  10. #import "NSString+JSMessagesView.h"
  11. #import "YOUPAILZLiveVerifyResultVC.h"
  12. @interface YOUPAIRealPersonFaceVC ()<UITextFieldDelegate>
  13. @property(nonatomic,strong)UITextField *youpaipnameField;
  14. @property(nonatomic,strong)UITextField *youpaipIdCardNumField;
  15. @property(nonatomic,strong)UIButton *youpaiRenZhengBtn;
  16. @end
  17. @implementation YOUPAIRealPersonFaceVC
  18. - (void)viewWillAppear:(BOOL)animated{
  19. [super viewWillAppear:animated];
  20. [[IQKeyboardManager sharedManager] setEnable:YES];
  21. [self.navigationController setNavigationBarHidden:YES animated:animated];
  22. }
  23. - (void)viewWillDisappear:(BOOL)animated{
  24. [super viewWillDisappear:animated];
  25. [[IQKeyboardManager sharedManager] setEnable:NO];
  26. [self.navigationController setNavigationBarHidden:NO animated:animated];
  27. }
  28. - (void)viewDidLoad {
  29. [super viewDidLoad];
  30. [IQKeyboardManager sharedManager].enableAutoToolbar = NO; // 控制是否显示键盘上的工具条
  31. [IQKeyboardManager sharedManager].keyboardDistanceFromTextField = NavBarHeight; //
  32. [IQKeyboardManager sharedManager].shouldResignOnTouchOutside = YES;
  33. self.view.backgroundColor = [UIColor whiteColor];
  34. [self youpaifSetNavView];
  35. }
  36. //设置导航栏
  37. -(void)youpaifSetNavView{
  38. UIImageView *navView = [UIImageView new];
  39. [self.view addSubview:navView];
  40. [navView mas_makeConstraints:^(MASConstraintMaker *make) {
  41. make.left.mas_equalTo(0);
  42. make.right.mas_equalTo(0);
  43. make.top.mas_equalTo(0);
  44. make.height.mas_equalTo(260);
  45. }];
  46. navView.userInteractionEnabled = YES;
  47. navView.image = [UIImage imageNamed:@"vqu_images_RealFace"];
  48. //返回
  49. UIButton *cancelBtn = [UIButton new];
  50. [navView addSubview:cancelBtn ];
  51. [cancelBtn mas_makeConstraints:^(MASConstraintMaker *make) {
  52. make.left.mas_equalTo(10);
  53. make.top.mas_equalTo(StatusBarHeight);
  54. make.size.mas_equalTo(CGSizeMake(40, 40));
  55. }];
  56. [cancelBtn setImage:[UIImage imageNamed:@"vqu_images_D_cancel"] forState:UIControlStateNormal];
  57. //事件
  58. [cancelBtn addTarget: self action:@selector(youpaifcancelButtonClick) forControlEvents:UIControlEventTouchUpInside];
  59. //bottom
  60. UIView *bottomView = [[UIView alloc]initWithFrame:CGRectMake(0, KScreenHeight-240, KScreenWidth, KScreenHeight-240)];
  61. [LCTools clipCorner:UIRectCornerTopLeft|UIRectCornerTopRight View:bottomView size:CGSizeMake(16, 16)];
  62. [self.view addSubview:bottomView];
  63. [bottomView mas_makeConstraints:^(MASConstraintMaker *make) {
  64. make.top.mas_equalTo(navView.mas_bottom).offset(-20);
  65. make.left.mas_equalTo(0);
  66. make.right.mas_equalTo(0);
  67. make.bottom.mas_equalTo(0);
  68. }];
  69. bottomView.backgroundColor = [UIColor whiteColor];
  70. //提示
  71. UIView *youpaipHintView = [UIView new];
  72. [bottomView addSubview:youpaipHintView];
  73. [youpaipHintView mas_makeConstraints:^(MASConstraintMaker *make) {
  74. make.left.mas_equalTo(24);
  75. make.right.mas_equalTo(-24);
  76. make.top.mas_equalTo(24);
  77. make.height.mas_equalTo(50);
  78. }];
  79. youpaipHintView.backgroundColor = HexColorFromRGBA(0xFF3B30, 0.1);
  80. youpaipHintView.layer.cornerRadius = 6;
  81. youpaipHintView.layer.masksToBounds = YES;
  82. //图片
  83. UIImageView *youpaipImageView = [UIImageView new];
  84. [youpaipHintView addSubview:youpaipImageView];
  85. [youpaipImageView mas_makeConstraints:^(MASConstraintMaker *make) {
  86. make.left.mas_equalTo(10);
  87. make.top.mas_equalTo(10);
  88. make.size.mas_equalTo(CGSizeMake(15, 15));
  89. }];
  90. youpaipImageView.image = [UIImage imageNamed:@"vqu_images_facehint"];
  91. //提示文字
  92. UILabel *youpaipLabel = [UILabel new];
  93. [youpaipHintView addSubview:youpaipLabel];
  94. [youpaipLabel mas_makeConstraints:^(MASConstraintMaker *make) {
  95. make.left.mas_equalTo(youpaipImageView.mas_right).offset(2);
  96. make.top.mas_equalTo(10);
  97. make.right.mas_equalTo(-10);
  98. make.bottom.mas_equalTo(-10);
  99. }];
  100. youpaipLabel.text = @"实名仅用验证您是否为真人用户,不会对信息做任何采集与保留,请放心认证。";
  101. youpaipLabel.font = [UIFont systemFontOfSize:12];
  102. youpaipLabel.numberOfLines = 2;
  103. youpaipLabel.textColor = HexColorFromRGB(0xFF3B30);
  104. //输入真是姓名
  105. UITextField *youpaipnameField = [UITextField new];
  106. self.youpaipnameField = youpaipnameField;
  107. [bottomView addSubview:youpaipnameField];
  108. [youpaipnameField mas_makeConstraints:^(MASConstraintMaker *make) {
  109. make.left.mas_equalTo(47.5);
  110. make.right.mas_equalTo(-47.5);
  111. make.top.mas_equalTo(youpaipHintView.mas_bottom).offset(45);
  112. make.height.mas_equalTo(49);
  113. }];
  114. youpaipnameField.delegate = self;
  115. youpaipnameField.backgroundColor = HexColorFromRGB(0xF7F8FA);
  116. youpaipnameField.layer.cornerRadius = 24.5;
  117. youpaipnameField.layer.masksToBounds = YES;
  118. youpaipnameField.placeholder = @"真实姓名";
  119. youpaipnameField.leftView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 12.0f, 0.0f)];
  120. youpaipnameField.leftViewMode = UITextFieldViewModeAlways;
  121. youpaipnameField.font = [UIFont systemFontOfSize:14];
  122. //身份证号码
  123. UITextField *youpaipIdCardNumField = [UITextField new];
  124. self.youpaipIdCardNumField = youpaipIdCardNumField;
  125. [bottomView addSubview:youpaipIdCardNumField];
  126. [youpaipIdCardNumField mas_makeConstraints:^(MASConstraintMaker *make) {
  127. make.left.mas_equalTo(47.5);
  128. make.right.mas_equalTo(-47.5);
  129. make.top.mas_equalTo(youpaipnameField.mas_bottom).offset(20);
  130. make.height.mas_equalTo(49);
  131. }];
  132. youpaipIdCardNumField.delegate = self;
  133. youpaipIdCardNumField.backgroundColor = HexColorFromRGB(0xF7F8FA);
  134. youpaipIdCardNumField.layer.cornerRadius = 24.5;
  135. youpaipIdCardNumField.layer.masksToBounds = YES;
  136. youpaipIdCardNumField.placeholder = @"真实身份证号码";
  137. youpaipIdCardNumField.leftView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 12.0f, 0.0f)];
  138. youpaipIdCardNumField.leftViewMode = UITextFieldViewModeAlways;
  139. youpaipIdCardNumField.font = [UIFont systemFontOfSize:14];
  140. [youpaipIdCardNumField addTarget:self action:@selector(youpaipIdCardNumFieldDone:) forControlEvents:UIControlEventEditingChanged];
  141. //马上认证
  142. UIButton *youpaiRenZhengBtn = [UIButton new];
  143. self.youpaiRenZhengBtn = youpaiRenZhengBtn;
  144. [bottomView addSubview:youpaiRenZhengBtn];
  145. [youpaiRenZhengBtn mas_makeConstraints:^(MASConstraintMaker *make) {
  146. make.left.mas_equalTo(47.5);
  147. make.right.mas_equalTo(-47.5);
  148. make.bottom.mas_equalTo(-75);
  149. make.height.mas_equalTo(49);
  150. }];
  151. [youpaiRenZhengBtn setTitle:@"马上认证" forState:UIControlStateNormal];
  152. youpaiRenZhengBtn.layer.cornerRadius = 24.5;
  153. youpaiRenZhengBtn.layer.masksToBounds = YES;
  154. [youpaiRenZhengBtn setBackgroundImage:[LCTools ColorImage:CGSizeMake(KScreenWidth-47.5*2, 49) FromColors:@[LZD3D1D7Color,LZD3D1D7Color] ByGradientType:1] forState:UIControlStateNormal];
  155. [youpaiRenZhengBtn addTarget:self action:@selector(youpaiRenZhengBtnClick) forControlEvents:UIControlEventTouchUpInside];
  156. }
  157. -(void)youpaiRenZhengBtnClick{
  158. if (self.youpaipnameField.text.trimWhitespace.length<=0) {
  159. [ZCHUDHelper showTitle:@"请输入姓名"];
  160. return;
  161. }
  162. if (![LCTools isIdCard:self.youpaipIdCardNumField.text.trimWhitespace]) {
  163. [ZCHUDHelper showTitle:@"请输入正确的身份证号码"];
  164. return;
  165. }
  166. NSMutableDictionary *dict = [NSMutableDictionary new];
  167. [dict setObject:self.youpaipIdCardNumField.text forKey:@"id_card_number"];
  168. [dict setObject:self.youpaipnameField.text.trimWhitespace forKey:@"real_name"];
  169. @weakify(self)
  170. [LCHttpHelper requestWithURLString:UserAuth parameters:dict needToken:YES type:HttpRequestTypePost success:^(id responseObject) {
  171. @strongify(self)
  172. NSDictionary* dict = (NSDictionary*)responseObject;
  173. NSInteger code = [[dict objectForKey:@"code"] integerValue];
  174. if (code == 0) {
  175. YOUPAILZLiveVerifyResultVC *vc = [[YOUPAILZLiveVerifyResultVC alloc] init];
  176. vc.youpaipstate = LZLiveVerifyStateWithSuccess;
  177. [self.navigationController pushViewController:vc animated:YES];
  178. }else{
  179. YOUPAILZLiveVerifyResultVC *vc = [[YOUPAILZLiveVerifyResultVC alloc] init];
  180. vc.sex = 2;
  181. vc.youpaipstate = LZLiveVerifyStateWithInError;
  182. [self.navigationController pushViewController:vc animated:YES];
  183. }
  184. } failure:^(NSError *error) {
  185. [ZCHUDHelper showTitle:error.localizedDescription];
  186. }];
  187. }
  188. -(void)youpaipIdCardNumFieldDone:(UITextField*)field{
  189. if(self.youpaipIdCardNumField == field){
  190. if (field.text.length > 18) {
  191. field.text = [field.text substringToIndex:18];
  192. }
  193. }
  194. }
  195. -(void)textFieldDidEndEditing:(UITextField *)textField{
  196. if (textField == self.youpaipnameField||textField == self.youpaipIdCardNumField) {
  197. if (self.youpaipnameField.text.length>0&&self.youpaipIdCardNumField.text.length) {
  198. [self.youpaiRenZhengBtn setBackgroundImage:[LCTools ColorImage:CGSizeMake(KScreenWidth-47.5*2, 49) FromColors:@[LZBFB6FFColor,LZ7C69FEColor] ByGradientType:1] forState:UIControlStateNormal];
  199. }else{
  200. [self.youpaiRenZhengBtn setBackgroundImage:[LCTools ColorImage:CGSizeMake(KScreenWidth-47.5*2, 49) FromColors:@[LZD3D1D7Color,LZD3D1D7Color] ByGradientType:1] forState:UIControlStateNormal];
  201. }
  202. }
  203. }
  204. -(void)youpaifcancelButtonClick{
  205. [self.navigationController popViewControllerAnimated:YES];
  206. }
  207. @end