Bläddra i källkod

1.新增推送类型
2.分享曲谱图片位置

Steven 3 månader sedan
förälder
incheckning
c38b426ecb

+ 184 - 210
KulexiuForTeacher/KulexiuForTeacher/AppDelegate.m

@@ -44,6 +44,7 @@
 #import <TUIChat/TUIChat.h>
 
 #import "FeedbackListViewController.h"
+#import "MinePageViewController.h"
 
 @interface AppDelegate ()<JPUSHRegisterDelegate>
 
@@ -530,93 +531,7 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
                     self.outLinkParm = [NSMutableDictionary dictionaryWithDictionary:dict];
                     return;
                 }
-                NSString *action = [dict ks_stringValueForKey:@"action"];
-                if ([action isEqualToString:@"app"]) { // 跳原生
-                    NSString *pageType = [dict ks_stringValueForKey:@"pageTag"];
-                    if ([pageType isEqualToString:@"buyPractice"] || [pageType isEqualToString:@"courseRemind"]) {
-                        [self.tabBarController tabBarSelectedWithIndex:1];
-                        CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                        [navCtrl popToRootViewControllerAnimated:YES];
-                    }
-                    else if ([pageType isEqualToString:@"evaluate"]) {
-                        [self.tabBarController tabBarSelectedWithIndex:0];
-                        CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                        ReceiveEvaluateListController *ctrl = [[ReceiveEvaluateListController alloc] init];
-                        [navCtrl pushViewController:ctrl animated:YES];
-                    }
-                    else if ([pageType isEqualToString:@"homework"]) {
-                        NSString *parmString = [dict ks_stringValueForKey:@"params"];
-                        NSData *parmData = [parmString mj_JSONData];
-                        NSDictionary *parm = [NSJSONSerialization JSONObjectWithData:parmData options:NSJSONReadingMutableContainers error:&error];
-                        if (!error) {
-                            HomeworkDetailViewController *detailVC = [[HomeworkDetailViewController alloc] init];
-                            detailVC.courseId = [parm ks_stringValueForKey:@"courseId"];
-                            detailVC.studentId = [parm ks_stringValueForKey:@"studentId"];
-                            CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                            [navCtrl pushViewController:detailVC animated:YES];
-                        }
-                    }
-                    else if ([pageType isEqualToString:@"musicSheet"]) {
-                        MyMusicViewController *musicCtrl = [[MyMusicViewController alloc] init];
-                        CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                        [navCtrl pushViewController:musicCtrl animated:YES];
-                    }
-                    else if ([pageType isEqualToString:@"message"]) {
-                        UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
-                        if ([vc isKindOfClass:[UITabBarController class]]) {
-                            KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
-                            CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
-                            if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"NotiferMessageViewController")]) {
-                                NotiferMessageViewController *ctrl = (NotiferMessageViewController *)navCtrl.visibleViewController;
-                                [ctrl refreshView];
-                            }
-                            else {
-                                [self.tabBarController tabBarSelectedWithIndex:0];
-                                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                                NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                                [navCtrl pushViewController:ctrl animated:YES];
-                            }
-                        }
-                        else {
-                            [self.tabBarController tabBarSelectedWithIndex:0];
-                            CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                            NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                            [navCtrl pushViewController:ctrl animated:YES];
-                        }
-                    }
-                    else {  // 统一跳转消息列表
-                        UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
-                        if ([vc isKindOfClass:[UITabBarController class]]) {
-                            KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
-                            CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
-                            if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"NotiferMessageViewController")]) {
-                                NotiferMessageViewController *ctrl = (NotiferMessageViewController *)navCtrl.visibleViewController;
-                                [ctrl refreshView];
-                            }
-                            else {
-                                [self.tabBarController tabBarSelectedWithIndex:0];
-                                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                                NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                                [navCtrl pushViewController:ctrl animated:YES];
-                            }
-                        }
-                        else {
-                            [self.tabBarController tabBarSelectedWithIndex:0];
-                            CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                            NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                            [navCtrl pushViewController:ctrl animated:YES];
-                        }
-                    }
-                }
-                else {
-                    NSString *webUrl = [dict ks_stringValueForKey:@"url"];
-                    if (![NSString isEmptyString:webUrl]) {
-                        KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
-                        webCtrl.url = [webUrl getUrlEndcodeString];
-                        CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                        [navCtrl pushViewController:webCtrl animated:YES];
-                    }
-                }
+                [self handSource:dict];
             }
         }
     }
