|
@@ -28,6 +28,8 @@
|
|
|
#import "KSIMService.h"
|
|
|
#import "RCConnectionManager.h"
|
|
|
#import "UserInfoManager.h"
|
|
|
+#import "ExamDisplayViewController.h"
|
|
|
+#import "WaitExamViewController.h"
|
|
|
|
|
|
@interface AppDelegate ()<UITabBarControllerDelegate, RCIMReceiveMessageDelegate,JPUSHRegisterDelegate,LoginDelegate>
|
|
|
{
|
|
@@ -520,7 +522,72 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
|
|
|
|
|
#pragma mark 根据不同消息跳转不同界面
|
|
|
- (void)getVCUserInfoDict:(NSMutableDictionary *)infoDict {
|
|
|
-
|
|
|
+ if (![NSString isEmptyString:[infoDict stringValueForKey:@"memo"]]) {
|
|
|
+ NSString *memoStr = [infoDict stringValueForKey:@"memo"];
|
|
|
+ NSString *headStr = [[memoStr componentsSeparatedByString:@"?"] firstObject];
|
|
|
+
|
|
|
+ if ([headStr isEqualToString:@"1"]) { // 报考详情
|
|
|
+ NSRange range = [memoStr rangeOfString:@"?"];
|
|
|
+ if (range.location != NSNotFound) {
|
|
|
+ NSString *url = [memoStr substringFromIndex:(range.location+range.length)];
|
|
|
+
|
|
|
+ KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
|
|
|
+ webCtrl.url = url;
|
|
|
+ CustomNavViewController *navCtrl = [self getCurrentNavController];
|
|
|
+ [navCtrl pushViewController:webCtrl animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if ([headStr isEqualToString:@"2"]) { // 调到准考证
|
|
|
+ if ([self checkIsLoginToLoginView:YES]) {
|
|
|
+ NSString *valueStr = [[memoStr componentsSeparatedByString:@"?"] lastObject];
|
|
|
+ NSArray *parmArray = [valueStr componentsSeparatedByString:@"&"];
|
|
|
+ for (NSString *subStr in parmArray) {
|
|
|
+ if ([subStr containsString:@"examRegistrationId"]) {
|
|
|
+ ExamDisplayViewController *displayVC = [[ExamDisplayViewController alloc] init];
|
|
|
+ displayVC.examRegistrationId = [[subStr componentsSeparatedByString:@"="] lastObject];
|
|
|
+ CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
|
|
|
+ [navCtrl pushViewController:displayVC animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if ([headStr isEqualToString:@"3"]) { // 待考区
|
|
|
+ if ([self checkIsLoginToLoginView:YES]) {
|
|
|
+ NSString *valueStr = [[memoStr componentsSeparatedByString:@"?"] lastObject];
|
|
|
+ NSArray *parmArray = [valueStr componentsSeparatedByString:@"&"];
|
|
|
+ for (NSString *subStr in parmArray) {
|
|
|
+ if ([subStr containsString:@"examRegistrationId"]) {
|
|
|
+ WaitExamViewController *waitCtrl = [[WaitExamViewController alloc] init];
|
|
|
+ waitCtrl.examRegistrationId = [[subStr componentsSeparatedByString:@"="] lastObject];
|
|
|
+ CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
|
|
|
+ [navCtrl pushViewController:waitCtrl animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if ([headStr isEqualToString:@"4"]) { // 考试记录
|
|
|
+ NSRange range = [memoStr rangeOfString:@"?"];
|
|
|
+ if (range.location != NSNotFound) {
|
|
|
+ NSString *url = [memoStr substringFromIndex:(range.location+range.length)];
|
|
|
+
|
|
|
+ KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
|
|
|
+ webCtrl.url = url;
|
|
|
+ CustomNavViewController *navCtrl = [self getCurrentNavController];
|
|
|
+ [navCtrl pushViewController:webCtrl animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ NSRange range = [memoStr rangeOfString:@"?"];
|
|
|
+ if (range.location != NSNotFound) {
|
|
|
+ NSString *url = [memoStr substringFromIndex:(range.location+range.length)];
|
|
|
+
|
|
|
+ KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
|
|
|
+ webCtrl.url = url;
|
|
|
+ CustomNavViewController *navCtrl = [self getCurrentNavController];
|
|
|
+ [navCtrl pushViewController:webCtrl animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
#pragma mark ---- 处理外链
|
|
@@ -531,13 +598,57 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
|
|
if (![NSString isEmptyString:linkUrl]) {
|
|
|
linkUrl = [UrlDecode decodeStringWithString:linkUrl];
|
|
|
|
|
|
- KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
|
|
|
- webCtrl.url = linkUrl;
|
|
|
- CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
|
|
|
- [navCtrl pushViewController:webCtrl animated:YES];
|
|
|
+ NSString *headStr = [[linkUrl componentsSeparatedByString:@"&"] firstObject];
|
|
|
+ NSArray *headParm = [headStr componentsSeparatedByString:@"="];
|
|
|
+ NSString *memo = [headParm lastObject];
|
|
|
+ if ([memo isEqualToString:@"2"]) { // 跳转到准考证详情
|
|
|
+ if ([self checkIsLoginToLoginView:YES]) { // 未登录跳转到登录页面
|
|
|
+ NSRange range = [linkUrl rangeOfString:@"&"];
|
|
|
+ if (range.location != NSNotFound) {
|
|
|
+ CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
|
|
|
+ ExamDisplayViewController *displayVC = [[ExamDisplayViewController alloc] init];
|
|
|
+
|
|
|
+ NSString *valueUrl = [linkUrl substringFromIndex:(range.location+range.length)];
|
|
|
+ NSArray *valueParm = [valueUrl componentsSeparatedByString:@"&"];
|
|
|
+ for (NSString *subStr in valueParm) {
|
|
|
+ if ([subStr containsString:@"examRegistrationId"]) {
|
|
|
+ displayVC.examRegistrationId = [[subStr componentsSeparatedByString:@"="] lastObject];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ [navCtrl pushViewController:displayVC animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if (([memo isEqualToString:@"1"])) { // 跳转网页
|
|
|
+ NSRange range = [linkUrl rangeOfString:@"&"];
|
|
|
+ if (range.location != NSNotFound) {
|
|
|
+ NSString *valueUrl = [linkUrl substringFromIndex:(range.location+range.length)];
|
|
|
+ if ([valueUrl containsString:@"url="]) {
|
|
|
+ NSString *url = [valueUrl substringFromIndex:4];
|
|
|
+ KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
|
|
|
+ webCtrl.url = url;
|
|
|
+ CustomNavViewController *navCtrl = [self getCurrentNavController];
|
|
|
+ [navCtrl pushViewController:webCtrl animated:YES];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
|
|
|
+ webCtrl.url = linkUrl;
|
|
|
+ CustomNavViewController *navCtrl = [self getCurrentNavController];
|
|
|
+ [navCtrl pushViewController:webCtrl animated:YES];
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
NSLog(@"%@", detailUrl);
|
|
|
return YES;
|
|
|
}
|
|
|
+
|
|
|
+- (CustomNavViewController *)getCurrentNavController {
|
|
|
+ if ([self.window.rootViewController isKindOfClass:[KSTabBarController class]]) {
|
|
|
+ return self.tabBarController.selectedViewController;
|
|
|
+ }
|
|
|
+ return (CustomNavViewController *)self.window.rootViewController;
|
|
|
+}
|
|
|
+
|
|
|
@end
|