Browse Source

课程详情、作业详情修改。

Steven 2 months ago
parent
commit
1987c375f2
80 changed files with 1270 additions and 795 deletions
  1. 10 0
      KulexiuForTeacher/KulexiuForTeacher.xcodeproj/project.pbxproj
  2. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/accompany_edit.imageset/accompany_edit@2x.png
  3. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/accompany_edit.imageset/accompany_edit@3x.png
  4. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/arrangement_homework.imageset/arrangement_homework@2x.png
  5. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/arrangement_homework.imageset/arrangement_homework@3x.png
  6. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/course_nav.imageset/course_nav@2x.png
  7. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/course_nav.imageset/course_nav@3x.png
  8. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homeworkVideo_placeholder.imageset/homeworkVideo_placeholder@2x.png
  9. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homeworkVideo_placeholder.imageset/homeworkVideo_placeholder@3x.png
  10. 22 0
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_detail_bg.imageset/Contents.json
  11. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_detail_bg.imageset/homework_detail_bg@2x.png
  12. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_detail_bg.imageset/homework_detail_bg@3x.png
  13. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_eva.imageset/homework_eva@2x.png
  14. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_eva.imageset/homework_eva@3x.png
  15. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_placeholder.imageset/homework_placeholder@2x.png
  16. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_placeholder.imageset/homework_placeholder@3x.png
  17. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/student_eva_placeholder.imageset/student_eva_placeholder@2x.png
  18. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/student_eva_placeholder.imageset/student_eva_placeholder@3x.png
  19. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/teacher_eva_placeholder.imageset/teacher_eva_placeholder@2x.png
  20. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/teacher_eva_placeholder.imageset/teacher_eva_placeholder@3x.png
  21. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/accell_left.imageset/accell_left@2x.png
  22. BIN
      KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/accell_left.imageset/accell_left@3x.png
  23. 1 0
      KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/BaseViewController.h
  24. 13 0
      KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/BaseViewController.m
  25. 2 0
      KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/KSBaseViewController.h
  26. 14 0
      KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/KSBaseViewController.m
  27. 8 8
      KulexiuForTeacher/KulexiuForTeacher/Common/Tools/KSImageAlert.xib
  28. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/Controller/AccompanyCourseGroupViewController.m
  29. 25 35
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/Controller/AccompanyDetailViewController.m
  30. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyArrangeCell.h
  31. 31 13
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyArrangeCell.m
  32. 43 42
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyArrangeCell.xib
  33. 3 2
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyCourseInfoCell.h
  34. 65 19
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyCourseInfoCell.m
  35. 70 58
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyCourseInfoCell.xib
  36. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyEvaluateCell.h
  37. 29 13
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyEvaluateCell.m
  38. 41 40
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyEvaluateCell.xib
  39. 3 3
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyHomeworkCell.m
  40. 27 27
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyHomeworkCell.xib
  41. 2 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyNavView.h
  42. 9 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyNavView.m
  43. 15 11
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyNavView.xib
  44. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyRemarkCell.h
  45. 29 6
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyRemarkCell.m
  46. 44 43
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyRemarkCell.xib
  47. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyStudentEvaCell.h
  48. 12 6
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyStudentEvaCell.m
  49. 44 42
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyStudentEvaCell.xib
  50. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Controller/MusicRoomGroupViewController.m
  51. 43 14
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Controller/MusicRoomViewController.m
  52. 1 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Model/MusicRoomDetailModel.h
  53. 7 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Model/MusicRoomDetailModel.m
  54. 41 11
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/View/MusicRoomCourseInfoCell.m
  55. 64 73
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/View/MusicRoomCourseInfoCell.xib
  56. 5 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/View/MusicRoomCourseListCell.xib
  57. 1 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/Controller/VIPCourseGroupViewController.m
  58. 34 37
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/Controller/VipCouseDetailViewController.m
  59. 2 3
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/View/VipCouseInfoCell.h
  60. 43 31
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/View/VipCouseInfoCell.m
  61. 65 55
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/View/VipCouseInfoCell.xib
  62. 2 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/View/CourseGroupView/CourseGroupPlanAlertView.h
  63. 23 4
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/View/CourseGroupView/CourseGroupPlanAlertView.m
  64. 3 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Course/View/CourseGroupView/CourseGroupPlanAlertView.xib
  65. 9 13
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/EvaluateCourse/Controller/EvaluateDetailViewController.m
  66. 53 24
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/Controller/HomeworkDetailViewController.m
  67. 2 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/Model/HomeworkDetailModel.h
  68. 14 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/Model/HomeworkDetailModel.m
  69. 5 4
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkBodyView.m
  70. 24 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkDetailNavView.h
  71. 48 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkDetailNavView.m
  72. 70 0
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkDetailNavView.xib
  73. 7 2
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkListCell.m
  74. 57 54
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkListCell.xib
  75. 6 1
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/MusicRoomHomeworkCell.m
  76. 52 48
      KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/MusicRoomHomeworkCell.xib
  77. 9 9
      KulexiuForTeacher/KulexiuForTeacher/Module/Mine/BankCard/View/KSConfirmAlertView.xib
  78. 5 9
      KulexiuForTeacher/KulexiuForTeacher/Module/Mine/CreateStyle/View/InstrumentHeaderView.xib
  79. 5 19
      KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/Controller/MinePageViewController.m
  80. 2 7
      KulexiuForTeacher/KulexiuForTeacher/Module/TXLiveModule/Controller/TXLiveRoomViewController.m

+ 10 - 0
KulexiuForTeacher/KulexiuForTeacher.xcodeproj/project.pbxproj

@@ -961,6 +961,8 @@
 		BCB6F45A2CF57E4B000D8805 /* MyStyleVideoCollectionViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = BCB6F4592CF57E4B000D8805 /* MyStyleVideoCollectionViewCell.xib */; };
 		BCB6F45B2CF57E4B000D8805 /* MyStyleVideoCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = BCB6F4582CF57E4B000D8805 /* MyStyleVideoCollectionViewCell.m */; };
 		BCB6F45E2CF57F13000D8805 /* TeacherStyleFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = BCB6F45D2CF57F13000D8805 /* TeacherStyleFlowLayout.m */; };
+		BCB8162F2D12B2E700858FD6 /* HomeworkDetailNavView.m in Sources */ = {isa = PBXBuildFile; fileRef = BCB8162E2D12B2E700858FD6 /* HomeworkDetailNavView.m */; };
+		BCB816312D12B2ED00858FD6 /* HomeworkDetailNavView.xib in Resources */ = {isa = PBXBuildFile; fileRef = BCB816302D12B2ED00858FD6 /* HomeworkDetailNavView.xib */; };
 		BCB908F72850C6EF00F5FF69 /* MusicChooseCell.m in Sources */ = {isa = PBXBuildFile; fileRef = BCB908F52850C6EF00F5FF69 /* MusicChooseCell.m */; };
 		BCB908F82850C6EF00F5FF69 /* MusicChooseCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = BCB908F62850C6EF00F5FF69 /* MusicChooseCell.xib */; };
 		BCB908FB2850C9C300F5FF69 /* MusicChooseSearchView.m in Sources */ = {isa = PBXBuildFile; fileRef = BCB908FA2850C9C300F5FF69 /* MusicChooseSearchView.m */; };
@@ -2819,6 +2821,9 @@
 		BCB6F4592CF57E4B000D8805 /* MyStyleVideoCollectionViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MyStyleVideoCollectionViewCell.xib; sourceTree = "<group>"; };
 		BCB6F45C2CF57F13000D8805 /* TeacherStyleFlowLayout.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TeacherStyleFlowLayout.h; sourceTree = "<group>"; };
 		BCB6F45D2CF57F13000D8805 /* TeacherStyleFlowLayout.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = TeacherStyleFlowLayout.m; sourceTree = "<group>"; };
+		BCB8162D2D12B2E700858FD6 /* HomeworkDetailNavView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HomeworkDetailNavView.h; sourceTree = "<group>"; };
+		BCB8162E2D12B2E700858FD6 /* HomeworkDetailNavView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HomeworkDetailNavView.m; sourceTree = "<group>"; };
+		BCB816302D12B2ED00858FD6 /* HomeworkDetailNavView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomeworkDetailNavView.xib; sourceTree = "<group>"; };
 		BCB908F42850C6EF00F5FF69 /* MusicChooseCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MusicChooseCell.h; sourceTree = "<group>"; };
 		BCB908F52850C6EF00F5FF69 /* MusicChooseCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MusicChooseCell.m; sourceTree = "<group>"; };
 		BCB908F62850C6EF00F5FF69 /* MusicChooseCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MusicChooseCell.xib; sourceTree = "<group>"; };
@@ -5645,6 +5650,9 @@
 				BC76146B280D571B0080FD1F /* HomeworkVideoView.h */,
 				BC76146C280D571B0080FD1F /* HomeworkVideoView.m */,
 				BC76146E280D57220080FD1F /* HomeworkVideoView.xib */,
+				BCB8162D2D12B2E700858FD6 /* HomeworkDetailNavView.h */,
+				BCB8162E2D12B2E700858FD6 /* HomeworkDetailNavView.m */,
+				BCB816302D12B2ED00858FD6 /* HomeworkDetailNavView.xib */,
 			);
 			path = View;
 			sourceTree = "<group>";
@@ -8239,6 +8247,7 @@
 				BC71D1F62887FDD40010F14B /* img_29.png in Resources */,
 				BCF1BA5627F5CBA100FA36C4 /* LiveSeatApplyView.xib in Resources */,
 				BC15535C2AB33B0300C1C347 /* TenantCreateStuView.xib in Resources */,
+				BCB816312D12B2ED00858FD6 /* HomeworkDetailNavView.xib in Resources */,
 				BC8B6E562856ED0600866917 /* iOS集成升级必读.pdf in Resources */,
 				BC8B6E6A28575DEE00866917 /* MusicDisplayView.xib in Resources */,
 				BC366FC92CF028C300583E61 /* CourseGroupPlanDescView.xib in Resources */,
@@ -9230,6 +9239,7 @@
 				BC14A62428A212C50086395C /* HomeHotMusicView.m in Sources */,
 				BCECE21F2B3D5F0800C0D555 /* FeedbackBodyView.m in Sources */,
 				2779326627E30FD80010E277 /* FSCalendarCell.m in Sources */,
+				BCB8162F2D12B2E700858FD6 /* HomeworkDetailNavView.m in Sources */,
 				BC3ACD9A2890D88600060E97 /* IncomeRecordHeadView.m in Sources */,
 				BC0A22B92847523E0065C1AB /* ClassMemberListView.m in Sources */,
 				BC28886C2A8101310064B773 /* KSChatSearchBar.m in Sources */,

BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/accompany_edit.imageset/accompany_edit@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/accompany_edit.imageset/accompany_edit@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/arrangement_homework.imageset/arrangement_homework@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/arrangement_homework.imageset/arrangement_homework@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/course_nav.imageset/course_nav@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/course_nav.imageset/course_nav@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homeworkVideo_placeholder.imageset/homeworkVideo_placeholder@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homeworkVideo_placeholder.imageset/homeworkVideo_placeholder@3x.png


+ 22 - 0
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_detail_bg.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "homework_detail_bg@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "homework_detail_bg@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_detail_bg.imageset/homework_detail_bg@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_detail_bg.imageset/homework_detail_bg@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_eva.imageset/homework_eva@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_eva.imageset/homework_eva@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_placeholder.imageset/homework_placeholder@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/homework_placeholder.imageset/homework_placeholder@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/student_eva_placeholder.imageset/student_eva_placeholder@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/student_eva_placeholder.imageset/student_eva_placeholder@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/teacher_eva_placeholder.imageset/teacher_eva_placeholder@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/Course/teacher_eva_placeholder.imageset/teacher_eva_placeholder@3x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/accell_left.imageset/accell_left@2x.png


BIN
KulexiuForTeacher/KulexiuForTeacher/Assets.xcassets/accell_left.imageset/accell_left@3x.png


+ 1 - 0
KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/BaseViewController.h

@@ -12,6 +12,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface BaseViewController : UIViewController
 
+- (void)configStatusViewColorWhite:(BOOL)isWhite;
 
 @end
 

+ 13 - 0
KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/BaseViewController.m

@@ -20,6 +20,19 @@
     self.view.backgroundColor = HexRGB(0xf8f9fc);
 }
 