@@ -757,20 +672,23 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
                     DISPLAY_INDEX index = DISPLAY_INDEX_FIRST;
                     if ([pageType isEqualToString:@"vipClass"]) {
                         index = DISPLAY_INDEX_VIP;
+                        [self toMyCourse:index];
                     }
                     else if ([pageType isEqualToString:@"practiceClass"]) { // 我的课程 ->趣纠课
                         index = DISPLAY_INDEX_FIRST;
+                        [self toMyCourse:index];
                     }
                     else if ([pageType isEqualToString:@"liveClass"]) { // 我的课程 ->直播课
                         index = DISPLAY_INDEX_LIVE;
+                        [self toMyCourse:index];
                     }
                     else if ([pageType isEqualToString:@"videoClass"]) { // 我的课程 ->视频课
                         index = DISPLAY_INDEX_VIDEO;
+                        [self toMyCourse:index];
+                    }
+                    else if ([pageType isEqualToString:@"homepage"]) { // 跳转老师个人主页
+                        [self toUserHomepage];
                     }
-                    MyCourseViewController *ctrl = [[MyCourseViewController alloc] init];
-                    [ctrl displayWithIndex:index];
-                    CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                    [navCtrl pushViewController:ctrl animated:YES];
                 }
                 else {  // 空 或者 h5
                     NSString *webUrl = [dict ks_stringValueForKey:@"url"];
@@ -825,134 +743,190 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
 
 - (void)handleNotiferSource {
     if (self.outLinkParm) {
-        NSDictionary *dict = [NSDictionary dictionaryWithDictionary:self.outLinkParm];
-        NSString *action = [dict ks_stringValueForKey:@"action"];
-        if ([action isEqualToString:@"app"]) { // 跳原生
-            NSString *pageType = [dict ks_stringValueForKey:@"pageTag"];
-            if ([pageType isEqualToString:@"vipClass"]) { // 我的课程 ->vip定制课
-                DISPLAY_INDEX index = DISPLAY_INDEX_VIP;
-                MyCourseViewController *ctrl = [[MyCourseViewController alloc] init];
-                [ctrl displayWithIndex:index];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl pushViewController:ctrl animated:YES];
-            }
-            else if ([pageType isEqualToString:@"practiceClass"]) { // 我的课程 ->趣纠课
-                DISPLAY_INDEX index = DISPLAY_INDEX_FIRST;
-                MyCourseViewController *ctrl = [[MyCourseViewController alloc] init];
-                [ctrl displayWithIndex:index];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl pushViewController:ctrl animated:YES];
-            }
-            else if ([pageType isEqualToString:@"liveClass"]) { // 我的课程 ->直播课
-                DISPLAY_INDEX index = DISPLAY_INDEX_LIVE;
-                MyCourseViewController *ctrl = [[MyCourseViewController alloc] init];
-                [ctrl displayWithIndex:index];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl pushViewController:ctrl animated:YES];
-            }
-            else if ([pageType isEqualToString:@"videoClass"]) { // 我的课程 ->视频课
-                DISPLAY_INDEX index = DISPLAY_INDEX_VIDEO;
-                MyCourseViewController *ctrl = [[MyCourseViewController alloc] init];
-                [ctrl displayWithIndex:index];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl pushViewController:ctrl animated:YES];
-            }
-            else if ([pageType isEqualToString:@"buyPractice"] || [pageType isEqualToString:@"courseRemind"]) {
-                [self.tabBarController tabBarSelectedWithIndex:1];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl popToRootViewControllerAnimated:YES];
-            }
-            else if ([pageType isEqualToString:@"evaluate"]) {
-                [self.tabBarController tabBarSelectedWithIndex:0];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                ReceiveEvaluateListController *ctrl = [[ReceiveEvaluateListController alloc] init];
-                [navCtrl pushViewController:ctrl animated:YES];
-            }
-            else if ([pageType isEqualToString:@"homework"]) {
-                NSString *parmString = [dict ks_stringValueForKey:@"params"];
-                NSData *parmData = [parmString mj_JSONData];
-                NSError *error;
-                NSDictionary *parm = [NSJSONSerialization JSONObjectWithData:parmData options:NSJSONReadingMutableContainers error:&error];
-                if (!error) {
-                    HomeworkDetailViewController *detailVC = [[HomeworkDetailViewController alloc] init];
-                    detailVC.courseId = [parm ks_stringValueForKey:@"courseId"];
-                    detailVC.studentId = [parm ks_stringValueForKey:@"studentId"];
-                    CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                    [navCtrl pushViewController:detailVC animated:YES];
-                }
-            }
-            else if ([pageType isEqualToString:@"musicSheet"]) {
-                MyMusicViewController *musicCtrl = [[MyMusicViewController alloc] init];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl pushViewController:musicCtrl animated:YES];
-            }
-            else if ([pageType isEqualToString:@"message"]) {
-                UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
-                if ([vc isKindOfClass:[UITabBarController class]]) {
-                    KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
-                    CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
-                    if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"NotiferMessageViewController")]) {
-                        NotiferMessageViewController *ctrl = (NotiferMessageViewController *)navCtrl.visibleViewController;
-                        [ctrl refreshView];
-                    }
-                    else {
-                        [self.tabBarController tabBarSelectedWithIndex:0];
-                        CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                        NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                        [navCtrl pushViewController:ctrl animated:YES];
-                    }
-                }
-                else {
-                    [self.tabBarController tabBarSelectedWithIndex:0];
-                    CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                    NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                    [navCtrl pushViewController:ctrl animated:YES];
-                }
-            }
-            else if ([pageType isEqualToString:@"feedback"]) { //反馈
-                [self toFeedback];
-            }
-            else {  // 统一跳转消息列表
-                UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
-                if ([vc isKindOfClass:[UITabBarController class]]) {
-                    KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
-                    CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
-                    if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"NotiferMessageViewController")]) {
-                        NotiferMessageViewController *ctrl = (NotiferMessageViewController *)navCtrl.visibleViewController;
-                        [ctrl refreshView];
-                    }
-                    else {
-                        [self.tabBarController tabBarSelectedWithIndex:0];
-                        CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                        NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                        [navCtrl pushViewController:ctrl animated:YES];
-                    }
-                }
-                else {
-                    [self.tabBarController tabBarSelectedWithIndex:0];
-                    CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                    NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
-                    [navCtrl pushViewController:ctrl animated:YES];
-                }
+        [self handSource:self.outLinkParm];
+        self.outLinkParm = nil;
+    }
+}
+
+- (void)handSource:(NSDictionary *)dict {
+    NSString *action = [dict ks_stringValueForKey:@"action"];
+    if ([action isEqualToString:@"app"]) { // 跳原生
+        NSString *pageType = [dict ks_stringValueForKey:@"pageTag"];
+        if ([pageType isEqualToString:@"vipClass"]) { // 我的课程 ->vip定制课
+            DISPLAY_INDEX index = DISPLAY_INDEX_VIP;
+            [self toMyCourse:index];
+        }
+        else if ([pageType isEqualToString:@"practiceClass"]) { // 我的课程 ->趣纠课
+            DISPLAY_INDEX index = DISPLAY_INDEX_FIRST;
+            [self toMyCourse:index];
+        }
+        else if ([pageType isEqualToString:@"liveClass"]) { // 我的课程 ->直播课
+            DISPLAY_INDEX index = DISPLAY_INDEX_LIVE;
+            [self toMyCourse:index];
+        }
+        else if ([pageType isEqualToString:@"videoClass"]) { // 我的课程 ->视频课
+            DISPLAY_INDEX index = DISPLAY_INDEX_VIDEO;
+            [self toMyCourse:index];
+        }
+        else if ([pageType isEqualToString:@"buyPractice"] || [pageType isEqualToString:@"courseRemind"]) { // 课表
+            [self toCourseTable];
+        }
+        else if ([pageType isEqualToString:@"evaluate"]) { // 评价列表
+            [self toEvaluateList];
+        }
+        else if ([pageType isEqualToString:@"homework"]) { // 作业详情
+            NSString *parmString = [dict ks_stringValueForKey:@"params"];
+            NSData *parmData = [parmString mj_JSONData];
+            NSError *error;
+            NSDictionary *parm = [NSJSONSerialization JSONObjectWithData:parmData options:NSJSONReadingMutableContainers error:&error];
+            if (!error) {
+                [self toHomeworkDetail:parm];
             }
         }
+        else if ([pageType isEqualToString:@"musicSheet"]) { // 跳转到上传曲目
+            [self toMusicSheetPage];
+        }
+        else if ([pageType isEqualToString:@"homepage"]) { // 跳转老师个人主页
+            [self toUserHomepage];
+        }
+        else if ([pageType isEqualToString:@"message"]) { // 消息中心
+            [self toHomeMessageCenter];
+        }
+        else if ([pageType isEqualToString:@"feedback"]) { //反馈
+            [self toFeedback];
+        }
+        else {  // 统一跳转消息列表
+            [self toHomeMessageCenter];
+        }
+    }
+    else {
+        NSString *webUrl = [dict ks_stringValueForKey:@"url"];
+        if (![NSString isEmptyString:webUrl]) {
+            KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
+            webCtrl.url = [webUrl getUrlEndcodeString];
+            CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
+            [navCtrl pushViewController:webCtrl animated:YES];
+        }
+    }
+}
+
+// 跳转到课表
+- (void)toCourseTable {
+    [self.tabBarController tabBarSelectedWithIndex:1];
+    CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
+    [navCtrl popToRootViewControllerAnimated:YES];
+}
+
+// 跳转到评价列表
+- (void)toEvaluateList {
+    UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
+    if ([vc isKindOfClass:[UITabBarController class]]) {
+        KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
+        CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
+        if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"ReceiveEvaluateListController")]) {
+            return;
+        }
         else {
-            NSString *webUrl = [dict ks_stringValueForKey:@"url"];
-            if (![NSString isEmptyString:webUrl]) {
-                KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
-                webCtrl.url = [webUrl getUrlEndcodeString];
-                CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-                [navCtrl pushViewController:webCtrl animated:YES];
-            }
+            [self.tabBarController tabBarSelectedWithIndex:0];
+            ReceiveEvaluateListController *ctrl = [[ReceiveEvaluateListController alloc] init];
+            [navCtrl pushViewController:ctrl animated:YES];
+        }
+    }
+}
+
+// 跳转的我的课程
+- (void)toMyCourse:(DISPLAY_INDEX)displayIndex {
+    
+    UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
+    if ([vc isKindOfClass:[UITabBarController class]]) {
+        KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
+        CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
+        if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"MyCourseViewController")]) {
+            return;
+        }
+        else {
+            MyCourseViewController *ctrl = [[MyCourseViewController alloc] init];
+            [ctrl displayWithIndex:displayIndex];
+            [navCtrl pushViewController:ctrl animated:YES];
+        }
+    }
+}
+
+// 跳转的到曲目列表
+- (void)toMusicSheetPage {
+    
+    UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
+    if ([vc isKindOfClass:[UITabBarController class]]) {
+        KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
+        CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
+        if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"MyMusicViewController")]) {
+            return;
+        }
+        else {
+            MyMusicViewController *pageCtrl = [[MyMusicViewController alloc] init];
+            [navCtrl pushViewController:pageCtrl animated:YES];
+        }
+    }
+}
+
+// 跳转到个人主页
+- (void)toUserHomepage {
+    UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
+    if ([vc isKindOfClass:[UITabBarController class]]) {
+        KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
+        CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
+        if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"MinePageViewController")]) {
+            return;
+        }
+        else {
+            MinePageViewController *pageCtrl = [[MinePageViewController alloc] init];
+            [navCtrl pushViewController:pageCtrl animated:YES];
         }
