Files
yinmeng-ios-store/yinmeng-ios/DingDangApp/CodeClass/MyInfo/CC/DDMyAuthorViewController.m

218 lines
8.6 KiB
Mathematica
Raw Normal View History

2023-12-07 10:50:21 +08:00
//
// DDMyAuthorViewController.m
// DingDangApp
//
// Created by apple on 2023/6/20.
//
#import "DDMyAuthorViewController.h"
#import "DDMyAuthorStatusViewController.h"
#import <AliyunFaceAuthFacade/AliyunFaceAuthFacade.h>
#import "DDAuthorTipsTableViewCell.h"
#import "DDAuthorTitleTableViewCell.h"
@interface DDMyAuthorViewController ()
@end
@implementation DDMyAuthorViewController
- (void)viewDidLoad {
[super viewDidLoad];
/*
SDK
*/
[AliyunFaceAuthFacade init];
[self defaultNavTitle:@"实名认证" hideLine:YES];
[self creatV];
// Do any additional setup after loading the view.
}
- (void)requestRealnameAuthenRequest{
self.metaInfo = [NSDictionary new];
self.metaInfo = [AliyunFaceAuthFacade getMetaInfo];
if ([ToolsObject IsNullWithObject:self.metaInfo]){
return;
}
NSMutableDictionary *parameter = [NSMutableDictionary dictionaryWithCapacity:0];
[parameter setValue:[ToolsObject convertToJsonData:self.metaInfo] forKey:@"metaInfo"];
WeakSelf(weakSelf)
[NetworkRequest requestPOST:@"/user/main" parameters:parameter block:^(BaseResponse * _Nonnull response) {
if (response.code == 200){
NSString * certifyId = response.data[@"certifyId"];
if (![ToolsObject IsNullWithObject:certifyId]){
NSMutableDictionary *extParams = [NSMutableDictionary new];
[extParams setValue:weakSelf forKey:@"currentCtr"];
[AliyunFaceAuthFacade verifyWith:certifyId extParams:extParams onCompletion:^(ZIMResponse * _Nonnull response) {
//1000:
//1001:退
//1003:退
//2002:
//2003:
//2006:validate
if (response.code == 1001){
[SVProgressHUD showInfoWithStatus:@"认证失败,请稍后重试"];
}else if (response.code == 1003){
[SVProgressHUD showInfoWithStatus:@"认证失败,用户主动退出"];
}else if (response.code == 2002){
[SVProgressHUD showInfoWithStatus:@"认证失败,请检查网络"];
}else if (response.code == 2003){
[SVProgressHUD showInfoWithStatus:@"认证失败,请更换设备重试"];
}else if (response.code == 2006){
[SVProgressHUD showInfoWithStatus:@"认证失败,请重新认证"];
}else{
[weakSelf requestDescribeFace:certifyId reason:@"" verifyCode:response.code];
}
}];
}
}
}];
}
- (void)requestDescribeFace:(NSString *)certifyId reason:(NSString *)reason verifyCode:(NSInteger)verifyCode{
NSMutableDictionary *parameter = [NSMutableDictionary dictionaryWithCapacity:0];
[parameter setValue:certifyId forKey:@"certifyId"];
WeakSelf(weakSelf)
[NetworkRequest requestPOST:@"/user/DescribeFace" parameters:parameter block:^(BaseResponse * _Nonnull response) {
if (response.code == 200){
NSString * name = response.data[@"name"];
NSString * cardNo = response.data[@"cardNo"];
if ([ToolsObject IsNullWithObject:response.data[@"result_code"]]) {
DDRealNameModel * realnameModel = [DDRealNameModel new];
realnameModel.name = name;
realnameModel.cardNo = cardNo;
realnameModel.remark = reason;
if (verifyCode == 1000){
realnameModel.status = 1;
}else{
realnameModel.status = 2;
}
[weakSelf pushAuthorStatusVC:realnameModel];
return;
}
NSInteger result_code = [response.data[@"result_code"] integerValue];
if(result_code ==0){
DDRealNameModel * realnameModel = [DDRealNameModel new];
realnameModel.name = name;
realnameModel.cardNo = cardNo;
realnameModel.remark = reason;
if (verifyCode == 1000){
realnameModel.status = 1;
}else{
realnameModel.status = 2;
}
[weakSelf pushAuthorStatusVC:realnameModel];
}else if(result_code ==1){
[SVProgressHUD showInfoWithStatus:@"认证异常"];
}else if(result_code ==2){
[SVProgressHUD showInfoWithStatus:@"未满18岁不提供服务"];
}else if(result_code ==3){
[SVProgressHUD showInfoWithStatus:@"超过55岁不提供服务"];
}
}else{
[SVProgressHUD showInfoWithStatus:@"获取认证信息失败,请检查网络"];
}
}];
}
-(void)creatV
{
self.view.backgroundColor = [UIColor whiteColor];
[self.view addSubview:self.tableView];
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.bottom.right.left.equalTo(self.view);
make.top.equalTo(self.view).offset(DDNavigationBarHeight());
}];
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 0) {
return 358;
}
return 265 ;
}
- (nullable UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
return [[UIView alloc] init];
}
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
return CGFLOAT_MIN;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 2;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == 0) {
DDAuthorTitleTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"DDAuthorTitleTableViewCell"];
if (cell == nil) {
cell = [[DDAuthorTitleTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"DDAuthorTitleTableViewCell"];
}
cell.selectionStyle = UITableViewCellSelectionStyleNone;
WeakSelf(weakSelf)
cell.openClickBlock = ^{
[NetworkRequest requestPOST:@"/user/check/realname" parameters:@{} block:^(BaseResponse * _Nonnull response) {
if ([ToolsObject IsNullWithObject:response.data]) {
return;
}
if (response.code == 200) {
DDRealNameModel *model = [DDRealNameModel yy_modelWithJSON:response.data];
if (model.isAuthen == 1) {
[weakSelf pushAuthorStatusVC:model];
}else{
[weakSelf requestRealnameAuthenRequest];
}
}
}];
};
return cell ;
}
DDAuthorTipsTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"DDAuthorTipsTableViewCell"];
if (cell == nil) {
cell = [[DDAuthorTipsTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"DDAuthorTipsTableViewCell"];
}
cell.selectionStyle = UITableViewCellSelectionStyleNone;
return cell ;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
}
/*
*/
- (void)pushAuthorStatusVC:(DDRealNameModel *)model {
DDMyAuthorStatusViewController * statusVC = [[DDMyAuthorStatusViewController alloc] init];
statusVC.realNameModel = model;
statusVC.authenType = model.status;
statusVC.isPopRoot = YES;
[self.navigationController pushViewController:statusVC animated:YES];
}
- (UITableView *)tableView
{
if (!_tableView) {
_tableView = [[UITableView alloc]initWithFrame:CGRectZero style:UITableViewStylePlain];
_tableView.backgroundColor = [UIColor clearColor];
_tableView.delegate =self;
_tableView.dataSource =self;
_tableView.showsVerticalScrollIndicator = NO;
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
}
return _tableView;
}
/*
#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