+- (void)configStatusViewColorWhite:(BOOL)isWhite {
+    if (isWhite) {
+        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
+    }
+    else {
+        if (@available(iOS 13.0, *)) {
+            [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDarkContent;
+        } else {
+            // Fallback on earlier versions
+            [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
+        }
+    }
+}
 /*
 #pragma mark - Navigation
 

+ 2 - 0
KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/KSBaseViewController.h

@@ -103,6 +103,8 @@ NS_ASSUME_NONNULL_BEGIN
 - (KSBaseViewController *)getNextViewController;
 
 - (BOOL)isViewPopDismiss;
+
+- (void)configStatusViewColorWhite:(BOOL)isWhite;
 @end
 
 NS_ASSUME_NONNULL_END

+ 14 - 0
KulexiuForTeacher/KulexiuForTeacher/Common/Base/BaseViewContolller/KSBaseViewController.m

@@ -458,6 +458,20 @@
     [super viewDidAppear:animated];
     self.preCtrl = [self getPreViewController];
 }
+
+- (void)configStatusViewColorWhite:(BOOL)isWhite {
+    if (isWhite) {
+        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
+    }
+    else {
+        if (@available(iOS 13.0, *)) {
+            [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDarkContent;
+        } else {
+            // Fallback on earlier versions
+            [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
+        }
+    }
+}
 /*
 #pragma mark - Navigation
 

+ 8 - 8
KulexiuForTeacher/KulexiuForTeacher/Common/Tools/KSImageAlert.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="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -17,14 +17,14 @@
                     <rect key="frame" x="31" y="226.5" width="352" height="140"/>
                     <subviews>
                         <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="zHs-1o-h1G">
-                            <rect key="frame" x="17" y="23" width="4" height="14"/>
+                            <rect key="frame" x="17" y="23" width="3" height="12"/>
                             <constraints>
-                                <constraint firstAttribute="height" constant="14" id="QkD-3l-6Bp"/>
-                                <constraint firstAttribute="width" constant="4" id="czF-D3-gvT"/>
+                                <constraint firstAttribute="width" constant="3" id="gfE-CN-GJm"/>
+                                <constraint firstAttribute="height" constant="12" id="i7C-UV-wII"/>
                             </constraints>
                         </imageView>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="提示" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xyU-sV-u6y">
-                            <rect key="frame" x="28" y="15" width="304" height="30"/>
+                            <rect key="frame" x="27" y="14" width="305" height="30"/>
                             <constraints>
                                 <constraint firstAttribute="height" constant="30" id="PwA-2V-aLC"/>
                             </constraints>
@@ -58,7 +58,7 @@
                             </connections>
                         </button>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Lgn-tk-5dh">
-                            <rect key="frame" x="16" y="52" width="320" height="10"/>
+                            <rect key="frame" x="16" y="50" width="320" height="12"/>
                             <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                             <color key="textColor" red="0.50196078431372548" green="0.50196078431372548" blue="0.50196078431372548" alpha="1" colorSpace="calibratedRGB"/>
                             <nil key="highlightedColor"/>
@@ -109,6 +109,6 @@
         </view>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
+        <image name="accell_left" width="3" height="12"/>
     </resources>
 </document>

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/Controller/AccompanyCourseGroupViewController.m

@@ -230,7 +230,7 @@
     if (!_navView) {
         _navView = [CourseGroupNavView sharedInstance];
         MJWeakSelf;
-        [_navView configWithNavTitle:@"趣纠课详情" callback:^{
+        [_navView configWithNavTitle:@"课程组详情" callback:^{
             [weakSelf backAction];
         }];
     }

+ 25 - 35
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/Controller/AccompanyDetailViewController.m

@@ -7,7 +7,7 @@
 
 #import "AccompanyDetailViewController.h"
 #import "AccompanyNavView.h"
-#import "AccompanyAlertView.h"
+#import "CourseGroupPlanAlertView.h"
 #import "AccompanyCourseInfoCell.h"
 #import "AccompanyEvaluateCell.h"
 #import "AccompanyStudentEvaCell.h"
@@ -42,7 +42,7 @@
 
 @property (nonatomic, strong) AccompanyDetailBottomView *bottomView;
 
-@property (nonatomic, strong) AccompanyAlertView *alertView;
+@property (nonatomic, strong) CourseGroupPlanAlertView *alertView;
 
 @property (nonatomic, strong) NSMutableArray *fileArray;
 
@@ -191,14 +191,7 @@
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
     if (indexPath.row == 0) {
         AccompanyCourseInfoCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyCourseInfoCell"];
-        [self evaluateWithStatusLabel:cell.statusLabel];
-        [cell configWithStartTime:self.homeworkModel.startTime endTime:self.homeworkModel.endTime studentAvatar:self.homeworkModel.studentAvatar studentName:self.homeworkModel.studentName studentId:self.homeworkModel.studentId studentSubject:self.homeworkModel.subjectName];
-        cell.hideChatButton = NO;
-        MJWeakSelf;
-        [cell chatCalkback:^{
-            [weakSelf chatAction];
-        }];
-        
+        [cell configWithSource:self.homeworkModel];        
         return cell;
     }
     else if (indexPath.row == 1) {
@@ -206,7 +199,7 @@
         NSString *message = self.evaluateModel.teacherReplied;
         BOOL hasEvaluate = [NSString isEmptyString:self.evaluateModel.teacherReplied] ? NO : YES;
         MJWeakSelf;
-        [cell configWithEvaluateMessage:message hasEvaluate:hasEvaluate callback:^{
+        [cell configWithEvaluateMessage:message hasEvaluate:hasEvaluate courseStatus:self.homeworkModel.courseStatus callback:^{
             [weakSelf evaluateCourse];
         }];
         return cell;
@@ -215,14 +208,14 @@
         AccompanyStudentEvaCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyStudentEvaCell"];
         NSString *message = self.evaluateModel.studentReplied;
         BOOL hasEvaluate = [NSString isEmptyString:self.evaluateModel.studentReplied] ? NO : YES;
-        [cell configWithEvaluateMessage:message starNum:self.evaluateModel.score hasEvaluate:hasEvaluate];
+        [cell configWithEvaluateMessage:message courseStatus:self.homeworkModel.courseStatus starNum:self.evaluateModel.score hasEvaluate:hasEvaluate];
         return cell;
     }
     else if (indexPath.row == 3) {
         AccompanyArrangeCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyArrangeCell"];
         BOOL hasArrange = self.homeworkModel.decorateHomework == 1 ? YES : NO;
         MJWeakSelf;
-        [cell configWithHomeworkContent:self.homeworkModel.content hasArrangeHomework:hasArrange callback:^{
+        [cell configWithHomeworkContent:self.homeworkModel.content hasArrangeHomework:hasArrange courseStatus:self.homeworkModel.courseStatus callback:^{
             [weakSelf arrangeHomework];
         }];
         return cell;
@@ -240,8 +233,9 @@
     else {
         AccompanyRemarkCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyRemarkCell"];
         BOOL hasEvaluate = self.homeworkModel.reviewHomework == 1? YES : NO;
+        BOOL hasSubmitHomework = self.homeworkModel.submitHomework == 1 ? YES : NO;
         MJWeakSelf;
-        [cell configWithRemarkMessage:self.homeworkModel.teacherReplied hasEvaluate:hasEvaluate callback:^{
+        [cell configWithRemarkMessage:self.homeworkModel.teacherReplied hasEvaluate:hasEvaluate hasSubmitHomework:hasSubmitHomework callback:^{
             [weakSelf evaluateHomework];
         }];
         return cell;
@@ -263,15 +257,14 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"课程结束之后才可以评价哦~"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"评价学员";
-    self.alertView.tipsLabel.text = @"请输入您对本次课程学员表现的评价";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"评价学员" tipsDesc:@"请输入您对本次课程学员表现的评价" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf evaluateAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf evaluateAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)evaluateAction:(NSString *)content {
@@ -299,15 +292,14 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"课程结束之后才可以布置作业哦~"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"布置作业";
-    self.alertView.tipsLabel.text = @"请输入本次课程作业内容";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"布置作业" tipsDesc:@"请输入本次课程作业内容" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf arrangeAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf arrangeAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)arrangeAction:(NSString *)homeworkContent {
@@ -336,15 +328,13 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"学生还未提交作业"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"作业点评";
-    self.alertView.tipsLabel.text = @"请输入您对本次作业的点评";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"作业点评" tipsDesc:@"请输入您对本次作业的点评" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf commentAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf commentAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)commentAction:(NSString *)commentMessage {

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyArrangeCell.h

@@ -13,7 +13,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface AccompanyArrangeCell : UITableViewCell
 
-- (void)configWithHomeworkContent:(NSString *)content hasArrangeHomework:(BOOL)hasArrange callback:(ArrangeHomeworkCallback)callback;
+- (void)configWithHomeworkContent:(NSString *)content hasArrangeHomework:(BOOL)hasArrange courseStatus:(NSString *)courseStatus callback:(ArrangeHomeworkCallback)callback;
 
 @end
 

+ 31 - 13
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyArrangeCell.m

@@ -9,13 +9,16 @@
 
 @interface AccompanyArrangeCell ()
 
-@property (nonatomic, copy) ArrangeHomeworkCallback callback;
+@property (weak, nonatomic) IBOutlet UILabel *tipsMsg;
+
 @property (weak, nonatomic) IBOutlet UILabel *contentLabel;
 
 @property (weak, nonatomic) IBOutlet UIView *emptyView;
 
 @property (weak, nonatomic) IBOutlet UIView *arrangeActionView;
 
+@property (nonatomic, copy) ArrangeHomeworkCallback callback;
+
 @end
 
 @implementation AccompanyArrangeCell
@@ -26,28 +29,43 @@
     self.selectionStyle = UITableViewCellSelectionStyleNone;
 }
 
-- (void)configWithHomeworkContent:(NSString *)content hasArrangeHomework:(BOOL)hasArrange callback:(ArrangeHomeworkCallback)callback {
+- (void)configWithHomeworkContent:(NSString *)content hasArrangeHomework:(BOOL)hasArrange courseStatus:(NSString *)courseStatus callback:(ArrangeHomeworkCallback)callback {
     if (callback) {
         self.callback = callback;
     }
-    if (hasArrange) {
-        self.emptyView.hidden = YES;
-        self.arrangeActionView.hidden = YES;
-        if (![NSString isEmptyString:content]) {
-            NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
-            [paragraphStyle setLineSpacing:4];//调整行间距
-            NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:content attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x333333)}];
-            self.contentLabel.attributedText = attr;
+    NSString *tipsDesc = @"";
+    if ([courseStatus isEqualToString:@"COMPLETE"]) {
+        tipsDesc = @"课程已结束,请布置作业";
+        if (hasArrange) {
+            self.emptyView.hidden = YES;
+            self.arrangeActionView.hidden = YES;
+            if (![NSString isEmptyString:content]) {
+                NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
+                [paragraphStyle setLineSpacing:4];//调整行间距
+                NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:content attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x333333)}];
+                self.contentLabel.attributedText = attr;
+            }
+            else {
+                self.contentLabel.attributedText = nil;
+            }
         }
         else {
-            self.contentLabel.text = @"";
+            self.emptyView.hidden = NO;
+            self.arrangeActionView.hidden = NO;
+            self.contentLabel.attributedText = nil;
         }
     }
     else {
+        tipsDesc = @"课程结束之后才能布置作业哦";
         self.emptyView.hidden = NO;
-        self.arrangeActionView.hidden = NO;
-        self.contentLabel.text = @"";
+        self.arrangeActionView.hidden = YES;
+        self.contentLabel.attributedText = nil;
     }
+    
+    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
+    [paragraphStyle setLineSpacing:4];//调整行间距
+    NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:tipsDesc attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x999999)}];
+    self.tipsMsg.attributedText = attr;
 }
 
 

+ 43 - 42
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyArrangeCell.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" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="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="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -11,49 +11,49 @@
     <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="215" id="KGk-i7-Jjw" customClass="AccompanyArrangeCell">
-            <rect key="frame" x="0.0" y="0.0" width="375" height="215"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="150" id="KGk-i7-Jjw" customClass="AccompanyArrangeCell">
+            <rect key="frame" x="0.0" y="0.0" width="375" height="150"/>
             <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="375" height="215"/>
+                <rect key="frame" x="0.0" y="0.0" width="375" height="150"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gA1-Yl-rTq">
-                        <rect key="frame" x="14" y="0.0" width="347" height="203"/>
+                        <rect key="frame" x="14" y="0.0" width="347" height="138"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="zvH-rj-MgD">
-                                <rect key="frame" x="11" y="13" width="4" height="14"/>
+                                <rect key="frame" x="12" y="14" width="3" height="12"/>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="课后作业" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qyk-Yf-gN8">
-                                <rect key="frame" x="20" y="10" width="58" height="20"/>
+                                <rect key="frame" x="21" y="10" width="56" height="20"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="20" id="D64-2R-Ow8"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="vf1-Yo-J7O">
-                                <rect key="frame" x="11" y="38" width="327" height="155"/>
+                                <rect key="frame" x="12" y="40" width="323" height="88"/>
                                 <subviews>
                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="H1L-ao-uRw">
-                                        <rect key="frame" x="9" y="11" width="312" height="0.0"/>
+                                        <rect key="frame" x="12" y="12" width="299" height="0.0"/>
                                         <fontDescription key="fontDescription" type="system" pointSize="13"/>
                                         <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dU1-HN-KyM">
-                                        <rect key="frame" x="0.0" y="0.0" width="327" height="155"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="323" height="88"/>
                                         <subviews>
                                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="homework_placeholder" translatesAutoresizingMaskIntoConstraints="NO" id="XfA-4s-phL">
-                                                <rect key="frame" x="33" y="38.5" width="79" height="78"/>
+                                                <rect key="frame" x="30" y="5" width="78" height="78"/>
                                                 <constraints>
-                                                    <constraint firstAttribute="width" constant="79" id="0hA-Du-KDq"/>
+                                                    <constraint firstAttribute="width" constant="78" id="0hA-Du-KDq"/>
                                                     <constraint firstAttribute="height" constant="78" id="UOp-9T-qAZ"/>
                                                 </constraints>
                                             </imageView>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Fby-JO-ifq">
-                                                <rect key="frame" x="120" y="60.5" width="157" height="34.5"/>
+                                                <rect key="frame" x="119" y="27" width="169" height="34.5"/>
                                                 <attributedString key="attributedText">
                                                     <fragment content="课程结束之后记得布置作业哦!">
                                                         <attributes>
@@ -69,24 +69,24 @@
                                         <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         <constraints>
                                             <constraint firstItem="Fby-JO-ifq" firstAttribute="centerY" secondItem="dU1-HN-KyM" secondAttribute="centerY" id="blg-fz-G9n"/>
-                                            <constraint firstItem="XfA-4s-phL" firstAttribute="leading" secondItem="dU1-HN-KyM" secondAttribute="leading" constant="33" id="dMf-ag-brp"/>
-                                            <constraint firstItem="Fby-JO-ifq" firstAttribute="leading" secondItem="XfA-4s-phL" secondAttribute="trailing" constant="8" id="hhO-vt-zAb"/>
+                                            <constraint firstItem="XfA-4s-phL" firstAttribute="leading" secondItem="dU1-HN-KyM" secondAttribute="leading" constant="30" id="dMf-ag-brp"/>
+                                            <constraint firstItem="Fby-JO-ifq" firstAttribute="leading" secondItem="XfA-4s-phL" secondAttribute="trailing" constant="11" id="hhO-vt-zAb"/>
                                             <constraint firstItem="XfA-4s-phL" firstAttribute="centerY" secondItem="dU1-HN-KyM" secondAttribute="centerY" id="q6d-yu-I27"/>
-                                            <constraint firstAttribute="trailing" secondItem="Fby-JO-ifq" secondAttribute="trailing" constant="50" id="zxg-Qb-1UO"/>
+                                            <constraint firstAttribute="trailing" secondItem="Fby-JO-ifq" secondAttribute="trailing" constant="35" id="zxg-Qb-1UO"/>
                                         </constraints>
                                     </view>
                                 </subviews>
-                                <color key="backgroundColor" red="0.96862745100000003" green="0.97254901959999995" blue="0.97647058819999999" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstAttribute="trailing" secondItem="H1L-ao-uRw" secondAttribute="trailing" constant="6" id="0fj-KP-pN1"/>
+                                    <constraint firstAttribute="trailing" secondItem="H1L-ao-uRw" secondAttribute="trailing" constant="12" id="0fj-KP-pN1"/>
                                     <constraint firstItem="dU1-HN-KyM" firstAttribute="leading" secondItem="vf1-Yo-J7O" secondAttribute="leading" id="2gz-6H-k3O"/>
                                     <constraint firstAttribute="bottom" secondItem="dU1-HN-KyM" secondAttribute="bottom" id="AiG-7u-Z5R"/>
                                     <constraint firstAttribute="trailing" secondItem="dU1-HN-KyM" secondAttribute="trailing" id="CT7-rV-eTH"/>
-                                    <constraint firstItem="H1L-ao-uRw" firstAttribute="leading" secondItem="vf1-Yo-J7O" secondAttribute="leading" constant="9" id="Gn2-jW-Sqe"/>
-                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="H1L-ao-uRw" secondAttribute="bottom" constant="5" id="MId-4v-mP6"/>
+                                    <constraint firstItem="H1L-ao-uRw" firstAttribute="leading" secondItem="vf1-Yo-J7O" secondAttribute="leading" constant="12" id="Gn2-jW-Sqe"/>
+                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="H1L-ao-uRw" secondAttribute="bottom" constant="12" id="MId-4v-mP6"/>
                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="88" id="Ohc-jd-ZIz"/>
                                     <constraint firstItem="dU1-HN-KyM" firstAttribute="top" secondItem="vf1-Yo-J7O" secondAttribute="top" id="ReN-18-uf8"/>
-                                    <constraint firstItem="H1L-ao-uRw" firstAttribute="top" secondItem="vf1-Yo-J7O" secondAttribute="top" constant="11" id="ung-Zh-kpd"/>
+                                    <constraint firstItem="H1L-ao-uRw" firstAttribute="top" secondItem="vf1-Yo-J7O" secondAttribute="top" constant="12" id="ung-Zh-kpd"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -95,23 +95,23 @@
                                 </userDefinedRuntimeAttributes>
                             </view>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6qK-hE-EmI">
-                                <rect key="frame" x="257.5" y="2" width="78.5" height="36"/>
+                                <rect key="frame" x="257" y="0.0" width="78" height="40"/>
                                 <subviews>
                                     <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="arrangement_homework" translatesAutoresizingMaskIntoConstraints="NO" id="wQJ-Mq-TBf">
-                                        <rect key="frame" x="5" y="11.5" width="15" height="13"/>
+                                        <rect key="frame" x="5" y="13" width="14" height="14"/>
                                         <constraints>
-                                            <constraint firstAttribute="width" constant="15" id="1W3-gx-pBC"/>
-                                            <constraint firstAttribute="height" constant="13" id="S3q-9F-uoV"/>
+                                            <constraint firstAttribute="width" constant="14" id="1W3-gx-pBC"/>
+                                            <constraint firstAttribute="height" constant="14" id="S3q-9F-uoV"/>
                                         </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="2ic-2e-bQu">
-                                        <rect key="frame" x="21" y="9.5" width="57.5" height="17"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="布置作业" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2ic-2e-bQu" userLabel="3">
+                                        <rect key="frame" x="22" y="11.5" width="56" height="17"/>
                                         <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                        <color key="textColor" red="0.1764705882" green="0.78039215689999997" blue="0.66666666669999997" alpha="1" colorSpace="calibratedRGB"/>
+                                        <color key="textColor" red="0.1764705882352941" green="0.7803921568627451" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="IGB-Qf-0rk">
-                                        <rect key="frame" x="0.0" y="0.0" width="78.5" height="36"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="78" height="40"/>
                                         <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                         <connections>
                                             <action selector="arrangeHomeworkAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="aKH-7f-7uF"/>
@@ -126,7 +126,7 @@
                                     <constraint firstItem="wQJ-Mq-TBf" firstAttribute="centerY" secondItem="6qK-hE-EmI" secondAttribute="centerY" id="UbC-Pa-FlG"/>
                                     <constraint firstAttribute="trailing" secondItem="2ic-2e-bQu" secondAttribute="trailing" id="XtQ-67-tQx"/>
                                     <constraint firstItem="IGB-Qf-0rk" firstAttribute="top" secondItem="6qK-hE-EmI" secondAttribute="top" id="bvX-A3-Yaj"/>
-                                    <constraint firstItem="2ic-2e-bQu" firstAttribute="leading" secondItem="wQJ-Mq-TBf" secondAttribute="trailing" constant="1" id="e6h-SB-tLX"/>
+                                    <constraint firstItem="2ic-2e-bQu" firstAttribute="leading" secondItem="wQJ-Mq-TBf" secondAttribute="trailing" constant="3" id="e6h-SB-tLX"/>
                                     <constraint firstItem="IGB-Qf-0rk" firstAttribute="leading" secondItem="6qK-hE-EmI" secondAttribute="leading" id="thZ-Gh-Yh9"/>
                                     <constraint firstAttribute="trailing" secondItem="IGB-Qf-0rk" secondAttribute="trailing" id="zTr-EP-0ib"/>
                                 </constraints>
@@ -134,15 +134,15 @@
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
-                            <constraint firstAttribute="trailing" secondItem="vf1-Yo-J7O" secondAttribute="trailing" constant="9" id="C9V-eH-geC"/>
-                            <constraint firstItem="vf1-Yo-J7O" firstAttribute="leading" secondItem="gA1-Yl-rTq" secondAttribute="leading" constant="11" id="NWC-5K-8kt"/>
-                            <constraint firstItem="zvH-rj-MgD" firstAttribute="top" secondItem="gA1-Yl-rTq" secondAttribute="top" constant="13" id="QHm-hW-lio"/>
+                            <constraint firstItem="qyk-Yf-gN8" firstAttribute="top" secondItem="gA1-Yl-rTq" secondAttribute="top" constant="10" id="4N8-Kg-hha"/>
+                            <constraint firstAttribute="trailing" secondItem="vf1-Yo-J7O" secondAttribute="trailing" constant="12" id="C9V-eH-geC"/>
+                            <constraint firstItem="vf1-Yo-J7O" firstAttribute="leading" secondItem="gA1-Yl-rTq" secondAttribute="leading" constant="12" id="NWC-5K-8kt"/>
                             <constraint firstAttribute="bottom" secondItem="vf1-Yo-J7O" secondAttribute="bottom" constant="10" id="T6p-ud-tLL"/>
-                            <constraint firstItem="zvH-rj-MgD" firstAttribute="leading" secondItem="gA1-Yl-rTq" secondAttribute="leading" constant="11" id="ad3-xv-Xlz"/>
+                            <constraint firstItem="zvH-rj-MgD" firstAttribute="leading" secondItem="gA1-Yl-rTq" secondAttribute="leading" constant="12" id="ad3-xv-Xlz"/>
                             <constraint firstItem="qyk-Yf-gN8" firstAttribute="centerY" secondItem="zvH-rj-MgD" secondAttribute="centerY" id="dYy-51-vic"/>
-                            <constraint firstAttribute="trailing" secondItem="6qK-hE-EmI" secondAttribute="trailing" constant="11" id="dau-g2-5J6"/>
-                            <constraint firstItem="qyk-Yf-gN8" firstAttribute="leading" secondItem="zvH-rj-MgD" secondAttribute="trailing" constant="5" id="hFd-yY-LNW"/>
-                            <constraint firstItem="vf1-Yo-J7O" firstAttribute="top" secondItem="qyk-Yf-gN8" secondAttribute="bottom" constant="8" id="jc2-n6-O3G"/>
+                            <constraint firstAttribute="trailing" secondItem="6qK-hE-EmI" secondAttribute="trailing" constant="12" id="dau-g2-5J6"/>
+                            <constraint firstItem="qyk-Yf-gN8" firstAttribute="leading" secondItem="zvH-rj-MgD" secondAttribute="trailing" constant="6" id="hFd-yY-LNW"/>
+                            <constraint firstItem="vf1-Yo-J7O" firstAttribute="top" secondItem="qyk-Yf-gN8" secondAttribute="bottom" constant="10" id="jc2-n6-O3G"/>
                             <constraint firstItem="vf1-Yo-J7O" firstAttribute="top" secondItem="6qK-hE-EmI" secondAttribute="bottom" id="lGf-5x-rkW"/>
                             <constraint firstItem="6qK-hE-EmI" firstAttribute="centerY" secondItem="qyk-Yf-gN8" secondAttribute="centerY" id="odU-Eg-sRt"/>
                         </constraints>
@@ -166,14 +166,15 @@
                 <outlet property="arrangeActionView" destination="6qK-hE-EmI" id="U8X-Vw-8So"/>
                 <outlet property="contentLabel" destination="H1L-ao-uRw" id="YPY-n4-spk"/>
                 <outlet property="emptyView" destination="dU1-HN-KyM" id="Lep-x2-mcW"/>
+                <outlet property="tipsMsg" destination="Fby-JO-ifq" id="eC4-JH-RHa"/>
             </connections>
             <point key="canvasLocation" x="207.97101449275365" y="134.93303571428569"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
-        <image name="arrangement_homework" width="15" height="13"/>
-        <image name="homework_placeholder" width="79" height="78"/>
+        <image name="accell_left" width="3" height="12"/>
+        <image name="arrangement_homework" width="14" height="14"/>
+        <image name="homework_placeholder" width="78" height="78"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 3 - 2
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyCourseInfoCell.h

@@ -6,6 +6,7 @@
 //
 
 #import <UIKit/UIKit.h>
+#import "HomeworkDetailModel.h"
 
 NS_ASSUME_NONNULL_BEGIN
 
@@ -15,9 +16,9 @@ typedef void(^AccompanyChatCallback)(void);
 
 @property (weak, nonatomic) IBOutlet UILabel *statusLabel;
 
-@property (nonatomic, assign) BOOL hideChatButton;
+- (void)configWithSource:(HomeworkDetailModel *)model;
 
-- (void)configWithStartTime:(NSString *)beginTime endTime:(NSString *)endTime studentAvatar:(NSString *)studentAvatar studentName:(NSString *)studentName studentId:(NSString *)studentId studentSubject:(NSString *)studentSubject;
+- (void)configWithStartTime:(NSString *)beginTime endTime:(NSString *)endTime studentAvatar:(NSString *)studentAvatar studentName:(NSString *)studentName studentId:(NSString *)studentId studentSubject:(NSString *)studentSubject courseName:(NSString *)courseName;
 
 - (void)chatCalkback:(AccompanyChatCallback)callback;
 

+ 65 - 19
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyCourseInfoCell.m

@@ -9,12 +9,21 @@
 
 @interface AccompanyCourseInfoCell ()
 
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *attendenceImgLeft;
+
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *attendenceImgWidth;
+
+@property (weak, nonatomic) IBOutlet UIImageView *attendentStatusImage;
+
+@property (weak, nonatomic) IBOutlet UILabel *courseName;
+
 @property (weak, nonatomic) IBOutlet UILabel *courseTime;
+
 @property (weak, nonatomic) IBOutlet UIImageView *studentAvatar;
+
 @property (weak, nonatomic) IBOutlet UILabel *studentName;
-@property (weak, nonatomic) IBOutlet UILabel *studentSubject;
 
-@property (weak, nonatomic) IBOutlet UIButton *chatButton;
+@property (weak, nonatomic) IBOutlet UILabel *studentSubject;
 
 @property (nonatomic, strong) NSString *userId;
 
@@ -32,7 +41,55 @@
     self.selectionStyle = UITableViewCellSelectionStyleNone;
 }
 
-- (void)configWithStartTime:(NSString *)beginTime endTime:(NSString *)endTime studentAvatar:(NSString *)studentAvatar studentName:(NSString *)studentName studentId:(NSString *)studentId studentSubject:(NSString *)studentSubject {
+- (void)configWithSource:(HomeworkDetailModel *)model {
+    // time
+    NSDateFormatter *formatter = [NSObject getDateformatter];
+    [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
+    NSDate *startDate = [formatter dateFromString:model.startTime];
+    NSDate *endDate = [formatter dateFromString:model.endTime];
+    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];
+    NSString *lessonBegin = [formatter stringFromDate:startDate];
+    [formatter setDateFormat:@"HH:mm"];
+    NSString *lessonEnd = [formatter stringFromDate:endDate];
+    self.courseTime.text = [NSString stringWithFormat:@"%@~%@",[NSString returnNoNullStringWithString:lessonBegin],[NSString returnNoNullStringWithString:lessonEnd]];
+    if ([NSString isEmptyString:model.studentName]) {
+        self.studentName.text = [NSString stringWithFormat:@"游客%@",model.studentId];
+    }
+    else {
+        self.studentName.text = model.studentName;
+    }
+    
+    [self.studentAvatar sd_setImageWithURL:[NSURL URLWithString:[model.studentAvatar getUrlEndcodeString]] placeholderImage:[UIImage imageNamed:STUDENT_AVATAR]];
+    self.studentSubject.text = [NSString returnNoNullStringWithString:model.subjectName];
+    self.courseName.text = [NSString returnNoNullStringWithString:model.courseGroupName];
+    
+    // 判断是否显示
+    if ([model.courseStatus isEqualToString:@"COMPLETE"]) {
+        self.statusLabel.text = @"已结束";
+        self.statusLabel.textColor = HexRGB(0x999999);
+        self.attendenceImgWidth.constant = 36.0f;
+        self.attendenceImgLeft.constant = 5.0f;
+        self.attendentStatusImage.hidden = NO;
+        NSString *imageName = model.attendanceStatus ? @"course_attendence" : @"course_noArrive";
+        [self.attendentStatusImage setImage:[UIImage imageNamed:imageName]];
+    }
+    else if ([model.courseStatus isEqualToString:@"ING"]) {
+        self.statusLabel.text = @"进行中";
+        self.statusLabel.textColor = THEMECOLOR;
+        self.attendenceImgWidth.constant = 0.0f;
+        self.attendenceImgLeft.constant = 0.0f;
+        self.attendentStatusImage.hidden = YES;
+    }
+    else {
+        self.statusLabel.text = @"未开始";
+        self.statusLabel.textColor = HexRGB(0xff802c);
+        self.attendenceImgWidth.constant = 0.0f;
+        self.attendenceImgLeft.constant = 0.0f;
+        self.attendentStatusImage.hidden = YES;
+    }
+}
+
+- (void)configWithStartTime:(NSString *)beginTime endTime:(NSString *)endTime studentAvatar:(NSString *)studentAvatar studentName:(NSString *)studentName studentId:(NSString *)studentId studentSubject:(NSString *)studentSubject courseName:(NSString *)courseName {
     // time
     NSDateFormatter *formatter = [NSObject getDateformatter];
     [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
@@ -55,19 +112,13 @@
 
     self.userId = studentId;
     self.userName = studentName;
+    self.courseName.text = [NSString returnNoNullStringWithString:courseName];
+    self.attendenceImgWidth.constant = 0.0f;
+    self.attendenceImgLeft.constant = 0.0f;
+    self.attendentStatusImage.hidden = YES;
 }
 
-- (void)setHideChatButton:(BOOL)hideChatButton {
-    _hideChatButton = hideChatButton;
-    if (hideChatButton) {
-        self.chatButton.hidden = YES;
-        self.chatButton.userInteractionEnabled = NO;
-    }
-    else {
-        self.chatButton.hidden = NO;
-        self.chatButton.userInteractionEnabled = YES;
-    }
-}
+
 
 - (void)chatCalkback:(AccompanyChatCallback)callback {
     if (callback) {
@@ -75,11 +126,6 @@
     }
 }
 
-- (IBAction)chatAction:(id)sender {
-    if (self.callback) {
-        self.callback();
-    }
-}
 
 - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
     [super setSelected:selected animated:animated];

+ 70 - 58
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyCourseInfoCell.xib

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
     <device id="retina6_1" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -11,42 +11,43 @@
     <objects>
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
-        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="KGk-i7-Jjw" customClass="AccompanyCourseInfoCell">
-            <rect key="frame" x="0.0" y="0.0" width="367" height="145"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="135" id="KGk-i7-Jjw" customClass="AccompanyCourseInfoCell">
+            <rect key="frame" x="0.0" y="0.0" width="367" height="135"/>
             <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="367" height="145"/>
+                <rect key="frame" x="0.0" y="0.0" width="367" height="135"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Me9-vj-Fhq">
-                        <rect key="frame" x="14" y="10" width="339" height="123"/>
+                        <rect key="frame" x="14" y="12" width="339" height="111"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="09K-c6-xYX">
-                                <rect key="frame" x="10" y="38" width="319" height="1"/>
+                                <rect key="frame" x="10" y="46" width="319" height="1"/>
                                 <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="1" id="h3O-jJ-oio"/>
                                 </constraints>
                             </view>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_time" translatesAutoresizingMaskIntoConstraints="NO" id="Xea-2d-MhT">
-                                <rect key="frame" x="11" y="12" width="16" height="16"/>
+                                <rect key="frame" x="12" y="15" width="16" height="16"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="16" id="QJa-8k-PXn"/>
                                     <constraint firstAttribute="width" constant="16" id="kpa-Xw-v8k"/>
                                 </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="dYZ-ZA-mKb">
-                                <rect key="frame" x="34" y="11" width="0.0" height="18"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2024-10-30 15:00~15:24" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dYZ-ZA-mKb">
+                                <rect key="frame" x="35" y="14" width="161.5" height="18"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="18" id="Cjh-qx-oBI"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" pointSize="13"/>
-                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sy0-Ds-ef0">
-                                <rect key="frame" x="278" y="20" width="50" height="0.0"/>
+                                <rect key="frame" x="278" y="12" width="50" height="22"/>
                                 <constraints>
+                                    <constraint firstAttribute="height" constant="22" id="VOq-Tp-I9X"/>
                                     <constraint firstAttribute="width" constant="50" id="hjG-kD-dSK"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
@@ -54,43 +55,50 @@
                                 <nil key="highlightedColor"/>
                             </label>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="student_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="s7E-Da-TcK">
-                                <rect key="frame" x="11" y="56" width="47" height="47"/>
+                                <rect key="frame" x="12" y="59" width="40" height="40"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="47" id="4Ap-gR-6vk"/>
-                                    <constraint firstAttribute="width" constant="47" id="NoH-2D-u0z"/>
+                                    <constraint firstAttribute="height" constant="40" id="4Ap-gR-6vk"/>
+                                    <constraint firstAttribute="width" constant="40" id="NoH-2D-u0z"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
-                                        <real key="value" value="5"/>
+                                        <real key="value" value="20"/>
                                     </userDefinedRuntimeAttribute>
                                 </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="mNS-6d-8wr">
-                                <rect key="frame" x="68" y="56" width="0.0" height="24"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="长笛VIP定制课-第1课" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="mNS-6d-8wr">
+                                <rect key="frame" x="62" y="58" width="148.5" height="21"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="24" id="CXE-YJ-Psv"/>
+                                    <constraint firstAttribute="height" constant="21" id="CXE-YJ-Psv"/>
                                 </constraints>
-                                <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
-                                <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="calibratedRGB"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                <color key="textColor" red="0.074509803921568626" green="0.078431372549019607" blue="0.082352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2RD-hr-hLB">
-                                <rect key="frame" x="68" y="83" width="10" height="20"/>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" image="course_attendence" translatesAutoresizingMaskIntoConstraints="NO" id="H3s-kJ-OCm">
+                                <rect key="frame" x="215.5" y="59.5" width="36" height="18"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="18" id="2tf-Ki-aVE"/>
+                                    <constraint firstAttribute="width" constant="36" id="SUs-ge-2dK"/>
+                                </constraints>
+                            </imageView>
+                            <view contentMode="scaleToFill" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="2RD-hr-hLB">
+                                <rect key="frame" x="106" y="83" width="28" height="17"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g0Z-7O-ahT">
-                                        <rect key="frame" x="5" y="0.0" width="0.0" height="20"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="11"/>
-                                        <color key="textColor" red="1" green="0.54901960780000003" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" text="长笛" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g0Z-7O-ahT">
+                                        <rect key="frame" x="4" y="0.0" width="20" height="17"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="10"/>
+                                        <color key="textColor" red="1" green="0.5490196078431373" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                 </subviews>
-                                <color key="backgroundColor" red="1" green="0.94509803920000002" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="1" green="0.94509803921568625" blue="0.87058823529411766" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="bottom" secondItem="g0Z-7O-ahT" secondAttribute="bottom" id="D38-fw-jAX"/>
-                                    <constraint firstAttribute="trailing" secondItem="g0Z-7O-ahT" secondAttribute="trailing" constant="5" id="N3Z-Rs-lL1"/>
+                                    <constraint firstAttribute="trailing" secondItem="g0Z-7O-ahT" secondAttribute="trailing" constant="4" id="N3Z-Rs-lL1"/>
                                     <constraint firstItem="g0Z-7O-ahT" firstAttribute="top" secondItem="2RD-hr-hLB" secondAttribute="top" id="df1-Vz-7wk"/>
-                                    <constraint firstAttribute="height" constant="20" id="dx5-We-4wH"/>
-                                    <constraint firstItem="g0Z-7O-ahT" firstAttribute="leading" secondItem="2RD-hr-hLB" secondAttribute="leading" constant="5" id="liU-VW-wo4"/>
+                                    <constraint firstAttribute="height" constant="17" id="dx5-We-4wH"/>
+                                    <constraint firstItem="g0Z-7O-ahT" firstAttribute="leading" secondItem="2RD-hr-hLB" secondAttribute="leading" constant="4" id="liU-VW-wo4"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -98,40 +106,41 @@
                                     </userDefinedRuntimeAttribute>
                                 </userDefinedRuntimeAttributes>
                             </view>
-                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="dZv-fL-5CE">
-                                <rect key="frame" x="68" y="48" width="40" height="40"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张涵宇" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="78h-rs-IaI">
+                                <rect key="frame" x="62" y="83" width="39" height="17"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="40" id="DSU-U0-FpE"/>
-                                    <constraint firstAttribute="width" constant="40" id="PGx-kW-17W"/>
+                                    <constraint firstAttribute="height" constant="17" id="yOd-Bz-u2c"/>
                                 </constraints>
-                                <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
-                                <state key="normal" image="course_chat"/>
-                                <connections>
-                                    <action selector="chatAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="Mja-PS-NEH"/>
-                                </connections>
-                            </button>
+                                <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                                <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
-                            <constraint firstItem="2RD-hr-hLB" firstAttribute="bottom" secondItem="s7E-Da-TcK" secondAttribute="bottom" id="4j8-NG-p8a"/>
                             <constraint firstAttribute="trailing" secondItem="sy0-Ds-ef0" secondAttribute="trailing" constant="11" id="8bf-XE-uBd"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="2RD-hr-hLB" secondAttribute="trailing" constant="12" id="9Uh-WM-r6E"/>
                             <constraint firstItem="dYZ-ZA-mKb" firstAttribute="leading" secondItem="Xea-2d-MhT" secondAttribute="trailing" constant="7" id="AaW-vX-a8p"/>
-                            <constraint firstItem="Xea-2d-MhT" firstAttribute="leading" secondItem="Me9-vj-Fhq" secondAttribute="leading" constant="11" id="CBa-w0-UOa"/>
-                            <constraint firstItem="s7E-Da-TcK" firstAttribute="top" secondItem="09K-c6-xYX" secondAttribute="bottom" constant="17" id="Ft4-re-ZDx"/>
-                            <constraint firstItem="Xea-2d-MhT" firstAttribute="top" secondItem="Me9-vj-Fhq" secondAttribute="top" constant="12" id="Nhv-BT-RCR"/>
+                            <constraint firstItem="Xea-2d-MhT" firstAttribute="leading" secondItem="Me9-vj-Fhq" secondAttribute="leading" constant="12" id="CBa-w0-UOa"/>
+                            <constraint firstItem="2RD-hr-hLB" firstAttribute="leading" secondItem="78h-rs-IaI" secondAttribute="trailing" constant="5" id="DcR-hq-Uyl"/>
+                            <constraint firstItem="s7E-Da-TcK" firstAttribute="top" secondItem="09K-c6-xYX" secondAttribute="bottom" constant="12" id="Ft4-re-ZDx"/>
+                            <constraint firstItem="Xea-2d-MhT" firstAttribute="top" secondItem="Me9-vj-Fhq" secondAttribute="top" constant="15" id="Nhv-BT-RCR"/>
                             <constraint firstItem="09K-c6-xYX" firstAttribute="leading" secondItem="Me9-vj-Fhq" secondAttribute="leading" constant="10" id="Oye-BS-j2I"/>
                             <constraint firstItem="dYZ-ZA-mKb" firstAttribute="centerY" secondItem="Xea-2d-MhT" secondAttribute="centerY" id="P1s-2G-pny"/>
+                            <constraint firstItem="H3s-kJ-OCm" firstAttribute="leading" secondItem="mNS-6d-8wr" secondAttribute="trailing" constant="5" id="QO0-xI-nFv"/>
                             <constraint firstItem="sy0-Ds-ef0" firstAttribute="centerY" secondItem="dYZ-ZA-mKb" secondAttribute="centerY" id="X9X-7C-53D"/>
-                            <constraint firstItem="dZv-fL-5CE" firstAttribute="leading" secondItem="mNS-6d-8wr" secondAttribute="trailing" id="XgQ-6M-AZe"/>
                             <constraint firstItem="sy0-Ds-ef0" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="dYZ-ZA-mKb" secondAttribute="trailing" constant="10" id="YVK-XV-hev"/>
-                            <constraint firstAttribute="bottom" secondItem="s7E-Da-TcK" secondAttribute="bottom" constant="20" id="a6x-Et-6cK"/>
-                            <constraint firstItem="s7E-Da-TcK" firstAttribute="leading" secondItem="Me9-vj-Fhq" secondAttribute="leading" constant="11" id="dAu-VP-8Cy"/>
+                            <constraint firstAttribute="bottom" secondItem="s7E-Da-TcK" secondAttribute="bottom" constant="12" id="a6x-Et-6cK"/>
+                            <constraint firstItem="H3s-kJ-OCm" firstAttribute="centerY" secondItem="mNS-6d-8wr" secondAttribute="centerY" id="b1a-hJ-r6M"/>
+                            <constraint firstItem="2RD-hr-hLB" firstAttribute="centerY" secondItem="78h-rs-IaI" secondAttribute="centerY" id="bMn-7s-PVF"/>
+                            <constraint firstItem="s7E-Da-TcK" firstAttribute="leading" secondItem="Me9-vj-Fhq" secondAttribute="leading" constant="12" id="dAu-VP-8Cy"/>
                             <constraint firstItem="mNS-6d-8wr" firstAttribute="leading" secondItem="s7E-Da-TcK" secondAttribute="trailing" constant="10" id="dm3-Jc-bB0"/>
-                            <constraint firstItem="2RD-hr-hLB" firstAttribute="leading" secondItem="mNS-6d-8wr" secondAttribute="leading" id="iOB-o4-an5"/>
-                            <constraint firstItem="dZv-fL-5CE" firstAttribute="centerY" secondItem="mNS-6d-8wr" secondAttribute="centerY" id="iZq-rI-A9M"/>
+                            <constraint firstItem="78h-rs-IaI" firstAttribute="leading" secondItem="mNS-6d-8wr" secondAttribute="leading" id="jZh-h3-kMw"/>
+                            <constraint firstItem="78h-rs-IaI" firstAttribute="bottom" secondItem="s7E-Da-TcK" secondAttribute="bottom" constant="1" id="lVM-Y8-oLE"/>
                             <constraint firstAttribute="trailing" secondItem="09K-c6-xYX" secondAttribute="trailing" constant="10" id="p00-p1-Cqn"/>
-                            <constraint firstItem="mNS-6d-8wr" firstAttribute="top" secondItem="s7E-Da-TcK" secondAttribute="top" id="u91-Cd-N1a"/>
-                            <constraint firstItem="09K-c6-xYX" firstAttribute="top" secondItem="Xea-2d-MhT" secondAttribute="bottom" constant="10" id="uTr-wS-3kK"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="H3s-kJ-OCm" secondAttribute="trailing" constant="12" id="tmf-7F-xae"/>
+                            <constraint firstItem="mNS-6d-8wr" firstAttribute="top" secondItem="s7E-Da-TcK" secondAttribute="top" constant="-1" id="u91-Cd-N1a"/>
+                            <constraint firstItem="09K-c6-xYX" firstAttribute="top" secondItem="Xea-2d-MhT" secondAttribute="bottom" constant="15" id="uTr-wS-3kK"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -141,27 +150,30 @@
                     </view>
                 </subviews>
                 <constraints>
-                    <constraint firstAttribute="bottom" secondItem="Me9-vj-Fhq" secondAttribute="bottom" constant="12" id="Xsc-EO-bGL"/>
-                    <constraint firstItem="Me9-vj-Fhq" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="10" id="YXp-RV-zfk"/>
+                    <constraint firstItem="Me9-vj-Fhq" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="12" id="YXp-RV-zfk"/>
                     <constraint firstAttribute="trailing" secondItem="Me9-vj-Fhq" secondAttribute="trailing" constant="14" id="atd-gk-0m1"/>
+                    <constraint firstAttribute="bottom" secondItem="Me9-vj-Fhq" secondAttribute="bottom" constant="12" id="ayS-YV-H1x"/>
                     <constraint firstItem="Me9-vj-Fhq" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="g3f-25-gGV"/>
                 </constraints>
             </tableViewCellContentView>
             <viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
             <connections>
-                <outlet property="chatButton" destination="dZv-fL-5CE" id="AJN-Du-3LN"/>
+                <outlet property="attendenceImgLeft" destination="QO0-xI-nFv" id="apf-fh-AZk"/>
+                <outlet property="attendenceImgWidth" destination="SUs-ge-2dK" id="ex8-cM-Od4"/>
+                <outlet property="attendentStatusImage" destination="H3s-kJ-OCm" id="BCO-yM-1Gn"/>
+                <outlet property="courseName" destination="mNS-6d-8wr" id="1ch-zO-M7h"/>
                 <outlet property="courseTime" destination="dYZ-ZA-mKb" id="JjR-Me-4kj"/>
                 <outlet property="statusLabel" destination="sy0-Ds-ef0" id="0IK-l7-I3g"/>
                 <outlet property="studentAvatar" destination="s7E-Da-TcK" id="Hat-QP-4o3"/>
-                <outlet property="studentName" destination="mNS-6d-8wr" id="DZl-me-T26"/>
+                <outlet property="studentName" destination="78h-rs-IaI" id="CCO-L5-3HQ"/>
                 <outlet property="studentSubject" destination="g0Z-7O-ahT" id="SsG-hN-q6S"/>
             </connections>
-            <point key="canvasLocation" x="165.94202898550725" y="108.48214285714285"/>
+            <point key="canvasLocation" x="165.94202898550725" y="112.16517857142857"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="course_chat" width="19" height="18"/>
+        <image name="course_attendence" width="36" height="18"/>
         <image name="course_time" width="16" height="16"/>
         <image name="student_avatar" width="150" height="150"/>
         <systemColor name="systemBackgroundColor">

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyEvaluateCell.h

@@ -13,7 +13,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface AccompanyEvaluateCell : UITableViewCell
 
-- (void)configWithEvaluateMessage:(NSString *)evaluateMessage hasEvaluate:(BOOL)hasEvaluate callback:(HomeworkEvaluateCallback)callback;
+- (void)configWithEvaluateMessage:(NSString *)evaluateMessage hasEvaluate:(BOOL)hasEvaluate courseStatus:(NSString *)courseStatus callback:(HomeworkEvaluateCallback)callback;
 
 @end
 

+ 29 - 13
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyEvaluateCell.m

@@ -9,6 +9,8 @@
 
 @interface AccompanyEvaluateCell ()
 
+@property (weak, nonatomic) IBOutlet UILabel *tipsMsg;
+
 @property (weak, nonatomic) IBOutlet UIView *emptyView;
 
 @property (weak, nonatomic) IBOutlet UILabel *contentLabel;
@@ -26,33 +28,47 @@
     self.selectionStyle = UITableViewCellSelectionStyleNone;
 }
 
-- (void)configWithEvaluateMessage:(NSString *)evaluateMessage hasEvaluate:(BOOL)hasEvaluate callback:(HomeworkEvaluateCallback)callback {
+- (void)configWithEvaluateMessage:(NSString *)evaluateMessage hasEvaluate:(BOOL)hasEvaluate courseStatus:(NSString *)courseStatus callback:(HomeworkEvaluateCallback)callback {
     if (callback) {
         self.callback = callback;
     }
-    if (hasEvaluate) {
-        self.emptyView.hidden = YES;
-        self.evaluateView.hidden = YES;
-        if (![NSString isEmptyString:evaluateMessage]) {
-            NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
-            [paragraphStyle setLineSpacing:4];//调整行间距
-            NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:evaluateMessage attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x333333)}];
-            self.contentLabel.attributedText = attr;
+    NSString *tipsDesc = @"";
+    if ([courseStatus isEqualToString:@"COMPLETE"]) { // 结束
+        tipsDesc = @"课程已结束,请对学员的表现进行评价哦";
+        if (hasEvaluate) {
+            self.emptyView.hidden = YES;
+            self.evaluateView.hidden = YES;
+            if (![NSString isEmptyString:evaluateMessage]) {
+                NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
+                [paragraphStyle setLineSpacing:4];//调整行间距
+                NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:evaluateMessage attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x333333)}];
+                self.contentLabel.attributedText = attr;
+            }
+            else {
+                self.contentLabel.attributedText = nil;
+            }
         }
         else {
-            self.contentLabel.text = @"";
+            self.emptyView.hidden = NO;
+            self.evaluateView.hidden = NO;
+            self.contentLabel.attributedText = nil;
         }
     }
     else {
+        tipsDesc = @"课程结束之后才能评价学员哦";
         self.emptyView.hidden = NO;
-        self.evaluateView.hidden = NO;
-        self.contentLabel.text = @"";
+        self.evaluateView.hidden = YES;
+        self.contentLabel.attributedText = nil;
     }
+    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
+    [paragraphStyle setLineSpacing:4];//调整行间距
+    NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:tipsDesc attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x999999)}];
+    self.tipsMsg.attributedText = attr;
 }
 
 - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
     [super setSelected:selected animated:animated];
-
+    
     // Configure the view for the selected state
 }
 

+ 41 - 40
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyEvaluateCell.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" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="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="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -12,48 +12,48 @@
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
         <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="196" id="KGk-i7-Jjw" customClass="AccompanyEvaluateCell">
-            <rect key="frame" x="0.0" y="0.0" width="354" height="196"/>
+            <rect key="frame" x="0.0" y="0.0" width="354" height="150"/>
             <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="354" height="196"/>
+                <rect key="frame" x="0.0" y="0.0" width="354" height="150"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3vN-Vj-itp">
-                        <rect key="frame" x="14" y="0.0" width="326" height="184"/>
+                        <rect key="frame" x="14" y="0.0" width="326" height="138"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="lLF-ft-OTS">
-                                <rect key="frame" x="11" y="13" width="4" height="14"/>
+                                <rect key="frame" x="12" y="14" width="3" height="12"/>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="老师评价" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ksa-Jo-b55">
-                                <rect key="frame" x="20" y="10" width="58" height="20"/>
+                                <rect key="frame" x="21" y="10" width="56" height="20"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="20" id="Avw-hO-qFv"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="UuA-Bs-h8B">
-                                <rect key="frame" x="11" y="38" width="306" height="136"/>
+                                <rect key="frame" x="12" y="40" width="302" height="88"/>
                                 <subviews>
                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="U8w-lC-fk1">
-                                        <rect key="frame" x="9" y="11" width="291" height="0.0"/>
+                                        <rect key="frame" x="12" y="12" width="278" height="0.0"/>
                                         <fontDescription key="fontDescription" type="system" pointSize="13"/>
                                         <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="S3K-5J-eeD">
-                                        <rect key="frame" x="0.0" y="0.0" width="306" height="136"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="302" height="88"/>
                                         <subviews>
                                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="teacher_eva_placeholder" translatesAutoresizingMaskIntoConstraints="NO" id="t9e-tH-rcD">
-                                                <rect key="frame" x="33" y="29" width="79" height="78"/>
+                                                <rect key="frame" x="30" y="5" width="78" height="78"/>
                                                 <constraints>
-                                                    <constraint firstAttribute="width" constant="79" id="MC1-fc-dSA"/>
+                                                    <constraint firstAttribute="width" constant="78" id="MC1-fc-dSA"/>
                                                     <constraint firstAttribute="height" constant="78" id="euG-yw-LPW"/>
                                                 </constraints>
                                             </imageView>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="PXm-gS-uTS">
-                                                <rect key="frame" x="120" y="50.5" width="136" height="35.5"/>
+                                                <rect key="frame" x="118" y="26.5" width="149" height="35.5"/>
                                                 <attributedString key="attributedText">
                                                     <fragment content="课程结束之后记得对学员的表现进行评价哦!">
                                                         <attributes>
@@ -68,24 +68,24 @@
                                         </subviews>
                                         <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         <constraints>
-                                            <constraint firstItem="t9e-tH-rcD" firstAttribute="leading" secondItem="S3K-5J-eeD" secondAttribute="leading" constant="33" id="Bt8-vx-Q3r"/>
+                                            <constraint firstItem="t9e-tH-rcD" firstAttribute="leading" secondItem="S3K-5J-eeD" secondAttribute="leading" constant="30" id="Bt8-vx-Q3r"/>
                                             <constraint firstItem="PXm-gS-uTS" firstAttribute="centerY" secondItem="S3K-5J-eeD" secondAttribute="centerY" id="VCW-8L-Vye"/>
-                                            <constraint firstItem="PXm-gS-uTS" firstAttribute="leading" secondItem="t9e-tH-rcD" secondAttribute="trailing" constant="8" id="XCc-cW-yfS"/>
-                                            <constraint firstAttribute="trailing" secondItem="PXm-gS-uTS" secondAttribute="trailing" constant="50" id="ssV-Ms-RGn"/>
+                                            <constraint firstItem="PXm-gS-uTS" firstAttribute="leading" secondItem="t9e-tH-rcD" secondAttribute="trailing" constant="10" id="XCc-cW-yfS"/>
+                                            <constraint firstAttribute="trailing" secondItem="PXm-gS-uTS" secondAttribute="trailing" constant="35" id="ssV-Ms-RGn"/>
                                             <constraint firstItem="t9e-tH-rcD" firstAttribute="centerY" secondItem="S3K-5J-eeD" secondAttribute="centerY" id="zxk-jN-tYt"/>
                                         </constraints>
                                     </view>
                                 </subviews>
-                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstItem="U8w-lC-fk1" firstAttribute="top" secondItem="UuA-Bs-h8B" secondAttribute="top" constant="11" id="2jE-g6-KEd"/>
+                                    <constraint firstItem="U8w-lC-fk1" firstAttribute="top" secondItem="UuA-Bs-h8B" secondAttribute="top" constant="12" id="2jE-g6-KEd"/>
                                     <constraint firstAttribute="bottom" secondItem="S3K-5J-eeD" secondAttribute="bottom" id="5p5-El-879"/>
                                     <constraint firstItem="S3K-5J-eeD" firstAttribute="top" secondItem="UuA-Bs-h8B" secondAttribute="top" id="7cu-oT-x1T"/>
-                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="U8w-lC-fk1" secondAttribute="bottom" constant="5" id="J8r-c3-V56"/>
+                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="U8w-lC-fk1" secondAttribute="bottom" constant="12" id="J8r-c3-V56"/>
                                     <constraint firstItem="S3K-5J-eeD" firstAttribute="leading" secondItem="UuA-Bs-h8B" secondAttribute="leading" id="JeK-99-vdm"/>
-                                    <constraint firstAttribute="trailing" secondItem="U8w-lC-fk1" secondAttribute="trailing" constant="6" id="KT9-sZ-c8d"/>
+                                    <constraint firstAttribute="trailing" secondItem="U8w-lC-fk1" secondAttribute="trailing" constant="12" id="KT9-sZ-c8d"/>
                                     <constraint firstAttribute="trailing" secondItem="S3K-5J-eeD" secondAttribute="trailing" id="TMQ-F6-3FF"/>
-                                    <constraint firstItem="U8w-lC-fk1" firstAttribute="leading" secondItem="UuA-Bs-h8B" secondAttribute="leading" constant="9" id="d1N-ST-HRP"/>
+                                    <constraint firstItem="U8w-lC-fk1" firstAttribute="leading" secondItem="UuA-Bs-h8B" secondAttribute="leading" constant="12" id="d1N-ST-HRP"/>
                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="88" id="tLV-Ud-O1J"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
@@ -95,23 +95,23 @@
                                 </userDefinedRuntimeAttributes>
                             </view>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="UJk-HT-rTs">
-                                <rect key="frame" x="264" y="2" width="51" height="36"/>
+                                <rect key="frame" x="237" y="0.0" width="78" height="40"/>
                                 <subviews>
                                     <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accompany_edit" translatesAutoresizingMaskIntoConstraints="NO" id="6un-uH-cif">
-                                        <rect key="frame" x="5" y="12" width="12" height="12"/>
+                                        <rect key="frame" x="5" y="13" width="14" height="14"/>
                                         <constraints>
-                                            <constraint firstAttribute="height" constant="12" id="Lqf-AZ-JhY"/>
-                                            <constraint firstAttribute="width" constant="12" id="UrJ-7w-dUq"/>
+                                            <constraint firstAttribute="height" constant="14" id="Lqf-AZ-JhY"/>
+                                            <constraint firstAttribute="width" constant="14" id="UrJ-7w-dUq"/>
                                         </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="RnV-vJ-jr1">
-                                        <rect key="frame" x="22" y="9.5" width="29" height="17"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="评价学员" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="RnV-vJ-jr1">
+                                        <rect key="frame" x="22" y="11.5" width="56" height="17"/>
                                         <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                        <color key="textColor" red="0.1764705882" green="0.78039215689999997" blue="0.66666666669999997" alpha="1" colorSpace="calibratedRGB"/>
+                                        <color key="textColor" red="0.1764705882352941" green="0.7803921568627451" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XZb-Dl-ngJ">
-                                        <rect key="frame" x="0.0" y="0.0" width="51" height="36"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="78" height="40"/>
                                         <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                         <connections>
                                             <action selector="clickAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="JJ5-Ur-gI7"/>
@@ -126,7 +126,7 @@
                                     <constraint firstItem="XZb-Dl-ngJ" firstAttribute="top" secondItem="UJk-HT-rTs" secondAttribute="top" id="XQx-hV-cx7"/>
                                     <constraint firstAttribute="trailing" secondItem="RnV-vJ-jr1" secondAttribute="trailing" id="YBW-ru-faX"/>
                                     <constraint firstItem="6un-uH-cif" firstAttribute="centerY" secondItem="UJk-HT-rTs" secondAttribute="centerY" id="iyJ-ZF-RgL"/>
-                                    <constraint firstItem="RnV-vJ-jr1" firstAttribute="leading" secondItem="6un-uH-cif" secondAttribute="trailing" constant="5" id="nLi-af-Zw1"/>
+                                    <constraint firstItem="RnV-vJ-jr1" firstAttribute="leading" secondItem="6un-uH-cif" secondAttribute="trailing" constant="3" id="nLi-af-Zw1"/>
                                     <constraint firstItem="XZb-Dl-ngJ" firstAttribute="leading" secondItem="UJk-HT-rTs" secondAttribute="leading" id="zHD-kS-ux4"/>
                                     <constraint firstItem="6un-uH-cif" firstAttribute="leading" secondItem="UJk-HT-rTs" secondAttribute="leading" constant="5" id="zcl-H9-khG"/>
                                 </constraints>
@@ -135,16 +135,16 @@
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
                             <constraint firstItem="ksa-Jo-b55" firstAttribute="centerY" secondItem="lLF-ft-OTS" secondAttribute="centerY" id="4cQ-qj-M1R"/>
-                            <constraint firstItem="UuA-Bs-h8B" firstAttribute="leading" secondItem="3vN-Vj-itp" secondAttribute="leading" constant="11" id="4kZ-bC-zD8"/>
-                            <constraint firstItem="lLF-ft-OTS" firstAttribute="leading" secondItem="3vN-Vj-itp" secondAttribute="leading" constant="11" id="B3T-Uw-Liq"/>
-                            <constraint firstItem="lLF-ft-OTS" firstAttribute="top" secondItem="3vN-Vj-itp" secondAttribute="top" constant="13" id="P5a-xn-tTc"/>
+                            <constraint firstItem="UuA-Bs-h8B" firstAttribute="leading" secondItem="3vN-Vj-itp" secondAttribute="leading" constant="12" id="4kZ-bC-zD8"/>
+                            <constraint firstItem="lLF-ft-OTS" firstAttribute="leading" secondItem="3vN-Vj-itp" secondAttribute="leading" constant="12" id="B3T-Uw-Liq"/>
                             <constraint firstAttribute="bottom" secondItem="UuA-Bs-h8B" secondAttribute="bottom" constant="10" id="PEn-6P-tRY"/>
-                            <constraint firstItem="UuA-Bs-h8B" firstAttribute="top" secondItem="ksa-Jo-b55" secondAttribute="bottom" constant="8" id="dfO-BO-Wpw"/>
+                            <constraint firstItem="UuA-Bs-h8B" firstAttribute="top" secondItem="ksa-Jo-b55" secondAttribute="bottom" constant="10" id="dfO-BO-Wpw"/>
                             <constraint firstAttribute="trailing" secondItem="UJk-HT-rTs" secondAttribute="trailing" constant="11" id="eK6-jh-Ydy"/>
-                            <constraint firstAttribute="trailing" secondItem="UuA-Bs-h8B" secondAttribute="trailing" constant="9" id="jWf-Oo-FS8"/>
-                            <constraint firstItem="ksa-Jo-b55" firstAttribute="leading" secondItem="lLF-ft-OTS" secondAttribute="trailing" constant="5" id="lg5-g7-Y09"/>
+                            <constraint firstAttribute="trailing" secondItem="UuA-Bs-h8B" secondAttribute="trailing" constant="12" id="jWf-Oo-FS8"/>
+                            <constraint firstItem="ksa-Jo-b55" firstAttribute="leading" secondItem="lLF-ft-OTS" secondAttribute="trailing" constant="6" id="lg5-g7-Y09"/>
                             <constraint firstItem="UuA-Bs-h8B" firstAttribute="top" secondItem="UJk-HT-rTs" secondAttribute="bottom" id="rQD-LC-naY"/>
                             <constraint firstItem="UJk-HT-rTs" firstAttribute="centerY" secondItem="ksa-Jo-b55" secondAttribute="centerY" id="tB8-XP-tZw"/>
+                            <constraint firstItem="ksa-Jo-b55" firstAttribute="top" secondItem="3vN-Vj-itp" secondAttribute="top" constant="10" id="vgN-lH-jj4"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -166,14 +166,15 @@
                 <outlet property="contentLabel" destination="U8w-lC-fk1" id="u3c-7s-8cR"/>
                 <outlet property="emptyView" destination="S3K-5J-eeD" id="oee-sK-UVk"/>
                 <outlet property="evaluateView" destination="UJk-HT-rTs" id="rFL-6c-wZ1"/>
+                <outlet property="tipsMsg" destination="PXm-gS-uTS" id="zGU-Oz-UAd"/>
             </connections>
             <point key="canvasLocation" x="155.07246376811597" y="127.90178571428571"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
-        <image name="accompany_edit" width="12" height="12"/>
-        <image name="teacher_eva_placeholder" width="79" height="78"/>
+        <image name="accell_left" width="3" height="12"/>
+        <image name="accompany_edit" width="14" height="14"/>
+        <image name="teacher_eva_placeholder" width="78" height="78"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 3 - 3
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyHomeworkCell.m

@@ -56,10 +56,10 @@
 }
 
 - (void)configVideoViewWithSource:(NSMutableArray *)fileArray {
-    CGFloat maxWidth = kScreenWidth - 24 - 20;
-    CGFloat space = 6;
+    CGFloat maxWidth = kScreenWidth - 24 - 24;
+    CGFloat space = 10;
     CGFloat width = (maxWidth - space * 2) / 3.0f;
-    CGFloat height = 70.0f;
+    CGFloat height = 72.0f;
     for (NSInteger i = 0; i < fileArray.count; i++) {
         if (i > 2) {
             return;

+ 27 - 27
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyHomeworkCell.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" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="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="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -11,47 +11,47 @@
     <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="204" id="KGk-i7-Jjw" customClass="AccompanyHomeworkCell">
-            <rect key="frame" x="0.0" y="0.0" width="364" height="204"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="150" id="KGk-i7-Jjw" customClass="AccompanyHomeworkCell">
+            <rect key="frame" x="0.0" y="0.0" width="364" height="150"/>
             <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="364" height="204"/>
+                <rect key="frame" x="0.0" y="0.0" width="364" height="150"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dtq-Yd-b5t">
-                        <rect key="frame" x="14" y="0.0" width="336" height="192"/>
+                        <rect key="frame" x="14" y="0.0" width="336" height="138"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="1fO-1K-g2U">
-                                <rect key="frame" x="11" y="13" width="4" height="14"/>
+                                <rect key="frame" x="12" y="14" width="3" height="12"/>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="作业视频" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sJu-iK-25U">
-                                <rect key="frame" x="20" y="10" width="58" height="20"/>
+                                <rect key="frame" x="20" y="10" width="56" height="20"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="20" id="3jD-tp-tJm"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="EwC-zg-aiZ">
-                                <rect key="frame" x="11" y="38" width="316" height="144"/>
+                                <rect key="frame" x="12" y="40" width="312" height="88"/>
                                 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                             </view>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="0zy-PX-mCI">
-                                <rect key="frame" x="11" y="38" width="316" height="144"/>
+                                <rect key="frame" x="12" y="40" width="312" height="88"/>
                                 <subviews>
                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="O89-iL-xU2">
-                                        <rect key="frame" x="0.0" y="0.0" width="316" height="144"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="312" height="88"/>
                                         <subviews>
                                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="homeworkVideo_placeholder" translatesAutoresizingMaskIntoConstraints="NO" id="bLX-aR-bAP">
-                                                <rect key="frame" x="33" y="33" width="79" height="78"/>
+                                                <rect key="frame" x="30" y="5" width="78" height="78"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" constant="78" id="Hpe-hS-lAP"/>
-                                                    <constraint firstAttribute="width" constant="79" id="aWC-Pr-Ddt"/>
+                                                    <constraint firstAttribute="width" constant="78" id="aWC-Pr-Ddt"/>
                                                 </constraints>
                                             </imageView>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xV1-w2-nqO">
-                                                <rect key="frame" x="120" y="64" width="146" height="16"/>
+                                                <rect key="frame" x="119" y="36" width="158" height="16"/>
                                                 <attributedString key="attributedText">
                                                     <fragment content="学员尚未上传作业视频">
                                                         <attributes>
@@ -66,15 +66,15 @@
                                         </subviews>
                                         <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         <constraints>
-                                            <constraint firstAttribute="trailing" secondItem="xV1-w2-nqO" secondAttribute="trailing" constant="50" id="8Iy-eb-oui"/>
+                                            <constraint firstAttribute="trailing" secondItem="xV1-w2-nqO" secondAttribute="trailing" constant="35" id="8Iy-eb-oui"/>
                                             <constraint firstItem="bLX-aR-bAP" firstAttribute="centerY" secondItem="O89-iL-xU2" secondAttribute="centerY" id="hrH-63-pil"/>
-                                            <constraint firstItem="bLX-aR-bAP" firstAttribute="leading" secondItem="O89-iL-xU2" secondAttribute="leading" constant="33" id="o6S-TQ-YzT"/>
-                                            <constraint firstItem="xV1-w2-nqO" firstAttribute="leading" secondItem="bLX-aR-bAP" secondAttribute="trailing" constant="8" id="r6Y-hX-87F"/>
+                                            <constraint firstItem="bLX-aR-bAP" firstAttribute="leading" secondItem="O89-iL-xU2" secondAttribute="leading" constant="30" id="o6S-TQ-YzT"/>
+                                            <constraint firstItem="xV1-w2-nqO" firstAttribute="leading" secondItem="bLX-aR-bAP" secondAttribute="trailing" constant="11" id="r6Y-hX-87F"/>
                                             <constraint firstItem="xV1-w2-nqO" firstAttribute="centerY" secondItem="O89-iL-xU2" secondAttribute="centerY" id="tJl-Zn-ULW"/>
                                         </constraints>
                                     </view>
                                 </subviews>
-                                <color key="backgroundColor" red="0.96862745100000003" green="0.97254901959999995" blue="0.97647058819999999" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="trailing" secondItem="O89-iL-xU2" secondAttribute="trailing" id="HQp-bb-AtX"/>
                                     <constraint firstItem="O89-iL-xU2" firstAttribute="leading" secondItem="0zy-PX-mCI" secondAttribute="leading" id="S2b-yI-RdW"/>
@@ -93,16 +93,16 @@
                         <constraints>
                             <constraint firstItem="0zy-PX-mCI" firstAttribute="leading" secondItem="EwC-zg-aiZ" secondAttribute="leading" id="6qS-1K-oIf"/>
                             <constraint firstAttribute="bottom" secondItem="0zy-PX-mCI" secondAttribute="bottom" constant="10" id="F6N-7x-aaL"/>
+                            <constraint firstItem="sJu-iK-25U" firstAttribute="top" secondItem="dtq-Yd-b5t" secondAttribute="top" constant="10" id="YnU-KO-22q"/>
                             <constraint firstItem="sJu-iK-25U" firstAttribute="leading" secondItem="1fO-1K-g2U" secondAttribute="trailing" constant="5" id="eUo-qr-eCq"/>
-                            <constraint firstItem="0zy-PX-mCI" firstAttribute="leading" secondItem="dtq-Yd-b5t" secondAttribute="leading" constant="11" id="hOV-oC-FPR"/>
-                            <constraint firstItem="1fO-1K-g2U" firstAttribute="leading" secondItem="dtq-Yd-b5t" secondAttribute="leading" constant="11" id="hrI-hU-381"/>
+                            <constraint firstItem="0zy-PX-mCI" firstAttribute="leading" secondItem="dtq-Yd-b5t" secondAttribute="leading" constant="12" id="hOV-oC-FPR"/>
+                            <constraint firstItem="1fO-1K-g2U" firstAttribute="leading" secondItem="dtq-Yd-b5t" secondAttribute="leading" constant="12" id="hrI-hU-381"/>
                             <constraint firstItem="0zy-PX-mCI" firstAttribute="bottom" secondItem="EwC-zg-aiZ" secondAttribute="bottom" id="jr8-M4-buE"/>
-                            <constraint firstItem="1fO-1K-g2U" firstAttribute="top" secondItem="dtq-Yd-b5t" secondAttribute="top" constant="13" id="oA4-Nz-L8o"/>
                             <constraint firstItem="sJu-iK-25U" firstAttribute="centerY" secondItem="1fO-1K-g2U" secondAttribute="centerY" id="pIn-T0-aBu"/>
                             <constraint firstItem="0zy-PX-mCI" firstAttribute="trailing" secondItem="EwC-zg-aiZ" secondAttribute="trailing" id="pQ1-gj-1pJ"/>
-                            <constraint firstItem="0zy-PX-mCI" firstAttribute="top" secondItem="sJu-iK-25U" secondAttribute="bottom" constant="8" id="rcZ-bR-wHe"/>
+                            <constraint firstItem="0zy-PX-mCI" firstAttribute="top" secondItem="sJu-iK-25U" secondAttribute="bottom" constant="10" id="rcZ-bR-wHe"/>
                             <constraint firstItem="0zy-PX-mCI" firstAttribute="top" secondItem="EwC-zg-aiZ" secondAttribute="top" id="w8p-y6-gXb"/>
-                            <constraint firstAttribute="trailing" secondItem="0zy-PX-mCI" secondAttribute="trailing" constant="9" id="wuB-Na-rgf"/>
+                            <constraint firstAttribute="trailing" secondItem="0zy-PX-mCI" secondAttribute="trailing" constant="12" id="wuB-Na-rgf"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -125,12 +125,12 @@
                 <outlet property="emptyView" destination="0zy-PX-mCI" id="3KA-n7-M42"/>
                 <outlet property="videoContainer" destination="EwC-zg-aiZ" id="5RL-eg-4SG"/>
             </connections>
-            <point key="canvasLocation" x="163.768115942029" y="128.57142857142856"/>
+            <point key="canvasLocation" x="163.768115942029" y="137.61160714285714"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
-        <image name="homeworkVideo_placeholder" width="79" height="78"/>
+        <image name="accell_left" width="3" height="12"/>
+        <image name="homeworkVideo_placeholder" width="78" height="78"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 2 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyNavView.h

@@ -17,6 +17,8 @@ NS_ASSUME_NONNULL_BEGIN
 
 + (instancetype)shareInstance;
 
+- (void)configNavTitle:(NSString *)navTitle;
+
 - (void)navCallback:(AccompanyNavCallback)callback;
 
 - (CGFloat)getViewHeight;

+ 9 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyNavView.m

@@ -9,6 +9,8 @@
 
 @interface AccompanyNavView ()
 
+@property (weak, nonatomic) IBOutlet UILabel *navTitlteLabel;
+
 @property (weak, nonatomic) IBOutlet NSLayoutConstraint *topSpace;
 
 @property (nonatomic, copy) AccompanyNavCallback callback;
@@ -25,6 +27,12 @@
     return view;
 }
 
+- (void)configNavTitle:(NSString *)navTitle {
+    if (![NSString isEmptyString:navTitle]) {
+        self.navTitlteLabel.text = navTitle;
+    }
+}
+
 - (void)navCallback:(AccompanyNavCallback)callback {
     if (callback) {
         self.callback = callback;
@@ -33,7 +41,7 @@
 
 - (CGFloat)getViewHeight {
     UIImage *bgImage = [UIImage imageNamed:@"course_nav"];
-    CGFloat height = bgImage.size.height / bgImage.size.width * kScreenWidth;
+    CGFloat height = bgImage.size.height / bgImage.size.width * KPortraitWidth;
     return height;
 }
 

+ 15 - 11
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyNavView.xib

@@ -1,26 +1,26 @@
 <?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="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
         <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="AccompanyNavView">
-            <rect key="frame" x="0.0" y="0.0" width="479" height="375"/>
+            <rect key="frame" x="0.0" y="0.0" width="479" height="336"/>
             <autoresizingMask key="autoresizingMask"/>
             <subviews>
                 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_nav" translatesAutoresizingMaskIntoConstraints="NO" id="K6E-jb-GFY">
-                    <rect key="frame" x="0.0" y="0.0" width="479" height="367"/>
+                    <rect key="frame" x="0.0" y="0.0" width="479" height="336"/>
                     <constraints>
-                        <constraint firstAttribute="width" secondItem="K6E-jb-GFY" secondAttribute="height" multiplier="377:289" id="l5h-9m-Qan"/>
+                        <constraint firstAttribute="width" secondItem="K6E-jb-GFY" secondAttribute="height" multiplier="375:263" id="l5h-9m-Qan"/>
                     </constraints>
                 </imageView>
                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="BD6-Im-OWN">
-                    <rect key="frame" x="0.0" y="42" width="479" height="44"/>
+                    <rect key="frame" x="0.0" y="44" width="479" height="44"/>
                     <subviews>
                         <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="back_white" translatesAutoresizingMaskIntoConstraints="NO" id="bol-SB-EKJ">
                             <rect key="frame" x="15" y="12" width="12" height="20"/>
@@ -37,8 +37,11 @@
                             </connections>
                         </button>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="课程详情" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vpe-Me-cJ2">
-                            <rect key="frame" x="202.5" y="11" width="74" height="22"/>
-                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="18"/>
+                            <rect key="frame" x="204" y="9.5" width="71.5" height="25"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="25" id="4Cv-A0-qPh"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="18"/>
                             <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                             <nil key="highlightedColor"/>
                         </label>
@@ -60,7 +63,7 @@
                 <constraint firstItem="K6E-jb-GFY" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="1UM-TD-b8M"/>
                 <constraint firstItem="K6E-jb-GFY" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="63P-6n-3iK"/>
                 <constraint firstItem="BD6-Im-OWN" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="W3P-Tp-C5F"/>
-                <constraint firstItem="BD6-Im-OWN" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" constant="42" id="jRm-M1-ghm"/>
+                <constraint firstItem="BD6-Im-OWN" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" constant="44" id="jRm-M1-ghm"/>
                 <constraint firstAttribute="trailing" secondItem="K6E-jb-GFY" secondAttribute="trailing" id="x9r-HK-CnN"/>
                 <constraint firstAttribute="trailing" secondItem="BD6-Im-OWN" secondAttribute="trailing" id="xme-F1-cgu"/>
             </constraints>
@@ -69,13 +72,14 @@
             <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
             <connections>
                 <outlet property="headView" destination="BD6-Im-OWN" id="yag-Wr-Lhf"/>
+                <outlet property="navTitlteLabel" destination="vpe-Me-cJ2" id="tEf-8P-SGo"/>
                 <outlet property="topSpace" destination="jRm-M1-ghm" id="INY-gc-E0f"/>
             </connections>
-            <point key="canvasLocation" x="178.98550724637681" y="-96.763392857142847"/>
+            <point key="canvasLocation" x="178.98550724637681" y="-109.82142857142857"/>
         </view>
     </objects>
     <resources>
         <image name="back_white" width="12" height="20"/>
-        <image name="course_nav" width="377" height="289"/>
+        <image name="course_nav" width="375" height="263"/>
     </resources>
 </document>

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyRemarkCell.h

@@ -13,7 +13,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface AccompanyRemarkCell : UITableViewCell
 
-- (void)configWithRemarkMessage:(NSString *)remarkMessage hasEvaluate:(BOOL)hasEvaluate callback:(HomeworkRemarkCallback)callback;
+- (void)configWithRemarkMessage:(NSString *)remarkMessage hasEvaluate:(BOOL)hasEvaluate hasSubmitHomework:(BOOL)hasSubmit callback:(HomeworkRemarkCallback)callback;
 
 @end
 

+ 29 - 6
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyRemarkCell.m

@@ -9,6 +9,8 @@
 
 @interface AccompanyRemarkCell ()
 
+@property (weak, nonatomic) IBOutlet UILabel *tipsMsg;
+
 @property (weak, nonatomic) IBOutlet UIView *emptyView;
 
 @property (weak, nonatomic) IBOutlet UILabel *contentLabel;
@@ -27,28 +29,49 @@
     self.selectionStyle = UITableViewCellSelectionStyleNone;
 }
 
-- (void)configWithRemarkMessage:(NSString *)evaluateMessage hasEvaluate:(BOOL)hasEvaluate callback:(HomeworkRemarkCallback)callback {
+- (void)configWithRemarkMessage:(NSString *)remarkMessage hasEvaluate:(BOOL)hasEvaluate hasSubmitHomework:(BOOL)hasSubmit callback:(HomeworkRemarkCallback)callback {
     if (callback) {
         self.callback = callback;
     }
+    
     if (hasEvaluate) {
         self.emptyView.hidden = YES;
         self.remarkView.hidden = YES;
-        if (![NSString isEmptyString:evaluateMessage]) {
+        if (![NSString isEmptyString:remarkMessage]) {
             NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
             [paragraphStyle setLineSpacing:4];//调整行间距
-            NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:evaluateMessage attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x333333)}];
+            NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:remarkMessage attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x333333)}];
             self.contentLabel.attributedText = attr;
         }
         else {
-            self.contentLabel.text = @"";
+            self.contentLabel.attributedText = nil;
         }
     }
     else {
         self.emptyView.hidden = NO;
-        self.remarkView.hidden = NO;
-        self.contentLabel.text = @"";
+        if (hasSubmit) {
+            self.remarkView.hidden = NO;
+        }
+        else {
+            self.remarkView.hidden = YES;
+        }
+        
+        self.contentLabel.attributedText = nil;
+    }
+    
+    NSString *tipsDesc = nil;
+    if (hasSubmit) {
+        tipsDesc = @"您尚未点评作业";
+    }
+    else {
+        tipsDesc = @"暂无作业可点评";
     }
+    
+    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
+    [paragraphStyle setLineSpacing:4];//调整行间距
+    NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:tipsDesc attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x999999)}];
+    self.tipsMsg.attributedText = attr;
+    
 }
 - (IBAction)remarkAction:(id)sender {
     if (self.callback) {

+ 44 - 43
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyRemarkCell.xib

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
     <device id="retina6_1" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22504"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -11,49 +11,49 @@
     <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="221" id="KGk-i7-Jjw" customClass="AccompanyRemarkCell">
-            <rect key="frame" x="0.0" y="0.0" width="375" height="221"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="150" id="KGk-i7-Jjw" customClass="AccompanyRemarkCell">
+            <rect key="frame" x="0.0" y="0.0" width="375" height="150"/>
             <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="375" height="221"/>
+                <rect key="frame" x="0.0" y="0.0" width="375" height="150"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qyw-41-OgZ">
-                        <rect key="frame" x="14" y="0.0" width="347" height="209"/>
+                        <rect key="frame" x="14" y="0.0" width="347" height="138"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="Nmt-3B-GQh">
-                                <rect key="frame" x="11" y="13" width="4" height="14"/>
+                                <rect key="frame" x="12" y="14" width="3" height="12"/>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="作业点评" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Lof-Tc-krl">
-                                <rect key="frame" x="20" y="10" width="58" height="20"/>
+                                <rect key="frame" x="21" y="10" width="56" height="20"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="20" id="FEC-1Y-gGm"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ehC-4r-0Vt">
-                                <rect key="frame" x="11" y="38" width="327" height="161"/>
+                                <rect key="frame" x="12" y="40" width="323" height="88"/>
                                 <subviews>
                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fGD-VY-opX">
-                                        <rect key="frame" x="9" y="11" width="312" height="0.0"/>
+                                        <rect key="frame" x="12" y="12" width="299" height="0.0"/>
                                         <fontDescription key="fontDescription" type="system" pointSize="13"/>
                                         <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="W9z-ye-Ww2">
-                                        <rect key="frame" x="0.0" y="0.0" width="327" height="161"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="323" height="88"/>
                                         <subviews>
                                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="homework_eva" translatesAutoresizingMaskIntoConstraints="NO" id="44c-14-lXI">
-                                                <rect key="frame" x="33" y="41.5" width="79" height="78"/>
+                                                <rect key="frame" x="30" y="5" width="78" height="78"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" constant="78" id="3IW-Vv-GOP"/>
-                                                    <constraint firstAttribute="width" constant="79" id="bln-k4-dPI"/>
+                                                    <constraint firstAttribute="width" constant="78" id="bln-k4-dPI"/>
                                                 </constraints>
                                             </imageView>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="您尚未点评作业" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="M7Y-he-HQe">
-                                                <rect key="frame" x="120" y="73" width="157" height="15.5"/>
+                                                <rect key="frame" x="119" y="36.5" width="169" height="15.5"/>
                                                 <fontDescription key="fontDescription" name="STSongti-SC-Regular" family="Songti SC" pointSize="13"/>
                                                 <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
                                                 <nil key="highlightedColor"/>
@@ -61,22 +61,22 @@
                                         </subviews>
                                         <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         <constraints>
-                                            <constraint firstItem="M7Y-he-HQe" firstAttribute="leading" secondItem="44c-14-lXI" secondAttribute="trailing" constant="8" id="1Ag-bV-qSy"/>
-                                            <constraint firstAttribute="trailing" secondItem="M7Y-he-HQe" secondAttribute="trailing" constant="50" id="QeU-Ah-bkP"/>
+                                            <constraint firstItem="M7Y-he-HQe" firstAttribute="leading" secondItem="44c-14-lXI" secondAttribute="trailing" constant="11" id="1Ag-bV-qSy"/>
+                                            <constraint firstAttribute="trailing" secondItem="M7Y-he-HQe" secondAttribute="trailing" constant="35" id="QeU-Ah-bkP"/>
                                             <constraint firstItem="44c-14-lXI" firstAttribute="centerY" secondItem="W9z-ye-Ww2" secondAttribute="centerY" id="bQB-oC-9NI"/>
                                             <constraint firstItem="M7Y-he-HQe" firstAttribute="centerY" secondItem="W9z-ye-Ww2" secondAttribute="centerY" id="khM-b5-QrM"/>
-                                            <constraint firstItem="44c-14-lXI" firstAttribute="leading" secondItem="W9z-ye-Ww2" secondAttribute="leading" constant="33" id="vq5-de-jPS"/>
+                                            <constraint firstItem="44c-14-lXI" firstAttribute="leading" secondItem="W9z-ye-Ww2" secondAttribute="leading" constant="30" id="vq5-de-jPS"/>
                                         </constraints>
                                     </view>
                                 </subviews>
-                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstItem="fGD-VY-opX" firstAttribute="top" secondItem="ehC-4r-0Vt" secondAttribute="top" constant="11" id="5qP-C3-ls4"/>
-                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="fGD-VY-opX" secondAttribute="bottom" constant="5" id="97b-0p-hN7"/>
-                                    <constraint firstItem="fGD-VY-opX" firstAttribute="leading" secondItem="ehC-4r-0Vt" secondAttribute="leading" constant="9" id="HQP-RH-aK1"/>
+                                    <constraint firstItem="fGD-VY-opX" firstAttribute="top" secondItem="ehC-4r-0Vt" secondAttribute="top" constant="12" id="5qP-C3-ls4"/>
+                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="fGD-VY-opX" secondAttribute="bottom" constant="12" id="97b-0p-hN7"/>
+                                    <constraint firstItem="fGD-VY-opX" firstAttribute="leading" secondItem="ehC-4r-0Vt" secondAttribute="leading" constant="12" id="HQP-RH-aK1"/>
                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="88" id="L9X-hq-5Cj"/>
                                     <constraint firstItem="W9z-ye-Ww2" firstAttribute="top" secondItem="ehC-4r-0Vt" secondAttribute="top" id="LmU-3Z-TK6"/>
-                                    <constraint firstAttribute="trailing" secondItem="fGD-VY-opX" secondAttribute="trailing" constant="6" id="NvZ-6s-hae"/>
+                                    <constraint firstAttribute="trailing" secondItem="fGD-VY-opX" secondAttribute="trailing" constant="12" id="NvZ-6s-hae"/>
                                     <constraint firstItem="W9z-ye-Ww2" firstAttribute="leading" secondItem="ehC-4r-0Vt" secondAttribute="leading" id="TG2-AT-S1D"/>
                                     <constraint firstAttribute="trailing" secondItem="W9z-ye-Ww2" secondAttribute="trailing" id="b8y-80-QsT"/>
                                     <constraint firstAttribute="bottom" secondItem="W9z-ye-Ww2" secondAttribute="bottom" id="eNf-PG-4d5"/>
@@ -88,23 +88,23 @@
                                 </userDefinedRuntimeAttributes>
                             </view>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZfR-Jo-QQv">
-                                <rect key="frame" x="285" y="2" width="51" height="36"/>
+                                <rect key="frame" x="257" y="0.0" width="78" height="40"/>
                                 <subviews>
                                     <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accompany_edit" translatesAutoresizingMaskIntoConstraints="NO" id="Ys6-Pq-GnK">
-                                        <rect key="frame" x="5" y="12" width="12" height="12"/>
+                                        <rect key="frame" x="5" y="13" width="14" height="14"/>
                                         <constraints>
-                                            <constraint firstAttribute="height" constant="12" id="QJd-3F-Mmd"/>
-                                            <constraint firstAttribute="width" constant="12" id="b4d-Cq-8gc"/>
+                                            <constraint firstAttribute="height" constant="14" id="QJd-3F-Mmd"/>
+                                            <constraint firstAttribute="width" constant="14" id="b4d-Cq-8gc"/>
                                         </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="ymL-Uv-SHc">
-                                        <rect key="frame" x="22" y="9.5" width="29" height="17"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="点评作业" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ymL-Uv-SHc">
+                                        <rect key="frame" x="22" y="11.5" width="56" height="17"/>
                                         <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                        <color key="textColor" red="0.1764705882" green="0.78039215689999997" blue="0.66666666669999997" alpha="1" colorSpace="calibratedRGB"/>
+                                        <color key="textColor" red="0.1764705882352941" green="0.7803921568627451" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="WT0-J3-ujJ">
-                                        <rect key="frame" x="0.0" y="0.0" width="51" height="36"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="78" height="40"/>
                                         <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                         <connections>
                                             <action selector="remarkAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="IRJ-8e-3i2"/>
@@ -115,7 +115,7 @@
                                 <constraints>
                                     <constraint firstItem="WT0-J3-ujJ" firstAttribute="leading" secondItem="ZfR-Jo-QQv" secondAttribute="leading" id="55W-i9-V5F"/>
                                     <constraint firstAttribute="trailing" secondItem="ymL-Uv-SHc" secondAttribute="trailing" id="9KY-ZP-Zfh"/>
-                                    <constraint firstItem="ymL-Uv-SHc" firstAttribute="leading" secondItem="Ys6-Pq-GnK" secondAttribute="trailing" constant="5" id="Nyz-q6-HVE"/>
+                                    <constraint firstItem="ymL-Uv-SHc" firstAttribute="leading" secondItem="Ys6-Pq-GnK" secondAttribute="trailing" constant="3" id="Nyz-q6-HVE"/>
                                     <constraint firstItem="Ys6-Pq-GnK" firstAttribute="leading" secondItem="ZfR-Jo-QQv" secondAttribute="leading" constant="5" id="Rlg-vV-FVR"/>
                                     <constraint firstItem="WT0-J3-ujJ" firstAttribute="top" secondItem="ZfR-Jo-QQv" secondAttribute="top" id="Shr-cS-4Ar"/>
                                     <constraint firstAttribute="trailing" secondItem="WT0-J3-ujJ" secondAttribute="trailing" id="TTu-BB-ARp"/>
@@ -127,17 +127,17 @@
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
-                            <constraint firstItem="Nmt-3B-GQh" firstAttribute="leading" secondItem="qyw-41-OgZ" secondAttribute="leading" constant="11" id="1vg-Xu-dly"/>
+                            <constraint firstItem="Lof-Tc-krl" firstAttribute="top" secondItem="qyw-41-OgZ" secondAttribute="top" constant="10" id="0Qi-RE-yzr"/>
+                            <constraint firstItem="Nmt-3B-GQh" firstAttribute="leading" secondItem="qyw-41-OgZ" secondAttribute="leading" constant="12" id="1vg-Xu-dly"/>
                             <constraint firstItem="Lof-Tc-krl" firstAttribute="centerY" secondItem="Nmt-3B-GQh" secondAttribute="centerY" id="855-0U-TnZ"/>
-                            <constraint firstAttribute="trailing" secondItem="ZfR-Jo-QQv" secondAttribute="trailing" constant="11" id="Gyh-Zw-dIZ"/>
-                            <constraint firstItem="Nmt-3B-GQh" firstAttribute="top" secondItem="qyw-41-OgZ" secondAttribute="top" constant="13" id="Hlw-dV-esz"/>
-                            <constraint firstItem="Lof-Tc-krl" firstAttribute="leading" secondItem="Nmt-3B-GQh" secondAttribute="trailing" constant="5" id="U3l-C1-sla"/>
-                            <constraint firstAttribute="trailing" secondItem="ehC-4r-0Vt" secondAttribute="trailing" constant="9" id="UGg-Vv-yct"/>
+                            <constraint firstAttribute="trailing" secondItem="ZfR-Jo-QQv" secondAttribute="trailing" constant="12" id="Gyh-Zw-dIZ"/>
+                            <constraint firstItem="Lof-Tc-krl" firstAttribute="leading" secondItem="Nmt-3B-GQh" secondAttribute="trailing" constant="6" id="U3l-C1-sla"/>
+                            <constraint firstAttribute="trailing" secondItem="ehC-4r-0Vt" secondAttribute="trailing" constant="12" id="UGg-Vv-yct"/>
                             <constraint firstItem="ZfR-Jo-QQv" firstAttribute="centerY" secondItem="Lof-Tc-krl" secondAttribute="centerY" id="UaP-aW-gTG"/>
                             <constraint firstItem="ehC-4r-0Vt" firstAttribute="top" secondItem="ZfR-Jo-QQv" secondAttribute="bottom" id="bV3-FA-Wmf"/>
-                            <constraint firstItem="ehC-4r-0Vt" firstAttribute="top" secondItem="Lof-Tc-krl" secondAttribute="bottom" constant="8" id="c4A-7V-3jf"/>
+                            <constraint firstItem="ehC-4r-0Vt" firstAttribute="top" secondItem="Lof-Tc-krl" secondAttribute="bottom" constant="10" id="c4A-7V-3jf"/>
                             <constraint firstAttribute="bottom" secondItem="ehC-4r-0Vt" secondAttribute="bottom" constant="10" id="ghc-VL-2mE"/>
-                            <constraint firstItem="ehC-4r-0Vt" firstAttribute="leading" secondItem="qyw-41-OgZ" secondAttribute="leading" constant="11" id="lg4-q3-Py7"/>
+                            <constraint firstItem="ehC-4r-0Vt" firstAttribute="leading" secondItem="qyw-41-OgZ" secondAttribute="leading" constant="12" id="lg4-q3-Py7"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -159,14 +159,15 @@
                 <outlet property="contentLabel" destination="fGD-VY-opX" id="2nt-wP-TPs"/>
                 <outlet property="emptyView" destination="W9z-ye-Ww2" id="RYX-4Q-Ecb"/>
                 <outlet property="remarkView" destination="ZfR-Jo-QQv" id="QpK-Xw-7zk"/>
+                <outlet property="tipsMsg" destination="M7Y-he-HQe" id="TPU-Dr-AW8"/>
             </connections>
-            <point key="canvasLocation" x="131.15942028985509" y="101.45089285714285"/>
+            <point key="canvasLocation" x="131.15942028985509" y="101.11607142857143"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
-        <image name="accompany_edit" width="12" height="12"/>
-        <image name="homework_eva" width="79" height="78"/>
+        <image name="accell_left" width="3" height="12"/>
+        <image name="accompany_edit" width="14" height="14"/>
+        <image name="homework_eva" width="78" height="78"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyStudentEvaCell.h

@@ -11,7 +11,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface AccompanyStudentEvaCell : UITableViewCell
 
-- (void)configWithEvaluateMessage:(NSString *)evaluateMessage starNum:(NSInteger)starNum hasEvaluate:(BOOL)hasEvaluate;
+- (void)configWithEvaluateMessage:(NSString *)evaluateMessage courseStatus:(NSString *)courseStatus starNum:(NSInteger)starNum hasEvaluate:(BOOL)hasEvaluate;
 
 @end
 

+ 12 - 6
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyStudentEvaCell.m

@@ -10,6 +10,8 @@
 
 @interface AccompanyStudentEvaCell ()
 
+@property (weak, nonatomic) IBOutlet UILabel *tipsMsg;
+
 @property (weak, nonatomic) IBOutlet UIView *emptyView;
 
 @property (weak, nonatomic) IBOutlet KSStarView *starView;
@@ -25,13 +27,13 @@
     // Initialization code
     self.selectionStyle = UITableViewCellSelectionStyleNone;
     self.starView.allowMark = NO;
+    self.starView.hidden = YES; // 隐藏星级
 }
 
-- (void)configWithEvaluateMessage:(NSString *)evaluateMessage starNum:(NSInteger)starNum hasEvaluate:(BOOL)hasEvaluate {
+- (void)configWithEvaluateMessage:(NSString *)evaluateMessage courseStatus:(NSString *)courseStatus starNum:(NSInteger)starNum hasEvaluate:(BOOL)hasEvaluate {
+    
     if (hasEvaluate) {
         self.emptyView.hidden = YES;
-        self.starView.hidden = NO;
-        self.starView.rate = starNum / 5.0f;
         if (![NSString isEmptyString:evaluateMessage]) {
             NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
             [paragraphStyle setLineSpacing:4];//调整行间距
@@ -39,14 +41,18 @@
             self.contentLabel.attributedText = attr;
         }
         else {
-            self.contentLabel.text = @"";
+            self.contentLabel.attributedText = nil;
         }
     }
     else {
-        self.starView.hidden = YES;
         self.emptyView.hidden = NO;
-        self.contentLabel.text = @"";
+        self.contentLabel.attributedText = nil;
     }
+    NSString *tipsDesc = @"学员尚未对您进行评价";
+    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
+    [paragraphStyle setLineSpacing:4];//调整行间距
+    NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:tipsDesc attributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont systemFontOfSize:13.0f],NSForegroundColorAttributeName:HexRGB(0x999999)}];
+    self.tipsMsg.attributedText = attr;
 }
 
 - (void)setSelected:(BOOL)selected animated:(BOOL)animated {

+ 44 - 42
KulexiuForTeacher/KulexiuForTeacher/Module/Course/AccompanyCourse/View/AccompanyStudentEvaCell.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" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="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="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -12,48 +12,48 @@
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
         <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="174" id="KGk-i7-Jjw" customClass="AccompanyStudentEvaCell">
-            <rect key="frame" x="0.0" y="0.0" width="375" height="149"/>
+            <rect key="frame" x="0.0" y="0.0" width="375" height="150"/>
             <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="375" height="149"/>
+                <rect key="frame" x="0.0" y="0.0" width="375" height="150"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Yyc-jU-e8w">
-                        <rect key="frame" x="14" y="0.0" width="347" height="137"/>
+                        <rect key="frame" x="14" y="0.0" width="347" height="138"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="ltT-kf-P7C">
-                                <rect key="frame" x="11" y="13" width="4" height="14"/>
+                                <rect key="frame" x="12" y="14" width="3" height="12"/>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="学员评价" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dMT-VK-l9k">
-                                <rect key="frame" x="20" y="10" width="58" height="20"/>
+                                <rect key="frame" x="21" y="10" width="56" height="20"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="20" id="eeO-LX-E6a"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CS9-1I-B48">
-                                <rect key="frame" x="11" y="38" width="327" height="89"/>
+                                <rect key="frame" x="12" y="40" width="323" height="88"/>
                                 <subviews>
                                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="EsB-Oa-Z2T">
-                                        <rect key="frame" x="9" y="11" width="312" height="0.0"/>
+                                        <rect key="frame" x="12" y="12" width="299" height="0.0"/>
                                         <fontDescription key="fontDescription" type="system" pointSize="13"/>
                                         <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hQW-1x-wjy">
-                                        <rect key="frame" x="0.0" y="0.0" width="327" height="89"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="323" height="88"/>
                                         <subviews>
                                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="student_eva_placeholder" translatesAutoresizingMaskIntoConstraints="NO" id="02q-N4-kCG">
-                                                <rect key="frame" x="33" y="5.5" width="79" height="78"/>
+                                                <rect key="frame" x="30" y="5" width="78" height="78"/>
                                                 <constraints>
-                                                    <constraint firstAttribute="width" constant="79" id="MlY-YJ-AOo"/>
+                                                    <constraint firstAttribute="width" constant="78" id="MlY-YJ-AOo"/>
                                                     <constraint firstAttribute="height" constant="78" id="oCq-z1-HJA"/>
                                                 </constraints>
                                             </imageView>
                                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wp3-cL-Ihn">
-                                                <rect key="frame" x="120" y="37" width="157" height="15.5"/>
+                                                <rect key="frame" x="119" y="36.5" width="169" height="15.5"/>
                                                 <attributedString key="attributedText">
                                                     <fragment content="学员尚未对您进行评价">
                                                         <attributes>
@@ -69,24 +69,24 @@
                                         <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         <constraints>
                                             <constraint firstItem="02q-N4-kCG" firstAttribute="centerY" secondItem="hQW-1x-wjy" secondAttribute="centerY" id="BgW-k9-Ivr"/>
-                                            <constraint firstItem="wp3-cL-Ihn" firstAttribute="leading" secondItem="02q-N4-kCG" secondAttribute="trailing" constant="8" id="Dgs-Qc-Mif"/>
+                                            <constraint firstItem="wp3-cL-Ihn" firstAttribute="leading" secondItem="02q-N4-kCG" secondAttribute="trailing" constant="11" id="Dgs-Qc-Mif"/>
                                             <constraint firstItem="wp3-cL-Ihn" firstAttribute="centerY" secondItem="hQW-1x-wjy" secondAttribute="centerY" id="JKg-4q-J7B"/>
-                                            <constraint firstItem="02q-N4-kCG" firstAttribute="leading" secondItem="hQW-1x-wjy" secondAttribute="leading" constant="33" id="ber-ic-edm"/>
+                                            <constraint firstItem="02q-N4-kCG" firstAttribute="leading" secondItem="hQW-1x-wjy" secondAttribute="leading" constant="30" id="ber-ic-edm"/>
                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="88" id="dsX-S1-b1e"/>
-                                            <constraint firstAttribute="trailing" secondItem="wp3-cL-Ihn" secondAttribute="trailing" constant="50" id="fTl-x6-xY9"/>
+                                            <constraint firstAttribute="trailing" secondItem="wp3-cL-Ihn" secondAttribute="trailing" constant="35" id="fTl-x6-xY9"/>
                                         </constraints>
                                     </view>
                                 </subviews>
-                                <color key="backgroundColor" red="0.96862745100000003" green="0.97254901959999995" blue="0.97647058819999999" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="0.96862745098039216" green="0.97254901960784312" blue="0.97647058823529409" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstAttribute="trailing" secondItem="EsB-Oa-Z2T" secondAttribute="trailing" constant="6" id="5xt-b6-PGZ"/>
+                                    <constraint firstAttribute="trailing" secondItem="EsB-Oa-Z2T" secondAttribute="trailing" constant="12" id="5xt-b6-PGZ"/>
                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="88" id="7RR-SG-Yi9"/>
                                     <constraint firstAttribute="bottom" secondItem="hQW-1x-wjy" secondAttribute="bottom" id="GJe-TE-bSx"/>
-                                    <constraint firstItem="EsB-Oa-Z2T" firstAttribute="leading" secondItem="CS9-1I-B48" secondAttribute="leading" constant="9" id="GLF-Re-FzW"/>
+                                    <constraint firstItem="EsB-Oa-Z2T" firstAttribute="leading" secondItem="CS9-1I-B48" secondAttribute="leading" constant="12" id="GLF-Re-FzW"/>
                                     <constraint firstItem="hQW-1x-wjy" firstAttribute="top" secondItem="CS9-1I-B48" secondAttribute="top" id="O7C-Vg-7Zq"/>
                                     <constraint firstItem="hQW-1x-wjy" firstAttribute="leading" secondItem="CS9-1I-B48" secondAttribute="leading" id="a1e-ZX-t0w"/>
-                                    <constraint firstItem="EsB-Oa-Z2T" firstAttribute="top" secondItem="CS9-1I-B48" secondAttribute="top" constant="11" id="jYU-qf-rxd"/>
-                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="EsB-Oa-Z2T" secondAttribute="bottom" constant="5" id="pqA-5s-uyS"/>
+                                    <constraint firstItem="EsB-Oa-Z2T" firstAttribute="top" secondItem="CS9-1I-B48" secondAttribute="top" constant="12" id="jYU-qf-rxd"/>
+                                    <constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="EsB-Oa-Z2T" secondAttribute="bottom" constant="12" id="pqA-5s-uyS"/>
                                     <constraint firstAttribute="trailing" secondItem="hQW-1x-wjy" secondAttribute="trailing" id="rAJ-YZ-OLt"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
@@ -96,23 +96,23 @@
                                 </userDefinedRuntimeAttributes>
                             </view>
                             <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9CO-NU-fBc">
-                                <rect key="frame" x="285" y="2" width="51" height="36"/>
+                                <rect key="frame" x="258" y="0.0" width="78" height="40"/>
                                 <subviews>
                                     <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accompany_edit" translatesAutoresizingMaskIntoConstraints="NO" id="Eli-XV-2VU">
-                                        <rect key="frame" x="5" y="12" width="12" height="12"/>
+                                        <rect key="frame" x="5" y="13" width="14" height="14"/>
                                         <constraints>
-                                            <constraint firstAttribute="height" constant="12" id="gus-sG-BTd"/>
-                                            <constraint firstAttribute="width" constant="12" id="tlq-ny-kG5"/>
+                                            <constraint firstAttribute="height" constant="14" id="gus-sG-BTd"/>
+                                            <constraint firstAttribute="width" constant="14" id="tlq-ny-kG5"/>
                                         </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="gWn-lJ-nkZ">
-                                        <rect key="frame" x="22" y="9.5" width="29" height="17"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="评价老师" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gWn-lJ-nkZ">
+                                        <rect key="frame" x="22" y="11.5" width="56" height="17"/>
                                         <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
-                                        <color key="textColor" red="0.1764705882" green="0.78039215689999997" blue="0.66666666669999997" alpha="1" colorSpace="calibratedRGB"/>
+                                        <color key="textColor" red="0.1764705882352941" green="0.7803921568627451" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eYV-h9-uyL">
-                                        <rect key="frame" x="0.0" y="0.0" width="51" height="36"/>
+                                        <rect key="frame" x="0.0" y="0.0" width="78" height="40"/>
                                         <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                     </button>
                                 </subviews>
@@ -124,13 +124,13 @@
                                     <constraint firstItem="eYV-h9-uyL" firstAttribute="top" secondItem="9CO-NU-fBc" secondAttribute="top" id="Fg9-wP-EMQ"/>
                                     <constraint firstItem="eYV-h9-uyL" firstAttribute="leading" secondItem="9CO-NU-fBc" secondAttribute="leading" id="Inr-LN-A0o"/>
                                     <constraint firstItem="Eli-XV-2VU" firstAttribute="centerY" secondItem="9CO-NU-fBc" secondAttribute="centerY" id="Iv4-mH-G9a"/>
-                                    <constraint firstItem="gWn-lJ-nkZ" firstAttribute="leading" secondItem="Eli-XV-2VU" secondAttribute="trailing" constant="5" id="S23-UK-R61"/>
+                                    <constraint firstItem="gWn-lJ-nkZ" firstAttribute="leading" secondItem="Eli-XV-2VU" secondAttribute="trailing" constant="3" id="S23-UK-R61"/>
                                     <constraint firstAttribute="bottom" secondItem="eYV-h9-uyL" secondAttribute="bottom" id="Sbx-4c-hXn"/>
                                     <constraint firstAttribute="trailing" secondItem="gWn-lJ-nkZ" secondAttribute="trailing" id="UW7-ac-w43"/>
                                 </constraints>
                             </view>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ay0-L4-b3f" customClass="KSStarView">
-                                <rect key="frame" x="84" y="10.5" width="95" height="19"/>
+                            <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ay0-L4-b3f" customClass="KSStarView">
+                                <rect key="frame" x="83" y="10.5" width="95" height="19"/>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="19" id="eW0-fj-mRq"/>
@@ -141,17 +141,18 @@
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
                             <constraint firstAttribute="trailing" secondItem="9CO-NU-fBc" secondAttribute="trailing" constant="11" id="3JL-Rb-GL4"/>
-                            <constraint firstItem="ltT-kf-P7C" firstAttribute="top" secondItem="Yyc-jU-e8w" secondAttribute="top" constant="13" id="7Pc-Cn-W9q"/>
-                            <constraint firstItem="CS9-1I-B48" firstAttribute="leading" secondItem="Yyc-jU-e8w" secondAttribute="leading" constant="11" id="Gq6-4H-5L7"/>
+                            <constraint firstItem="ltT-kf-P7C" firstAttribute="top" secondItem="Yyc-jU-e8w" secondAttribute="top" constant="14" id="7Pc-Cn-W9q"/>
+                            <constraint firstItem="CS9-1I-B48" firstAttribute="leading" secondItem="Yyc-jU-e8w" secondAttribute="leading" constant="12" id="Gq6-4H-5L7"/>
                             <constraint firstItem="9CO-NU-fBc" firstAttribute="centerY" secondItem="dMT-VK-l9k" secondAttribute="centerY" id="MIb-jS-DNJ"/>
-                            <constraint firstAttribute="trailing" secondItem="CS9-1I-B48" secondAttribute="trailing" constant="9" id="Nlt-hE-n6i"/>
+                            <constraint firstAttribute="trailing" secondItem="CS9-1I-B48" secondAttribute="trailing" constant="12" id="Nlt-hE-n6i"/>
                             <constraint firstAttribute="bottom" secondItem="CS9-1I-B48" secondAttribute="bottom" constant="10" id="Qcs-io-hc9"/>
                             <constraint firstItem="CS9-1I-B48" firstAttribute="top" secondItem="9CO-NU-fBc" secondAttribute="bottom" id="Yue-o1-bKx"/>
-                            <constraint firstItem="ltT-kf-P7C" firstAttribute="leading" secondItem="Yyc-jU-e8w" secondAttribute="leading" constant="11" id="gf9-Gz-x7R"/>
+                            <constraint firstItem="ltT-kf-P7C" firstAttribute="leading" secondItem="Yyc-jU-e8w" secondAttribute="leading" constant="12" id="gf9-Gz-x7R"/>
                             <constraint firstItem="ay0-L4-b3f" firstAttribute="centerY" secondItem="dMT-VK-l9k" secondAttribute="centerY" id="jIr-kE-YQZ"/>
-                            <constraint firstItem="dMT-VK-l9k" firstAttribute="leading" secondItem="ltT-kf-P7C" secondAttribute="trailing" constant="5" id="nVb-RO-bhR"/>
+                            <constraint firstItem="dMT-VK-l9k" firstAttribute="leading" secondItem="ltT-kf-P7C" secondAttribute="trailing" constant="6" id="nVb-RO-bhR"/>
                             <constraint firstItem="ay0-L4-b3f" firstAttribute="leading" secondItem="dMT-VK-l9k" secondAttribute="trailing" constant="6" id="utq-Wc-6C9"/>
-                            <constraint firstItem="CS9-1I-B48" firstAttribute="top" secondItem="dMT-VK-l9k" secondAttribute="bottom" constant="8" id="vO4-d5-COg"/>
+                            <constraint firstItem="dMT-VK-l9k" firstAttribute="top" secondItem="Yyc-jU-e8w" secondAttribute="top" constant="10" id="uzg-CF-akW"/>
+                            <constraint firstItem="CS9-1I-B48" firstAttribute="top" secondItem="dMT-VK-l9k" secondAttribute="bottom" constant="10" id="vO4-d5-COg"/>
                             <constraint firstItem="dMT-VK-l9k" firstAttribute="centerY" secondItem="ltT-kf-P7C" secondAttribute="centerY" id="zc4-aL-rgC"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
@@ -174,14 +175,15 @@
                 <outlet property="contentLabel" destination="EsB-Oa-Z2T" id="1cB-Q6-0hE"/>
                 <outlet property="emptyView" destination="hQW-1x-wjy" id="6lZ-04-MNt"/>
                 <outlet property="starView" destination="ay0-L4-b3f" id="CV2-cE-TLq"/>
+                <outlet property="tipsMsg" destination="wp3-cL-Ihn" id="Skw-Tq-n0u"/>
             </connections>
             <point key="canvasLocation" x="131.15942028985509" y="120.87053571428571"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
-        <image name="accompany_edit" width="12" height="12"/>
-        <image name="student_eva_placeholder" width="79" height="78"/>
+        <image name="accell_left" width="3" height="12"/>
+        <image name="accompany_edit" width="14" height="14"/>
+        <image name="student_eva_placeholder" width="78" height="78"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Controller/MusicRoomGroupViewController.m

@@ -269,7 +269,7 @@
     if (!_navView) {
         _navView = [CourseGroupNavView sharedInstance];
         MJWeakSelf;
-        [_navView configWithNavTitle:@"琴房课详情" callback:^{
+        [_navView configWithNavTitle:@"课程组详情" callback:^{
             [weakSelf backAction];
         }];
     }

+ 43 - 14
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Controller/MusicRoomViewController.m

@@ -14,12 +14,14 @@
 #import "OnlineClassManager.h"
 #import "AccompanyArrangeCell.h"
 #import "MusicRoomStudentCell.h"
-#import "AccompanyAlertView.h"
+#import "CourseGroupPlanAlertView.h"
 #import "KSGroupConversationController.h"
 #import "HomeworkDetailViewController.h"
+#import "CourseGroupNavView.h"
 
 @interface MusicRoomViewController ()<UITableViewDelegate,UITableViewDataSource>
 
+@property (nonatomic, strong) CourseGroupNavView *navView;
 
 @property (nonatomic, assign) NSInteger joinRoomBeforeTime; // 上课开始时间
 
@@ -35,7 +37,7 @@
 
 @property (nonatomic, strong) AccompanyDetailBottomView *bottomView;
 
-@property (nonatomic, strong) AccompanyAlertView *alertView;
+@property (nonatomic, strong) CourseGroupPlanAlertView *alertView;
 
 @property (nonatomic, strong) NSMutableArray *studentArray;
 
@@ -46,16 +48,33 @@
 - (void)viewDidLoad {
     [super viewDidLoad];
     // Do any additional setup after loading the view.
+    self.ks_prefersNavigationBarHidden = YES;
+    
     [self allocTitle:@"课程详情"];
     [self configUI];
 }
 
 - (void)configUI {
+    [self.scrollView removeFromSuperview];
+    
+    UIImage *bgImage = [UIImage imageNamed:@"homework_detail_bg"];
+    CGFloat height = bgImage.size.height / bgImage.size.width * KPortraitWidth;
+    UIImageView *imageView = [[UIImageView alloc] initWithImage:bgImage];
+    imageView.frame = CGRectMake(0, 0, KPortraitWidth, height);
+    [self.view addSubview:imageView];
+    
+    [self.view addSubview:self.navView];
+    CGFloat navHeight = [CourseGroupNavView getViewHeight];
+    [self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.right.top.mas_equalTo(self.view);
+        make.height.mas_equalTo(navHeight);
+    }];
+    
     [self.view addSubview:self.tableView];
     [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.left.right.mas_equalTo(self.view);
-        make.top.mas_equalTo(self.view.mas_top);
-        make.bottom.mas_equalTo(self.view.mas_bottom).offset(-iPhoneXSafeBottomMargin);
+        make.top.mas_equalTo(self.navView.mas_bottom);
+        make.bottom.mas_equalTo(self.view.mas_bottom);
     }];
     
     CGFloat bottomHeight = [AccompanyDetailBottomView getViewHeight];
@@ -156,7 +175,7 @@
         AccompanyArrangeCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyArrangeCell"];
         BOOL hasArrange = [self.detailModel.decorateHomework isEqualToString:@"1"] ? YES : NO;
         MJWeakSelf;
-        [cell configWithHomeworkContent:self.detailModel.content hasArrangeHomework:hasArrange callback:^{
+        [cell configWithHomeworkContent:self.detailModel.content hasArrangeHomework:hasArrange courseStatus:self.detailModel.courseStatus callback:^{
             [weakSelf arrangeHomework];
         }];
         return cell;
@@ -209,15 +228,14 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"课程结束之后才可以布置作业哦~"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"布置作业";
-    self.alertView.tipsLabel.text = @"请输入本次课程作业内容";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"布置作业" tipsDesc:@"请输入本次课程作业内容" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf arrangeAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf arrangeAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)arrangeAction:(NSString *)homeworkContent {
@@ -259,8 +277,8 @@
         [_tableView registerNib:[UINib nibWithNibName:@"MusicRoomCourseInfoCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"MusicRoomCourseInfoCell"];
         [_tableView registerNib:[UINib nibWithNibName:@"AccompanyArrangeCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"AccompanyArrangeCell"];
         [_tableView registerNib:[UINib nibWithNibName:@"MusicRoomStudentCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"MusicRoomStudentCell"];
-        UIView *headView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, KPortraitWidth, 12)];
-        _tableView.tableHeaderView = headView;
+        UIView *bottomView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, KPortraitWidth, iPhoneXSafeBottomMargin)];
+        _tableView.tableFooterView = bottomView;
     }
     return _tableView;
 }
@@ -345,6 +363,17 @@
     
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString] options:@{} completionHandler:nil];
 }
+
+- (CourseGroupNavView *)navView {
+    if (!_navView) {
+        _navView = [CourseGroupNavView sharedInstance];
+        MJWeakSelf;
+        [_navView configWithNavTitle:@"课程详情" callback:^{
+            [weakSelf backAction];
+        }];
+    }
+    return _navView;
+}
 /*
 #pragma mark - Navigation
 

+ 1 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Model/MusicRoomDetailModel.h

@@ -29,6 +29,7 @@
 @property (nonatomic, strong) NSString *content;
 @property (nonatomic, strong) NSString *courseStatus;
 @property (nonatomic, strong) NSString *imGroupId;
+@property (nonatomic, assign) BOOL attendanceStatus;
 
 + (instancetype)modelObjectWithDictionary:(NSDictionary *)dict;
 - (instancetype)initWithDictionary:(NSDictionary *)dict;

+ 7 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/Model/MusicRoomDetailModel.m

@@ -26,6 +26,7 @@ NSString *const kMusicRoomDetailModelCourseGroupName = @"courseGroupName";
 NSString *const kMusicRoomDetailModelContent = @"content";
 NSString *const kMusicRoomDetailModelCourseStatus = @"courseStatus";
 NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
+NSString *const kMusicRoomDetailModelAttendanceStatus = @"attendanceStatus";
 
 @interface MusicRoomDetailModel ()
 
@@ -53,6 +54,7 @@ NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
 @synthesize content = _content;
 @synthesize courseStatus = _courseStatus;
 @synthesize imGroupId = _imGroupId;
+@synthesize attendanceStatus = _attendanceStatus;
 
 + (instancetype)modelObjectWithDictionary:(NSDictionary *)dict
 {
@@ -84,6 +86,7 @@ NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
             self.content = [self objectOrNilForKey:kMusicRoomDetailModelContent fromDictionary:dict];
         self.courseStatus = [self objectOrNilForKey:kMusicRoomDetailModelCourseStatus fromDictionary:dict];
         self.imGroupId = [self objectOrNilForKey:kMusicRoomDetailModelImGroupId fromDictionary:dict];
+        self.attendanceStatus = [[self objectOrNilForKey:kMusicRoomDetailModelAttendanceStatus fromDictionary:dict] boolValue];
     }
     
     return self;
@@ -111,6 +114,7 @@ NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
     [mutableDict setValue:self.content forKey:kMusicRoomDetailModelContent];
     [mutableDict setValue:self.courseStatus forKey:kMusicRoomDetailModelCourseStatus];
     [mutableDict setValue:self.imGroupId forKey:kMusicRoomDetailModelImGroupId];
+    [mutableDict setValue:[NSNumber numberWithBool:self.attendanceStatus] forKey:kMusicRoomDetailModelAttendanceStatus];
     return [NSDictionary dictionaryWithDictionary:mutableDict];
 }
 
@@ -155,6 +159,7 @@ NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
     self.content = [aDecoder decodeObjectForKey:kMusicRoomDetailModelContent];
     self.courseStatus = [aDecoder decodeObjectForKey:kMusicRoomDetailModelCourseStatus];
     self.imGroupId = [aDecoder decodeObjectForKey:kMusicRoomDetailModelImGroupId];
+    self.attendanceStatus = [aDecoder decodeBoolForKey:kMusicRoomDetailModelAttendanceStatus];
     return self;
 }
 
@@ -179,6 +184,7 @@ NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
     [aCoder encodeObject:_content forKey:kMusicRoomDetailModelContent];
     [aCoder encodeObject:_courseStatus forKey:kMusicRoomDetailModelCourseStatus];
     [aCoder encodeObject:_imGroupId forKey:kMusicRoomDetailModelImGroupId];
+    [aCoder encodeBool:_attendanceStatus forKey:kMusicRoomDetailModelAttendanceStatus];
 }
 
 - (id)copyWithZone:(NSZone *)zone
@@ -205,6 +211,7 @@ NSString *const kMusicRoomDetailModelImGroupId = @"imGroupId";
         copy.content = [self.content copyWithZone:zone];
         copy.courseStatus = [self.courseStatus copyWithZone:zone];
         copy.imGroupId = [self.imGroupId copyWithZone:zone];
+        copy.attendanceStatus = self.attendanceStatus;
     }
     
     return copy;

+ 41 - 11
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/View/MusicRoomCourseInfoCell.m

@@ -9,15 +9,22 @@
 
 @interface MusicRoomCourseInfoCell ()
 
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *attendenceImgLeft;
+
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *attendenceImgWidth;
+
+@property (weak, nonatomic) IBOutlet UIImageView *attendentStatusImage;
 
 @property (weak, nonatomic) IBOutlet UILabel *courseTimeLabel;
-@property (weak, nonatomic) IBOutlet UILabel *memberCount;
+
 @property (weak, nonatomic) IBOutlet UILabel *courseName;
 
 @property (weak, nonatomic) IBOutlet UILabel *subjectName;
+
 @property (weak, nonatomic) IBOutlet UILabel *statusLabel;
 
-@property (nonatomic, strong) NSString *targetId;
+@property (weak, nonatomic) IBOutlet UILabel *studentName;
+
 
 @property (nonatomic, copy) MusicRoomGroupChatAction callback;
 
@@ -35,27 +42,55 @@
     if (callback) {
         self.callback = callback;
     }
-    self.targetId = model.imGroupId;
     // time
     [self evaluateTimeLabelWithBeginTime:model.startTime endTime:model.endTime];
     self.courseName.text = [NSString returnNoNullStringWithString:model.courseGroupName];
     self.subjectName.text = [NSString returnNoNullStringWithString:model.subjectName];
-    
-    self.memberCount.text = [NSString stringWithFormat:@"%zd人",model.studentHomeworkList.records.count];
+    [self configNameWithStudent:model.studentHomeworkList.records];
     if ([model.courseStatus isEqualToString:@"NOT_START"]) {
         self.statusLabel.text = @"未开始";
         self.statusLabel.textColor = HexRGB(0xFF802C);
+        self.attendenceImgWidth.constant = 0.0f;
+        self.attendenceImgLeft.constant = 0.0f;
+        self.attendentStatusImage.hidden = YES;
     }
     else if ([model.courseStatus isEqualToString:@"ING"]) {
         self.statusLabel.text = @"进行中";
         self.statusLabel.textColor = THEMECOLOR;
+        self.attendenceImgWidth.constant = 0.0f;
+        self.attendenceImgLeft.constant = 0.0f;
+        self.attendentStatusImage.hidden = YES;
     }
     else if ([model.courseStatus isEqualToString:@"COMPLETE"]) {
         self.statusLabel.text = @"已结束";
         self.statusLabel.textColor = HexRGB(0x999999);
+        self.attendenceImgWidth.constant = 36.0f;
+        self.attendenceImgLeft.constant = 5.0f;
+        self.attendentStatusImage.hidden = NO;
+        NSString *imageName = model.attendanceStatus ? @"course_attendence" : @"course_noArrive";
+        [self.attendentStatusImage setImage:[UIImage imageNamed:imageName]];
     }
+    
 }
 
+- (void)configNameWithStudent:(NSArray *)studentArray {
+    NSString *nameDesc = nil;
+    NSMutableArray *nameArray = [NSMutableArray array];
+    for (Records *stuModel in studentArray) {
+        if (![NSString isEmptyString:stuModel.studentName]) {
+            [nameArray addObject:stuModel.studentName];
+        }
+    }
+    if (nameArray.count > 2) {
+        nameDesc = [NSString stringWithFormat:@"%@、%@等%zd人", nameArray[0], nameArray[1], nameArray.count];
+    }
+    else {
+        nameDesc = [nameArray componentsJoinedByString:@"、"];
+    }
+    self.studentName.text = nameDesc;
+}
+
+
 - (void)evaluateTimeLabelWithBeginTime:(NSString *)beginTime endTime:(NSString *)endTime {
     // 时间
     NSDateFormatter *dateFormatter = [NSObject getDateformatter];
@@ -67,15 +102,10 @@
     [dateFormatter setDateFormat:@"HH:mm"];
     NSString *endStr = [NSString returnNoNullStringWithString:[dateFormatter stringFromDate:endDate]];
     self.courseTimeLabel.text = [NSString stringWithFormat:@"%@~%@", beginStr, endStr];
-    
-}
-- (IBAction)chatAction:(id)sender {
-    if (self.callback) {
-        self.callback(self.targetId);
-    }
 }
 
 
+
 - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
     [super setSelected:selected animated:animated];
 

+ 64 - 73
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/View/MusicRoomCourseInfoCell.xib

@@ -11,63 +11,63 @@
     <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="136" id="KGk-i7-Jjw" customClass="MusicRoomCourseInfoCell">
-            <rect key="frame" x="0.0" y="0.0" width="344" height="136"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="169" id="KGk-i7-Jjw" customClass="MusicRoomCourseInfoCell">
+            <rect key="frame" x="0.0" y="0.0" width="344" height="135"/>
             <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="344" height="136"/>
+                <rect key="frame" x="0.0" y="0.0" width="344" height="135"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bg9-Ww-DfJ">
-                        <rect key="frame" x="14" y="0.0" width="316" height="126"/>
+                        <rect key="frame" x="14" y="12" width="316" height="111"/>
                         <subviews>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_time" translatesAutoresizingMaskIntoConstraints="NO" id="CSZ-cc-B2S">
-                                <rect key="frame" x="12" y="12" width="16" height="16"/>
+                                <rect key="frame" x="12" y="15" width="16" height="16"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="16" id="KDr-FG-ROh"/>
                                     <constraint firstAttribute="height" constant="16" id="OPR-bh-I32"/>
                                 </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="xGN-fD-6g8">
-                                <rect key="frame" x="34" y="11" width="0.0" height="18"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2024-10-30 15:00~15:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xGN-fD-6g8">
+                                <rect key="frame" x="34" y="14" width="145.5" height="18"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="18" id="mzA-XH-SXS"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" pointSize="13"/>
-                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="k2L-h9-9b3">
-                                <rect key="frame" x="10" y="38" width="296" height="1"/>
+                                <rect key="frame" x="10" y="46" width="296" height="1"/>
                                 <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="1" id="O3Q-xP-7fL"/>
                                 </constraints>
                             </view>
-                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QUb-lq-pUv">
-                                <rect key="frame" x="68" y="51" width="0.0" height="28"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张老师琴房课-第1课" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QUb-lq-pUv">
+                                <rect key="frame" x="61" y="58" width="136.5" height="21"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="28" id="4Be-UW-Fda"/>
+                                    <constraint firstAttribute="height" constant="21" id="4Be-UW-Fda"/>
                                 </constraints>
-                                <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
-                                <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="calibratedRGB"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                <color key="textColor" red="0.074509803921568626" green="0.078431372549019607" blue="0.082352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ORG-gD-yMT">
-                                <rect key="frame" x="68" y="79" width="10" height="20"/>
+                            <view contentMode="scaleToFill" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="ORG-gD-yMT">
+                                <rect key="frame" x="193.5" y="83.5" width="28" height="17"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kCh-Pp-Mzx">
-                                        <rect key="frame" x="5" y="0.0" width="0.0" height="20"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="11"/>
-                                        <color key="textColor" red="1" green="0.54901960780000003" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" text="长笛" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kCh-Pp-Mzx">
+                                        <rect key="frame" x="4" y="0.0" width="20" height="17"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="10"/>
+                                        <color key="textColor" red="1" green="0.5490196078431373" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                 </subviews>
-                                <color key="backgroundColor" red="1" green="0.94509803920000002" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="1" green="0.94509803921568625" blue="0.87058823529411766" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstAttribute="trailing" secondItem="kCh-Pp-Mzx" secondAttribute="trailing" constant="5" id="09o-nA-nJs"/>
-                                    <constraint firstItem="kCh-Pp-Mzx" firstAttribute="leading" secondItem="ORG-gD-yMT" secondAttribute="leading" constant="5" id="1iW-0n-aKX"/>
-                                    <constraint firstAttribute="height" constant="20" id="2lD-7Q-OW9"/>
+                                    <constraint firstAttribute="trailing" secondItem="kCh-Pp-Mzx" secondAttribute="trailing" constant="4" id="09o-nA-nJs"/>
+                                    <constraint firstItem="kCh-Pp-Mzx" firstAttribute="leading" secondItem="ORG-gD-yMT" secondAttribute="leading" constant="4" id="1iW-0n-aKX"/>
+                                    <constraint firstAttribute="height" constant="17" id="2lD-7Q-OW9"/>
                                     <constraint firstItem="kCh-Pp-Mzx" firstAttribute="top" secondItem="ORG-gD-yMT" secondAttribute="top" id="S3D-Yi-Tou"/>
                                     <constraint firstAttribute="bottom" secondItem="kCh-Pp-Mzx" secondAttribute="bottom" id="qMO-j0-lNq"/>
                                 </constraints>
@@ -77,76 +77,66 @@
                                     </userDefinedRuntimeAttribute>
                                 </userDefinedRuntimeAttributes>
                             </view>
-                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_musicRoom" translatesAutoresizingMaskIntoConstraints="NO" id="MPJ-dm-TQx">
-                                <rect key="frame" x="11" y="53" width="47" height="47"/>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_musicRoom" translatesAutoresizingMaskIntoConstraints="NO" id="MPJ-dm-TQx">
+                                <rect key="frame" x="11" y="59" width="40" height="40"/>
                                 <constraints>
-                                    <constraint firstAttribute="width" constant="47" id="YIK-Oi-iUK"/>
-                                    <constraint firstAttribute="height" constant="47" id="yLf-ul-Qz1"/>
+                                    <constraint firstAttribute="width" constant="40" id="YIK-Oi-iUK"/>
+                                    <constraint firstAttribute="height" constant="40" id="yLf-ul-Qz1"/>
                                 </constraints>
+                                <userDefinedRuntimeAttributes>
+                                    <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                        <real key="value" value="20"/>
+                                    </userDefinedRuntimeAttribute>
+                                </userDefinedRuntimeAttributes>
                             </imageView>
-                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="beA-D7-Fro">
-                                <rect key="frame" x="95" y="89" width="0.0" height="0.0"/>
-                                <fontDescription key="fontDescription" type="system" pointSize="14"/>
-                                <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
-                                <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="1JB-RE-CPf">
-                                <rect key="frame" x="255" y="20" width="50" height="0.0"/>
+                                <rect key="frame" x="255" y="12" width="50" height="22"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="50" id="Xiy-dc-FXt"/>
+                                    <constraint firstAttribute="height" constant="22" id="sLj-8q-ZAM"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                 <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6G2-hv-fsQ">
-                                <rect key="frame" x="86" y="83" width="1" height="12"/>
-                                <color key="backgroundColor" red="0.87058823529411766" green="0.87058823529411766" blue="0.87058823529411766" alpha="1" colorSpace="calibratedRGB"/>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="cdq-YL-Hxn">
+                                <rect key="frame" x="202.5" y="59.5" width="36" height="18"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="12" id="eTX-wR-oTd"/>
-                                    <constraint firstAttribute="width" constant="1" id="vjN-Ij-zdo"/>
+                                    <constraint firstAttribute="height" constant="18" id="UXN-IU-ld1"/>
+                                    <constraint firstAttribute="width" constant="36" id="zAo-te-zhg"/>
                                 </constraints>
-                            </view>
-                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="H2e-81-i3m">
-                                <rect key="frame" x="68" y="45" width="40" height="40"/>
-                                <constraints>
-                                    <constraint firstAttribute="width" constant="40" id="Hz9-gz-ybY"/>
-                                    <constraint firstAttribute="height" constant="40" id="UIM-cc-gFb"/>
-                                </constraints>
-                                <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
-                                <state key="normal" image="course_chat"/>
-                                <connections>
-                                    <action selector="chatAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="rgP-LQ-mk9"/>
-                                </connections>
-                            </button>
+                            </imageView>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张涵宇、向冰冰等5人" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UvK-T9-66w">
+                                <rect key="frame" x="61" y="84" width="127.5" height="16"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                                <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
-                            <constraint firstItem="6G2-hv-fsQ" firstAttribute="leading" secondItem="ORG-gD-yMT" secondAttribute="trailing" constant="8" id="0Uw-Pg-Fmd"/>
-                            <constraint firstItem="MPJ-dm-TQx" firstAttribute="top" secondItem="k2L-h9-9b3" secondAttribute="bottom" constant="14" id="4E8-rs-uzQ"/>
-                            <constraint firstItem="beA-D7-Fro" firstAttribute="centerY" secondItem="6G2-hv-fsQ" secondAttribute="centerY" id="9TM-nB-jfF"/>
-                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="beA-D7-Fro" secondAttribute="trailing" constant="10" id="C6A-UA-PaU"/>
+                            <constraint firstItem="MPJ-dm-TQx" firstAttribute="top" secondItem="k2L-h9-9b3" secondAttribute="bottom" constant="12" id="4E8-rs-uzQ"/>
+                            <constraint firstItem="cdq-YL-Hxn" firstAttribute="leading" secondItem="QUb-lq-pUv" secondAttribute="trailing" constant="5" id="52P-5m-1Ln"/>
+                            <constraint firstItem="ORG-gD-yMT" firstAttribute="leading" secondItem="UvK-T9-66w" secondAttribute="trailing" constant="5" id="81B-KC-izQ"/>
                             <constraint firstItem="CSZ-cc-B2S" firstAttribute="leading" secondItem="bg9-Ww-DfJ" secondAttribute="leading" constant="12" id="E6P-sJ-IH9"/>
+                            <constraint firstItem="cdq-YL-Hxn" firstAttribute="centerY" secondItem="QUb-lq-pUv" secondAttribute="centerY" id="HWx-6A-0Ox"/>
                             <constraint firstAttribute="trailing" secondItem="k2L-h9-9b3" secondAttribute="trailing" constant="10" id="JLb-UI-mYN"/>
-                            <constraint firstItem="beA-D7-Fro" firstAttribute="leading" secondItem="6G2-hv-fsQ" secondAttribute="trailing" constant="8" id="NsI-u7-vvM"/>
-                            <constraint firstItem="ORG-gD-yMT" firstAttribute="top" secondItem="QUb-lq-pUv" secondAttribute="bottom" id="TLD-7M-CeB"/>
-                            <constraint firstItem="CSZ-cc-B2S" firstAttribute="top" secondItem="bg9-Ww-DfJ" secondAttribute="top" constant="12" id="Tje-AH-2gQ"/>
-                            <constraint firstItem="H2e-81-i3m" firstAttribute="leading" secondItem="QUb-lq-pUv" secondAttribute="trailing" id="Ur2-gl-MQy"/>
-                            <constraint firstItem="H2e-81-i3m" firstAttribute="centerY" secondItem="QUb-lq-pUv" secondAttribute="centerY" id="XwZ-IK-zVu"/>
-                            <constraint firstItem="ORG-gD-yMT" firstAttribute="leading" secondItem="QUb-lq-pUv" secondAttribute="leading" id="aJH-mK-uZA"/>
-                            <constraint firstItem="6G2-hv-fsQ" firstAttribute="centerY" secondItem="ORG-gD-yMT" secondAttribute="centerY" id="dNe-OJ-AZF"/>
+                            <constraint firstItem="CSZ-cc-B2S" firstAttribute="top" secondItem="bg9-Ww-DfJ" secondAttribute="top" constant="15" id="Tje-AH-2gQ"/>
                             <constraint firstItem="QUb-lq-pUv" firstAttribute="leading" secondItem="MPJ-dm-TQx" secondAttribute="trailing" constant="10" id="dV2-FY-xt8"/>
                             <constraint firstItem="k2L-h9-9b3" firstAttribute="leading" secondItem="bg9-Ww-DfJ" secondAttribute="leading" constant="10" id="ftM-XR-ViC"/>
                             <constraint firstAttribute="trailing" secondItem="1JB-RE-CPf" secondAttribute="trailing" constant="11" id="g1o-YV-p9V"/>
-                            <constraint firstItem="QUb-lq-pUv" firstAttribute="top" secondItem="MPJ-dm-TQx" secondAttribute="top" constant="-2" id="hPh-Qi-MtD"/>
+                            <constraint firstItem="QUb-lq-pUv" firstAttribute="top" secondItem="MPJ-dm-TQx" secondAttribute="top" constant="-1" id="hPh-Qi-MtD"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="cdq-YL-Hxn" secondAttribute="trailing" constant="12" id="hgE-0v-96Q"/>
                             <constraint firstItem="MPJ-dm-TQx" firstAttribute="leading" secondItem="bg9-Ww-DfJ" secondAttribute="leading" constant="11" id="hxC-0O-uti"/>
                             <constraint firstItem="xGN-fD-6g8" firstAttribute="centerY" secondItem="CSZ-cc-B2S" secondAttribute="centerY" id="iEe-aS-tcZ"/>
+                            <constraint firstItem="UvK-T9-66w" firstAttribute="leading" secondItem="QUb-lq-pUv" secondAttribute="leading" id="iuc-bZ-3ns"/>
                             <constraint firstItem="1JB-RE-CPf" firstAttribute="centerY" secondItem="xGN-fD-6g8" secondAttribute="centerY" id="jrf-db-QbH"/>
                             <constraint firstItem="xGN-fD-6g8" firstAttribute="leading" secondItem="CSZ-cc-B2S" secondAttribute="trailing" constant="6" id="lD3-wz-hkl"/>
-                            <constraint firstAttribute="bottom" secondItem="MPJ-dm-TQx" secondAttribute="bottom" constant="26" id="myg-9t-fsJ"/>
-                            <constraint firstItem="k2L-h9-9b3" firstAttribute="top" secondItem="CSZ-cc-B2S" secondAttribute="bottom" constant="10" id="nrg-zV-2Wy"/>
+                            <constraint firstAttribute="bottom" secondItem="MPJ-dm-TQx" secondAttribute="bottom" constant="12" id="myg-9t-fsJ"/>
+                            <constraint firstItem="k2L-h9-9b3" firstAttribute="top" secondItem="CSZ-cc-B2S" secondAttribute="bottom" constant="15" id="nrg-zV-2Wy"/>
+                            <constraint firstItem="UvK-T9-66w" firstAttribute="bottom" secondItem="MPJ-dm-TQx" secondAttribute="bottom" constant="1" id="pQV-Ew-RbD"/>
+                            <constraint firstItem="ORG-gD-yMT" firstAttribute="centerY" secondItem="UvK-T9-66w" secondAttribute="centerY" id="v7E-JT-CaU"/>
                             <constraint firstItem="1JB-RE-CPf" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="xGN-fD-6g8" secondAttribute="trailing" constant="10" id="vRh-MH-6qJ"/>
-                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="H2e-81-i3m" secondAttribute="trailing" constant="5" id="wXu-kG-UZC"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -157,25 +147,26 @@
                 </subviews>
                 <constraints>
                     <constraint firstAttribute="trailing" secondItem="bg9-Ww-DfJ" secondAttribute="trailing" constant="14" id="Cjr-dA-Mre"/>
-                    <constraint firstItem="bg9-Ww-DfJ" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" id="HBG-mN-P1K"/>
+                    <constraint firstItem="bg9-Ww-DfJ" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="12" id="HBG-mN-P1K"/>
                     <constraint firstItem="bg9-Ww-DfJ" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="RwK-IZ-OOD"/>
-                    <constraint firstAttribute="bottom" secondItem="bg9-Ww-DfJ" secondAttribute="bottom" constant="10" id="f8L-fD-5mf"/>
+                    <constraint firstAttribute="bottom" secondItem="bg9-Ww-DfJ" secondAttribute="bottom" constant="12" id="f8L-fD-5mf"/>
                 </constraints>
             </tableViewCellContentView>
             <viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
             <connections>
+                <outlet property="attendenceImgLeft" destination="52P-5m-1Ln" id="HS7-tc-fCQ"/>
+                <outlet property="attendenceImgWidth" destination="zAo-te-zhg" id="D2x-ng-asT"/>
+                <outlet property="attendentStatusImage" destination="cdq-YL-Hxn" id="9dg-9J-xEg"/>
                 <outlet property="courseName" destination="QUb-lq-pUv" id="jT1-d5-C3p"/>
                 <outlet property="courseTimeLabel" destination="xGN-fD-6g8" id="Sme-fy-pag"/>
-                <outlet property="memberCount" destination="beA-D7-Fro" id="ZII-Zj-fR2"/>
                 <outlet property="statusLabel" destination="1JB-RE-CPf" id="Dx1-ae-yhb"/>
                 <outlet property="subjectName" destination="kCh-Pp-Mzx" id="G52-oL-Ssf"/>
             </connections>
-            <point key="canvasLocation" x="114.49275362318842" y="103.79464285714285"/>
+            <point key="canvasLocation" x="114.49275362318842" y="92.745535714285708"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="course_chat" width="19" height="18"/>
         <image name="course_musicRoom" width="40" height="40"/>
         <image name="course_time" width="16" height="16"/>
         <systemColor name="systemBackgroundColor">

+ 5 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Course/MusicRoom/View/MusicRoomCourseListCell.xib

@@ -59,6 +59,11 @@
                                     <constraint firstAttribute="width" constant="40" id="5S7-Nw-2Df"/>
                                     <constraint firstAttribute="height" constant="40" id="xpC-QY-5lU"/>
                                 </constraints>
+                                <userDefinedRuntimeAttributes>
+                                    <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                        <real key="value" value="20"/>
+                                    </userDefinedRuntimeAttribute>
+                                </userDefinedRuntimeAttributes>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="749" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sbq-HP-naE">
                                 <rect key="frame" x="62" y="58" width="0.0" height="21"/>

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/Controller/VIPCourseGroupViewController.m

@@ -225,7 +225,7 @@
     if (!_navView) {
         _navView = [CourseGroupNavView sharedInstance];
         MJWeakSelf;
-        [_navView configWithNavTitle:@"VIP定制课详情" callback:^{
+        [_navView configWithNavTitle:@"课程组详情" callback:^{
             [weakSelf backAction];
         }];
     }

+ 34 - 37
KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/Controller/VipCouseDetailViewController.m

@@ -7,7 +7,7 @@
 
 #import "VipCouseDetailViewController.h"
 #import "AccompanyNavView.h"
-#import "AccompanyAlertView.h"
+#import "CourseGroupPlanAlertView.h"
 #import "VipCouseInfoCell.h"
 #import "AccompanyEvaluateCell.h"
 #import "AccompanyStudentEvaCell.h"
@@ -15,7 +15,6 @@
 #import "AccompanyHomeworkCell.h"
 #import "AccompanyRemarkCell.h"
 #import "HomeworkDetailModel.h"
-#import "HomeworkDetailModel.h"
 #import "EvaluateDetailModel.h"
 #import "KSChatConversationViewController.h"
 #import <WMPlayer.h>
@@ -43,7 +42,7 @@
 
 @property (nonatomic, strong) AccompanyDetailBottomView *bottomView;
 
-@property (nonatomic, strong) AccompanyAlertView *alertView;
+@property (nonatomic, strong) CourseGroupPlanAlertView *alertView;
 
 @property (nonatomic, strong) NSMutableArray *fileArray;
 
@@ -66,9 +65,16 @@
     [self requestRoomConfig];
 }
 
+
 - (void)viewWillAppear:(BOOL)animated {
     [super viewWillAppear:animated];
     [self requestCourseInfoMessage];
+    [self configStatusViewColorWhite:YES];
+}
+
+- (void)viewWillDisappear:(BOOL)animated {
+    [super viewWillDisappear:animated];
+    [self configStatusViewColorWhite:NO];
 }
 
 - (void)requestRoomConfig {
@@ -193,14 +199,7 @@
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
     if (indexPath.row == 0) {
         VipCouseInfoCell *cell = [tableView dequeueReusableCellWithIdentifier:@"VipCouseInfoCell"];
-        [self evaluateWithStatusLabel:cell.statusLabel];
-        [cell configWithStartTime:self.homeworkModel.startTime endTime:self.homeworkModel.endTime studentAvatar:self.homeworkModel.studentAvatar studentName:self.homeworkModel.studentName studentId:self.homeworkModel.studentId studentSubject:self.homeworkModel.subjectName];
-        cell.hideChatButton = NO;
-        MJWeakSelf;
-        [cell chatCalkback:^{
-            [weakSelf chatAction];
-        }];
-        
+        [cell configWithSource:self.homeworkModel];
         return cell;
     }
     else if (indexPath.row == 1) {
@@ -208,7 +207,7 @@
         NSString *message = self.evaluateModel.teacherReplied;
         BOOL hasEvaluate = [NSString isEmptyString:self.evaluateModel.teacherReplied] ? NO : YES;
         MJWeakSelf;
-        [cell configWithEvaluateMessage:message hasEvaluate:hasEvaluate callback:^{
+        [cell configWithEvaluateMessage:message hasEvaluate:hasEvaluate courseStatus:self.homeworkModel.courseStatus callback:^{
             [weakSelf evaluateCourse];
         }];
         return cell;
@@ -217,14 +216,14 @@
         AccompanyStudentEvaCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyStudentEvaCell"];
         NSString *message = self.evaluateModel.studentReplied;
         BOOL hasEvaluate = [NSString isEmptyString:self.evaluateModel.studentReplied] ? NO : YES;
-        [cell configWithEvaluateMessage:message starNum:self.evaluateModel.score hasEvaluate:hasEvaluate];
+        [cell configWithEvaluateMessage:message courseStatus:self.homeworkModel.courseStatus starNum:self.evaluateModel.score hasEvaluate:hasEvaluate];
         return cell;
     }
     else if (indexPath.row == 3) {
         AccompanyArrangeCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyArrangeCell"];
         BOOL hasArrange = self.homeworkModel.decorateHomework == 1 ? YES : NO;
         MJWeakSelf;
-        [cell configWithHomeworkContent:self.homeworkModel.content hasArrangeHomework:hasArrange callback:^{
+        [cell configWithHomeworkContent:self.homeworkModel.content hasArrangeHomework:hasArrange courseStatus:self.homeworkModel.courseStatus callback:^{
             [weakSelf arrangeHomework];
         }];
         return cell;
@@ -242,8 +241,9 @@
     else {
         AccompanyRemarkCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyRemarkCell"];
         BOOL hasEvaluate = self.homeworkModel.reviewHomework == 1? YES : NO;
+        BOOL hasSubmitHomework = self.homeworkModel.submitHomework == 1 ? YES : NO;
         MJWeakSelf;
-        [cell configWithRemarkMessage:self.homeworkModel.teacherReplied hasEvaluate:hasEvaluate callback:^{
+        [cell configWithRemarkMessage:self.homeworkModel.teacherReplied hasEvaluate:hasEvaluate hasSubmitHomework:hasSubmitHomework callback:^{
             [weakSelf evaluateHomework];
         }];
         return cell;
@@ -262,18 +262,17 @@
 
 - (void)evaluateCourse {
     if (![self.homeworkModel.courseStatus isEqualToString:@"COMPLETE"]) {
-        [LOADING_MANAGER MBShowAUTOHidingInWindow:@"课程结束之后才可以评价哦"];
+        [LOADING_MANAGER MBShowAUTOHidingInWindow:@"课程结束之后才可以评价哦"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"评价学员";
-    self.alertView.tipsLabel.text = @"请输入您对本次课程学员表现的评价";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"评价学员" tipsDesc:@"请输入您对本次课程学员表现的评价" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf evaluateAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf evaluateAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)evaluateAction:(NSString *)content {
@@ -301,15 +300,14 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"课程结束之后才可以布置作业哦~"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"布置作业";
-    self.alertView.tipsLabel.text = @"请输入本次课程作业内容";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"布置作业" tipsDesc:@"请输入本次课程作业内容" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf arrangeAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf arrangeAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)arrangeAction:(NSString *)homeworkContent {
@@ -338,15 +336,14 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"学生还未提交作业"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"作业点评";
-    self.alertView.tipsLabel.text = @"请输入您对本次作业的点评";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"作业点评" tipsDesc:@"请输入您对本次作业的点评" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf commentAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf commentAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)commentAction:(NSString *)commentMessage {

+ 2 - 3
KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/View/VipCouseInfoCell.h

@@ -6,6 +6,7 @@
 //
 
 #import <UIKit/UIKit.h>
+#import "HomeworkDetailModel.h"
 
 NS_ASSUME_NONNULL_BEGIN
 
@@ -16,9 +17,7 @@ typedef void(^VipChatCallback)(void);
 
 @property (weak, nonatomic) IBOutlet UILabel *statusLabel;
 
-@property (nonatomic, assign) BOOL hideChatButton;
-
-- (void)configWithStartTime:(NSString *)beginTime endTime:(NSString *)endTime studentAvatar:(NSString *)studentAvatar studentName:(NSString *)studentName studentId:(NSString *)studentId studentSubject:(NSString *)studentSubject;
+- (void)configWithSource:(HomeworkDetailModel *)model;
 
 - (void)chatCalkback:(VipChatCallback)callback;
 

+ 43 - 31
KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/View/VipCouseInfoCell.m

@@ -9,16 +9,22 @@
 
 @interface VipCouseInfoCell ()
 
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *attendenceImgLeft;
+
+@property (weak, nonatomic) IBOutlet NSLayoutConstraint *attendenceImgWidth;
+
+@property (weak, nonatomic) IBOutlet UIImageView *attendentStatusImage;
+
+@property (weak, nonatomic) IBOutlet UILabel *courseNameLabel;
+
 @property (weak, nonatomic) IBOutlet UILabel *courseTime;
+
 @property (weak, nonatomic) IBOutlet UIImageView *studentAvatar;
-@property (weak, nonatomic) IBOutlet UILabel *studentName;
-@property (weak, nonatomic) IBOutlet UILabel *studentSubject;
 
-@property (weak, nonatomic) IBOutlet UIButton *chatButton;
+@property (weak, nonatomic) IBOutlet UILabel *studentName;
 
-@property (nonatomic, strong) NSString *userId;
+@property (weak, nonatomic) IBOutlet UILabel *studentSubject;
 
-@property (nonatomic, strong) NSString *userName;
 
 @property (nonatomic, copy) VipChatCallback callback;
 
@@ -32,54 +38,60 @@
     self.selectionStyle = UITableViewCellSelectionStyleNone;
 }
 
-- (void)configWithStartTime:(NSString *)beginTime endTime:(NSString *)endTime studentAvatar:(NSString *)studentAvatar studentName:(NSString *)studentName studentId:(NSString *)studentId studentSubject:(NSString *)studentSubject {
+- (void)configWithSource:(HomeworkDetailModel *)model {
     // time
     NSDateFormatter *formatter = [NSObject getDateformatter];
     [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
-    NSDate *startDate = [formatter dateFromString:beginTime];
-    NSDate *endDate = [formatter dateFromString:endTime];
+    NSDate *startDate = [formatter dateFromString:model.startTime];
+    NSDate *endDate = [formatter dateFromString:model.endTime];
     [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];
     NSString *lessonBegin = [formatter stringFromDate:startDate];
     [formatter setDateFormat:@"HH:mm"];
     NSString *lessonEnd = [formatter stringFromDate:endDate];
     self.courseTime.text = [NSString stringWithFormat:@"%@~%@",[NSString returnNoNullStringWithString:lessonBegin],[NSString returnNoNullStringWithString:lessonEnd]];
-    if ([NSString isEmptyString:studentName]) {
-        self.studentName.text = [NSString stringWithFormat:@"游客%@",studentId];
+    if ([NSString isEmptyString:model.studentName]) {
+        self.studentName.text = [NSString stringWithFormat:@"游客%@",model.studentId];
     }
     else {
-        self.studentName.text = studentName;
+        self.studentName.text = model.studentName;
     }
-    self.studentName.text = [NSString returnNoNullStringWithString:studentName];
-    [self.studentAvatar sd_setImageWithURL:[NSURL URLWithString:[studentAvatar getUrlEndcodeString]] placeholderImage:[UIImage imageNamed:STUDENT_AVATAR]];
-    self.studentSubject.text = [NSString returnNoNullStringWithString:studentSubject];
-
-    self.userId = studentId;
-    self.userName = studentName;
-}
-
-- (void)setHideChatButton:(BOOL)hideChatButton {
-    _hideChatButton = hideChatButton;
-    if (hideChatButton) {
-        self.chatButton.hidden = YES;
-        self.chatButton.userInteractionEnabled = NO;
+    
+    [self.studentAvatar sd_setImageWithURL:[NSURL URLWithString:[model.studentAvatar getUrlEndcodeString]] placeholderImage:[UIImage imageNamed:STUDENT_AVATAR]];
+    self.studentSubject.text = [NSString returnNoNullStringWithString:model.subjectName];
+    self.courseNameLabel.text = [NSString returnNoNullStringWithString:model.courseGroupName];
+    // 判断是否显示
+    if ([model.courseStatus isEqualToString:@"COMPLETE"]) {
+        self.statusLabel.text = @"已结束";
+        self.statusLabel.textColor = HexRGB(0x999999);
+        self.attendenceImgWidth.constant = 36.0f;
+        self.attendenceImgLeft.constant = 5.0f;
+        self.attendentStatusImage.hidden = NO;
+        NSString *imageName = model.attendanceStatus ? @"course_attendence" : @"course_noArrive";
+        [self.attendentStatusImage setImage:[UIImage imageNamed:imageName]];
+    }
+    else if ([model.courseStatus isEqualToString:@"ING"]) {
+        self.statusLabel.text = @"进行中";
+        self.statusLabel.textColor = THEMECOLOR;
+        self.attendenceImgWidth.constant = 0.0f;
+        self.attendenceImgLeft.constant = 0.0f;
+        self.attendentStatusImage.hidden = YES;
     }
     else {
-        self.chatButton.hidden = NO;
-        self.chatButton.userInteractionEnabled = YES;
+        self.statusLabel.text = @"未开始";
+        self.statusLabel.textColor = HexRGB(0xff802c);
+        self.attendenceImgWidth.constant = 0.0f;
+        self.attendenceImgLeft.constant = 0.0f;
+        self.attendentStatusImage.hidden = YES;
     }
 }
 
+
 - (void)chatCalkback:(VipChatCallback)callback {
     if (callback) {
         self.callback = callback;
     }
 }
 
-- (IBAction)chatAction:(id)sender {
-    if (self.callback) {
-        self.callback();
-    }
-}
 
 - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
     [super setSelected:selected animated:animated];

+ 65 - 55
KulexiuForTeacher/KulexiuForTeacher/Module/Course/VIPCourse/View/VipCouseInfoCell.xib

@@ -1,96 +1,96 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="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_12" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
         <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
-        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <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="145" id="KGk-i7-Jjw" customClass="VipCouseInfoCell">
-            <rect key="frame" x="0.0" y="0.0" width="335" height="145"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="130" id="KGk-i7-Jjw" customClass="VipCouseInfoCell">
+            <rect key="frame" x="0.0" y="0.0" width="389" height="130"/>
             <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="335" height="145"/>
+                <rect key="frame" x="0.0" y="0.0" width="389" height="130"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="yVi-pw-eI6">
-                        <rect key="frame" x="14" y="10" width="307" height="123"/>
+                        <rect key="frame" x="14" y="7" width="361" height="111"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3dh-xL-h1k">
-                                <rect key="frame" x="10" y="38" width="287" height="1"/>
+                                <rect key="frame" x="10" y="46" width="341" height="1"/>
                                 <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="1" id="h97-r3-fgZ"/>
                                 </constraints>
                             </view>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_time" translatesAutoresizingMaskIntoConstraints="NO" id="B1g-pw-mYI">
-                                <rect key="frame" x="11" y="12" width="16" height="16"/>
+                                <rect key="frame" x="12" y="15" width="16" height="16"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="16" id="Su3-Id-msD"/>
                                     <constraint firstAttribute="height" constant="16" id="hr8-TJ-Ukd"/>
                                 </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="49U-qQ-4uN">
-                                <rect key="frame" x="34" y="11" width="0.0" height="18"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2024-10-30 15:00~15:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="49U-qQ-4uN">
+                                <rect key="frame" x="35" y="14" width="145.66666666666666" height="18"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="18" id="f06-F1-3xZ"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" pointSize="13"/>
-                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QvR-ZO-p6W">
-                                <rect key="frame" x="246" y="20" width="50" height="0.0"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="进行中" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QvR-ZO-p6W">
+                                <rect key="frame" x="299" y="12" width="50" height="22"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="50" id="oKu-05-8Na"/>
+                                    <constraint firstAttribute="height" constant="22" id="xg0-Qr-1at"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                 <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="student_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="3cO-85-Ox1">
-                                <rect key="frame" x="11" y="56" width="47" height="47"/>
+                                <rect key="frame" x="11" y="59" width="40" height="40"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="47" id="YsZ-Ob-XKz"/>
-                                    <constraint firstAttribute="width" constant="47" id="p7L-Dk-Ijn"/>
+                                    <constraint firstAttribute="width" constant="40" id="p7L-Dk-Ijn"/>
+                                    <constraint firstAttribute="height" constant="40" id="rOO-Fu-jBB"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
-                                        <real key="value" value="5"/>
+                                        <real key="value" value="20"/>
                                     </userDefinedRuntimeAttribute>
                                 </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="UrD-Un-gOT">
-                                <rect key="frame" x="68" y="56" width="0.0" height="24"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="VIP定制课-张涵宇" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UrD-Un-gOT">
+                                <rect key="frame" x="61" y="58" width="129.66666666666666" height="21"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="24" id="DRM-MQ-t61"/>
+                                    <constraint firstAttribute="height" constant="21" id="DRM-MQ-t61"/>
                                 </constraints>
                                 <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                 <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="calibratedRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="IV2-zi-jmv">
-                                <rect key="frame" x="68" y="83" width="10" height="20"/>
+                            <view contentMode="scaleToFill" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="IV2-zi-jmv">
+                                <rect key="frame" x="105" y="83" width="38" height="17"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4gL-4k-HYe">
-                                        <rect key="frame" x="5" y="0.0" width="0.0" height="20"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" text="单簧管" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4gL-4k-HYe">
+                                        <rect key="frame" x="4" y="0.0" width="30" height="17"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="10"/>
                                         <color key="textColor" red="1" green="0.54901960780000003" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                 </subviews>
                                 <color key="backgroundColor" red="1" green="0.94509803920000002" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
                                 <constraints>
-                                    <constraint firstAttribute="trailing" secondItem="4gL-4k-HYe" secondAttribute="trailing" constant="5" id="4Np-oM-yIe"/>
+                                    <constraint firstAttribute="trailing" secondItem="4gL-4k-HYe" secondAttribute="trailing" constant="4" id="4Np-oM-yIe"/>
                                     <constraint firstItem="4gL-4k-HYe" firstAttribute="top" secondItem="IV2-zi-jmv" secondAttribute="top" id="9Bt-0w-zaH"/>
-                                    <constraint firstAttribute="height" constant="20" id="a1L-GP-2lN"/>
+                                    <constraint firstAttribute="height" constant="17" id="a1L-GP-2lN"/>
                                     <constraint firstAttribute="bottom" secondItem="4gL-4k-HYe" secondAttribute="bottom" id="q0F-8u-0Qg"/>
-                                    <constraint firstItem="4gL-4k-HYe" firstAttribute="leading" secondItem="IV2-zi-jmv" secondAttribute="leading" constant="5" id="t9E-CA-Jd2"/>
+                                    <constraint firstItem="4gL-4k-HYe" firstAttribute="leading" secondItem="IV2-zi-jmv" secondAttribute="leading" constant="4" id="t9E-CA-Jd2"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -98,40 +98,48 @@
                                     </userDefinedRuntimeAttribute>
                                 </userDefinedRuntimeAttributes>
                             </view>
-                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Yoe-Ih-DzZ">
-                                <rect key="frame" x="68" y="48" width="40" height="40"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张涵宇" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="U1J-hl-vzt">
+                                <rect key="frame" x="61" y="83" width="39" height="17"/>
                                 <constraints>
-                                    <constraint firstAttribute="width" constant="40" id="SJF-dV-iio"/>
-                                    <constraint firstAttribute="height" constant="40" id="aFY-li-BZY"/>
+                                    <constraint firstAttribute="height" constant="17" id="DFX-7t-AZm"/>
                                 </constraints>
-                                <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
-                                <state key="normal" image="course_chat"/>
-                                <connections>
-                                    <action selector="chatAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="Ume-RJ-nmk"/>
-                                </connections>
-                            </button>
+                                <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                                <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="S58-Nw-PPr">
+                                <rect key="frame" x="195.66666666666666" y="59.666666666666671" width="36" height="18"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="18" id="FHI-ol-j33"/>
+                                    <constraint firstAttribute="width" constant="36" id="iAZ-gk-ktl"/>
+                                </constraints>
+                            </imageView>
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
-                            <constraint firstAttribute="bottom" secondItem="3cO-85-Ox1" secondAttribute="bottom" constant="20" id="5Uk-ie-H5V"/>
+                            <constraint firstAttribute="bottom" secondItem="3cO-85-Ox1" secondAttribute="bottom" constant="12" id="5Uk-ie-H5V"/>
                             <constraint firstItem="QvR-ZO-p6W" firstAttribute="centerY" secondItem="49U-qQ-4uN" secondAttribute="centerY" id="8KI-hF-cDG"/>
-                            <constraint firstItem="B1g-pw-mYI" firstAttribute="top" secondItem="yVi-pw-eI6" secondAttribute="top" constant="12" id="AAO-VS-NM0"/>
-                            <constraint firstItem="Yoe-Ih-DzZ" firstAttribute="leading" secondItem="UrD-Un-gOT" secondAttribute="trailing" id="BJb-7I-w1j"/>
+                            <constraint firstItem="IV2-zi-jmv" firstAttribute="leading" secondItem="U1J-hl-vzt" secondAttribute="trailing" constant="5" id="A4h-z6-dlH"/>
+                            <constraint firstItem="B1g-pw-mYI" firstAttribute="top" secondItem="yVi-pw-eI6" secondAttribute="top" constant="15" id="AAO-VS-NM0"/>
+                            <constraint firstItem="U1J-hl-vzt" firstAttribute="bottom" secondItem="3cO-85-Ox1" secondAttribute="bottom" constant="1" id="CzX-2G-020"/>
+                            <constraint firstItem="IV2-zi-jmv" firstAttribute="centerY" secondItem="U1J-hl-vzt" secondAttribute="centerY" id="Hjp-v8-Hrv"/>
                             <constraint firstItem="3cO-85-Ox1" firstAttribute="leading" secondItem="yVi-pw-eI6" secondAttribute="leading" constant="11" id="JKe-4J-32l"/>
                             <constraint firstItem="3dh-xL-h1k" firstAttribute="leading" secondItem="yVi-pw-eI6" secondAttribute="leading" constant="10" id="Pmq-eE-IH9"/>
-                            <constraint firstItem="B1g-pw-mYI" firstAttribute="leading" secondItem="yVi-pw-eI6" secondAttribute="leading" constant="11" id="SeV-ws-KO7"/>
+                            <constraint firstItem="S58-Nw-PPr" firstAttribute="leading" secondItem="UrD-Un-gOT" secondAttribute="trailing" constant="5" id="QnO-f9-2p8"/>
+                            <constraint firstItem="B1g-pw-mYI" firstAttribute="leading" secondItem="yVi-pw-eI6" secondAttribute="leading" constant="12" id="SeV-ws-KO7"/>
                             <constraint firstAttribute="trailing" secondItem="3dh-xL-h1k" secondAttribute="trailing" constant="10" id="TcN-xQ-24N"/>
-                            <constraint firstItem="Yoe-Ih-DzZ" firstAttribute="centerY" secondItem="UrD-Un-gOT" secondAttribute="centerY" id="Wyc-9Z-gYa"/>
+                            <constraint firstItem="S58-Nw-PPr" firstAttribute="centerY" secondItem="UrD-Un-gOT" secondAttribute="centerY" id="X0P-5i-fuY"/>
                             <constraint firstItem="QvR-ZO-p6W" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="49U-qQ-4uN" secondAttribute="trailing" constant="10" id="bRB-zu-1kI"/>
-                            <constraint firstItem="UrD-Un-gOT" firstAttribute="top" secondItem="3cO-85-Ox1" secondAttribute="top" id="bvX-WF-eM6"/>
-                            <constraint firstItem="IV2-zi-jmv" firstAttribute="leading" secondItem="UrD-Un-gOT" secondAttribute="leading" id="cnk-Zz-l60"/>
-                            <constraint firstAttribute="trailing" secondItem="QvR-ZO-p6W" secondAttribute="trailing" constant="11" id="fgk-vu-WAC"/>
-                            <constraint firstItem="3dh-xL-h1k" firstAttribute="top" secondItem="B1g-pw-mYI" secondAttribute="bottom" constant="10" id="hT9-dL-fWG"/>
+                            <constraint firstItem="UrD-Un-gOT" firstAttribute="top" secondItem="3cO-85-Ox1" secondAttribute="top" constant="-1" id="bvX-WF-eM6"/>
+                            <constraint firstAttribute="trailing" secondItem="QvR-ZO-p6W" secondAttribute="trailing" constant="12" id="fgk-vu-WAC"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="S58-Nw-PPr" secondAttribute="trailing" constant="12" id="fye-RD-B3g"/>
+                            <constraint firstItem="3dh-xL-h1k" firstAttribute="top" secondItem="B1g-pw-mYI" secondAttribute="bottom" constant="15" id="hT9-dL-fWG"/>
                             <constraint firstItem="UrD-Un-gOT" firstAttribute="leading" secondItem="3cO-85-Ox1" secondAttribute="trailing" constant="10" id="hdz-n1-iJc"/>
-                            <constraint firstItem="3cO-85-Ox1" firstAttribute="top" secondItem="3dh-xL-h1k" secondAttribute="bottom" constant="17" id="jTo-xF-3ih"/>
+                            <constraint firstItem="3cO-85-Ox1" firstAttribute="top" secondItem="3dh-xL-h1k" secondAttribute="bottom" constant="12" id="jTo-xF-3ih"/>
                             <constraint firstItem="49U-qQ-4uN" firstAttribute="centerY" secondItem="B1g-pw-mYI" secondAttribute="centerY" id="qxD-34-ckW"/>
-                            <constraint firstItem="IV2-zi-jmv" firstAttribute="bottom" secondItem="3cO-85-Ox1" secondAttribute="bottom" id="rNx-Sz-vHU"/>
                             <constraint firstItem="49U-qQ-4uN" firstAttribute="leading" secondItem="B1g-pw-mYI" secondAttribute="trailing" constant="7" id="sGV-5F-Php"/>
+                            <constraint firstItem="U1J-hl-vzt" firstAttribute="leading" secondItem="UrD-Un-gOT" secondAttribute="leading" id="tN3-iJ-VJx"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="IV2-zi-jmv" secondAttribute="trailing" constant="12" id="yfa-NA-5Fe"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -141,26 +149,28 @@
                     </view>
                 </subviews>
                 <constraints>
-                    <constraint firstItem="yVi-pw-eI6" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="10" id="62n-c0-8Ja"/>
+                    <constraint firstItem="yVi-pw-eI6" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="7" id="62n-c0-8Ja"/>
                     <constraint firstAttribute="trailing" secondItem="yVi-pw-eI6" secondAttribute="trailing" constant="14" id="GN1-88-SxQ"/>
                     <constraint firstItem="yVi-pw-eI6" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="kcc-Dh-wvc"/>
                     <constraint firstAttribute="bottom" secondItem="yVi-pw-eI6" secondAttribute="bottom" constant="12" id="nGz-Cw-zKm"/>
                 </constraints>
             </tableViewCellContentView>
-            <viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
             <connections>
-                <outlet property="chatButton" destination="Yoe-Ih-DzZ" id="gQx-81-zPe"/>
+                <outlet property="attendenceImgLeft" destination="QnO-f9-2p8" id="kpg-rJ-MbG"/>
+                <outlet property="attendenceImgWidth" destination="iAZ-gk-ktl" id="1J2-6m-vVv"/>
+                <outlet property="attendentStatusImage" destination="S58-Nw-PPr" id="TPF-z6-C9T"/>
+                <outlet property="courseNameLabel" destination="UrD-Un-gOT" id="S7k-Sc-t6A"/>
                 <outlet property="courseTime" destination="49U-qQ-4uN" id="iaX-q1-K4j"/>
+                <outlet property="statusLabel" destination="QvR-ZO-p6W" id="QWG-oD-Iz9"/>
                 <outlet property="studentAvatar" destination="3cO-85-Ox1" id="Eme-uy-gve"/>
-                <outlet property="studentName" destination="UrD-Un-gOT" id="dal-Eo-Oyd"/>
+                <outlet property="studentName" destination="U1J-hl-vzt" id="zWU-aZ-sp4"/>
                 <outlet property="studentSubject" destination="4gL-4k-HYe" id="I41-1H-tE7"/>
             </connections>
-            <point key="canvasLocation" x="67.938931297709928" y="64.436619718309856"/>
+            <point key="canvasLocation" x="109.16030534351144" y="93.661971830985919"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="course_chat" width="19" height="18"/>
         <image name="course_time" width="16" height="16"/>
         <image name="student_avatar" width="150" height="150"/>
         <systemColor name="systemBackgroundColor">

+ 2 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Course/View/CourseGroupView/CourseGroupPlanAlertView.h

@@ -19,6 +19,8 @@ NS_ASSUME_NONNULL_BEGIN
 
 - (void)showInView:(UIView *)displayView;
 
+// 暴露给其他地方使用 
+- (void)configWithHeadTitle:(NSString *)headTitle tipsDesc:(NSString *)tipsDesc sureButtonTitle:(NSString *)sureButtonTitle maxCount:(NSInteger)maxCount;
 @end
 
 NS_ASSUME_NONNULL_END

+ 23 - 4
KulexiuForTeacher/KulexiuForTeacher/Module/Course/View/CourseGroupView/CourseGroupPlanAlertView.m

@@ -9,6 +9,10 @@
 
 @interface CourseGroupPlanAlertView ()<UITextViewDelegate,UIGestureRecognizerDelegate>
 
+@property (weak, nonatomic) IBOutlet UILabel *headTitleLabel;
+
+@property (weak, nonatomic) IBOutlet UIButton *sureButton;
+
 @property (weak, nonatomic) IBOutlet UIView *bgView;
 
 @property (weak, nonatomic) IBOutlet UITextView *textView;
@@ -19,6 +23,8 @@
 
 @property (nonatomic, copy) PlanModifyCallback callback;
 
+@property (nonatomic, assign) NSInteger maxInputCount;
+
 @end
 
 @implementation CourseGroupPlanAlertView
@@ -30,6 +36,11 @@
     self.bgView.layer.cornerRadius = 12.0f;
     self.bgView.layer.maskedCorners = kCALayerMinXMinYCorner | kCALayerMaxXMinYCorner;
     [self addTagGreture];
+    [self configDefault];
+}
+
+- (void)configDefault {
+    self.maxInputCount = 500;
 }
 
 - (void)addTagGreture {
@@ -62,7 +73,7 @@
     if (callback) {
         self.callback = callback;
     }
-    self.countLabel.text = [NSString stringWithFormat:@"%zd/500",planString.length];
+    self.countLabel.text = [NSString stringWithFormat:@"%zd/%zd",planString.length, self.maxInputCount];
     self.tipsLabel.hidden = [NSString isEmptyString:planString] ? NO : YES;
     self.textView.attributedText = [[NSAttributedString alloc] initWithString:planString attributes:[self getTypeAttributes]];
 }
@@ -92,6 +103,14 @@
     }
 }
 
+// 暴露给其他地方使用
+- (void)configWithHeadTitle:(NSString *)headTitle tipsDesc:(NSString *)tipsDesc sureButtonTitle:(NSString *)sureButtonTitle maxCount:(NSInteger)maxCount {
+    self.headTitleLabel.text = [NSString returnNoNullStringWithString:headTitle];
+    self.tipsLabel.text = [NSString returnNoNullStringWithString:tipsDesc];
+    [self.sureButton setTitle:sureButtonTitle forState:UIControlStateNormal];
+    self.countLabel.text = [NSString stringWithFormat:@"0/%zd", self.maxInputCount];
+}
+
 #pragma mark   ---- delegate
 
 - (void)textViewDidBeginEditing:(UITextView *)textView {
@@ -111,7 +130,7 @@
         // 当前处于拼音输入状态,暂不更新 attributedText
         return YES;
     }
-    NSInteger limitCount = 500;
+    NSInteger limitCount = self.maxInputCount;
 
     NSString *newText = [[textView text] stringByReplacingCharactersInRange:range withString:text];
     if (newText.length > limitCount) {
@@ -143,7 +162,7 @@
     // 如果没有高亮选择的文本,说明不是拼音输入状态
     if (!position) {
         // 获取当前textView的内容
-        NSInteger limitCount = 500;
+        NSInteger limitCount = self.maxInputCount;
         NSString *currentText = textView.text;
         
         // 如果文本超出最大长度,进行截取
@@ -152,7 +171,7 @@
             textView.text = limitedText;
         }
         
-        self.countLabel.text = [NSString stringWithFormat:@"%zd/500",textView.text.length];
+        self.countLabel.text = [NSString stringWithFormat:@"%zd/%zd",textView.text.length,self.maxInputCount];
     }
     [self updateTextViewLineHeight:textView];
 }

+ 3 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Course/View/CourseGroupView/CourseGroupPlanAlertView.xib

@@ -97,6 +97,7 @@
                             <constraints>
                                 <constraint firstAttribute="height" constant="44" id="nZe-p3-TfW"/>
                             </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="16"/>
                             <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                             <state key="normal" title="确认"/>
                             <userDefinedRuntimeAttributes>
@@ -139,6 +140,8 @@
             <connections>
                 <outlet property="bgView" destination="DQA-Yl-R8S" id="f1A-iE-nz9"/>
                 <outlet property="countLabel" destination="G0D-65-phx" id="yDz-EG-MmP"/>
+                <outlet property="headTitleLabel" destination="1QL-rw-ewk" id="eUV-tM-2IF"/>
+                <outlet property="sureButton" destination="bSw-AS-d2f" id="cii-nL-1se"/>
                 <outlet property="textView" destination="ozS-Ji-bWH" id="r4e-Xa-fMb"/>
                 <outlet property="tipsLabel" destination="dyn-hF-Vp7" id="lRV-me-VWS"/>
             </connections>

+ 9 - 13
KulexiuForTeacher/KulexiuForTeacher/Module/Home/EvaluateCourse/Controller/EvaluateDetailViewController.m

@@ -8,14 +8,14 @@
 #import "EvaluateDetailViewController.h"
 #import "AccompanyEvaluateCell.h"
 #import "AccompanyCourseInfoCell.h"
-#import "AccompanyAlertView.h"
+#import "CourseGroupPlanAlertView.h"
 #import "EvaluateDetailModel.h"
 
 @interface EvaluateDetailViewController ()<UITableViewDelegate,UITableViewDataSource>
 
 @property (nonatomic, strong) UITableView *tableView;
 
-@property (nonatomic, strong) AccompanyAlertView *alertView;
+@property (nonatomic, strong) CourseGroupPlanAlertView *alertView;
 
 @property (nonatomic, strong) EvaluateDetailModel *detailModel;
 
@@ -46,7 +46,6 @@
     [LOADING_MANAGER showHUD];
     [KSNetworkingManager selectRepliedRequest:KS_POST courseGroupId:self.courseGroupId courseScheduleId:self.courseId studentId:self.studentId success:^(NSDictionary * _Nonnull dic) {
         [LOADING_MANAGER removeHUD];
-        NSLog(@"%@- " , [dic mj_JSONString]);
         if ([dic ks_integerValueForKey:@"code"] == 200 && [dic ks_boolValueForKey:@"status"]) {
             self.detailModel = [[EvaluateDetailModel alloc] initWithDictionary:[dic ks_dictionaryValueForKey:@"data"]];
         }
@@ -69,8 +68,7 @@
         AccompanyCourseInfoCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyCourseInfoCell"];
         cell.statusLabel.text = @"已结束";
         cell.statusLabel.textColor = HexRGB(0x999999);
-        [cell configWithStartTime:self.detailModel.startTime endTime:self.detailModel.endTime studentAvatar:self.detailModel.avatar studentName:self.detailModel.userName studentId:self.detailModel.studentId studentSubject:self.detailModel.subjectName];
-        cell.hideChatButton = YES;
+        [cell configWithStartTime:self.detailModel.startTime endTime:self.detailModel.endTime studentAvatar:self.detailModel.avatar studentName:self.detailModel.userName studentId:self.detailModel.studentId studentSubject:self.detailModel.subjectName courseName:@""];
         return cell;
     }
     else {
@@ -78,7 +76,7 @@
         NSString *message = self.detailModel.teacherReplied;
         BOOL hasEvaluate = [NSString isEmptyString:self.detailModel.teacherReplied] ? NO : YES;
         MJWeakSelf;
-        [cell configWithEvaluateMessage:message hasEvaluate:hasEvaluate callback:^{
+        [cell configWithEvaluateMessage:message hasEvaluate:hasEvaluate courseStatus:@"COMPLETE" callback:^{
             [weakSelf evaluateCourse];
         }];
         return cell;
@@ -86,15 +84,13 @@
 }
 
 - (void)evaluateCourse {
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"评价学员";
-    self.alertView.tipsLabel.text = @"请输入您对本次课程学员表现的评价";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"评价学员" tipsDesc:@"请输入您对本次课程学员表现的评价" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf evaluateAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf evaluateAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)evaluateAction:(NSString *)content {

+ 53 - 24
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/Controller/HomeworkDetailViewController.m

@@ -10,15 +10,19 @@
 #import "AccompanyArrangeCell.h"
 #import "AccompanyHomeworkCell.h"
 #import "AccompanyRemarkCell.h"
-#import "AccompanyAlertView.h"
+#import "CourseGroupPlanAlertView.h"
 #import "HomeworkDetailModel.h"
 #import <WMPlayer.h>
+#import "HomeworkDetailNavView.h"
 
 @interface HomeworkDetailViewController ()<UITableViewDelegate, UITableViewDataSource,WMPlayerDelegate>
 {
     WMPlayer *_wmPlayer;
     CGRect _playerFrame;
 }
+
+@property (nonatomic, strong) HomeworkDetailNavView *navView;
+
 @property (nonatomic, strong) UIView *bgView;
 
 @property (nonatomic, assign) BOOL isRatation;
@@ -27,7 +31,7 @@
 
 @property (nonatomic, assign) NSInteger cellCount;
 
-@property (nonatomic, strong) AccompanyAlertView *alertView;
+@property (nonatomic, strong) CourseGroupPlanAlertView *alertView;
 
 @property (nonatomic, strong) HomeworkDetailModel *detailModel;
 
@@ -40,17 +44,30 @@
 - (void)viewDidLoad {
     [super viewDidLoad];
     // Do any additional setup after loading the view.
+    self.ks_prefersNavigationBarHidden = YES;
     [self allocTitle:@"布置作业"];
     [self requestCourseMessage];
 }
 
 - (void)setupUI {
     [self.scrollView removeFromSuperview];
-    self.view.backgroundColor = HexRGB(0xf8f9fc);
+    UIImage *bgImage = [UIImage imageNamed:@"homework_detail_bg"];
+    CGFloat height = bgImage.size.height / bgImage.size.width * KPortraitWidth;
+    UIImageView *imageView = [[UIImageView alloc] initWithImage:bgImage];
+    imageView.frame = CGRectMake(0, 0, KPortraitWidth, height);
+    [self.view addSubview:imageView];
+    
+    [self.view addSubview:self.navView];
+    CGFloat navHeight = [HomeworkDetailNavView getViewHeight];
+    [self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.right.top.mas_equalTo(self.view);
+        make.height.mas_equalTo(navHeight);
+    }];
     [self.view addSubview:self.tableView];
     [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
-        make.left.right.top.mas_equalTo(self.view);
-        make.bottom.mas_equalTo(self.view.mas_bottom).offset(-iPhoneXSafeBottomMargin);
+        make.top.mas_equalTo(self.navView.mas_bottom);
+        make.left.right.mas_equalTo(self.view);
+        make.bottom.mas_equalTo(self.view.mas_bottom);
     }];
 }
 
@@ -92,7 +109,7 @@
 
 #pragma mark ----- table data source
 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
-    return self.cellCount;
+    return 4;
 }
 
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
@@ -100,8 +117,7 @@
         AccompanyCourseInfoCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyCourseInfoCell"];
         cell.statusLabel.text = @"已结束";
         cell.statusLabel.textColor = HexRGB(0x999999);
-        [cell configWithStartTime:self.detailModel.startTime endTime:self.detailModel.endTime studentAvatar:self.detailModel.studentAvatar studentName:self.detailModel.studentName studentId:self.detailModel.studentId studentSubject:self.detailModel.subjectName];
-        cell.hideChatButton = YES;
+        [cell configWithStartTime:self.detailModel.startTime endTime:self.detailModel.endTime studentAvatar:self.detailModel.studentAvatar studentName:self.detailModel.studentName studentId:self.detailModel.studentId studentSubject:self.detailModel.subjectName courseName:self.detailModel.courseGroupName];
         return cell;
     }
     else if (indexPath.row == 1) { // 布置作业
@@ -109,7 +125,7 @@
         BOOL hasArrange = self.detailModel.decorateHomework == 1 ? YES : NO;
         
         MJWeakSelf;
-        [cell configWithHomeworkContent:self.detailModel.content hasArrangeHomework:hasArrange callback:^{
+        [cell configWithHomeworkContent:self.detailModel.content hasArrangeHomework:hasArrange courseStatus:self.detailModel.courseStatus callback:^{
             [weakSelf arrangeHomework];
         }];
         return cell;
@@ -128,8 +144,9 @@
     else { // 老师点评
         AccompanyRemarkCell *cell = [tableView dequeueReusableCellWithIdentifier:@"AccompanyRemarkCell"];
         BOOL hasEvaluate = self.detailModel.reviewHomework == 1? YES : NO;
+        BOOL hasSubmitHomework = self.detailModel.submitHomework == 1 ? YES : NO;
         MJWeakSelf;
-        [cell configWithRemarkMessage:self.detailModel.teacherReplied hasEvaluate:hasEvaluate callback:^{
+        [cell configWithRemarkMessage:self.detailModel.teacherReplied hasEvaluate:hasEvaluate hasSubmitHomework:hasSubmitHomework callback:^{
             [weakSelf evaluateHomework];
         }];
         return cell;
@@ -145,15 +162,14 @@
 
 
 - (void)arrangeHomework {
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"布置作业";
-    self.alertView.tipsLabel.text = @"请输入本次课程作业内容";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"布置作业" tipsDesc:@"请输入本次课程作业内容" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf arrangeAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf arrangeAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 // 评价作业
@@ -162,15 +178,14 @@
         [LOADING_MANAGER MBShowAUTOHidingInWindow:@"学生暂未提交作业"];
         return;
     }
-    self.alertView = [AccompanyAlertView shareInstance];
-    self.alertView.alertTitle.text = @"作业点评";
-    self.alertView.tipsLabel.text = @"请输入您对本次作业的点评";
-    self.alertView.frame = CGRectMake(0, 0, kScreenWidth, kScreenHeight);
-    [self.alertView showInView:[UIApplication sharedApplication].keyWindow showStarView:NO];
+    
+    self.alertView = [CourseGroupPlanAlertView sharedInstance];
+    [self.alertView configWithHeadTitle:@"作业点评" tipsDesc:@"请输入您对本次作业的点评" sureButtonTitle:@"提交" maxCount:200];
     MJWeakSelf;
-    [self.alertView sureCallback:^(NSString * _Nonnull content, NSInteger starNum) {
-        [weakSelf evaluateAction:content];
+    [self.alertView configWithDesc:@"" callback:^(NSString * _Nullable planString) {
+        [weakSelf evaluateAction:planString];
     }];
+    [self.alertView showInView:self.view];
 }
 
 - (void)evaluateAction:(NSString *)evaluateContent {
@@ -221,6 +236,9 @@
         [_tableView registerNib:[UINib nibWithNibName:@"AccompanyArrangeCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"AccompanyArrangeCell"];
         [_tableView registerNib:[UINib nibWithNibName:@"AccompanyHomeworkCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"AccompanyHomeworkCell"];
         [_tableView registerNib:[UINib nibWithNibName:@"AccompanyRemarkCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"AccompanyRemarkCell"];
+        UIView *bottomView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, KPortraitWidth, iPhoneXSafeBottomMargin)];
+        bottomView.backgroundColor = [UIColor clearColor];
+        _tableView.tableFooterView = bottomView;
     }
     return _tableView;
 }
@@ -279,6 +297,17 @@
     }
 }
 
+- (HomeworkDetailNavView *)navView {
+    if (!_navView) {
+        _navView = [HomeworkDetailNavView sharedInstance];
+        MJWeakSelf;
+        [_navView navAction:^{
+            [weakSelf backAction];
+        }];
+    }
+    return _navView;
+}
+
 /*
 #pragma mark - Navigation
 

+ 2 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/Model/HomeworkDetailModel.h

@@ -38,6 +38,8 @@
 @property (nonatomic, strong) NSString *studentId;
 @property (nonatomic, assign) NSInteger homeworkExpire;
 @property (nonatomic, strong) NSString *imUserId;
+@property (nonatomic, strong) NSString *courseGroupName;
+@property (nonatomic, assign) BOOL attendanceStatus;
 
 + (instancetype)modelObjectWithDictionary:(NSDictionary *)dict;
 - (instancetype)initWithDictionary:(NSDictionary *)dict;

+ 14 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/Model/HomeworkDetailModel.m

@@ -35,7 +35,8 @@ NSString *const kHomeworkDetailModelReviewHomework = @"reviewHomework";
 NSString *const kHomeworkDetailModelStudentId = @"studentId";
 NSString *const kHomeworkDetailModelHomeworkExpire = @"homeworkExpire";
 NSString *const kHomeworkDetailModelImUserId = @"imUserId";
-
+NSString *const kHomeworkDetailModelCourseGroupName = @"courseGroupName";
+NSString *const kHomeworkDetailModelAttendanceStatus = @"attendanceStatus";
 
 @interface HomeworkDetailModel ()
 
@@ -72,6 +73,8 @@ NSString *const kHomeworkDetailModelImUserId = @"imUserId";
 @synthesize studentId = _studentId;
 @synthesize homeworkExpire = _homeworkExpire;
 @synthesize imUserId = _imUserId;
+@synthesize courseGroupName = _courseGroupName;
+@synthesize attendanceStatus = _attendanceStatus;
 
 + (instancetype)modelObjectWithDictionary:(NSDictionary *)dict
 {
@@ -112,6 +115,8 @@ NSString *const kHomeworkDetailModelImUserId = @"imUserId";
         self.studentId = [self objectOrNilForKey:kHomeworkDetailModelStudentId fromDictionary:dict];
         self.homeworkExpire = [[self objectOrNilForKey:kHomeworkDetailModelHomeworkExpire fromDictionary:dict] integerValue];
         self.imUserId = [self objectOrNilForKey:kHomeworkDetailModelImUserId fromDictionary:dict];
+        self.courseGroupName = [self objectOrNilForKey:kHomeworkDetailModelCourseGroupName fromDictionary:dict];
+        self.attendanceStatus = [[self objectOrNilForKey:kHomeworkDetailModelAttendanceStatus fromDictionary:dict] boolValue];
     }
     
     return self;
@@ -148,6 +153,8 @@ NSString *const kHomeworkDetailModelImUserId = @"imUserId";
     [mutableDict setValue:self.studentId forKey:kHomeworkDetailModelStudentId];
     [mutableDict setValue:[NSNumber numberWithInteger:self.homeworkExpire] forKey:kHomeworkDetailModelHomeworkExpire];
     [mutableDict setValue:self.imUserId forKey:kHomeworkDetailModelImUserId];
+    [mutableDict setValue:self.courseGroupName forKey:kHomeworkDetailModelCourseGroupName];
+    [mutableDict setValue:[NSNumber numberWithBool:self.attendanceStatus] forKey:kHomeworkDetailModelAttendanceStatus];
     return [NSDictionary dictionaryWithDictionary:mutableDict];
 }
 
@@ -201,6 +208,8 @@ NSString *const kHomeworkDetailModelImUserId = @"imUserId";
     self.studentId = [aDecoder decodeObjectForKey:kHomeworkDetailModelStudentId];
     self.homeworkExpire = [aDecoder decodeIntegerForKey:kHomeworkDetailModelHomeworkExpire];
     self.imUserId = [aDecoder decodeObjectForKey:kHomeworkDetailModelImUserId];
+    self.courseGroupName = [aDecoder decodeObjectForKey:kHomeworkDetailModelCourseGroupName];
+    self.attendanceStatus = [aDecoder decodeBoolForKey:kHomeworkDetailModelAttendanceStatus];
     return self;
 }
 
@@ -234,6 +243,8 @@ NSString *const kHomeworkDetailModelImUserId = @"imUserId";
     [aCoder encodeObject:_studentId forKey:kHomeworkDetailModelStudentId];
     [aCoder encodeInteger:_homeworkExpire forKey:kHomeworkDetailModelHomeworkExpire];
     [aCoder encodeObject:_imUserId forKey:kHomeworkDetailModelImUserId];
+    [aCoder encodeObject:_courseGroupName forKey:kHomeworkDetailModelCourseGroupName];
+    [aCoder encodeBool:_attendanceStatus forKey:kHomeworkDetailModelAttendanceStatus];
 }
 
 - (id)copyWithZone:(NSZone *)zone
@@ -269,6 +280,8 @@ NSString *const kHomeworkDetailModelImUserId = @"imUserId";
         copy.studentId = [self.studentId copyWithZone:zone];
         copy.homeworkExpire = self.homeworkExpire;
         copy.imUserId = [self.imUserId copyWithZone:zone];
+        copy.courseGroupName = [self.courseGroupName copyWithZone:zone];
+        copy.attendanceStatus = self.attendanceStatus;
     }
     
     return copy;

+ 5 - 4
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkBodyView.m

@@ -44,19 +44,20 @@
 - (instancetype)initWithFrame:(CGRect)frame {
     self = [super initWithFrame:frame];
     if (self) {
-        self.backgroundColor = HexRGB(0xf8f9fc);
+        self.backgroundColor = [UIColor clearColor];
         self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, frame.size.width, frame.size.height) style:UITableViewStylePlain];
-        self.tableView.backgroundColor = HexRGB(0xf8f9fc);
+        self.tableView.backgroundColor = [UIColor clearColor];
         self.tableView.showsVerticalScrollIndicator = NO;
         self.tableView.showsHorizontalScrollIndicator = NO;
         self.tableView.dataSource = self;
         self.tableView.delegate = self;
         self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
-        self.tableView.rowHeight = 132;
+        self.tableView.estimatedRowHeight = 123.0f;
+        self.tableView.rowHeight = UITableViewAutomaticDimension;
         [self addSubview:self.tableView];
         
         UIView *bottomView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth, 10)];
-        bottomView.backgroundColor = HexRGB(0xf8f9fc);
+        bottomView.backgroundColor = [UIColor clearColor];
         self.tableView.tableFooterView = bottomView;
         
         [self.tableView registerNib:[UINib nibWithNibName:@"HomeworkListCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"HomeworkListCell"];

+ 24 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkDetailNavView.h

@@ -0,0 +1,24 @@
+//
+//  HomeworkDetailNavView.h
+//  KulexiuForTeacher
+//
+//  Created by 王智 on 2024/12/18.
+//
+
+#import <UIKit/UIKit.h>
+
+typedef void(^HomeworkDetailNavCallbcak)(void);
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface HomeworkDetailNavView : UIView
+
++ (instancetype)sharedInstance;
+
+- (void)navAction:(HomeworkDetailNavCallbcak)callback;
+
++ (CGFloat)getViewHeight;
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 48 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkDetailNavView.m

@@ -0,0 +1,48 @@
+//
+//  HomeworkDetailNavView.m
+//  KulexiuForTeacher
+//
+//  Created by 王智 on 2024/12/18.
+//
+
+#import "HomeworkDetailNavView.h"
+
+@interface HomeworkDetailNavView ()
+
+@property (nonatomic, copy) HomeworkDetailNavCallbcak callback;
+
+@end
+
+@implementation HomeworkDetailNavView
+
++ (instancetype)sharedInstance {
+    HomeworkDetailNavView *view = [[[NSBundle mainBundle] loadNibNamed:@"HomeworkDetailNavView" owner:nil options:nil] firstObject];
+    return view;
+}
+
+- (void)navAction:(HomeworkDetailNavCallbcak)callback {
+    if (callback) {
+        self.callback = callback;
+    }
+}
+
+- (IBAction)backAction:(id)sender {
+    if (self.callback) {
+        self.callback();
+    }
+}
+
+
++ (CGFloat)getViewHeight {
+    return kNaviBarHeight;
+}
+
+/*
+// Only override drawRect: if you perform custom drawing.
+// An empty implementation adversely affects performance during animation.
+- (void)drawRect:(CGRect)rect {
+    // Drawing code
+}
+*/
+
+@end

+ 70 - 0
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkDetailNavView.xib

@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="HomeworkDetailNavView">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="85"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <subviews>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="xsV-90-Zd6">
+                    <rect key="frame" x="0.0" y="41" width="393" height="44"/>
+                    <subviews>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="back_black" translatesAutoresizingMaskIntoConstraints="NO" id="AQB-xu-6H7">
+                            <rect key="frame" x="15" y="12" width="12" height="20"/>
+                        </imageView>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="UoA-VP-Fws">
+                            <rect key="frame" x="0.0" y="2" width="40" height="40"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="40" id="Xp5-Ds-eNy"/>
+                                <constraint firstAttribute="width" constant="40" id="xxJ-pU-4Ax"/>
+                            </constraints>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <connections>
+                                <action selector="backAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="WGB-hc-SG6"/>
+                            </connections>
+                        </button>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="作业详情" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FnB-gp-B52">
+                            <rect key="frame" x="160.66666666666666" y="9.6666666666666643" width="71.666666666666657" height="25"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="25" id="nKJ-o5-iC0"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="18"/>
+                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <nil key="highlightedColor"/>
+                        </label>
+                    </subviews>
+                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                    <constraints>
+                        <constraint firstItem="FnB-gp-B52" firstAttribute="centerY" secondItem="UoA-VP-Fws" secondAttribute="centerY" id="TZu-4o-fIz"/>
+                        <constraint firstItem="UoA-VP-Fws" firstAttribute="leading" secondItem="xsV-90-Zd6" secondAttribute="leading" id="WuZ-8u-t6J"/>
+                        <constraint firstItem="UoA-VP-Fws" firstAttribute="centerY" secondItem="AQB-xu-6H7" secondAttribute="centerY" id="bhH-1i-W57"/>
+                        <constraint firstItem="AQB-xu-6H7" firstAttribute="centerY" secondItem="xsV-90-Zd6" secondAttribute="centerY" id="fGJ-ve-rRi"/>
+                        <constraint firstItem="AQB-xu-6H7" firstAttribute="leading" secondItem="xsV-90-Zd6" secondAttribute="leading" constant="15" id="idj-Sg-k9Z"/>
+                        <constraint firstAttribute="height" constant="44" id="jyN-FR-WVp"/>
+                        <constraint firstItem="FnB-gp-B52" firstAttribute="centerX" secondItem="xsV-90-Zd6" secondAttribute="centerX" id="rc8-LL-J9T"/>
+                    </constraints>
+                </view>
+            </subviews>
+            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+            <constraints>
+                <constraint firstItem="xsV-90-Zd6" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="Mtx-db-Xyu"/>
+                <constraint firstAttribute="trailing" secondItem="xsV-90-Zd6" secondAttribute="trailing" id="Wvd-vg-Kps"/>
+                <constraint firstAttribute="bottom" secondItem="xsV-90-Zd6" secondAttribute="bottom" id="c5m-tt-FPf"/>
+            </constraints>
+            <nil key="simulatedTopBarMetrics"/>
+            <nil key="simulatedBottomBarMetrics"/>
+            <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+            <point key="canvasLocation" x="43.511450381679388" y="-108.09859154929578"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="back_black" width="12" height="20"/>
+    </resources>
+</document>

+ 7 - 2
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkListCell.m

@@ -9,6 +9,8 @@
 
 @interface HomeworkListCell ()
 
+@property (weak, nonatomic) IBOutlet UILabel *courseGroupName;
+
 @property (weak, nonatomic) IBOutlet UILabel *courseTime;
 
 @property (weak, nonatomic) IBOutlet UIImageView *studentAvatal;
@@ -46,6 +48,7 @@
     [formatter setDateFormat:@"HH:mm"];
     NSString *lessonEnd = [formatter stringFromDate:endDate];
     self.courseTime.text = [NSString stringWithFormat:@"%@~%@",[NSString returnNoNullStringWithString:lessonBegin],[NSString returnNoNullStringWithString:lessonEnd]];
+    self.courseGroupName.text = [NSString returnNoNullStringWithString:sourceModel.courseGroupName];
     if ([NSString isEmptyString:sourceModel.studentName]) {
         self.studentNameLabel.text = [NSString stringWithFormat:@"游客%@",sourceModel.studentId];
     }
@@ -61,7 +64,9 @@
     
     // 判断是否布置了作业
     if ([NSString isEmptyString:sourceModel.decorateTime]) {
-        self.statusLabel.hidden = YES;
+        self.statusLabel.hidden = NO;
+        self.statusLabel.text = @"未布置";
+        self.statusLabel.textColor = HexRGB(0xff802c);
     }
     else {
         self.statusLabel.hidden = NO;
@@ -81,7 +86,7 @@
             self.statusLabel.hidden = YES;
         }
     }
-
+    
 }
 
 - (void)chatWithStudent:(HomeworkChatCallback)callback {

+ 57 - 54
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/HomeworkListCell.xib

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
     <device id="retina6_1" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -11,38 +11,41 @@
     <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="87" id="KGk-i7-Jjw" customClass="HomeworkListCell">
-            <rect key="frame" x="0.0" y="0.0" width="468" height="138"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="74" id="KGk-i7-Jjw" customClass="HomeworkListCell">
+            <rect key="frame" x="0.0" y="0.0" width="468" height="123"/>
             <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="468" height="138"/>
+                <rect key="frame" x="0.0" y="0.0" width="468" height="123"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="7PV-kN-jHP">
-                        <rect key="frame" x="14" y="0.0" width="440" height="126"/>
+                        <rect key="frame" x="14" y="0.0" width="440" height="111"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8DG-NN-Big">
-                                <rect key="frame" x="10" y="38" width="420" height="1"/>
+                                <rect key="frame" x="10" y="46" width="420" height="1"/>
                                 <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="1" id="J5x-mn-Xjj"/>
                                 </constraints>
                             </view>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_time" translatesAutoresizingMaskIntoConstraints="NO" id="tGm-S4-F4x">
-                                <rect key="frame" x="11" y="12" width="16" height="16"/>
+                                <rect key="frame" x="12" y="15" width="16" height="16"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="16" id="JtY-7v-IEx"/>
                                     <constraint firstAttribute="width" constant="16" id="eRH-xo-J70"/>
                                 </constraints>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2021/09/17 14:00~14:25" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pXr-41-D0m">
-                                <rect key="frame" x="34" y="12" width="147" height="16"/>
+                                <rect key="frame" x="35" y="14" width="147" height="18"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="18" id="FPT-CM-dfC"/>
+                                </constraints>
                                 <fontDescription key="fontDescription" type="system" pointSize="13"/>
-                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已结束" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1qw-WH-Jvr">
-                                <rect key="frame" x="379" y="11.5" width="50" height="17"/>
+                                <rect key="frame" x="379" y="14.5" width="50" height="17"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="50" id="E6U-2d-Wcf"/>
                                 </constraints>
@@ -51,42 +54,42 @@
                                 <nil key="highlightedColor"/>
                             </label>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="student_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="RUc-4R-w37">
-                                <rect key="frame" x="11" y="56" width="47" height="47"/>
+                                <rect key="frame" x="12" y="59" width="40" height="40"/>
                                 <constraints>
-                                    <constraint firstAttribute="width" constant="47" id="ERa-d0-RjJ"/>
-                                    <constraint firstAttribute="height" constant="47" id="b7T-Sz-cr8"/>
+                                    <constraint firstAttribute="width" constant="40" id="ERa-d0-RjJ"/>
+                                    <constraint firstAttribute="height" constant="40" id="b7T-Sz-cr8"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
-                                        <real key="value" value="5"/>
+                                        <real key="value" value="20"/>
                                     </userDefinedRuntimeAttribute>
                                 </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="FpP-hs-iFV">
-                                <rect key="frame" x="68" y="56" width="49" height="24"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="VIP定制课-张涵宇" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FpP-hs-iFV">
+                                <rect key="frame" x="62" y="58" width="366" height="21"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="24" id="EnM-36-tXQ"/>
+                                    <constraint firstAttribute="height" constant="21" id="EnM-36-tXQ"/>
                                 </constraints>
-                                <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
-                                <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="calibratedRGB"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                <color key="textColor" red="0.074509803921568626" green="0.078431372549019607" blue="0.082352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6lL-kM-wkw">
-                                <rect key="frame" x="68" y="83" width="44" height="20"/>
+                            <view contentMode="scaleToFill" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="6lL-kM-wkw">
+                                <rect key="frame" x="106" y="83" width="38" height="17"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="单簧管" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="N2M-qy-lji">
-                                        <rect key="frame" x="5" y="0.0" width="34" height="20"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="11"/>
-                                        <color key="textColor" red="1" green="0.54901960780000003" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" text="单簧管" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="N2M-qy-lji">
+                                        <rect key="frame" x="4" y="0.0" width="30" height="17"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="10"/>
+                                        <color key="textColor" red="1" green="0.5490196078431373" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                 </subviews>
-                                <color key="backgroundColor" red="1" green="0.94509803920000002" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="1" green="0.94509803921568625" blue="0.87058823529411766" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="20" id="0Bh-JX-Emk"/>
+                                    <constraint firstAttribute="height" constant="17" id="0Bh-JX-Emk"/>
                                     <constraint firstAttribute="bottom" secondItem="N2M-qy-lji" secondAttribute="bottom" id="W9B-0Z-WhX"/>
-                                    <constraint firstAttribute="trailing" secondItem="N2M-qy-lji" secondAttribute="trailing" constant="5" id="gCN-fa-45e"/>
-                                    <constraint firstItem="N2M-qy-lji" firstAttribute="leading" secondItem="6lL-kM-wkw" secondAttribute="leading" constant="5" id="mBQ-WO-UKp"/>
+                                    <constraint firstAttribute="trailing" secondItem="N2M-qy-lji" secondAttribute="trailing" constant="4" id="gCN-fa-45e"/>
+                                    <constraint firstItem="N2M-qy-lji" firstAttribute="leading" secondItem="6lL-kM-wkw" secondAttribute="leading" constant="4" id="mBQ-WO-UKp"/>
                                     <constraint firstItem="N2M-qy-lji" firstAttribute="top" secondItem="6lL-kM-wkw" secondAttribute="top" id="yfs-2E-vzh"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
@@ -95,36 +98,36 @@
                                     </userDefinedRuntimeAttribute>
                                 </userDefinedRuntimeAttributes>
                             </view>
-                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="p4E-9g-vYI">
-                                <rect key="frame" x="117" y="48" width="40" height="40"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张涵宇" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="stA-F2-L3d">
+                                <rect key="frame" x="62" y="83" width="39" height="17"/>
                                 <constraints>
-                                    <constraint firstAttribute="width" constant="40" id="NEW-y5-Oa7"/>
-                                    <constraint firstAttribute="height" constant="40" id="zmM-0I-BZc"/>
+                                    <constraint firstAttribute="height" constant="17" id="cMo-8a-5em"/>
                                 </constraints>
-                                <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
-                                <state key="normal" image="course_chat"/>
-                                <connections>
-                                    <action selector="chatAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="SHA-Sd-33P"/>
-                                </connections>
-                            </button>
+                                <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                                <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
+                            <constraint firstItem="6lL-kM-wkw" firstAttribute="leading" secondItem="stA-F2-L3d" secondAttribute="trailing" constant="5" id="13v-Pw-3JD"/>
                             <constraint firstAttribute="trailing" secondItem="1qw-WH-Jvr" secondAttribute="trailing" constant="11" id="18O-zO-GbD"/>
-                            <constraint firstItem="tGm-S4-F4x" firstAttribute="top" secondItem="7PV-kN-jHP" secondAttribute="top" constant="12" id="4GN-CO-nq1"/>
-                            <constraint firstItem="8DG-NN-Big" firstAttribute="top" secondItem="tGm-S4-F4x" secondAttribute="bottom" constant="10" id="6Ws-sC-rr1"/>
+                            <constraint firstAttribute="trailing" secondItem="FpP-hs-iFV" secondAttribute="trailing" constant="12" id="21I-yO-H60"/>
+                            <constraint firstItem="stA-F2-L3d" firstAttribute="bottom" secondItem="RUc-4R-w37" secondAttribute="bottom" constant="1" id="49D-GA-J7i"/>
+                            <constraint firstItem="tGm-S4-F4x" firstAttribute="top" secondItem="7PV-kN-jHP" secondAttribute="top" constant="15" id="4GN-CO-nq1"/>
+                            <constraint firstItem="8DG-NN-Big" firstAttribute="top" secondItem="tGm-S4-F4x" secondAttribute="bottom" constant="15" id="6Ws-sC-rr1"/>
                             <constraint firstItem="8DG-NN-Big" firstAttribute="leading" secondItem="7PV-kN-jHP" secondAttribute="leading" constant="10" id="ABd-pR-d50"/>
-                            <constraint firstItem="6lL-kM-wkw" firstAttribute="leading" secondItem="FpP-hs-iFV" secondAttribute="leading" id="AMW-R9-Bcq"/>
+                            <constraint firstAttribute="bottom" secondItem="RUc-4R-w37" secondAttribute="bottom" constant="12" id="AQH-oo-yO2"/>
+                            <constraint firstItem="stA-F2-L3d" firstAttribute="leading" secondItem="FpP-hs-iFV" secondAttribute="leading" id="C5e-Af-ps2"/>
                             <constraint firstItem="1qw-WH-Jvr" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="pXr-41-D0m" secondAttribute="trailing" constant="10" id="Cot-6G-AkF"/>
-                            <constraint firstItem="RUc-4R-w37" firstAttribute="top" secondItem="8DG-NN-Big" secondAttribute="bottom" constant="17" id="Ex9-cF-vet"/>
-                            <constraint firstItem="p4E-9g-vYI" firstAttribute="leading" secondItem="FpP-hs-iFV" secondAttribute="trailing" id="Gpq-6F-6J4"/>
-                            <constraint firstItem="RUc-4R-w37" firstAttribute="leading" secondItem="7PV-kN-jHP" secondAttribute="leading" constant="11" id="LyQ-fd-Lkg"/>
+                            <constraint firstItem="RUc-4R-w37" firstAttribute="top" secondItem="8DG-NN-Big" secondAttribute="bottom" constant="12" id="Ex9-cF-vet"/>
+                            <constraint firstItem="6lL-kM-wkw" firstAttribute="centerY" secondItem="stA-F2-L3d" secondAttribute="centerY" id="IrM-2f-ejt"/>
+                            <constraint firstItem="RUc-4R-w37" firstAttribute="leading" secondItem="7PV-kN-jHP" secondAttribute="leading" constant="12" id="LyQ-fd-Lkg"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="6lL-kM-wkw" secondAttribute="trailing" constant="12" id="MeG-rA-F29"/>
                             <constraint firstAttribute="trailing" secondItem="8DG-NN-Big" secondAttribute="trailing" constant="10" id="Mzo-e4-Gx1"/>
-                            <constraint firstItem="p4E-9g-vYI" firstAttribute="centerY" secondItem="FpP-hs-iFV" secondAttribute="centerY" id="TMh-aj-iKs"/>
-                            <constraint firstItem="FpP-hs-iFV" firstAttribute="top" secondItem="RUc-4R-w37" secondAttribute="top" id="Vs4-cN-QKB"/>
+                            <constraint firstItem="FpP-hs-iFV" firstAttribute="top" secondItem="RUc-4R-w37" secondAttribute="top" constant="-1" id="Vs4-cN-QKB"/>
                             <constraint firstItem="pXr-41-D0m" firstAttribute="leading" secondItem="tGm-S4-F4x" secondAttribute="trailing" constant="7" id="gdm-De-jDR"/>
-                            <constraint firstItem="6lL-kM-wkw" firstAttribute="bottom" secondItem="RUc-4R-w37" secondAttribute="bottom" id="grq-IE-FpO"/>
-                            <constraint firstItem="tGm-S4-F4x" firstAttribute="leading" secondItem="7PV-kN-jHP" secondAttribute="leading" constant="11" id="h4I-tZ-hfV"/>
+                            <constraint firstItem="tGm-S4-F4x" firstAttribute="leading" secondItem="7PV-kN-jHP" secondAttribute="leading" constant="12" id="h4I-tZ-hfV"/>
                             <constraint firstItem="FpP-hs-iFV" firstAttribute="leading" secondItem="RUc-4R-w37" secondAttribute="trailing" constant="10" id="ktR-vp-74U"/>
                             <constraint firstItem="pXr-41-D0m" firstAttribute="centerY" secondItem="tGm-S4-F4x" secondAttribute="centerY" id="rTa-Wu-PAv"/>
                             <constraint firstItem="1qw-WH-Jvr" firstAttribute="centerY" secondItem="pXr-41-D0m" secondAttribute="centerY" id="yWK-wY-KLq"/>
@@ -139,24 +142,24 @@
                 <constraints>
                     <constraint firstItem="7PV-kN-jHP" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="J8J-il-NaF"/>
                     <constraint firstItem="7PV-kN-jHP" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" id="QRL-Nt-LjS"/>
-                    <constraint firstAttribute="bottom" secondItem="7PV-kN-jHP" secondAttribute="bottom" constant="12" id="dAT-MI-rz7"/>
+                    <constraint firstAttribute="bottom" secondItem="7PV-kN-jHP" secondAttribute="bottom" constant="12" id="eFI-pg-hg2"/>
                     <constraint firstAttribute="trailing" secondItem="7PV-kN-jHP" secondAttribute="trailing" constant="14" id="inf-74-qqm"/>
                 </constraints>
             </tableViewCellContentView>
             <viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
             <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
             <connections>
+                <outlet property="courseGroupName" destination="FpP-hs-iFV" id="Bf4-7u-7eD"/>
                 <outlet property="courseTime" destination="pXr-41-D0m" id="P4z-qr-Sz2"/>
                 <outlet property="statusLabel" destination="1qw-WH-Jvr" id="Ft9-cT-Ndb"/>
                 <outlet property="studentAvatal" destination="RUc-4R-w37" id="ZyZ-wJ-Xmv"/>
-                <outlet property="studentNameLabel" destination="FpP-hs-iFV" id="nao-Cd-xgS"/>
+                <outlet property="studentNameLabel" destination="stA-F2-L3d" id="HY4-do-bSv"/>
                 <outlet property="subjectLabel" destination="N2M-qy-lji" id="GVs-Ed-0bm"/>
             </connections>
-            <point key="canvasLocation" x="263.768115942029" y="109.82142857142857"/>
+            <point key="canvasLocation" x="263.768115942029" y="105.13392857142857"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="course_chat" width="19" height="18"/>
         <image name="course_time" width="16" height="16"/>
         <image name="student_avatar" width="150" height="150"/>
         <systemColor name="systemBackgroundColor">

+ 6 - 1
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/MusicRoomHomeworkCell.m

@@ -17,6 +17,8 @@
 
 @property (weak, nonatomic) IBOutlet UILabel *statusLabel;
 
+@property (weak, nonatomic) IBOutlet UILabel *studentLabel;
+
 @property (nonatomic, copy) ChatGroupCallback callback;
 
 @property (nonatomic, strong) NSString *targetId;
@@ -48,9 +50,12 @@
     self.courseTimeLabel.text = [NSString stringWithFormat:@"%@~%@",[NSString returnNoNullStringWithString:lessonBegin],[NSString returnNoNullStringWithString:lessonEnd]];
     self.subjectName.text = [NSString returnNoNullStringWithString:sourceModel.subjectName];
     self.courseName.text = [NSString returnNoNullStringWithString:sourceModel.courseGroupName];
+    self.studentLabel.text = [NSString returnNoNullStringWithString:sourceModel.studentName];
     // 判断是否布置了作业
     if ([NSString isEmptyString:sourceModel.decorateTime]) {
-        self.statusLabel.hidden = YES;
+        self.statusLabel.hidden = NO;
+        self.statusLabel.text = @"未布置";
+        self.statusLabel.textColor = HexRGB(0xff802c);
     }
     else {
         self.statusLabel.hidden = NO;

+ 52 - 48
KulexiuForTeacher/KulexiuForTeacher/Module/Home/Homework/View/MusicRoomHomeworkCell.xib

@@ -12,37 +12,37 @@
         <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
         <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
         <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="127" id="KGk-i7-Jjw" customClass="MusicRoomHomeworkCell">
-            <rect key="frame" x="0.0" y="0.0" width="320" height="132"/>
+            <rect key="frame" x="0.0" y="0.0" width="320" height="123"/>
             <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="132"/>
+                <rect key="frame" x="0.0" y="0.0" width="320" height="123"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4SI-GM-z1M">
-                        <rect key="frame" x="14" y="0.0" width="292" height="120"/>
+                        <rect key="frame" x="14" y="0.0" width="292" height="111"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="SWi-YI-jAG">
-                                <rect key="frame" x="10" y="38" width="272" height="1"/>
+                                <rect key="frame" x="10" y="46" width="272" height="1"/>
                                 <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="1" id="UMX-8u-esT"/>
                                 </constraints>
                             </view>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_time" translatesAutoresizingMaskIntoConstraints="NO" id="iE8-Ec-UaX">
-                                <rect key="frame" x="11" y="12" width="16" height="16"/>
+                                <rect key="frame" x="12" y="15" width="16" height="16"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="16" id="7DX-sN-F8C"/>
                                     <constraint firstAttribute="width" constant="16" id="8wC-mz-8t6"/>
                                 </constraints>
                             </imageView>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2021/09/17 14:00~14:25" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gLO-02-Vhb">
-                                <rect key="frame" x="34" y="12" width="147" height="16"/>
+                                <rect key="frame" x="35" y="15" width="147" height="16"/>
                                 <fontDescription key="fontDescription" type="system" pointSize="13"/>
-                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已结束" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="b6m-xf-3vf">
-                                <rect key="frame" x="231" y="11.5" width="50" height="17"/>
+                                <rect key="frame" x="231" y="14.5" width="50" height="17"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="50" id="Wja-wS-7nK"/>
                                 </constraints>
@@ -51,38 +51,43 @@
                                 <nil key="highlightedColor"/>
                             </label>
                             <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="course_musicRoom" translatesAutoresizingMaskIntoConstraints="NO" id="vbJ-lB-Z7m">
-                                <rect key="frame" x="11" y="56" width="47" height="47"/>
+                                <rect key="frame" x="12" y="59" width="40" height="40"/>
                                 <constraints>
-                                    <constraint firstAttribute="width" constant="47" id="GJE-kv-Q75"/>
-                                    <constraint firstAttribute="height" constant="47" id="zsp-wi-eXy"/>
+                                    <constraint firstAttribute="width" constant="40" id="GJE-kv-Q75"/>
+                                    <constraint firstAttribute="height" constant="40" id="zsp-wi-eXy"/>
                                 </constraints>
+                                <userDefinedRuntimeAttributes>
+                                    <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                        <real key="value" value="20"/>
+                                    </userDefinedRuntimeAttribute>
+                                </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="INl-R7-pRX">
-                                <rect key="frame" x="68" y="56" width="48" height="24"/>
+                                <rect key="frame" x="62" y="58" width="218" height="21"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="24" id="Sgg-XH-ZuZ"/>
+                                    <constraint firstAttribute="height" constant="21" id="Sgg-XH-ZuZ"/>
                                 </constraints>
-                                <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
-                                <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="calibratedRGB"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                <color key="textColor" red="0.074509803921568626" green="0.078431372549019607" blue="0.082352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2XU-rf-TDq">
-                                <rect key="frame" x="68" y="83" width="43" height="20"/>
+                            <view contentMode="scaleToFill" horizontalCompressionResistancePriority="752" translatesAutoresizingMaskIntoConstraints="NO" id="2XU-rf-TDq">
+                                <rect key="frame" x="106" y="83" width="38" height="17"/>
                                 <subviews>
-                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="单簧管" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sRr-14-Xr7">
-                                        <rect key="frame" x="5" y="0.0" width="33" height="20"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="11"/>
-                                        <color key="textColor" red="1" green="0.54901960780000003" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="752" text="单簧管" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sRr-14-Xr7">
+                                        <rect key="frame" x="4" y="0.0" width="30" height="17"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="10"/>
+                                        <color key="textColor" red="1" green="0.5490196078431373" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                         <nil key="highlightedColor"/>
                                     </label>
                                 </subviews>
-                                <color key="backgroundColor" red="1" green="0.94509803920000002" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
+                                <color key="backgroundColor" red="1" green="0.94509803921568625" blue="0.87058823529411766" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <constraints>
                                     <constraint firstAttribute="bottom" secondItem="sRr-14-Xr7" secondAttribute="bottom" id="62u-1c-4Ht"/>
-                                    <constraint firstItem="sRr-14-Xr7" firstAttribute="top" secondItem="2XU-rf-TDq" secondAttribute="top" id="ItB-8F-k6H"/>
-                                    <constraint firstAttribute="trailing" secondItem="sRr-14-Xr7" secondAttribute="trailing" constant="5" id="ash-PZ-YaK"/>
-                                    <constraint firstAttribute="height" constant="20" id="hfQ-rY-myD"/>
-                                    <constraint firstItem="sRr-14-Xr7" firstAttribute="leading" secondItem="2XU-rf-TDq" secondAttribute="leading" constant="5" id="s0g-O1-kWv"/>
+                                    <constraint firstAttribute="trailing" secondItem="sRr-14-Xr7" secondAttribute="trailing" constant="4" id="ash-PZ-YaK"/>
+                                    <constraint firstAttribute="height" constant="17" id="hfQ-rY-myD"/>
+                                    <constraint firstItem="sRr-14-Xr7" firstAttribute="top" secondItem="2XU-rf-TDq" secondAttribute="top" id="kkV-tu-C0M"/>
+                                    <constraint firstItem="sRr-14-Xr7" firstAttribute="leading" secondItem="2XU-rf-TDq" secondAttribute="leading" constant="4" id="s0g-O1-kWv"/>
                                 </constraints>
                                 <userDefinedRuntimeAttributes>
                                     <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -90,40 +95,39 @@
                                     </userDefinedRuntimeAttribute>
                                 </userDefinedRuntimeAttributes>
                             </view>
-                            <button opaque="NO" contentMode="scaleToFill" horizontalCompressionResistancePriority="752" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="C9U-yd-Bp1">
-                                <rect key="frame" x="116" y="48" width="40" height="40"/>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张涵宇" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="X28-NA-DEK">
+                                <rect key="frame" x="62" y="83" width="39" height="17"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="40" id="GAR-wZ-GHE"/>
-                                    <constraint firstAttribute="width" constant="40" id="ob0-NF-cC9"/>
+                                    <constraint firstAttribute="height" constant="17" id="ylP-6A-w8B"/>
                                 </constraints>
-                                <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
-                                <state key="normal" image="course_chat"/>
-                                <connections>
-                                    <action selector="chatGroup:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="8dN-mQ-CMm"/>
-                                </connections>
-                            </button>
+                                <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                                <color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
                         </subviews>
                         <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                         <constraints>
                             <constraint firstAttribute="trailing" secondItem="SWi-YI-jAG" secondAttribute="trailing" constant="10" id="1Li-Ou-Yjs"/>
                             <constraint firstItem="INl-R7-pRX" firstAttribute="leading" secondItem="vbJ-lB-Z7m" secondAttribute="trailing" constant="10" id="8Ab-GY-KQu"/>
-                            <constraint firstItem="2XU-rf-TDq" firstAttribute="leading" secondItem="INl-R7-pRX" secondAttribute="leading" id="EZc-vw-yP4"/>
-                            <constraint firstItem="C9U-yd-Bp1" firstAttribute="leading" secondItem="INl-R7-pRX" secondAttribute="trailing" id="Hzp-VS-u2x"/>
-                            <constraint firstItem="C9U-yd-Bp1" firstAttribute="centerY" secondItem="INl-R7-pRX" secondAttribute="centerY" id="JW2-D5-JLA"/>
-                            <constraint firstItem="2XU-rf-TDq" firstAttribute="bottom" secondItem="vbJ-lB-Z7m" secondAttribute="bottom" id="MMw-W4-Rrg"/>
+                            <constraint firstItem="2XU-rf-TDq" firstAttribute="leading" secondItem="X28-NA-DEK" secondAttribute="trailing" constant="5" id="DWt-pu-uan"/>
+                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="2XU-rf-TDq" secondAttribute="trailing" constant="12" id="Dz0-c5-Nfn"/>
                             <constraint firstItem="b6m-xf-3vf" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="gLO-02-Vhb" secondAttribute="trailing" constant="10" id="NmB-fs-yGE"/>
                             <constraint firstAttribute="trailing" secondItem="b6m-xf-3vf" secondAttribute="trailing" constant="11" id="Qf3-Bp-lGs"/>
-                            <constraint firstItem="iE8-Ec-UaX" firstAttribute="leading" secondItem="4SI-GM-z1M" secondAttribute="leading" constant="11" id="RLi-vc-ZMJ"/>
+                            <constraint firstItem="iE8-Ec-UaX" firstAttribute="leading" secondItem="4SI-GM-z1M" secondAttribute="leading" constant="12" id="RLi-vc-ZMJ"/>
                             <constraint firstItem="b6m-xf-3vf" firstAttribute="centerY" secondItem="gLO-02-Vhb" secondAttribute="centerY" id="WGE-OQ-sct"/>
-                            <constraint firstItem="vbJ-lB-Z7m" firstAttribute="top" secondItem="SWi-YI-jAG" secondAttribute="bottom" constant="17" id="XBT-EP-tQo"/>
-                            <constraint firstItem="INl-R7-pRX" firstAttribute="top" secondItem="vbJ-lB-Z7m" secondAttribute="top" id="c6S-fa-CFf"/>
+                            <constraint firstItem="X28-NA-DEK" firstAttribute="leading" secondItem="INl-R7-pRX" secondAttribute="leading" id="Wnn-vs-FD3"/>
+                            <constraint firstItem="vbJ-lB-Z7m" firstAttribute="top" secondItem="SWi-YI-jAG" secondAttribute="bottom" constant="12" id="XBT-EP-tQo"/>
+                            <constraint firstItem="INl-R7-pRX" firstAttribute="top" secondItem="vbJ-lB-Z7m" secondAttribute="top" constant="-1" id="c6S-fa-CFf"/>
                             <constraint firstItem="gLO-02-Vhb" firstAttribute="leading" secondItem="iE8-Ec-UaX" secondAttribute="trailing" constant="7" id="dCl-vd-6HX"/>
                             <constraint firstItem="gLO-02-Vhb" firstAttribute="centerY" secondItem="iE8-Ec-UaX" secondAttribute="centerY" id="eSU-5Q-NAP"/>
-                            <constraint firstItem="SWi-YI-jAG" firstAttribute="top" secondItem="iE8-Ec-UaX" secondAttribute="bottom" constant="10" id="eTS-hd-Agb"/>
+                            <constraint firstItem="SWi-YI-jAG" firstAttribute="top" secondItem="iE8-Ec-UaX" secondAttribute="bottom" constant="15" id="eTS-hd-Agb"/>
                             <constraint firstItem="SWi-YI-jAG" firstAttribute="leading" secondItem="4SI-GM-z1M" secondAttribute="leading" constant="10" id="f8r-hl-KRD"/>
-                            <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="C9U-yd-Bp1" secondAttribute="trailing" constant="10" id="iuT-SI-8kI"/>
-                            <constraint firstItem="vbJ-lB-Z7m" firstAttribute="leading" secondItem="4SI-GM-z1M" secondAttribute="leading" constant="11" id="jNl-xA-tEn"/>
-                            <constraint firstItem="iE8-Ec-UaX" firstAttribute="top" secondItem="4SI-GM-z1M" secondAttribute="top" constant="12" id="x2b-X4-miJ"/>
+                            <constraint firstItem="2XU-rf-TDq" firstAttribute="centerY" secondItem="X28-NA-DEK" secondAttribute="centerY" id="fvz-Ul-hgX"/>
+                            <constraint firstAttribute="trailing" secondItem="INl-R7-pRX" secondAttribute="trailing" constant="12" id="h9D-3o-Cb7"/>
+                            <constraint firstItem="vbJ-lB-Z7m" firstAttribute="leading" secondItem="4SI-GM-z1M" secondAttribute="leading" constant="12" id="jNl-xA-tEn"/>
+                            <constraint firstItem="X28-NA-DEK" firstAttribute="bottom" secondItem="vbJ-lB-Z7m" secondAttribute="bottom" constant="1" id="vFf-HA-xLB"/>
+                            <constraint firstAttribute="bottom" secondItem="vbJ-lB-Z7m" secondAttribute="bottom" constant="12" id="vod-Lf-S5t"/>
+                            <constraint firstItem="iE8-Ec-UaX" firstAttribute="top" secondItem="4SI-GM-z1M" secondAttribute="top" constant="15" id="x2b-X4-miJ"/>
                         </constraints>
                         <userDefinedRuntimeAttributes>
                             <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
@@ -145,13 +149,13 @@
                 <outlet property="courseName" destination="INl-R7-pRX" id="06n-hn-rxq"/>
                 <outlet property="courseTimeLabel" destination="gLO-02-Vhb" id="QXE-ZO-p5s"/>
                 <outlet property="statusLabel" destination="b6m-xf-3vf" id="2wd-As-SVx"/>
+                <outlet property="studentLabel" destination="X28-NA-DEK" id="8vp-78-AeE"/>
                 <outlet property="subjectName" destination="sRr-14-Xr7" id="vRG-Mv-uzU"/>
             </connections>
             <point key="canvasLocation" x="128.98550724637681" y="102.79017857142857"/>
         </tableViewCell>
     </objects>
     <resources>
-        <image name="course_chat" width="19" height="18"/>
         <image name="course_musicRoom" width="40" height="40"/>
         <image name="course_time" width="16" height="16"/>
         <systemColor name="systemBackgroundColor">

+ 9 - 9
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/BankCard/View/KSConfirmAlertView.xib

@@ -15,17 +15,17 @@
             <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
             <subviews>
                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="o0i-hr-vBK">
-                    <rect key="frame" x="52" y="353" width="310" height="190.5"/>
+                    <rect key="frame" x="52" y="353.5" width="310" height="189.5"/>
                     <subviews>
                         <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="MxM-wt-Gha">
-                            <rect key="frame" x="18" y="25" width="4" height="14"/>
+                            <rect key="frame" x="18" y="25" width="3" height="12"/>
                             <constraints>
-                                <constraint firstAttribute="width" constant="4" id="SaW-h6-po0"/>
-                                <constraint firstAttribute="height" constant="14" id="e5a-eC-XjX"/>
+                                <constraint firstAttribute="width" constant="3" id="SaW-h6-po0"/>
+                                <constraint firstAttribute="height" constant="12" id="e5a-eC-XjX"/>
                             </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="wNN-c7-gwa">
-                            <rect key="frame" x="29" y="17" width="84.5" height="30"/>
+                            <rect key="frame" x="28" y="16" width="84.5" height="30"/>
                             <constraints>
                                 <constraint firstAttribute="height" constant="30" id="X8Y-43-Gzf"/>
                             </constraints>
@@ -34,7 +34,7 @@
                             <nil key="highlightedColor"/>
                         </label>
                         <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rUR-gG-b2o">
-                            <rect key="frame" x="13" y="129.5" width="139.5" height="44"/>
+                            <rect key="frame" x="13" y="128.5" width="139.5" height="44"/>
                             <constraints>
                                 <constraint firstAttribute="height" constant="44" id="lU8-6N-QFC"/>
                             </constraints>
@@ -59,7 +59,7 @@
                             </connections>
                         </button>
                         <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="QEw-9N-XM6">
-                            <rect key="frame" x="157.5" y="129.5" width="139.5" height="44"/>
+                            <rect key="frame" x="157.5" y="128.5" width="139.5" height="44"/>
                             <color key="backgroundColor" red="0.1764705882352941" green="0.7803921568627451" blue="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                             <constraints>
                                 <constraint firstAttribute="height" constant="44" id="CC0-XV-4Ze"/>
@@ -77,7 +77,7 @@
                             </connections>
                         </button>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="解绑后将无法将收入结算,请确认是否继续解绑" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dpE-gf-YK1">
-                            <rect key="frame" x="19" y="67" width="277" height="38.5"/>
+                            <rect key="frame" x="19" y="66" width="277" height="38.5"/>
                             <fontDescription key="fontDescription" type="system" pointSize="16"/>
                             <color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                             <nil key="highlightedColor"/>
@@ -124,7 +124,7 @@
         </view>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
+        <image name="accell_left" width="3" height="12"/>
         <systemColor name="systemBackgroundColor">
             <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
         </systemColor>

+ 5 - 9
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/CreateStyle/View/InstrumentHeaderView.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" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="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="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
@@ -15,14 +15,10 @@
             <autoresizingMask key="autoresizingMask"/>
             <subviews>
                 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="accell_left" translatesAutoresizingMaskIntoConstraints="NO" id="l1b-Vv-Tib">
-                    <rect key="frame" x="0.0" y="30" width="4" height="14"/>
-                    <constraints>
-                        <constraint firstAttribute="width" constant="4" id="BMA-sE-wRY"/>
-                        <constraint firstAttribute="height" constant="14" id="M4c-7m-Pao"/>
-                    </constraints>
+                    <rect key="frame" x="0.0" y="31" width="3" height="12"/>
                 </imageView>
                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="乐器类型一" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jBb-Ij-7Sm">
-                    <rect key="frame" x="10" y="22" width="82" height="30"/>
+                    <rect key="frame" x="9" y="22" width="79.5" height="30"/>
                     <constraints>
                         <constraint firstAttribute="height" constant="30" id="MR7-38-gaS"/>
                     </constraints>
@@ -47,6 +43,6 @@
         </collectionReusableView>
     </objects>
     <resources>
-        <image name="accell_left" width="4" height="14"/>
+        <image name="accell_left" width="3" height="12"/>
     </resources>
 </document>

+ 5 - 19
KulexiuForTeacher/KulexiuForTeacher/Module/Mine/MinePage/Controller/MinePageViewController.m

@@ -159,7 +159,7 @@
 
 - (void)viewWillAppear:(BOOL)animated {
     [super viewWillAppear:animated];
-    [self refreshStatusBarWhite:YES];
+    [self configStatusViewColorWhite:YES];
     self.navigationController.interactivePopGestureRecognizer.enabled = YES;
     [self requestTeachMessage];
     [self requestSubjectList];
@@ -180,24 +180,10 @@
 
 - (void)viewWillDisappear:(BOOL)animated {
     [super viewWillDisappear:animated];
-    [self refreshStatusBarWhite:NO];
+    [self configStatusViewColorWhite:NO];
     [IQKeyboardManager sharedManager].enable = YES;
 }
 
-- (void)refreshStatusBarWhite:(BOOL)isWhite {
-    if (isWhite) {
-        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
-    }
-    else {
-        if (@available(iOS 13.0, *)) {
-            [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDarkContent;
-        } else {
-            // Fallback on earlier versions
-            [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
-        }
-    }
-}
-
 - (void)viewDidAppear:(BOOL)animated {
     [super viewDidAppear:animated];
     self.navigationController.interactivePopGestureRecognizer.enabled = (self.categoryView.selectedIndex == 0);
@@ -364,14 +350,14 @@
         CGFloat rate = (space - 100) / (height - 100);
         NSLog(@"rate ---------%f",rate);
         if (rate >= 1) {
-            [self refreshStatusBarWhite:NO];
+            [self configStatusViewColorWhite:NO];
             self.headView.topView.backgroundColor = HexRGBAlpha(0xffffff, 1);
             [self.headView.backImage setImage:[UIImage imageNamed:@"back_black"]];
             [self.headView.editImage setImage:[UIImage imageNamed:@"minePage_nav_edit_black"]];
             self.headView.headTitle.hidden = NO;
         }
         else {
-            [self refreshStatusBarWhite:YES];
+            [self configStatusViewColorWhite:YES];
             self.headView.topView.backgroundColor = [UIColor clearColor];
             [self.headView.backImage setImage:[UIImage imageNamed:@"back_white"]];
             [self.headView.editImage setImage:[UIImage imageNamed:@"minePage_nav_edit_white"]];
@@ -379,7 +365,7 @@
         }
     }
     else {
-        [self refreshStatusBarWhite:YES];
+        [self configStatusViewColorWhite:YES];
         self.headView.topView.backgroundColor = [UIColor clearColor];
         [self.headView.backImage setImage:[UIImage imageNamed:@"back_white"]];
         [self.headView.editImage setImage:[UIImage imageNamed:@"minePage_nav_edit_white"]];

+ 2 - 7
KulexiuForTeacher/KulexiuForTeacher/Module/TXLiveModule/Controller/TXLiveRoomViewController.m

@@ -209,7 +209,7 @@ typedef NS_ENUM(NSInteger, LIVEPAGE) {
     [UIApplication sharedApplication].idleTimerDisabled = YES;
     [IQKeyboardManager sharedManager].enableAutoToolbar = NO;
     [IQKeyboardManager sharedManager].enable = NO;
-    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
+    [self configStatusViewColorWhite:YES];
 }
 
 - (void)viewWillDisappear:(BOOL)animated {
@@ -217,12 +217,7 @@ typedef NS_ENUM(NSInteger, LIVEPAGE) {
     [UIApplication sharedApplication].idleTimerDisabled = NO;
     [IQKeyboardManager sharedManager].enableAutoToolbar = YES;
     [IQKeyboardManager sharedManager].enable = YES;
-    if (@available(iOS 13.0, *)) {
-        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDarkContent;
-    } else {
-        // Fallback on earlier versions
-        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
-    }
+    [self configStatusViewColorWhite:NO];
     if (_timeManager) {
         [self.timeManager stopDurationTimer];
     }