-        self.outLinkParm = nil;
     }
 }
 
+// 跳转的反馈列表
 - (void)toFeedback {
-    FeedbackListViewController *ctrl = [[FeedbackListViewController alloc] init];
+    
+    UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
+    if ([vc isKindOfClass:[UITabBarController class]]) {
+        KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
+        CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
+        if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"FeedbackListViewController")]) {
+            return;
+        }
+        else {
+            FeedbackListViewController *pageCtrl = [[FeedbackListViewController alloc] init];
+            [navCtrl pushViewController:pageCtrl animated:YES];
+        }
+    }
+}
+
+// 跳转到作业详情
+- (void)toHomeworkDetail:(NSDictionary *)parm {
+    HomeworkDetailViewController *detailVC = [[HomeworkDetailViewController alloc] init];
+    detailVC.courseId = [parm ks_stringValueForKey:@"courseId"];
+    detailVC.studentId = [parm ks_stringValueForKey:@"studentId"];
     CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
-    [navCtrl pushViewController:ctrl animated:YES];
+    [navCtrl pushViewController:detailVC animated:YES];
+}
+
+- (void)toHomeMessageCenter {
+    UIViewController *vc = [UIApplication sharedApplication].keyWindow.rootViewController;
+    if ([vc isKindOfClass:[UITabBarController class]]) {
+        KSTabBarViewController *tabCtrl = (KSTabBarViewController *)vc;
+        CustomNavViewController *navCtrl = (CustomNavViewController *)tabCtrl.selectedViewController;
+        if ([navCtrl.visibleViewController isKindOfClass:NSClassFromString(@"NotiferMessageViewController")]) {
+            NotiferMessageViewController *ctrl = (NotiferMessageViewController *)navCtrl.visibleViewController;
+            [ctrl refreshView];
+        }
+        else {
+            [self.tabBarController tabBarSelectedWithIndex:0];
+            CustomNavViewController *navCtrl = self.tabBarController.selectedViewController;
+            NotiferMessageViewController *ctrl = [[NotiferMessageViewController alloc] init];
+            [navCtrl pushViewController:ctrl animated:YES];
+        }
+    }
 }
 
 // 统计消息数量

+ 9 - 8
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Music/View/MusicShareDisplayView.xib

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="20037" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
     <device id="retina6_1" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="20020"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
@@ -15,7 +15,7 @@
             <autoresizingMask key="autoresizingMask"/>
             <subviews>
                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="KJQ-BI-tI8">
-                    <rect key="frame" x="50" y="100" width="314" height="457"/>
+                    <rect key="frame" x="50" y="219.5" width="314" height="457"/>
                     <subviews>
                         <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="shareMusic_bg" translatesAutoresizingMaskIntoConstraints="NO" id="Y7l-PP-YCy">
                             <rect key="frame" x="0.0" y="0.0" width="314" height="263"/>
@@ -31,7 +31,7 @@
                                     </constraints>
                                 </imageView>
                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="扫码下载酷乐秀开启教学之旅" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Agu-Ag-psN">
-                                    <rect key="frame" x="20" y="68" width="173" height="16"/>
+                                    <rect key="frame" x="20" y="68" width="168" height="16"/>
                                     <fontDescription key="fontDescription" type="system" pointSize="13"/>
                                     <color key="textColor" red="0.20392156862745098" green="0.59215686274509804" blue="0.51764705882352935" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                     <nil key="highlightedColor"/>
@@ -96,7 +96,7 @@
                                 </userDefinedRuntimeAttribute>
                             </userDefinedRuntimeAttributes>
                         </view>
-                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_default_avatal" translatesAutoresizingMaskIntoConstraints="NO" id="KaU-Xh-zvM">
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="teacher_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="KaU-Xh-zvM">
                             <rect key="frame" x="14" y="44" width="50" height="50"/>
                             <constraints>
                                 <constraint firstAttribute="width" constant="50" id="DvA-ZW-zdi"/>
@@ -118,7 +118,7 @@
                             <nil key="highlightedColor"/>
                         </label>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="酷乐秀入驻老师" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="h2u-DI-V4Z">
-                            <rect key="frame" x="72" y="72" width="100" height="17"/>
+                            <rect key="frame" x="72" y="72" width="97.5" height="17"/>
                             <fontDescription key="fontDescription" type="system" pointSize="14"/>
                             <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                             <nil key="highlightedColor"/>
@@ -195,9 +195,10 @@
             </subviews>
             <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/>
             <constraints>
+                <constraint firstItem="zx1-oI-KkQ" firstAttribute="top" relation="greaterThanOrEqual" secondItem="KJQ-BI-tI8" secondAttribute="bottom" constant="20" id="45z-lM-nAm"/>
                 <constraint firstItem="KJQ-BI-tI8" firstAttribute="centerX" secondItem="iN0-l3-epB" secondAttribute="centerX" id="Eyc-LB-DGC"/>
                 <constraint firstItem="kcm-Bg-obJ" firstAttribute="width" secondItem="zx1-oI-KkQ" secondAttribute="width" id="Fzw-0l-ZBY"/>
-                <constraint firstItem="KJQ-BI-tI8" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" constant="100" id="Hbl-uS-PAa"/>
+                <constraint firstItem="KJQ-BI-tI8" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="centerY" id="TBR-ib-uMu"/>
                 <constraint firstItem="kcm-Bg-obJ" firstAttribute="leading" secondItem="zx1-oI-KkQ" secondAttribute="trailing" constant="7" id="kAS-jH-Z2D"/>
                 <constraint firstItem="kcm-Bg-obJ" firstAttribute="bottom" secondItem="zx1-oI-KkQ" secondAttribute="bottom" id="kvj-cl-hHu"/>
                 <constraint firstAttribute="bottom" secondItem="zx1-oI-KkQ" secondAttribute="bottom" constant="40" id="oC1-nr-3DT"/>
@@ -222,7 +223,7 @@
     <resources>
         <image name="shareMusic_bg" width="314" height="263"/>
         <image name="share_logo" width="93" height="32"/>
-        <image name="user_default_avatal" width="52" height="52"/>
+        <image name="teacher_avatar" width="150" height="150"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 5 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Home/NotiferMessage/Controller/NotiferMessageViewController.m

@@ -19,6 +19,7 @@
 #import "UserInfoManager.h"
 #import "FeedbackListViewController.h"
 #import "MyCourseViewController.h"
+#import "MinePageViewController.h"
 
 @interface NotiferMessageViewController ()<UITableViewDelegate, UITableViewDataSource>
 
@@ -302,7 +303,10 @@
                     [ctrl displayWithIndex:index];
                     [self.navigationController pushViewController:ctrl animated:YES];
                 }
-                
+                else if ([pageType isEqualToString:@"homepage"]) { // 个人主页
+                    MinePageViewController *pageCtrl = [[MinePageViewController alloc] init];
+                    [self.navigationController pushViewController:pageCtrl animated:YES];
+                }
             }
             else {
                 NSString *webUrl = [dict ks_stringValueForKey:@"url"];

+ 10 - 10
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/View/FansGroupAlert/FansGroupAlertCell.xib

@@ -10,18 +10,18 @@
     <objects>
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
-        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="82" id="KGk-i7-Jjw" customClass="FansGroupAlertCell">
-            <rect key="frame" x="0.0" y="0.0" width="320" height="83"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="62" id="KGk-i7-Jjw" customClass="FansGroupAlertCell">
+            <rect key="frame" x="0.0" y="0.0" width="320" height="62"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
             <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
-                <rect key="frame" x="0.0" y="0.0" width="320" height="83"/>
+                <rect key="frame" x="0.0" y="0.0" width="320" height="62"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
-                    <view contentMode="scaleToFill" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="76n-GO-SJx">
-                        <rect key="frame" x="0.0" y="20" width="320" height="62"/>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="76n-GO-SJx">
+                        <rect key="frame" x="0.0" y="0.0" width="320" height="62"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="chat_fansGroup_logo" translatesAutoresizingMaskIntoConstraints="NO" id="cOU-Gd-KLn">
-                                <rect key="frame" x="20" y="10.666666666666668" width="42" height="42"/>
+                                <rect key="frame" x="20" y="10" width="42" height="42"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="42" id="GO6-9I-49O"/>
                                     <constraint firstAttribute="width" constant="42" id="UbU-XM-x44"/>
@@ -33,7 +33,7 @@
                                 </userDefinedRuntimeAttributes>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="长笛群" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="u61-Cw-ZNy">
-                                <rect key="frame" x="72" y="11.666666666666668" width="211" height="21.000000000000004"/>
+                                <rect key="frame" x="72" y="11" width="211" height="21"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="21" id="uoW-G1-qle"/>
                                 </constraints>
@@ -42,14 +42,14 @@
                                 <nil key="highlightedColor"/>
                             </label>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="setting_next" translatesAutoresizingMaskIntoConstraints="NO" id="WIW-Z6-7Kf">
-                                <rect key="frame" x="293" y="26" width="6" height="11"/>
+                                <rect key="frame" x="293" y="25.666666666666668" width="6" height="11.000000000000004"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="11" id="gr9-85-q6L"/>
                                     <constraint firstAttribute="width" constant="6" id="q2R-yv-rq7"/>
                                 </constraints>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张老师长笛交流群" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="9Qg-fN-QGW">
-                                <rect key="frame" x="72" y="34.666666666666664" width="211" height="17"/>
+                                <rect key="frame" x="72" y="34" width="211" height="17"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="17" id="hPL-vc-xSY"/>
                                 </constraints>
@@ -75,7 +75,7 @@
                 </subviews>
                 <constraints>
                     <constraint firstAttribute="trailing" secondItem="76n-GO-SJx" secondAttribute="trailing" id="6hE-Rl-Wxq"/>
-                    <constraint firstItem="76n-GO-SJx" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="20" id="La4-FW-6ag"/>
+                    <constraint firstItem="76n-GO-SJx" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" id="La4-FW-6ag"/>
                     <constraint firstItem="76n-GO-SJx" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" id="caU-el-hi7"/>
                     <constraint firstAttribute="bottom" secondItem="76n-GO-SJx" secondAttribute="bottom" id="dei-xP-eEf"/>
                 </constraints>

+ 2 - 2
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/View/FansGroupAlert/FansGroupAlertView.m

@@ -9,7 +9,7 @@
 #import "FansGroupAlertCell.h"
 #import "FansGroupEmptyView.h"
 
-#define ROW_HEIGHT (82)
+#define ROW_HEIGHT (62)
 
 @interface FansGroupAlertView ()<UITableViewDelegate, UITableViewDataSource>
 
@@ -121,7 +121,7 @@
             _tableView.delegate = self;
             _tableView.dataSource = self;
             _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
-            _tableView.rowHeight = 82.0f;
+            _tableView.rowHeight = 62.0f;
             _tableView.showsVerticalScrollIndicator = NO;
             _tableView.bounces = NO;
             // cell

+ 4 - 4
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/View/FansGroupAlert/FansGroupAlertView.xib

@@ -14,13 +14,13 @@
             <autoresizingMask key="autoresizingMask"/>
             <subviews>
                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="sqT-l2-2xZ">
-                    <rect key="frame" x="46.666666666666657" y="338.66666666666669" width="300" height="175.00000000000006"/>
+                    <rect key="frame" x="46.666666666666657" y="331" width="300" height="190"/>
                     <subviews>
                         <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="fansGroup_alert_top" translatesAutoresizingMaskIntoConstraints="NO" id="2UF-fm-A6l">
                             <rect key="frame" x="0.0" y="0.0" width="300" height="113"/>
                         </imageView>
                         <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Yue-SE-dsU">
-                            <rect key="frame" x="0.0" y="113" width="300" height="62"/>
+                            <rect key="frame" x="0.0" y="123" width="300" height="62"/>
                             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                             <constraints>
                                 <constraint firstAttribute="height" constant="62" id="rff-qF-IJm"/>
@@ -47,9 +47,10 @@
                     </subviews>
                     <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                     <constraints>
-                        <constraint firstItem="Yue-SE-dsU" firstAttribute="top" secondItem="2UF-fm-A6l" secondAttribute="bottom" id="4CQ-22-Cns"/>
+                        <constraint firstItem="Yue-SE-dsU" firstAttribute="top" secondItem="2UF-fm-A6l" secondAttribute="bottom" constant="10" id="4CQ-22-Cns"/>
                         <constraint firstAttribute="trailing" secondItem="vb1-ly-0S5" secondAttribute="trailing" constant="13" id="78Z-MM-r6O"/>
                         <constraint firstAttribute="width" constant="300" id="7q4-Wf-OUU"/>
+                        <constraint firstAttribute="bottom" secondItem="Yue-SE-dsU" secondAttribute="bottom" constant="5" id="8Bw-Ay-YwM"/>
                         <constraint firstAttribute="trailing" secondItem="2UF-fm-A6l" secondAttribute="trailing" id="DUz-5t-U1V"/>
                         <constraint firstAttribute="trailing" secondItem="Yue-SE-dsU" secondAttribute="trailing" id="PCt-KQ-7bw"/>
                         <constraint firstAttribute="trailing" secondItem="DIk-4o-f6z" secondAttribute="trailing" id="QXQ-yG-Omh"/>
@@ -58,7 +59,6 @@
                         <constraint firstItem="2UF-fm-A6l" firstAttribute="leading" secondItem="sqT-l2-2xZ" secondAttribute="leading" id="cHl-3b-AQT"/>
                         <constraint firstItem="2UF-fm-A6l" firstAttribute="top" secondItem="sqT-l2-2xZ" secondAttribute="top" id="e3B-JJ-mJz"/>
                         <constraint firstItem="DIk-4o-f6z" firstAttribute="top" secondItem="sqT-l2-2xZ" secondAttribute="top" id="iLk-H4-NuC"/>
-                        <constraint firstAttribute="bottom" secondItem="Yue-SE-dsU" secondAttribute="bottom" id="sRl-Is-9HK"/>
                     </constraints>
                     <userDefinedRuntimeAttributes>
                         <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/View/FansGroupAlert/FansGroupEmptyView.m

@@ -34,7 +34,7 @@
 
 
 + (CGFloat)getViewHeight {
-    return 109.0f;
+    return 94.0f;
 }
 /*
 // Only override drawRect: if you perform custom drawing.

+ 6 - 6
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/View/FansGroupAlert/FansGroupEmptyView.xib

@@ -11,11 +11,11 @@
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
         <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="FansGroupEmptyView">
-            <rect key="frame" x="0.0" y="0.0" width="393" height="109"/>
+            <rect key="frame" x="0.0" y="0.0" width="393" height="94"/>
             <autoresizingMask key="autoresizingMask"/>
             <subviews>
                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="您还没有粉丝群哦!" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="l2a-hQ-h8R">
-                    <rect key="frame" x="141.66666666666666" y="20" width="110" height="18"/>
+                    <rect key="frame" x="141.66666666666666" y="10" width="110" height="18"/>
                     <constraints>
                         <constraint firstAttribute="height" constant="18" id="dsd-YR-G19"/>
                     </constraints>
@@ -24,13 +24,13 @@
                     <nil key="highlightedColor"/>
                 </label>
                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CjH-cO-TsD">
-                    <rect key="frame" x="20" y="58" width="353" height="35"/>
+                    <rect key="frame" x="20" y="48" width="353" height="35"/>
                     <subviews>
                         <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="fansGroup_create" translatesAutoresizingMaskIntoConstraints="NO" id="CVO-yD-vX2">
                             <rect key="frame" x="142" y="7" width="20" height="21"/>
                         </imageView>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="去创建" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XVJ-bI-cK2">
-                            <rect key="frame" x="166" y="8.6666666666666714" width="45" height="18"/>
+                            <rect key="frame" x="166" y="8.6666666666666643" width="45" height="18"/>
                             <fontDescription key="fontDescription" type="system" weight="medium" pointSize="15"/>
                             <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                             <nil key="highlightedColor"/>
@@ -71,8 +71,8 @@
             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
             <constraints>
                 <constraint firstItem="l2a-hQ-h8R" firstAttribute="centerX" secondItem="iN0-l3-epB" secondAttribute="centerX" id="2aq-dB-YbB"/>
-                <constraint firstAttribute="bottom" secondItem="CjH-cO-TsD" secondAttribute="bottom" constant="16" id="bgB-ET-pbE"/>
-                <constraint firstItem="l2a-hQ-h8R" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" constant="20" id="hBT-e0-ghc"/>
+                <constraint firstAttribute="bottom" secondItem="CjH-cO-TsD" secondAttribute="bottom" constant="11" id="bgB-ET-pbE"/>
+                <constraint firstItem="l2a-hQ-h8R" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" constant="10" id="hBT-e0-ghc"/>
                 <constraint firstItem="CjH-cO-TsD" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="20" id="xjn-a8-Awa"/>
                 <constraint firstAttribute="trailing" secondItem="CjH-cO-TsD" secondAttribute="trailing" constant="20" id="yAP-1h-lc1"/>
             </constraints>