Ver Fonte

机构端个人中心

Steven há 1 ano atrás
pai
commit
143f8ffabb
91 ficheiros alterados com 2295 adições e 0 exclusões
  1. 180 0
      KulexiuForStudent/KulexiuForStudent.xcodeproj/project.pbxproj
  2. 6 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Contents.json
  3. 6 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/Contents.json
  4. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_MineBg.imageset/Contents.json
  5. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_MineBg.imageset/insititution_MineBg@2x.png
  6. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_MineBg.imageset/insititution_MineBg@3x.png
  7. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_about.imageset/Contents.json
  8. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_about.imageset/insititution_about@2x.png
  9. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_about.imageset/insititution_about@3x.png
  10. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_feedback.imageset/Contents.json
  11. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_feedback.imageset/insititution_feedback@2x.png
  12. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_feedback.imageset/insititution_feedback@3x.png
  13. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_help.imageset/Contents.json
  14. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_help.imageset/insititution_help@2x.png
  15. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_help.imageset/insititution_help@3x.png
  16. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_code.imageset/Contents.json
  17. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_code.imageset/insititution_mine_code@2x.png
  18. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_code.imageset/insititution_mine_code@3x.png
  19. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_eveluate.imageset/Contents.json
  20. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_eveluate.imageset/insititution_mine_eveluate@2x.png
  21. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_eveluate.imageset/insititution_mine_eveluate@3x.png
  22. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_header.imageset/Contents.json
  23. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_header.imageset/insititution_mine_header@2x.png
  24. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_header.imageset/insititution_mine_header@3x.png
  25. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_music.imageset/Contents.json
  26. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_music.imageset/insititution_mine_music@2x.png
  27. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_music.imageset/insititution_mine_music@3x.png
  28. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_order.imageset/Contents.json
  29. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_order.imageset/insititution_mine_order@2x.png
  30. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_order.imageset/insititution_mine_order@3x.png
  31. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_rank.imageset/Contents.json
  32. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_rank.imageset/insititution_mine_rank@2x.png
  33. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_rank.imageset/insititution_mine_rank@3x.png
  34. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_subject.imageset/Contents.json
  35. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_subject.imageset/insititution_mine_subject@2x.png
  36. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_subject.imageset/insititution_mine_subject@3x.png
  37. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_topLayer.imageset/Contents.json
  38. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_topLayer.imageset/insititution_mine_topLayer@2x.png
  39. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_topLayer.imageset/insititution_mine_topLayer@3x.png
  40. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_privacy.imageset/Contents.json
  41. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_privacy.imageset/insititution_privacy@2x.png
  42. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_privacy.imageset/insititution_privacy@3x.png
  43. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_setting.imageset/Contents.json
  44. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_setting.imageset/insititution_setting@2x.png
  45. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_setting.imageset/insititution_setting@3x.png
  46. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_userAgreement.imageset/Contents.json
  47. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_userAgreement.imageset/insititution_userAgreement@2x.png
  48. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_userAgreement.imageset/insititution_userAgreement@3x.png
  49. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberImage.imageset/Contents.json
  50. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberImage.imageset/institution_MemberImage@2x.png
  51. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberImage.imageset/institution_MemberImage@3x.png
  52. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberLabel.imageset/Contents.json
  53. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberLabel.imageset/institution_MemberLabel@2x.png
  54. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberLabel.imageset/institution_MemberLabel@3x.png
  55. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolImage.imageset/Contents.json
  56. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolImage.imageset/institution_ToolImage@2x.png
  57. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolImage.imageset/institution_ToolImage@3x.png
  58. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolTitle.imageset/Contents.json
  59. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolTitle.imageset/institution_ToolTitle@2x.png
  60. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolTitle.imageset/institution_ToolTitle@3x.png
  61. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_detail.imageset/Contents.json
  62. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_detail.imageset/institution_detail@2x.png
  63. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_detail.imageset/institution_detail@3x.png
  64. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMemberBg.imageset/Contents.json
  65. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMemberBg.imageset/institution_mineMemberBg@2x.png
  66. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMemberBg.imageset/institution_mineMemberBg@3x.png
  67. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMember_tag.imageset/Contents.json
  68. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMember_tag.imageset/institution_mineMember_tag@2x.png
  69. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMember_tag.imageset/institution_mineMember_tag@3x.png
  70. 22 0
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineToolBg.imageset/Contents.json
  71. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineToolBg.imageset/institution_mineToolBg@2x.png
  72. BIN
      KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineToolBg.imageset/institution_mineToolBg@3x.png
  73. 16 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Home/View/InstitutionNomalNavView.h
  74. 20 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Home/View/InstitutionNomalNavView.m
  75. 22 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Home/View/InstitutionNomalNavView.xib
  76. 16 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSFeedbackViewController.h
  77. 31 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSFeedbackViewController.m
  78. 16 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSSettingViewController.h
  79. 31 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSSettingViewController.m
  80. 16 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/InsititutionMineViewController.h
  81. 208 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/InsititutionMineViewController.m
  82. 44 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineBodyView.h
  83. 62 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineBodyView.m
  84. 856 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineBodyView.xib
  85. 24 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineNavView.h
  86. 44 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineNavView.m
  87. 80 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineNavView.xib
  88. 16 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/NavController/InstitutionNavController.h
  89. 31 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/NavController/InstitutionNavController.m
  90. 26 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/TabbarController/InstitutionTabBarController.h
  91. 38 0
      KulexiuForStudent/KulexiuForStudent/InstitutionModule/TabbarController/InstitutionTabBarController.m

+ 180 - 0
KulexiuForStudent/KulexiuForStudent.xcodeproj/project.pbxproj

@@ -491,6 +491,17 @@
 		BC28887C2A8102890064B773 /* KSConversationListController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2888782A8102870064B773 /* KSConversationListController.m */; };
 		BC28887D2A8102890064B773 /* KSGroupConversationController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC28887A2A8102880064B773 /* KSGroupConversationController.m */; };
 		BC2888802A8102A20064B773 /* KSChatConversationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC28887F2A8102A20064B773 /* KSChatConversationViewController.m */; };
+		BC2932E82AAEC1D80024D98E /* InstitutionTabBarController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932E72AAEC1D80024D98E /* InstitutionTabBarController.m */; };
+		BC2932EB2AAEC2530024D98E /* InstitutionNavController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932EA2AAEC2530024D98E /* InstitutionNavController.m */; };
+		BC2932EE2AAEC3AA0024D98E /* InstitutionNomalNavView.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932ED2AAEC3AA0024D98E /* InstitutionNomalNavView.m */; };
+		BC2932F02AAEC3AF0024D98E /* InstitutionNomalNavView.xib in Resources */ = {isa = PBXBuildFile; fileRef = BC2932EF2AAEC3AF0024D98E /* InstitutionNomalNavView.xib */; };
+		BC2932F32AAEC4450024D98E /* InstitutionMineNavView.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932F22AAEC4450024D98E /* InstitutionMineNavView.m */; };
+		BC2932F52AAEC44E0024D98E /* InstitutionMineNavView.xib in Resources */ = {isa = PBXBuildFile; fileRef = BC2932F42AAEC44E0024D98E /* InstitutionMineNavView.xib */; };
+		BC2932F82AAEC46B0024D98E /* InstitutionMineBodyView.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932F72AAEC46B0024D98E /* InstitutionMineBodyView.m */; };
+		BC2932FA2AAEC4720024D98E /* InstitutionMineBodyView.xib in Resources */ = {isa = PBXBuildFile; fileRef = BC2932F92AAEC4720024D98E /* InstitutionMineBodyView.xib */; };
+		BC2932FD2AAEF4AB0024D98E /* InsititutionMineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932FC2AAEF4AB0024D98E /* InsititutionMineViewController.m */; };
+		BC2933002AAEFC810024D98E /* INSSettingViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2932FF2AAEFC810024D98E /* INSSettingViewController.m */; };
+		BC2933032AAEFC930024D98E /* INSFeedbackViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2933022AAEFC930024D98E /* INSFeedbackViewController.m */; };
 		BC2BE91C28F951DE00CB5F92 /* DialPlateView.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2BE91B28F951DE00CB5F92 /* DialPlateView.m */; };
 		BC2DFF4B28BDFE740056105A /* HomeTeacherLiveModel.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2DFF4A28BDFE730056105A /* HomeTeacherLiveModel.m */; };
 		BC2DFF4E28BE068D0056105A /* TeacherStyleFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = BC2DFF4D28BE068D0056105A /* TeacherStyleFlowLayout.m */; };
@@ -1951,6 +1962,25 @@
 		BC28887B2A8102890064B773 /* KSGroupConversationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KSGroupConversationController.h; sourceTree = "<group>"; };
 		BC28887E2A8102A20064B773 /* KSChatConversationViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KSChatConversationViewController.h; sourceTree = "<group>"; };
 		BC28887F2A8102A20064B773 /* KSChatConversationViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KSChatConversationViewController.m; sourceTree = "<group>"; };
+		BC2932E62AAEC1D80024D98E /* InstitutionTabBarController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InstitutionTabBarController.h; sourceTree = "<group>"; };
+		BC2932E72AAEC1D80024D98E /* InstitutionTabBarController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InstitutionTabBarController.m; sourceTree = "<group>"; };
+		BC2932E92AAEC2530024D98E /* InstitutionNavController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InstitutionNavController.h; sourceTree = "<group>"; };
+		BC2932EA2AAEC2530024D98E /* InstitutionNavController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InstitutionNavController.m; sourceTree = "<group>"; };
+		BC2932EC2AAEC3AA0024D98E /* InstitutionNomalNavView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InstitutionNomalNavView.h; sourceTree = "<group>"; };
+		BC2932ED2AAEC3AA0024D98E /* InstitutionNomalNavView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InstitutionNomalNavView.m; sourceTree = "<group>"; };
+		BC2932EF2AAEC3AF0024D98E /* InstitutionNomalNavView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InstitutionNomalNavView.xib; sourceTree = "<group>"; };
+		BC2932F12AAEC4450024D98E /* InstitutionMineNavView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InstitutionMineNavView.h; sourceTree = "<group>"; };
+		BC2932F22AAEC4450024D98E /* InstitutionMineNavView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InstitutionMineNavView.m; sourceTree = "<group>"; };
+		BC2932F42AAEC44E0024D98E /* InstitutionMineNavView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InstitutionMineNavView.xib; sourceTree = "<group>"; };
+		BC2932F62AAEC46B0024D98E /* InstitutionMineBodyView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InstitutionMineBodyView.h; sourceTree = "<group>"; };
+		BC2932F72AAEC46B0024D98E /* InstitutionMineBodyView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InstitutionMineBodyView.m; sourceTree = "<group>"; };
+		BC2932F92AAEC4720024D98E /* InstitutionMineBodyView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InstitutionMineBodyView.xib; sourceTree = "<group>"; };
+		BC2932FB2AAEF4AB0024D98E /* InsititutionMineViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InsititutionMineViewController.h; sourceTree = "<group>"; };
+		BC2932FC2AAEF4AB0024D98E /* InsititutionMineViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InsititutionMineViewController.m; sourceTree = "<group>"; };
+		BC2932FE2AAEFC810024D98E /* INSSettingViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = INSSettingViewController.h; sourceTree = "<group>"; };
+		BC2932FF2AAEFC810024D98E /* INSSettingViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = INSSettingViewController.m; sourceTree = "<group>"; };
+		BC2933012AAEFC930024D98E /* INSFeedbackViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = INSFeedbackViewController.h; sourceTree = "<group>"; };
+		BC2933022AAEFC930024D98E /* INSFeedbackViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = INSFeedbackViewController.m; sourceTree = "<group>"; };
 		BC2BE91A28F951DE00CB5F92 /* DialPlateView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DialPlateView.h; sourceTree = "<group>"; };
 		BC2BE91B28F951DE00CB5F92 /* DialPlateView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DialPlateView.m; sourceTree = "<group>"; };
 		BC2DFF4928BDFE730056105A /* HomeTeacherLiveModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeTeacherLiveModel.h; sourceTree = "<group>"; };
@@ -3020,6 +3050,7 @@
 			children = (
 				BC8A45BF283DDD7100094BBB /* SoundFontFile */,
 				BC48C3AB2829184C00EE65C5 /* KulexiuForStudent.entitlements */,
+				BC2932D72AAEC0BC0024D98E /* InstitutionModule */,
 				275FA1F027E7356A00CFEA2E /* Module */,
 				2779336127E3249C0010E277 /* Common */,
 				275E8AA827E18F8800DD3F6E /* AppDelegate.h */,
@@ -4806,6 +4837,144 @@
 			path = LoginManger;
 			sourceTree = "<group>";
 		};
+		BC2932D72AAEC0BC0024D98E /* InstitutionModule */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932E52AAEC19B0024D98E /* NavController */,
+				BC2932E42AAEC19B0024D98E /* TabbarController */,
+				BC2932DC2AAEC15D0024D98E /* Chat */,
+				BC2932E02AAEC15E0024D98E /* Home */,
+				BC2932D82AAEC15D0024D98E /* Mine */,
+			);
+			path = InstitutionModule;
+			sourceTree = "<group>";
+		};
+		BC2932D82AAEC15D0024D98E /* Mine */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932D92AAEC15D0024D98E /* Controller */,
+				BC2932DA2AAEC15D0024D98E /* Model */,
+				BC2932DB2AAEC15D0024D98E /* View */,
+			);
+			path = Mine;
+			sourceTree = "<group>";
+		};
+		BC2932D92AAEC15D0024D98E /* Controller */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932FB2AAEF4AB0024D98E /* InsititutionMineViewController.h */,
+				BC2932FC2AAEF4AB0024D98E /* InsititutionMineViewController.m */,
+				BC2932FE2AAEFC810024D98E /* INSSettingViewController.h */,
+				BC2932FF2AAEFC810024D98E /* INSSettingViewController.m */,
+				BC2933012AAEFC930024D98E /* INSFeedbackViewController.h */,
+				BC2933022AAEFC930024D98E /* INSFeedbackViewController.m */,
+			);
+			path = Controller;
+			sourceTree = "<group>";
+		};
+		BC2932DA2AAEC15D0024D98E /* Model */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			path = Model;
+			sourceTree = "<group>";
+		};
+		BC2932DB2AAEC15D0024D98E /* View */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932F12AAEC4450024D98E /* InstitutionMineNavView.h */,
+				BC2932F22AAEC4450024D98E /* InstitutionMineNavView.m */,
+				BC2932F42AAEC44E0024D98E /* InstitutionMineNavView.xib */,
+				BC2932F62AAEC46B0024D98E /* InstitutionMineBodyView.h */,
+				BC2932F72AAEC46B0024D98E /* InstitutionMineBodyView.m */,
+				BC2932F92AAEC4720024D98E /* InstitutionMineBodyView.xib */,
+			);
+			path = View;
+			sourceTree = "<group>";
+		};
+		BC2932DC2AAEC15D0024D98E /* Chat */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932DD2AAEC15D0024D98E /* Controller */,
+				BC2932DE2AAEC15D0024D98E /* Model */,
+				BC2932DF2AAEC15D0024D98E /* View */,
+			);
+			path = Chat;
+			sourceTree = "<group>";
+		};
+		BC2932DD2AAEC15D0024D98E /* Controller */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			path = Controller;
+			sourceTree = "<group>";
+		};
+		BC2932DE2AAEC15D0024D98E /* Model */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			path = Model;
+			sourceTree = "<group>";
+		};
+		BC2932DF2AAEC15D0024D98E /* View */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			path = View;
+			sourceTree = "<group>";
+		};
+		BC2932E02AAEC15E0024D98E /* Home */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932E12AAEC15E0024D98E /* Controller */,
+				BC2932E22AAEC15E0024D98E /* Model */,
+				BC2932E32AAEC15E0024D98E /* View */,
+			);
+			path = Home;
+			sourceTree = "<group>";
+		};
+		BC2932E12AAEC15E0024D98E /* Controller */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			path = Controller;
+			sourceTree = "<group>";
+		};
+		BC2932E22AAEC15E0024D98E /* Model */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			path = Model;
+			sourceTree = "<group>";
+		};
+		BC2932E32AAEC15E0024D98E /* View */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932EC2AAEC3AA0024D98E /* InstitutionNomalNavView.h */,
+				BC2932ED2AAEC3AA0024D98E /* InstitutionNomalNavView.m */,
+				BC2932EF2AAEC3AF0024D98E /* InstitutionNomalNavView.xib */,
+			);
+			path = View;
+			sourceTree = "<group>";
+		};
+		BC2932E42AAEC19B0024D98E /* TabbarController */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932E62AAEC1D80024D98E /* InstitutionTabBarController.h */,
+				BC2932E72AAEC1D80024D98E /* InstitutionTabBarController.m */,
+			);
+			path = TabbarController;
+			sourceTree = "<group>";
+		};
+		BC2932E52AAEC19B0024D98E /* NavController */ = {
+			isa = PBXGroup;
+			children = (
+				BC2932E92AAEC2530024D98E /* InstitutionNavController.h */,
+				BC2932EA2AAEC2530024D98E /* InstitutionNavController.m */,
+			);
+			path = NavController;
+			sourceTree = "<group>";
+		};
 		BC2DFF5928C097D00056105A /* AnimationSource */ = {
 			isa = PBXGroup;
 			children = (
@@ -6811,6 +6980,7 @@
 				BCBFDF3928110C6F0052AFE5 /* HomeNavView.xib in Resources */,
 				27F9033C27E87FE100C08A19 /* MineBodyView.xib in Resources */,
 				BCC0F6A82A8CDD3F00C4EFA4 /* SealClass.strings in Resources */,
+				BC2932F02AAEC3AF0024D98E /* InstitutionNomalNavView.xib in Resources */,
 				BCFCE44F28DD5C000051FED8 /* High.wav in Resources */,
 				BCB9FA2C286D79A4005D766B /* ScanNavView.xib in Resources */,
 				27F9032B27E87C2E00C08A19 /* NetworkBodyView.xib in Resources */,
@@ -6827,6 +6997,7 @@
 				BCC583B428A9EC6400BAB4CF /* cloud_animation_9.png in Resources */,
 				BCD457AC286469600010B493 /* PublicNoticeView.xib in Resources */,
 				BC71D249288804CD0010F14B /* img_11.png in Resources */,
+				BC2932FA2AAEC4720024D98E /* InstitutionMineBodyView.xib in Resources */,
 				BC27A070280FF56C00F91E27 /* AccompanyStudentEvaCell.xib in Resources */,
 				2723B63927F157D500E0B90B /* GroupMemberListCell.xib in Resources */,
 				BCFCE44E28DD5C000051FED8 /* Low.wav in Resources */,
@@ -6867,6 +7038,7 @@
 				BCC0F6B32A8CDD4000C4EFA4 /* low_staff.png in Resources */,
 				BCB9FA47286EDCD7005D766B /* KSTipsAlert.xib in Resources */,
 				BCFDA64C28BCA2000022B497 /* live_animation_0.png in Resources */,
+				BC2932F52AAEC44E0024D98E /* InstitutionMineNavView.xib in Resources */,
 				BCC0F6582A8CD8F500C4EFA4 /* TXChatAreaTopView.xib in Resources */,
 				BC542E40284079E300633781 /* UserAuthBodyView.xib in Resources */,
 				BC542E5528409EC900633781 /* InstrumentHeaderView.xib in Resources */,
@@ -7072,6 +7244,7 @@
 				27F9033027E87C2E00C08A19 /* AudioRecordManager.m in Sources */,
 				BCC0F6052A8CD86C00C4EFA4 /* TX3ASettingView.m in Sources */,
 				2779352527E324A60010E277 /* pinyin.c in Sources */,
+				BC2932F32AAEC4450024D98E /* InstitutionMineNavView.m in Sources */,
 				BCFE53F628128A9600AD6786 /* TeacherShowCell.m in Sources */,
 				2779357B27E324A70010E277 /* ShopButton.m in Sources */,
 				2723B61E27F157D500E0B90B /* GroupNoticeEditController.m in Sources */,
@@ -7269,6 +7442,7 @@
 				BC8A45AC283DC33400094BBB /* KSSliderView.m in Sources */,
 				2723B62927F157D500E0B90B /* KSChatComplainController.m in Sources */,
 				2779351527E324A60010E277 /* NSArray+KSSafe.m in Sources */,
+				BC2933002AAEFC810024D98E /* INSSettingViewController.m in Sources */,
 				BCD886E42908E69900BC4EE6 /* KSGaugeColorView.m in Sources */,
 				BC48C3A92828FC7D00EE65C5 /* KSUploadManager.m in Sources */,
 				BC8A4599283DC33400094BBB /* TBXML.m in Sources */,
@@ -7334,6 +7508,7 @@
 				277935D027E324A90010E277 /* ALCalendarDate.m in Sources */,
 				BCB9FA2F286D7B02005D766B /* GuideViewController.m in Sources */,
 				BCFE540328152A8500AD6786 /* KSOrderManager.m in Sources */,
+				BC2932EB2AAEC2530024D98E /* InstitutionNavController.m in Sources */,
 				2723B64427F15B5900E0B90B /* SCIndexViewConfiguration.m in Sources */,
 				2779358527E324A80010E277 /* LLFileManager.m in Sources */,
 				BC756CBC28FE7D5600AA9ECB /* UserDetailBodyView.m in Sources */,
@@ -7401,6 +7576,7 @@
 				BC119263280FA90100A716F7 /* HomeworkDetailModel.m in Sources */,
 				BCC0F6A52A8CDD3F00C4EFA4 /* CREmojiCollectionCell.m in Sources */,
 				2723B62427F157D500E0B90B /* NoticeEditBodyView.m in Sources */,
+				BC2933032AAEFC930024D98E /* INSFeedbackViewController.m in Sources */,
 				BCFEED6628F7E4910078A2B7 /* WidgetSpeedView.m in Sources */,
 				BCFDA65F28BCAEC80022B497 /* HomeInformationBodyView.m in Sources */,
 				BC0D1F71281015B000C5D9E5 /* VideoCourseCell.m in Sources */,
@@ -7580,6 +7756,7 @@
 				2779356E27E324A70010E277 /* UITextField_Toolbar.m in Sources */,
 				BCEBB8E82840B87100A76BE8 /* KSLiveChatroomMemberUp.m in Sources */,
 				277935B027E324A90010E277 /* MSSBrowseActionSheetCell.m in Sources */,
+				BC2932F82AAEC46B0024D98E /* InstitutionMineBodyView.m in Sources */,
 				BCC0F6AA2A8CDD4000C4EFA4 /* RolePortraitView.m in Sources */,
 				BCC0F6682A8CD8F500C4EFA4 /* KSDanInputBarControl.m in Sources */,
 				2779358827E324A80010E277 /* NSObject+Archiving.m in Sources */,
@@ -7600,6 +7777,7 @@
 				BCB6348627F6D29600ACFDCF /* LiveSeatApplyCell.m in Sources */,
 				2779358427E324A80010E277 /* LLImageCache.m in Sources */,
 				275FA23127E7356B00CFEA2E /* FirstSettingViewController.m in Sources */,
+				BC2932FD2AAEF4AB0024D98E /* InsititutionMineViewController.m in Sources */,
 				275FA1DD27E7351900CFEA2E /* KSBaseModel.m in Sources */,
 				BCC0F6D12A8CE13A00C4EFA4 /* KSTipsView.m in Sources */,
 				BC11922A280ED8E800A716F7 /* LTSCalendarBottomView.m in Sources */,
@@ -7622,6 +7800,7 @@
 				2779355D27E324A70010E277 /* KSHoldButton.m in Sources */,
 				2723B62027F157D500E0B90B /* GroupNoticeCell.m in Sources */,
 				277935A627E324A80010E277 /* MSSBrowseLocalViewController.m in Sources */,
+				BC2932EE2AAEC3AA0024D98E /* InstitutionNomalNavView.m in Sources */,
 				BCB6348427F6D29600ACFDCF /* KSChatroomTextCell.m in Sources */,
 				BCB6347527F6D29600ACFDCF /* KSChatInputBarControl.m in Sources */,
 				277935D227E324A90010E277 /* ALCalendarHelper.m in Sources */,
@@ -7652,6 +7831,7 @@
 				2779359527E324A80010E277 /* TZVideoEditedPreviewController.m in Sources */,
 				BCC0F6C42A8CDDEB00C4EFA4 /* ClassSongMessage.m in Sources */,
 				2723B63127F157D500E0B90B /* GroupSettingBodyView.m in Sources */,
+				BC2932E82AAEC1D80024D98E /* InstitutionTabBarController.m in Sources */,
 				BC119290280FB46100A716F7 /* KSVideoHelper.m in Sources */,
 				2779358327E324A80010E277 /* LLPhotoBrowser.m in Sources */,
 				BC106C482A933B8B000759A9 /* LiveRoomBottomView.m in Sources */,

+ 6 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 6 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/Contents.json

@@ -0,0 +1,6 @@
+{
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_MineBg.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_MineBg.imageset/insititution_MineBg@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_MineBg.imageset/insititution_MineBg@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_about.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_about.imageset/insititution_about@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_about.imageset/insititution_about@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_feedback.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_feedback.imageset/insititution_feedback@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_feedback.imageset/insititution_feedback@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_help.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_help.imageset/insititution_help@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_help.imageset/insititution_help@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_code.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_code.imageset/insititution_mine_code@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_code.imageset/insititution_mine_code@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_eveluate.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_eveluate.imageset/insititution_mine_eveluate@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_eveluate.imageset/insititution_mine_eveluate@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_header.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_header.imageset/insititution_mine_header@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_header.imageset/insititution_mine_header@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_music.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_music.imageset/insititution_mine_music@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_music.imageset/insititution_mine_music@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_order.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_order.imageset/insititution_mine_order@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_order.imageset/insititution_mine_order@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_rank.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_rank.imageset/insititution_mine_rank@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_rank.imageset/insititution_mine_rank@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_subject.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_subject.imageset/insititution_mine_subject@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_subject.imageset/insititution_mine_subject@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_topLayer.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_topLayer.imageset/insititution_mine_topLayer@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_mine_topLayer.imageset/insititution_mine_topLayer@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_privacy.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_privacy.imageset/insititution_privacy@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_privacy.imageset/insititution_privacy@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_setting.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_setting.imageset/insititution_setting@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_setting.imageset/insititution_setting@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_userAgreement.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_userAgreement.imageset/insititution_userAgreement@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/insititution_userAgreement.imageset/insititution_userAgreement@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberImage.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberImage.imageset/institution_MemberImage@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberImage.imageset/institution_MemberImage@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberLabel.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberLabel.imageset/institution_MemberLabel@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_MemberLabel.imageset/institution_MemberLabel@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolImage.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolImage.imageset/institution_ToolImage@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolImage.imageset/institution_ToolImage@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolTitle.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolTitle.imageset/institution_ToolTitle@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_ToolTitle.imageset/institution_ToolTitle@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_detail.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_detail.imageset/institution_detail@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_detail.imageset/institution_detail@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMemberBg.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMemberBg.imageset/institution_mineMemberBg@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMemberBg.imageset/institution_mineMemberBg@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMember_tag.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMember_tag.imageset/institution_mineMember_tag@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineMember_tag.imageset/institution_mineMember_tag@3x.png


+ 22 - 0
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineToolBg.imageset/Contents.json

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

BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineToolBg.imageset/institution_mineToolBg@2x.png


BIN
KulexiuForStudent/KulexiuForStudent/Assets.xcassets/Institution/Mine/institution_mineToolBg.imageset/institution_mineToolBg@3x.png


+ 16 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Home/View/InstitutionNomalNavView.h

@@ -0,0 +1,16 @@
+//
+//  InstitutionNomalNavView.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import <UIKit/UIKit.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface InstitutionNomalNavView : UIView
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 20 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Home/View/InstitutionNomalNavView.m

@@ -0,0 +1,20 @@
+//
+//  InstitutionNomalNavView.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "InstitutionNomalNavView.h"
+
+@implementation InstitutionNomalNavView
+
+/*
+// Only override drawRect: if you perform custom drawing.
+// An empty implementation adversely affects performance during animation.
+- (void)drawRect:(CGRect)rect {
+    // Drawing code
+}
+*/
+
+@end

+ 22 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Home/View/InstitutionNomalNavView.xib

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" 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="21679"/>
+        <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="InstitutionNomalNavView">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="87"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+            <nil key="simulatedTopBarMetrics"/>
+            <nil key="simulatedBottomBarMetrics"/>
+            <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+            <point key="canvasLocation" x="5.343511450381679" y="-139.78873239436621"/>
+        </view>
+    </objects>
+</document>

+ 16 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSFeedbackViewController.h

@@ -0,0 +1,16 @@
+//
+//  INSFeedbackViewController.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "KSBaseViewController.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface INSFeedbackViewController : KSBaseViewController
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 31 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSFeedbackViewController.m

@@ -0,0 +1,31 @@
+//
+//  INSFeedbackViewController.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "INSFeedbackViewController.h"
+
+@interface INSFeedbackViewController ()
+
+@end
+
+@implementation INSFeedbackViewController
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    // Do any additional setup after loading the view.
+}
+
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 16 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSSettingViewController.h

@@ -0,0 +1,16 @@
+//
+//  INSSettingViewController.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "KSBaseViewController.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface INSSettingViewController : KSBaseViewController
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 31 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/INSSettingViewController.m

@@ -0,0 +1,31 @@
+//
+//  INSSettingViewController.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "INSSettingViewController.h"
+
+@interface INSSettingViewController ()
+
+@end
+
+@implementation INSSettingViewController
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    // Do any additional setup after loading the view.
+}
+
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 16 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/InsititutionMineViewController.h

@@ -0,0 +1,16 @@
+//
+//  InsititutionMineViewController.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "KSBaseViewController.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface InsititutionMineViewController : KSBaseViewController
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 208 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/Controller/InsititutionMineViewController.m

@@ -0,0 +1,208 @@
+//
+//  InsititutionMineViewController.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "InsititutionMineViewController.h"
+#import "InstitutionMineNavView.h"
+#import "InstitutionMineBodyView.h"
+#import "UserInfoManager.h"
+#import "AboutUsViewController.h"
+#import "KSBaseWKWebViewController.h"
+#import "INSSettingViewController.h"
+#import "INSFeedbackViewController.h"
+
+@interface InsititutionMineViewController ()<UIScrollViewDelegate>
+
+@property (nonatomic, strong) InstitutionMineBodyView *bodyView;
+
+@property (nonatomic, strong) InstitutionMineNavView *navView;
+
+@property (nonatomic, strong) StudentInfoModel *mineInfo;
+
+@end
+
+@implementation InsititutionMineViewController
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    // Do any additional setup after loading the view.
+    self.ks_prefersNavigationBarHidden = YES;
+    [self configUI];
+}
+
+
+- (void)configUI {
+    self.scrollView.backgroundColor = [UIColor clearColor];
+    self.scrollView.delegate = self;
+    [self.view addSubview:self.navView];
+    [self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.width.mas_equalTo(KPortraitWidth);
+        make.right.top.mas_equalTo(self.view);
+        make.height.mas_equalTo(kNaviBarHeight);
+    }];
+    
+    [self.scrollView mas_remakeConstraints:^(MASConstraintMaker *make) {
+        make.top.mas_equalTo(self.view.mas_top);
+        make.left.right.mas_equalTo(self.view);
+        make.bottom.mas_equalTo(self.view.mas_bottom);
+    }];
+    
+    // bodyView;
+    _bodyView = [InstitutionMineBodyView shareInstance];
+    [self.scrollView addSubview:_bodyView];
+    CGFloat contentMinHeight = [_bodyView getViewHeight];
+    CGFloat contentHeight = KPortraitHeight - kTabBarHeight;
+    CGFloat viewHeight = contentMinHeight > contentHeight ? contentMinHeight : contentHeight;
+    [_bodyView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.top.mas_equalTo(self.view.mas_bottom);
+        make.left.right.mas_equalTo(self.view);
+        make.height.mas_equalTo(viewHeight);
+        make.bottom.mas_equalTo(self.scrollView.mas_bottom);
+    }];
+    MJWeakSelf;
+    [_bodyView operationCallback:^(INSMINETYPE type) {
+        [weakSelf operationAction:type];
+    }];
+
+}
+
+
+- (void)viewWillAppear:(BOOL)animated {
+    [super viewWillAppear:animated];
+    if ([self checkIsLoginToLoginView:YES]) {
+        [self requsetUserMessage];
+    }
+}
+
+- (void)requsetUserMessage {
+    [KSNetworkingManager queryStudentInfoRequest:KS_GET success:^(NSDictionary * _Nonnull dic) {
+        if ([dic ks_integerValueForKey:@"code"] == 200 && [dic ks_boolValueForKey:@"status"]) {
+            self.mineInfo = [[StudentInfoModel alloc] initWithDictionary:[dic ks_dictionaryValueForKey:@"data"]];
+            [self refreshView];
+        }
+        else {
+            [self MBPShow:MESSAGEKEY];
+        }
+    } faliure:^(NSError * _Nonnull error) {
+        
+    }];
+}
+
+- (void)refreshView {
+    [self.bodyView configWithSource:self.mineInfo];
+}
+
+- (void)operationAction:(INSMINETYPE)type {
+    switch (type) {
+        case INSMINETYPE_MEMBER:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_TOOL:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_MUSIC:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_TRAIN:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_ORDER:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_RANK:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_CODE:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_HELP:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_FEEDBACK:
+        {
+            INSFeedbackViewController *ctrl = [[INSFeedbackViewController alloc] init];
+            [self.navigationController pushViewController:ctrl animated:YES];
+        }
+            break;
+        case INSMINETYPE_USERAGREEMENT:
+        {
+            
+        }
+            break;
+        case INSMINETYPE_PRIVACY:
+        {
+            KSBaseWKWebViewController *webCtrl = [[KSBaseWKWebViewController alloc] init];
+            webCtrl.url = [NSString stringWithFormat:@"%@%@", WEBHOST, @"/#/teacherFollow"];
+            [self.navigationController pushViewController:webCtrl animated:YES];
+        }
+            break;
+        case INSMINETYPE_ABOUT:
+        {
+            AboutUsViewController *ctrl = [[AboutUsViewController alloc] init];
+            [self.navigationController pushViewController:ctrl animated:YES];
+        }
+            break;
+        default:
+            break;
+    }
+}
+
+#pragma mark --- lazying
+- (InstitutionMineNavView *)navView {
+    if (!_navView) {
+        _navView = [InstitutionMineNavView shareInstance];
+        MJWeakSelf;
+        [_navView mineNavAction:^{
+            [weakSelf settingAction];
+        }];
+    }
+    return _navView;
+}
+
+- (void)settingAction {
+    INSSettingViewController *settingVC = [[INSSettingViewController alloc] init];
+    [self.navigationController pushViewController:settingVC animated:YES];
+}
+
+- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
+    CGFloat space = scrollView.contentOffset.y;
+    if (space >= kNaviBarHeight) {
+        self.navView.backgroundColor = [UIColor whiteColor];
+        self.navView.lineView.hidden = NO;
+    }
+    else {
+        self.navView.lineView.hidden = YES;
+        CGFloat rate = space / kNaviBarHeight < 0 ? 0 : space / kNaviBarHeight;
+        self.navView.backgroundColor = HexRGBAlpha(0xffffff, rate);
+    }
+}
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 44 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineBodyView.h

@@ -0,0 +1,44 @@
+//
+//  InstitutionMineBodyView.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import <UIKit/UIKit.h>
+#import "StudentInfoModel.h"
+
+typedef NS_ENUM(NSInteger, INSMINETYPE) {
+    INSMINETYPE_MEMBER = 1001,
+    INSMINETYPE_TOOL,
+    INSMINETYPE_MUSIC,
+    INSMINETYPE_TRAIN,
+    INSMINETYPE_ORDER,
+    INSMINETYPE_RANK,
+    INSMINETYPE_CODE,
+    INSMINETYPE_HELP,
+    INSMINETYPE_FEEDBACK,
+    INSMINETYPE_USERAGREEMENT,
+    INSMINETYPE_PRIVACY,
+    INSMINETYPE_ABOUT,
+    
+};
+
+typedef void(^INSMineViewCallback)(INSMINETYPE type);
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface InstitutionMineBodyView : UIView
+
++ (instancetype)shareInstance;
+
+- (void)configWithSource:(StudentInfoModel *)sourceModel;
+
+- (void)operationCallback:(INSMineViewCallback)callback;
+
+- (CGFloat)getViewHeight;
+
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 62 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineBodyView.m

@@ -0,0 +1,62 @@
+//
+//  InstitutionMineBodyView.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "InstitutionMineBodyView.h"
+
+@interface InstitutionMineBodyView ()
+@property (weak, nonatomic) IBOutlet UIImageView *userAvatar;
+@property (weak, nonatomic) IBOutlet UILabel *userName;
+@property (weak, nonatomic) IBOutlet UIImageView *memberImg;
+@property (weak, nonatomic) IBOutlet UIView *subjectView;
+@property (weak, nonatomic) IBOutlet UILabel *subjectLabel;
+
+@property (weak, nonatomic) IBOutlet UILabel *memberDesc;
+@property (weak, nonatomic) IBOutlet UILabel *toolDesc;
+
+@property (nonatomic, copy) INSMineViewCallback callback;
+
+
+@end
+
+@implementation InstitutionMineBodyView
+
++ (instancetype)shareInstance {
+    InstitutionMineBodyView *view = [[[NSBundle mainBundle] loadNibNamed:@"InstitutionMineBodyView" owner:nil options:nil] firstObject];
+    return view;
+}
+
+- (void)operationCallback:(INSMineViewCallback)callback {
+    if (callback) {
+        self.callback = callback;
+    }
+}
+
+- (void)configWithSource:(StudentInfoModel *)sourceModel {
+    
+}
+
+- (IBAction)clickAction:(UITapGestureRecognizer *)sender {
+    NSInteger index = sender.view.tag;
+    
+    if (self.callback) {
+        self.callback(index);
+    }
+}
+
+/*
+// Only override drawRect: if you perform custom drawing.
+// An empty implementation adversely affects performance during animation.
+- (void)drawRect:(CGRect)rect {
+    // Drawing code
+}
+*/
+
+- (CGFloat)getViewHeight {
+    return 275 + 12 + 130 + 12 + 58 * 5;
+}
+
+@end

+ 856 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineBodyView.xib

@@ -0,0 +1,856 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" 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="21679"/>
+        <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"/>
+        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="InstitutionMineBodyView">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="750"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <subviews>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Nbm-ze-ouR">
+                    <rect key="frame" x="0.0" y="0.0" width="393" height="275"/>
+                    <subviews>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_MineBg" translatesAutoresizingMaskIntoConstraints="NO" id="A30-6f-0Ca">
+                            <rect key="frame" x="0.0" y="0.0" width="393" height="393"/>
+                            <constraints>
+                                <constraint firstAttribute="width" secondItem="A30-6f-0Ca" secondAttribute="height" multiplier="1:1" id="W8q-R7-hrr"/>
+                            </constraints>
+                        </imageView>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_header" translatesAutoresizingMaskIntoConstraints="NO" id="uzc-nx-nAm">
+                            <rect key="frame" x="0.0" y="19" width="58" height="50"/>
+                        </imageView>
+                        <view tag="1001" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="xUo-7q-bZ9">
+                            <rect key="frame" x="13" y="183" width="179" height="76"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_mineMemberBg" translatesAutoresizingMaskIntoConstraints="NO" id="eMm-hR-8Jd">
+                                    <rect key="frame" x="108" y="0.0" width="71" height="76"/>
+                                </imageView>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="暂未开通" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wqN-QT-Cza">
+                                    <rect key="frame" x="10" y="43" width="50" height="17"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="17" id="iU7-Lx-WNZ"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_MemberLabel" translatesAutoresizingMaskIntoConstraints="NO" id="ulF-FE-zms">
+                                    <rect key="frame" x="10" y="19" width="60" height="15"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="15" id="LJB-Wy-aXz"/>
+                                        <constraint firstAttribute="width" constant="60" id="le1-LY-y63"/>
+                                    </constraints>
+                                </imageView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gzv-B6-KMx">
+                                    <rect key="frame" x="75" y="19.666666666666657" width="14" height="14"/>
+                                    <subviews>
+                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_detail" translatesAutoresizingMaskIntoConstraints="NO" id="gPw-Ft-Q1L">
+                                            <rect key="frame" x="2" y="1" width="11" height="11"/>
+                                        </imageView>
+                                    </subviews>
+                                    <color key="backgroundColor" red="0.93333333333333335" green="0.61568627450980395" blue="0.61568627450980395" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstItem="gPw-Ft-Q1L" firstAttribute="top" secondItem="gzv-B6-KMx" secondAttribute="top" constant="1" id="6ZJ-S5-5KK"/>
+                                        <constraint firstItem="gPw-Ft-Q1L" firstAttribute="leading" secondItem="gzv-B6-KMx" secondAttribute="leading" constant="2" id="6nD-Wn-hdC"/>
+                                        <constraint firstAttribute="width" constant="14" id="hor-fD-nS1"/>
+                                        <constraint firstAttribute="height" constant="14" id="sLW-HG-5Gk"/>
+                                    </constraints>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                            <real key="value" value="7"/>
+                                        </userDefinedRuntimeAttribute>
+                                    </userDefinedRuntimeAttributes>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" red="1" green="0.92549019607843142" blue="0.92549019607843142" alpha="1" colorSpace="calibratedRGB"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="ulF-FE-zms" firstAttribute="leading" secondItem="xUo-7q-bZ9" secondAttribute="leading" constant="10" id="1qw-mA-PfF"/>
+                                <constraint firstAttribute="height" constant="76" id="JXQ-rr-Pif"/>
+                                <constraint firstItem="gzv-B6-KMx" firstAttribute="leading" secondItem="ulF-FE-zms" secondAttribute="trailing" constant="5" id="MhK-Gc-Hgs"/>
+                                <constraint firstAttribute="bottom" secondItem="eMm-hR-8Jd" secondAttribute="bottom" id="RIX-Mx-KX8"/>
+                                <constraint firstItem="eMm-hR-8Jd" firstAttribute="top" secondItem="xUo-7q-bZ9" secondAttribute="top" id="UQA-LY-oIg"/>
+                                <constraint firstItem="wqN-QT-Cza" firstAttribute="leading" secondItem="xUo-7q-bZ9" secondAttribute="leading" constant="10" id="Ucn-jL-ZRb"/>
+                                <constraint firstItem="ulF-FE-zms" firstAttribute="top" secondItem="xUo-7q-bZ9" secondAttribute="top" constant="19" id="dia-fO-5ph"/>
+                                <constraint firstItem="gzv-B6-KMx" firstAttribute="centerY" secondItem="ulF-FE-zms" secondAttribute="centerY" id="fkg-g9-ZoY"/>
+                                <constraint firstAttribute="trailing" secondItem="eMm-hR-8Jd" secondAttribute="trailing" id="vfg-r9-fen"/>
+                                <constraint firstAttribute="bottom" secondItem="wqN-QT-Cza" secondAttribute="bottom" constant="16" id="wjM-N7-X0C"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                    <real key="value" value="10"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="gEi-US-rfA" appends="YES" id="Ybd-tY-by9"/>
+                            </connections>
+                        </view>
+                        <view tag="1002" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Mxr-u3-Zhb">
+                            <rect key="frame" x="201" y="183" width="179" height="76"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_mineToolBg" translatesAutoresizingMaskIntoConstraints="NO" id="gzb-kF-p1c">
+                                    <rect key="frame" x="108" y="0.0" width="71" height="76"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="71" id="ZXy-xl-WNs"/>
+                                        <constraint firstAttribute="height" constant="76" id="u7D-m9-NQa"/>
+                                    </constraints>
+                                </imageView>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_ToolTitle" translatesAutoresizingMaskIntoConstraints="NO" id="2tE-BT-KvU">
+                                    <rect key="frame" x="8" y="19" width="60" height="15"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="60" id="oCm-Do-F6Q"/>
+                                        <constraint firstAttribute="height" constant="15" id="vTb-dr-nak"/>
+                                    </constraints>
+                                </imageView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="J15-HR-2eh">
+                                    <rect key="frame" x="73" y="19.666666666666657" width="14" height="14"/>
+                                    <subviews>
+                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_detail" translatesAutoresizingMaskIntoConstraints="NO" id="Ac9-PU-LTL">
+                                            <rect key="frame" x="2" y="1" width="11" height="11"/>
+                                        </imageView>
+                                    </subviews>
+                                    <color key="backgroundColor" red="0.94509803921568625" green="0.77647058823529413" blue="0.5490196078431373" alpha="1" colorSpace="calibratedRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="14" id="4Tm-NG-jfK"/>
+                                        <constraint firstItem="Ac9-PU-LTL" firstAttribute="leading" secondItem="J15-HR-2eh" secondAttribute="leading" constant="2" id="9oE-qw-yzs"/>
+                                        <constraint firstAttribute="height" constant="14" id="GQ2-QL-Jfh"/>
+                                        <constraint firstItem="Ac9-PU-LTL" firstAttribute="top" secondItem="J15-HR-2eh" secondAttribute="top" constant="1" id="pk2-sl-Ile"/>
+                                    </constraints>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                            <real key="value" value="7"/>
+                                        </userDefinedRuntimeAttribute>
+                                    </userDefinedRuntimeAttributes>
+                                </view>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="至2023-07-16" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6jm-cm-okg">
+                                    <rect key="frame" x="8" y="43" width="80.666666666666671" height="17"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="17" id="rEb-rX-P4l"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" red="1" green="0.94901960784313721" blue="0.88627450980392153" alpha="1" colorSpace="calibratedRGB"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="2tE-BT-KvU" firstAttribute="top" secondItem="Mxr-u3-Zhb" secondAttribute="top" constant="19" id="2oQ-iJ-06l"/>
+                                <constraint firstAttribute="height" constant="76" id="3ch-ml-Hn0"/>
+                                <constraint firstItem="2tE-BT-KvU" firstAttribute="leading" secondItem="Mxr-u3-Zhb" secondAttribute="leading" constant="8" id="BZH-3x-xH4"/>
+                                <constraint firstAttribute="trailing" secondItem="gzb-kF-p1c" secondAttribute="trailing" id="ESk-qr-fYg"/>
+                                <constraint firstItem="J15-HR-2eh" firstAttribute="centerY" secondItem="2tE-BT-KvU" secondAttribute="centerY" id="IYN-vi-0W1"/>
+                                <constraint firstItem="6jm-cm-okg" firstAttribute="leading" secondItem="Mxr-u3-Zhb" secondAttribute="leading" constant="8" id="LxC-7Q-e6O"/>
+                                <constraint firstAttribute="bottom" secondItem="6jm-cm-okg" secondAttribute="bottom" constant="16" id="Rqr-cF-Z5M"/>
+                                <constraint firstItem="gzb-kF-p1c" firstAttribute="top" secondItem="Mxr-u3-Zhb" secondAttribute="top" id="eym-Nu-zMb"/>
+                                <constraint firstItem="J15-HR-2eh" firstAttribute="leading" secondItem="2tE-BT-KvU" secondAttribute="trailing" constant="5" id="mvC-7N-cR4"/>
+                                <constraint firstAttribute="bottom" secondItem="gzb-kF-p1c" secondAttribute="bottom" id="oe7-sm-PW4"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                    <real key="value" value="10"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="j4v-SU-6Yg" appends="YES" id="oE4-mU-4kA"/>
+                            </connections>
+                        </view>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_MemberImage" translatesAutoresizingMaskIntoConstraints="NO" id="x5p-j7-s1g">
+                            <rect key="frame" x="121" y="179" width="77" height="66"/>
+                        </imageView>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_ToolImage" translatesAutoresizingMaskIntoConstraints="NO" id="Vt5-8U-7eH">
+                            <rect key="frame" x="309" y="185" width="72" height="64"/>
+                        </imageView>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_topLayer" translatesAutoresizingMaskIntoConstraints="NO" id="98L-RE-L5b">
+                            <rect key="frame" x="264" y="0.0" width="129" height="114"/>
+                        </imageView>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="LYR-lA-eEp">
+                            <rect key="frame" x="24" y="86" width="72" height="72"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_default_avatal" translatesAutoresizingMaskIntoConstraints="NO" id="X3c-Yi-Xkh">
+                                    <rect key="frame" x="2" y="2" width="68" height="68"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="68" id="Ipk-01-OFZ"/>
+                                        <constraint firstAttribute="width" constant="68" id="yCK-AW-ODo"/>
+                                    </constraints>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                            <real key="value" value="34"/>
+                                        </userDefinedRuntimeAttribute>
+                                    </userDefinedRuntimeAttributes>
+                                </imageView>
+                            </subviews>
+                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="72" id="BUA-nM-5fn"/>
+                                <constraint firstItem="X3c-Yi-Xkh" firstAttribute="centerX" secondItem="LYR-lA-eEp" secondAttribute="centerX" id="Oqx-Fd-y7Q"/>
+                                <constraint firstItem="X3c-Yi-Xkh" firstAttribute="centerY" secondItem="LYR-lA-eEp" secondAttribute="centerY" id="VG8-eX-QFF"/>
+                                <constraint firstAttribute="height" constant="72" id="VtO-Gn-FSV"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                    <real key="value" value="36"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                        </view>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="林霜降" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Nlb-bG-jKG">
+                            <rect key="frame" x="108" y="91" width="52" height="28"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="28" id="KND-9T-wMM"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                            <nil key="textColor"/>
+                            <nil key="highlightedColor"/>
+                        </label>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="aWj-xg-N6w">
+                            <rect key="frame" x="108" y="125" width="68" height="19"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_subject" translatesAutoresizingMaskIntoConstraints="NO" id="BCo-k7-x8g">
+                                    <rect key="frame" x="7" y="3" width="13" height="13"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="13" id="4fV-Nd-19x"/>
+                                        <constraint firstAttribute="height" constant="13" id="frl-N1-FNa"/>
+                                    </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="k3g-g1-liB">
+                                    <rect key="frame" x="24" y="2.3333333333333295" width="37" height="14.333333333333336"/>
+                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="12"/>
+                                    <color key="textColor" red="0.99607843137254903" green="0.14117647058823529" blue="0.31764705882352939" alpha="1" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" red="1" green="1" blue="1" alpha="0.29999999999999999" colorSpace="custom" customColorSpace="calibratedRGB"/>
+                            <constraints>
+                                <constraint firstItem="BCo-k7-x8g" firstAttribute="centerY" secondItem="aWj-xg-N6w" secondAttribute="centerY" id="DD2-Ap-dm3"/>
+                                <constraint firstItem="BCo-k7-x8g" firstAttribute="leading" secondItem="aWj-xg-N6w" secondAttribute="leading" constant="7" id="MfL-5Y-28v"/>
+                                <constraint firstItem="k3g-g1-liB" firstAttribute="centerY" secondItem="aWj-xg-N6w" secondAttribute="centerY" id="O2n-Kd-n9e"/>
+                                <constraint firstAttribute="height" constant="19" id="Pt5-1v-E8g"/>
+                                <constraint firstAttribute="trailing" secondItem="k3g-g1-liB" secondAttribute="trailing" constant="7" id="ThN-1B-UxB"/>
+                                <constraint firstItem="k3g-g1-liB" firstAttribute="leading" secondItem="BCo-k7-x8g" secondAttribute="trailing" constant="4" id="dNO-Y8-VA9"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                                    <real key="value" value="9.5"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="number" keyPath="borderWidth">
+                                    <real key="value" value="1"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="color" keyPath="borderColor">
+                                    <color key="value" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                        </view>
+                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="institution_mineMember_tag" translatesAutoresizingMaskIntoConstraints="NO" id="j1E-FX-DSh">
+                            <rect key="frame" x="166" y="96" width="44" height="17"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="44" id="F0Y-OI-vHn"/>
+                                <constraint firstAttribute="height" constant="17" id="iHY-he-VUA"/>
+                            </constraints>
+                        </imageView>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstItem="LYR-lA-eEp" firstAttribute="leading" secondItem="Nbm-ze-ouR" secondAttribute="leading" constant="24" id="0QW-mE-QpS"/>
+                        <constraint firstItem="x5p-j7-s1g" firstAttribute="top" secondItem="xUo-7q-bZ9" secondAttribute="top" constant="-4" id="0lP-a5-Wva"/>
+                        <constraint firstItem="A30-6f-0Ca" firstAttribute="leading" secondItem="Nbm-ze-ouR" secondAttribute="leading" id="1yA-Tt-Ebf"/>
+                        <constraint firstItem="Nlb-bG-jKG" firstAttribute="top" secondItem="LYR-lA-eEp" secondAttribute="top" constant="5" id="2Do-ed-2h8"/>
+                        <constraint firstItem="x5p-j7-s1g" firstAttribute="trailing" secondItem="xUo-7q-bZ9" secondAttribute="trailing" constant="6" id="3C5-y9-zJO"/>
+                        <constraint firstItem="Mxr-u3-Zhb" firstAttribute="top" secondItem="Vt5-8U-7eH" secondAttribute="top" constant="-2" id="5GT-fh-y4e"/>
+                        <constraint firstItem="Mxr-u3-Zhb" firstAttribute="leading" secondItem="xUo-7q-bZ9" secondAttribute="trailing" constant="9" id="8zA-Aj-WPH"/>
+                        <constraint firstItem="aWj-xg-N6w" firstAttribute="leading" secondItem="Nlb-bG-jKG" secondAttribute="leading" id="Ac8-Gn-4f7"/>
+                        <constraint firstItem="Mxr-u3-Zhb" firstAttribute="trailing" secondItem="Vt5-8U-7eH" secondAttribute="trailing" constant="-1" id="Gtn-8B-Vwg"/>
+                        <constraint firstAttribute="bottom" secondItem="xUo-7q-bZ9" secondAttribute="bottom" constant="16" id="HDi-YK-9Xh"/>
+                        <constraint firstItem="uzc-nx-nAm" firstAttribute="leading" secondItem="Nbm-ze-ouR" secondAttribute="leading" id="Mx7-Xa-Lf1"/>
+                        <constraint firstItem="xUo-7q-bZ9" firstAttribute="top" secondItem="LYR-lA-eEp" secondAttribute="bottom" constant="25" id="QDk-md-kSV"/>
+                        <constraint firstItem="j1E-FX-DSh" firstAttribute="leading" secondItem="Nlb-bG-jKG" secondAttribute="trailing" constant="6" id="Rds-XE-dbL"/>
+                        <constraint firstItem="aWj-xg-N6w" firstAttribute="top" secondItem="Nlb-bG-jKG" secondAttribute="bottom" constant="6" id="Rov-Ud-l0r"/>
+                        <constraint firstItem="Nlb-bG-jKG" firstAttribute="leading" secondItem="LYR-lA-eEp" secondAttribute="trailing" constant="12" id="VAJ-XK-Ard"/>
+                        <constraint firstItem="98L-RE-L5b" firstAttribute="top" secondItem="Nbm-ze-ouR" secondAttribute="top" id="VdU-Vu-Udt"/>
+                        <constraint firstAttribute="trailing" secondItem="98L-RE-L5b" secondAttribute="trailing" id="YOs-Jb-zUi"/>
+                        <constraint firstItem="Mxr-u3-Zhb" firstAttribute="width" secondItem="xUo-7q-bZ9" secondAttribute="width" id="Zox-PL-Vig"/>
+                        <constraint firstItem="uzc-nx-nAm" firstAttribute="top" secondItem="Nbm-ze-ouR" secondAttribute="top" constant="19" id="Zqj-cL-ErZ"/>
+                        <constraint firstAttribute="height" constant="275" id="fPk-KI-PIk"/>
+                        <constraint firstAttribute="trailing" secondItem="A30-6f-0Ca" secondAttribute="trailing" id="gSQ-A1-hjP"/>
+                        <constraint firstAttribute="bottom" secondItem="Mxr-u3-Zhb" secondAttribute="bottom" constant="16" id="l7Z-BD-Yt1"/>
+                        <constraint firstItem="j1E-FX-DSh" firstAttribute="top" secondItem="Nlb-bG-jKG" secondAttribute="top" constant="5" id="oxk-oM-jZs"/>
+                        <constraint firstItem="A30-6f-0Ca" firstAttribute="top" secondItem="Nbm-ze-ouR" secondAttribute="top" id="pce-4x-814"/>
+                        <constraint firstItem="xUo-7q-bZ9" firstAttribute="leading" secondItem="Nbm-ze-ouR" secondAttribute="leading" constant="13" id="rgr-bo-Yk0"/>
+                        <constraint firstAttribute="trailing" secondItem="Mxr-u3-Zhb" secondAttribute="trailing" constant="13" id="s7x-po-Vg7"/>
+                    </constraints>
+                </view>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iE8-e2-07v">
+                    <rect key="frame" x="13" y="287" width="367" height="130"/>
+                    <subviews>
+                        <view tag="1003" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Sny-pb-TWZ">
+                            <rect key="frame" x="0.0" y="51" width="73.333333333333329" height="74"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_code" translatesAutoresizingMaskIntoConstraints="NO" id="z6K-YU-QmJ">
+                                    <rect key="frame" x="20.666666666666664" y="2" width="32" height="32"/>
+                                    <gestureRecognizers/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="32" id="3nQ-Bb-ccy"/>
+                                        <constraint firstAttribute="width" constant="32" id="kmX-tB-rz0"/>
+                                    </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="llV-N6-iUM">
+                                    <rect key="frame" x="12.000000000000004" y="43" width="49.333333333333343" height="16"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="16" id="EhM-4l-Q4H"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstAttribute="bottom" secondItem="llV-N6-iUM" secondAttribute="bottom" constant="15" id="DCG-Im-C1c"/>
+                                <constraint firstItem="llV-N6-iUM" firstAttribute="top" secondItem="z6K-YU-QmJ" secondAttribute="bottom" constant="9" id="GgK-o3-OnV"/>
+                                <constraint firstItem="llV-N6-iUM" firstAttribute="centerX" secondItem="z6K-YU-QmJ" secondAttribute="centerX" id="Tl7-CN-zla"/>
+                                <constraint firstItem="z6K-YU-QmJ" firstAttribute="centerX" secondItem="Sny-pb-TWZ" secondAttribute="centerX" id="hNI-eo-HfF"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="xCJ-Tc-iEY" appends="YES" id="5zR-pu-xql"/>
+                            </connections>
+                        </view>
+                        <view tag="1004" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="XWh-l9-hOS">
+                            <rect key="frame" x="73.333333333333343" y="51" width="73.333333333333343" height="74"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_eveluate" translatesAutoresizingMaskIntoConstraints="NO" id="EEW-IB-hg7">
+                                    <rect key="frame" x="20.666666666666671" y="1" width="32" height="32"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="32" id="mbZ-LU-MyN"/>
+                                        <constraint firstAttribute="width" constant="32" id="rgr-gt-DRv"/>
+                                    </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="tKv-6K-2Lh">
+                                    <rect key="frame" x="12.000000000000004" y="43" width="49.333333333333343" height="16"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="16" id="4PT-bu-Tbp"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="tKv-6K-2Lh" firstAttribute="top" secondItem="EEW-IB-hg7" secondAttribute="bottom" constant="10" id="P9I-8f-mp0"/>
+                                <constraint firstItem="EEW-IB-hg7" firstAttribute="centerX" secondItem="XWh-l9-hOS" secondAttribute="centerX" id="fJS-9g-8tg"/>
+                                <constraint firstAttribute="bottom" secondItem="tKv-6K-2Lh" secondAttribute="bottom" constant="15" id="gNs-1V-VX5"/>
+                                <constraint firstItem="tKv-6K-2Lh" firstAttribute="centerX" secondItem="EEW-IB-hg7" secondAttribute="centerX" id="lsU-HV-gVb"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="BYm-19-2ah" appends="YES" id="htz-UT-oWn"/>
+                            </connections>
+                        </view>
+                        <view tag="1005" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9n9-51-GnM">
+                            <rect key="frame" x="146.66666666666666" y="51" width="73.666666666666657" height="74"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_order" translatesAutoresizingMaskIntoConstraints="NO" id="Dd1-kz-ACR">
+                                    <rect key="frame" x="21" y="1" width="32" height="32"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="32" id="QGk-JB-c5l"/>
+                                        <constraint firstAttribute="width" constant="32" id="uVK-ef-irC"/>
+                                    </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="CCv-8F-puO">
+                                    <rect key="frame" x="12.333333333333346" y="43" width="49.333333333333343" height="16"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="16" id="teG-Pd-LeH"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="Dd1-kz-ACR" firstAttribute="centerX" secondItem="9n9-51-GnM" secondAttribute="centerX" id="3kU-J2-jIZ"/>
+                                <constraint firstItem="CCv-8F-puO" firstAttribute="centerX" secondItem="Dd1-kz-ACR" secondAttribute="centerX" id="FcT-JT-gwR"/>
+                                <constraint firstAttribute="bottom" secondItem="CCv-8F-puO" secondAttribute="bottom" constant="15" id="Nvl-xo-ggx"/>
+                                <constraint firstItem="CCv-8F-puO" firstAttribute="top" secondItem="Dd1-kz-ACR" secondAttribute="bottom" constant="10" id="U88-O8-Nhn"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="vKx-8d-UTl" appends="YES" id="cu6-d5-Rgx"/>
+                            </connections>
+                        </view>
+                        <view tag="1006" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iBV-4n-9tN">
+                            <rect key="frame" x="220.33333333333334" y="51" width="73.333333333333343" height="74"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_rank" translatesAutoresizingMaskIntoConstraints="NO" id="6o5-QV-pgd">
+                                    <rect key="frame" x="20.666666666666657" y="1" width="32" height="32"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="32" id="Jek-gw-t3C"/>
+                                        <constraint firstAttribute="height" constant="32" id="cg2-2G-gFg"/>
+                                    </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="Dva-Em-ug7">
+                                    <rect key="frame" x="18" y="43" width="37" height="16"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="16" id="JKR-Wd-nWu"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="Dva-Em-ug7" firstAttribute="centerX" secondItem="6o5-QV-pgd" secondAttribute="centerX" id="1sj-du-pWJ"/>
+                                <constraint firstAttribute="bottom" secondItem="Dva-Em-ug7" secondAttribute="bottom" constant="15" id="feT-XR-62H"/>
+                                <constraint firstItem="Dva-Em-ug7" firstAttribute="top" secondItem="6o5-QV-pgd" secondAttribute="bottom" constant="10" id="r2Y-yN-XbS"/>
+                                <constraint firstItem="6o5-QV-pgd" firstAttribute="centerX" secondItem="iBV-4n-9tN" secondAttribute="centerX" id="zwM-Ns-v9R"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="5cM-13-0B5" appends="YES" id="X6T-5h-XcY"/>
+                            </connections>
+                        </view>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="常用功能" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QIe-vg-wc9">
+                            <rect key="frame" x="15.000000000000004" y="15" width="61.333333333333343" height="21"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="21" id="Sxy-2a-YhZ"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" weight="semibold" 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 tag="1006" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="JPB-oG-7OI">
+                            <rect key="frame" x="293.66666666666669" y="51" width="73.333333333333314" height="74"/>
+                            <subviews>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_mine_code" translatesAutoresizingMaskIntoConstraints="NO" id="fq9-6v-NL0">
+                                    <rect key="frame" x="20.666666666666629" y="1" width="32" height="32"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="32" id="WSx-ZO-tIf"/>
+                                        <constraint firstAttribute="height" constant="32" id="e4d-3b-Gdb"/>
+                                    </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="XRm-Fc-bnp">
+                                    <rect key="frame" x="18" y="43" width="37" height="16"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="16" id="mj3-pq-ivj"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                    <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="XRm-Fc-bnp" firstAttribute="centerX" secondItem="fq9-6v-NL0" secondAttribute="centerX" id="4IJ-o8-sfw"/>
+                                <constraint firstItem="XRm-Fc-bnp" firstAttribute="top" secondItem="fq9-6v-NL0" secondAttribute="bottom" constant="10" id="MHf-qT-Fzl"/>
+                                <constraint firstItem="fq9-6v-NL0" firstAttribute="centerX" secondItem="JPB-oG-7OI" secondAttribute="centerX" id="VPs-WG-Ooh"/>
+                                <constraint firstAttribute="bottom" secondItem="XRm-Fc-bnp" secondAttribute="bottom" constant="15" id="p7H-Sb-dJR"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="f2V-Zn-5hZ" appends="YES" id="Ubv-3d-jzI"/>
+                            </connections>
+                        </view>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstItem="9n9-51-GnM" firstAttribute="top" secondItem="Sny-pb-TWZ" secondAttribute="top" id="1sE-so-FQ5"/>
+                        <constraint firstItem="iBV-4n-9tN" firstAttribute="bottom" secondItem="Sny-pb-TWZ" secondAttribute="bottom" id="2ie-Lh-j5e"/>
+                        <constraint firstAttribute="bottom" secondItem="Sny-pb-TWZ" secondAttribute="bottom" constant="5" id="2mJ-hl-NMX"/>
+                        <constraint firstItem="QIe-vg-wc9" firstAttribute="leading" secondItem="iE8-e2-07v" secondAttribute="leading" constant="15" id="43f-iw-ckE"/>
+                        <constraint firstItem="Sny-pb-TWZ" firstAttribute="top" secondItem="QIe-vg-wc9" secondAttribute="bottom" constant="15" id="52f-wH-uDC"/>
+                        <constraint firstItem="9n9-51-GnM" firstAttribute="bottom" secondItem="Sny-pb-TWZ" secondAttribute="bottom" id="ABN-Ze-8fa"/>
+                        <constraint firstItem="XWh-l9-hOS" firstAttribute="width" secondItem="Sny-pb-TWZ" secondAttribute="width" id="Dim-41-sfB"/>
+                        <constraint firstItem="9n9-51-GnM" firstAttribute="leading" secondItem="XWh-l9-hOS" secondAttribute="trailing" id="FRi-q4-0DZ"/>
+                        <constraint firstItem="XWh-l9-hOS" firstAttribute="bottom" secondItem="Sny-pb-TWZ" secondAttribute="bottom" id="Fuw-8r-pjH"/>
+                        <constraint firstItem="QIe-vg-wc9" firstAttribute="top" secondItem="iE8-e2-07v" secondAttribute="top" constant="15" id="M4I-eo-HK7"/>
+                        <constraint firstItem="JPB-oG-7OI" firstAttribute="bottom" secondItem="iBV-4n-9tN" secondAttribute="bottom" id="OKn-6P-loW"/>
+                        <constraint firstItem="XWh-l9-hOS" firstAttribute="leading" secondItem="Sny-pb-TWZ" secondAttribute="trailing" id="SnR-aA-EIQ"/>
+                        <constraint firstItem="JPB-oG-7OI" firstAttribute="width" secondItem="iBV-4n-9tN" secondAttribute="width" id="Tt7-AI-6E0"/>
+                        <constraint firstItem="iBV-4n-9tN" firstAttribute="top" secondItem="Sny-pb-TWZ" secondAttribute="top" id="Xl2-uN-x4K"/>
+                        <constraint firstItem="JPB-oG-7OI" firstAttribute="top" secondItem="iBV-4n-9tN" secondAttribute="top" id="YJA-mr-LYM"/>
+                        <constraint firstItem="9n9-51-GnM" firstAttribute="width" secondItem="Sny-pb-TWZ" secondAttribute="width" id="Yrc-gQ-mgX"/>
+                        <constraint firstAttribute="height" constant="130" id="ZcP-FC-3Pg"/>
+                        <constraint firstItem="iBV-4n-9tN" firstAttribute="width" secondItem="Sny-pb-TWZ" secondAttribute="width" id="cVH-1m-HzC"/>
+                        <constraint firstItem="JPB-oG-7OI" firstAttribute="leading" secondItem="iBV-4n-9tN" secondAttribute="trailing" id="fsd-xj-RxC"/>
+                        <constraint firstItem="XWh-l9-hOS" firstAttribute="top" secondItem="Sny-pb-TWZ" secondAttribute="top" id="kX2-B8-NZw"/>
+                        <constraint firstItem="Sny-pb-TWZ" firstAttribute="leading" secondItem="iE8-e2-07v" secondAttribute="leading" id="ve1-IS-9Ga"/>
+                        <constraint firstItem="iBV-4n-9tN" firstAttribute="leading" secondItem="9n9-51-GnM" secondAttribute="trailing" id="yhW-tY-WkR"/>
+                        <constraint firstAttribute="trailing" secondItem="JPB-oG-7OI" secondAttribute="trailing" id="yp3-a3-L5A"/>
+                    </constraints>
+                    <userDefinedRuntimeAttributes>
+                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                            <real key="value" value="12"/>
+                        </userDefinedRuntimeAttribute>
+                    </userDefinedRuntimeAttributes>
+                </view>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3KY-c7-2Hr">
+                    <rect key="frame" x="13" y="429" width="367" height="290"/>
+                    <subviews>
+                        <view tag="1008" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="YoI-Ul-U7N">
+                            <rect key="frame" x="0.0" y="0.0" width="367" height="58"/>
+                            <subviews>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="帮助中心" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fWv-5K-YGR">
+                                    <rect key="frame" x="51.999999999999993" y="19.333333333333314" width="65.333333333333314" height="19.333333333333329"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                    <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_next" translatesAutoresizingMaskIntoConstraints="NO" id="d9j-jy-TPj">
+                                    <rect key="frame" x="346" y="21.666666666666686" width="8" height="15"/>
+                                </imageView>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_help" translatesAutoresizingMaskIntoConstraints="NO" id="6fY-qz-U6i">
+                                    <rect key="frame" x="20" y="18" width="22" height="22"/>
+                                </imageView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mpM-n3-GBP">
+                                    <rect key="frame" x="15" y="57" width="337" height="1"/>
+                                    <color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="1" id="QMP-6T-uGc"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="58" id="1Tm-Yf-mGq"/>
+                                <constraint firstItem="6fY-qz-U6i" firstAttribute="leading" secondItem="YoI-Ul-U7N" secondAttribute="leading" constant="20" id="4MJ-lt-5k0"/>
+                                <constraint firstAttribute="trailing" secondItem="d9j-jy-TPj" secondAttribute="trailing" constant="13" id="6fo-iT-aZ5"/>
+                                <constraint firstItem="d9j-jy-TPj" firstAttribute="centerY" secondItem="YoI-Ul-U7N" secondAttribute="centerY" id="Afj-e7-2tX"/>
+                                <constraint firstItem="fWv-5K-YGR" firstAttribute="centerY" secondItem="YoI-Ul-U7N" secondAttribute="centerY" id="OB8-PH-GxE"/>
+                                <constraint firstAttribute="trailing" secondItem="mpM-n3-GBP" secondAttribute="trailing" constant="15" id="RcZ-wc-4rd"/>
+                                <constraint firstItem="6fY-qz-U6i" firstAttribute="centerY" secondItem="YoI-Ul-U7N" secondAttribute="centerY" id="bJE-L9-7H0"/>
+                                <constraint firstAttribute="bottom" secondItem="mpM-n3-GBP" secondAttribute="bottom" id="dZI-cz-j9J"/>
+                                <constraint firstItem="mpM-n3-GBP" firstAttribute="leading" secondItem="YoI-Ul-U7N" secondAttribute="leading" constant="15" id="m3x-SE-TsB"/>
+                                <constraint firstItem="fWv-5K-YGR" firstAttribute="leading" secondItem="6fY-qz-U6i" secondAttribute="trailing" constant="10" id="s71-H0-eIp"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="tLH-lj-bfO" appends="YES" id="9Dg-5a-ddX"/>
+                            </connections>
+                        </view>
+                        <view tag="1009" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="LNk-Hh-S11">
+                            <rect key="frame" x="0.0" y="58" width="367" height="58"/>
+                            <subviews>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="意见反馈" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dnv-60-hyW">
+                                    <rect key="frame" x="51.999999999999993" y="19.666666666666686" width="65.333333333333314" height="19"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                    <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_next" translatesAutoresizingMaskIntoConstraints="NO" id="sOz-fa-02f">
+                                    <rect key="frame" x="346" y="21.666666666666686" width="8" height="15"/>
+                                </imageView>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_feedback" translatesAutoresizingMaskIntoConstraints="NO" id="6bB-bB-Vix">
+                                    <rect key="frame" x="20" y="18" width="22" height="22"/>
+                                </imageView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="SdN-Dw-8RX">
+                                    <rect key="frame" x="15" y="57" width="337" height="1"/>
+                                    <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="1" id="vRU-NH-r05"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstAttribute="trailing" secondItem="SdN-Dw-8RX" secondAttribute="trailing" constant="15" id="7S0-xY-Ldt"/>
+                                <constraint firstAttribute="height" constant="58" id="8BL-9i-NYr"/>
+                                <constraint firstItem="Dnv-60-hyW" firstAttribute="centerY" secondItem="LNk-Hh-S11" secondAttribute="centerY" id="AWb-Tb-hYb"/>
+                                <constraint firstItem="6bB-bB-Vix" firstAttribute="centerY" secondItem="LNk-Hh-S11" secondAttribute="centerY" id="PlG-2O-5gE"/>
+                                <constraint firstItem="sOz-fa-02f" firstAttribute="centerY" secondItem="LNk-Hh-S11" secondAttribute="centerY" id="V96-Ma-IA6"/>
+                                <constraint firstAttribute="trailing" secondItem="sOz-fa-02f" secondAttribute="trailing" constant="13" id="VdX-3h-4Em"/>
+                                <constraint firstItem="SdN-Dw-8RX" firstAttribute="leading" secondItem="LNk-Hh-S11" secondAttribute="leading" constant="15" id="aOY-ne-WpM"/>
+                                <constraint firstItem="Dnv-60-hyW" firstAttribute="leading" secondItem="6bB-bB-Vix" secondAttribute="trailing" constant="10" id="cbG-uW-u5Y"/>
+                                <constraint firstItem="6bB-bB-Vix" firstAttribute="leading" secondItem="LNk-Hh-S11" secondAttribute="leading" constant="20" id="rhn-GT-SS0"/>
+                                <constraint firstAttribute="bottom" secondItem="SdN-Dw-8RX" secondAttribute="bottom" id="tWm-I9-Z42"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="BBZ-qd-sag" appends="YES" id="ZGc-Xk-sqT"/>
+                            </connections>
+                        </view>
+                        <view tag="1010" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="92r-es-QMt">
+                            <rect key="frame" x="0.0" y="116" width="367" height="58"/>
+                            <subviews>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="用户协议" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8mD-vY-M3T">
+                                    <rect key="frame" x="51.999999999999993" y="19.666666666666629" width="65.333333333333314" height="19"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                    <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_next" translatesAutoresizingMaskIntoConstraints="NO" id="8Xe-aG-eBm">
+                                    <rect key="frame" x="346" y="21.666666666666629" width="8" height="15"/>
+                                </imageView>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_userAgreement" translatesAutoresizingMaskIntoConstraints="NO" id="qzD-bY-PuR">
+                                    <rect key="frame" x="20" y="18" width="22" height="22"/>
+                                </imageView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="NCi-zu-M1q">
+                                    <rect key="frame" x="15" y="57" width="337" height="1"/>
+                                    <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="1" id="JNr-bH-Up9"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="58" id="5AW-5d-ZEU"/>
+                                <constraint firstAttribute="trailing" secondItem="NCi-zu-M1q" secondAttribute="trailing" constant="15" id="Axy-Aq-gUx"/>
+                                <constraint firstItem="NCi-zu-M1q" firstAttribute="leading" secondItem="92r-es-QMt" secondAttribute="leading" constant="15" id="M5N-Pl-mIS"/>
+                                <constraint firstItem="8mD-vY-M3T" firstAttribute="centerY" secondItem="92r-es-QMt" secondAttribute="centerY" id="TcL-Ra-MDC"/>
+                                <constraint firstItem="qzD-bY-PuR" firstAttribute="leading" secondItem="92r-es-QMt" secondAttribute="leading" constant="20" id="VyS-cm-ZyB"/>
+                                <constraint firstItem="8mD-vY-M3T" firstAttribute="leading" secondItem="qzD-bY-PuR" secondAttribute="trailing" constant="10" id="cOS-Xl-3CZ"/>
+                                <constraint firstAttribute="trailing" secondItem="8Xe-aG-eBm" secondAttribute="trailing" constant="13" id="eep-Bk-d0z"/>
+                                <constraint firstItem="8Xe-aG-eBm" firstAttribute="centerY" secondItem="92r-es-QMt" secondAttribute="centerY" id="epF-1D-ier"/>
+                                <constraint firstAttribute="bottom" secondItem="NCi-zu-M1q" secondAttribute="bottom" id="oMA-5j-Zh7"/>
+                                <constraint firstItem="qzD-bY-PuR" firstAttribute="centerY" secondItem="92r-es-QMt" secondAttribute="centerY" id="wbR-6U-FUY"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="0sm-xw-Lii" appends="YES" id="JRD-la-ctM"/>
+                            </connections>
+                        </view>
+                        <view tag="1011" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="NTm-jn-Mpl">
+                            <rect key="frame" x="0.0" y="174" width="367" height="58"/>
+                            <subviews>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="隐私协议" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8We-Tk-Xu4">
+                                    <rect key="frame" x="51.999999999999993" y="19.666666666666629" width="65.333333333333314" height="19"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                    <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_next" translatesAutoresizingMaskIntoConstraints="NO" id="FSm-3Y-APU">
+                                    <rect key="frame" x="346" y="21.666666666666629" width="8" height="15"/>
+                                </imageView>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_privacy" translatesAutoresizingMaskIntoConstraints="NO" id="q1c-8S-Ylf">
+                                    <rect key="frame" x="20" y="18" width="22" height="22"/>
+                                </imageView>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="sFb-lH-ZkS">
+                                    <rect key="frame" x="15" y="57" width="337" height="1"/>
+                                    <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="1" id="9LE-1R-rTP"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstItem="FSm-3Y-APU" firstAttribute="centerY" secondItem="NTm-jn-Mpl" secondAttribute="centerY" id="6EL-Hf-ptN"/>
+                                <constraint firstItem="q1c-8S-Ylf" firstAttribute="centerY" secondItem="NTm-jn-Mpl" secondAttribute="centerY" id="7ge-me-UVS"/>
+                                <constraint firstAttribute="height" constant="58" id="Bvg-XX-kqN"/>
+                                <constraint firstItem="q1c-8S-Ylf" firstAttribute="leading" secondItem="NTm-jn-Mpl" secondAttribute="leading" constant="20" id="IRi-eD-2iF"/>
+                                <constraint firstAttribute="trailing" secondItem="FSm-3Y-APU" secondAttribute="trailing" constant="13" id="X28-1d-LTR"/>
+                                <constraint firstItem="sFb-lH-ZkS" firstAttribute="leading" secondItem="NTm-jn-Mpl" secondAttribute="leading" constant="15" id="ZtL-dX-UQS"/>
+                                <constraint firstAttribute="trailing" secondItem="sFb-lH-ZkS" secondAttribute="trailing" constant="15" id="dny-lZ-fMh"/>
+                                <constraint firstItem="8We-Tk-Xu4" firstAttribute="centerY" secondItem="NTm-jn-Mpl" secondAttribute="centerY" id="ekA-jy-kcj"/>
+                                <constraint firstItem="8We-Tk-Xu4" firstAttribute="leading" secondItem="q1c-8S-Ylf" secondAttribute="trailing" constant="10" id="yMt-Pq-LTh"/>
+                                <constraint firstAttribute="bottom" secondItem="sFb-lH-ZkS" secondAttribute="bottom" id="yhM-5G-X2X"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="kEe-1T-Uyg" appends="YES" id="h2t-fr-47b"/>
+                            </connections>
+                        </view>
+                        <view tag="1012" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="wt3-dk-1gA">
+                            <rect key="frame" x="0.0" y="232" width="367" height="58"/>
+                            <subviews>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="关于我们" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ojF-qm-wBA">
+                                    <rect key="frame" x="51.999999999999993" y="19.666666666666629" width="65.333333333333314" height="19"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                    <color key="textColor" red="0.1019607843" green="0.1019607843" blue="0.1019607843" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mine_next" translatesAutoresizingMaskIntoConstraints="NO" id="av3-YG-dxn">
+                                    <rect key="frame" x="346" y="21.666666666666629" width="8" height="15"/>
+                                </imageView>
+                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="insititution_about" translatesAutoresizingMaskIntoConstraints="NO" id="VLa-B4-4Ht">
+                                    <rect key="frame" x="20" y="18" width="22" height="22"/>
+                                </imageView>
+                                <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dSf-QJ-hbD">
+                                    <rect key="frame" x="15" y="57" width="337" height="1"/>
+                                    <color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="1" id="o85-eH-Fv9"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <gestureRecognizers/>
+                            <constraints>
+                                <constraint firstAttribute="bottom" secondItem="dSf-QJ-hbD" secondAttribute="bottom" id="30U-uq-8tH"/>
+                                <constraint firstAttribute="trailing" secondItem="dSf-QJ-hbD" secondAttribute="trailing" constant="15" id="Cha-AV-BUG"/>
+                                <constraint firstAttribute="height" constant="58" id="DOo-8P-Y9N"/>
+                                <constraint firstAttribute="trailing" secondItem="av3-YG-dxn" secondAttribute="trailing" constant="13" id="It5-bX-5WJ"/>
+                                <constraint firstItem="ojF-qm-wBA" firstAttribute="centerY" secondItem="wt3-dk-1gA" secondAttribute="centerY" id="J0K-vt-1ht"/>
+                                <constraint firstItem="ojF-qm-wBA" firstAttribute="leading" secondItem="VLa-B4-4Ht" secondAttribute="trailing" constant="10" id="PIy-TH-8l4"/>
+                                <constraint firstItem="av3-YG-dxn" firstAttribute="centerY" secondItem="wt3-dk-1gA" secondAttribute="centerY" id="SRb-5t-OWL"/>
+                                <constraint firstItem="dSf-QJ-hbD" firstAttribute="leading" secondItem="wt3-dk-1gA" secondAttribute="leading" constant="15" id="fnO-L9-Run"/>
+                                <constraint firstItem="VLa-B4-4Ht" firstAttribute="leading" secondItem="wt3-dk-1gA" secondAttribute="leading" constant="20" id="iYR-tW-oAd"/>
+                                <constraint firstItem="VLa-B4-4Ht" firstAttribute="centerY" secondItem="wt3-dk-1gA" secondAttribute="centerY" id="tA9-Ey-lw6"/>
+                            </constraints>
+                            <connections>
+                                <outletCollection property="gestureRecognizers" destination="Oaj-2g-IyL" appends="YES" id="pAe-cm-4vC"/>
+                            </connections>
+                        </view>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstAttribute="trailing" secondItem="NTm-jn-Mpl" secondAttribute="trailing" id="6g2-dR-DfN"/>
+                        <constraint firstAttribute="bottom" secondItem="wt3-dk-1gA" secondAttribute="bottom" id="85N-38-2lA"/>
+                        <constraint firstItem="92r-es-QMt" firstAttribute="top" secondItem="LNk-Hh-S11" secondAttribute="bottom" id="Gfx-mY-GWj"/>
+                        <constraint firstItem="LNk-Hh-S11" firstAttribute="top" secondItem="YoI-Ul-U7N" secondAttribute="bottom" id="J3t-dd-vPq"/>
+                        <constraint firstItem="NTm-jn-Mpl" firstAttribute="top" secondItem="92r-es-QMt" secondAttribute="bottom" id="SMW-Bs-YSm"/>
+                        <constraint firstItem="wt3-dk-1gA" firstAttribute="leading" secondItem="3KY-c7-2Hr" secondAttribute="leading" id="a7e-Tg-kqF"/>
+                        <constraint firstItem="YoI-Ul-U7N" firstAttribute="leading" secondItem="3KY-c7-2Hr" secondAttribute="leading" id="aE9-l9-b7R"/>
+                        <constraint firstAttribute="trailing" secondItem="LNk-Hh-S11" secondAttribute="trailing" id="bNj-Hm-2qM"/>
+                        <constraint firstItem="92r-es-QMt" firstAttribute="leading" secondItem="3KY-c7-2Hr" secondAttribute="leading" id="blE-GG-GwB"/>
+                        <constraint firstAttribute="trailing" secondItem="92r-es-QMt" secondAttribute="trailing" id="c4k-Mu-QAe"/>
+                        <constraint firstItem="wt3-dk-1gA" firstAttribute="top" secondItem="NTm-jn-Mpl" secondAttribute="bottom" id="dFa-nZ-n5m"/>
+                        <constraint firstAttribute="trailing" secondItem="YoI-Ul-U7N" secondAttribute="trailing" id="iqW-ly-CSP"/>
+                        <constraint firstItem="NTm-jn-Mpl" firstAttribute="leading" secondItem="3KY-c7-2Hr" secondAttribute="leading" id="n0b-ku-Neh"/>
+                        <constraint firstItem="YoI-Ul-U7N" firstAttribute="top" secondItem="3KY-c7-2Hr" secondAttribute="top" id="pjH-ZG-qdS"/>
+                        <constraint firstAttribute="trailing" secondItem="wt3-dk-1gA" secondAttribute="trailing" id="rfa-OY-G8V"/>
+                        <constraint firstItem="LNk-Hh-S11" firstAttribute="leading" secondItem="3KY-c7-2Hr" secondAttribute="leading" id="yG2-Ys-ASl"/>
+                    </constraints>
+                    <userDefinedRuntimeAttributes>
+                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
+                            <real key="value" value="8"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="size" keyPath="shadowOffset">
+                            <size key="value" width="0.0" height="2"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="color" keyPath="shadowUIColor">
+                            <color key="value" red="0.8980392157" green="0.8980392157" blue="0.8980392157" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="number" keyPath="shadowOpacity">
+                            <real key="value" value="1"/>
+                        </userDefinedRuntimeAttribute>
+                        <userDefinedRuntimeAttribute type="number" keyPath="shadowRadius">
+                            <real key="value" value="10"/>
+                        </userDefinedRuntimeAttribute>
+                    </userDefinedRuntimeAttributes>
+                </view>
+            </subviews>
+            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+            <constraints>
+                <constraint firstAttribute="trailing" secondItem="3KY-c7-2Hr" secondAttribute="trailing" constant="13" id="7LE-Ny-8yl"/>
+                <constraint firstItem="Nbm-ze-ouR" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="7vY-g9-vdN"/>
+                <constraint firstItem="iE8-e2-07v" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="13" id="KTG-eb-hlF"/>
+                <constraint firstAttribute="trailing" secondItem="iE8-e2-07v" secondAttribute="trailing" constant="13" id="SCS-rO-OF3"/>
+                <constraint firstItem="3KY-c7-2Hr" firstAttribute="top" secondItem="iE8-e2-07v" secondAttribute="bottom" constant="12" id="Vgg-Zy-Lji"/>
+                <constraint firstAttribute="trailing" secondItem="Nbm-ze-ouR" secondAttribute="trailing" id="Wo6-dE-0Ij"/>
+                <constraint firstItem="Nbm-ze-ouR" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="a8x-iG-8vU"/>
+                <constraint firstItem="3KY-c7-2Hr" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="13" id="yWU-sW-AbB"/>
+                <constraint firstItem="iE8-e2-07v" firstAttribute="top" secondItem="Nbm-ze-ouR" secondAttribute="bottom" constant="12" id="zLJ-by-E5P"/>
+            </constraints>
+            <nil key="simulatedTopBarMetrics"/>
+            <nil key="simulatedBottomBarMetrics"/>
+            <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+            <connections>
+                <outlet property="memberDesc" destination="wqN-QT-Cza" id="V4p-qw-nCy"/>
+                <outlet property="memberImg" destination="j1E-FX-DSh" id="Qcd-Se-bsQ"/>
+                <outlet property="subjectLabel" destination="k3g-g1-liB" id="4om-GC-86Z"/>
+                <outlet property="subjectView" destination="aWj-xg-N6w" id="LbY-EU-yem"/>
+                <outlet property="toolDesc" destination="6jm-cm-okg" id="6Cd-Wp-5de"/>
+                <outlet property="userAvatar" destination="X3c-Yi-Xkh" id="cOQ-qB-Uel"/>
+                <outlet property="userName" destination="Nlb-bG-jKG" id="gQI-V1-EYx"/>
+            </connections>
+            <point key="canvasLocation" x="336.64122137404581" y="-228.16901408450704"/>
+        </view>
+        <tapGestureRecognizer id="gEi-US-rfA">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="Vnv-Sr-NfD"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="j4v-SU-6Yg">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="wwH-yf-jRj"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="xCJ-Tc-iEY">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="8KV-dt-dTm"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="BYm-19-2ah">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="WVV-Fg-Y3E"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="vKx-8d-UTl">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="DzL-3d-yQb"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="5cM-13-0B5">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="Mon-dJ-0FH"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="f2V-Zn-5hZ">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="QLW-ZR-rkw"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="tLH-lj-bfO">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="dT8-HE-kmQ"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="BBZ-qd-sag">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="RUp-vi-htw"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="0sm-xw-Lii">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="m0L-5g-G0q"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="kEe-1T-Uyg">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="8gg-yd-9aY"/>
+            </connections>
+        </tapGestureRecognizer>
+        <tapGestureRecognizer id="Oaj-2g-IyL">
+            <connections>
+                <action selector="clickAction:" destination="iN0-l3-epB" id="NxX-ur-UXR"/>
+            </connections>
+        </tapGestureRecognizer>
+    </objects>
+    <resources>
+        <image name="insititution_MineBg" width="375" height="375"/>
+        <image name="insititution_about" width="22" height="22"/>
+        <image name="insititution_feedback" width="22" height="22"/>
+        <image name="insititution_help" width="22" height="22"/>
+        <image name="insititution_mine_code" width="32" height="32"/>
+        <image name="insititution_mine_eveluate" width="32" height="32"/>
+        <image name="insititution_mine_header" width="58" height="50"/>
+        <image name="insititution_mine_order" width="32" height="32"/>
+        <image name="insititution_mine_rank" width="32" height="32"/>
+        <image name="insititution_mine_subject" width="13" height="13"/>
+        <image name="insititution_mine_topLayer" width="129" height="114"/>
+        <image name="insititution_privacy" width="22" height="22"/>
+        <image name="insititution_userAgreement" width="22" height="22"/>
+        <image name="institution_MemberImage" width="77" height="66"/>
+        <image name="institution_MemberLabel" width="60" height="15"/>
+        <image name="institution_ToolImage" width="72" height="64"/>
+        <image name="institution_ToolTitle" width="60" height="15"/>
+        <image name="institution_detail" width="11" height="11"/>
+        <image name="institution_mineMemberBg" width="71" height="76"/>
+        <image name="institution_mineMember_tag" width="44" height="17"/>
+        <image name="institution_mineToolBg" width="71" height="76"/>
+        <image name="mine_next" width="8" height="15"/>
+        <image name="user_default_avatal" width="52" height="52"/>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>

+ 24 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineNavView.h

@@ -0,0 +1,24 @@
+//
+//  InstitutionMineNavView.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import <UIKit/UIKit.h>
+
+typedef void(^INSMineNavAction)(void);
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface InstitutionMineNavView : UIView
+
+@property (weak, nonatomic) IBOutlet UIView *lineView;
+
++ (instancetype)shareInstance;
+
+- (void)mineNavAction:(INSMineNavAction)action;
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 44 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineNavView.m

@@ -0,0 +1,44 @@
+//
+//  InstitutionMineNavView.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "InstitutionMineNavView.h"
+
+@interface InstitutionMineNavView ()
+
+@property (nonatomic, copy) INSMineNavAction callback;
+
+
+@end
+
+@implementation InstitutionMineNavView
+
++ (instancetype)shareInstance {
+    InstitutionMineNavView *view = [[[NSBundle mainBundle] loadNibNamed:@"InstitutionMineNavView" owner:nil options:nil] firstObject];
+    return view;
+}
+
+- (void)mineNavAction:(INSMineNavAction)action {
+    if (action) {
+        self.callback = action;
+    }
+}
+
+- (IBAction)buttonAction:(id)sender {
+    if (self.callback) {
+        self.callback();
+    }
+}
+
+/*
+// Only override drawRect: if you perform custom drawing.
+// An empty implementation adversely affects performance during animation.
+- (void)drawRect:(CGRect)rect {
+    // Drawing code
+}
+*/
+
+@end

+ 80 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/Mine/View/InstitutionMineNavView.xib

@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" 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="21679"/>
+        <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="InstitutionMineNavView">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="88"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <subviews>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Aya-Or-AgC">
+                    <rect key="frame" x="0.0" y="0.0" width="393" height="88"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8bj-IM-ZrU">
+                            <rect key="frame" x="0.0" y="44" width="393" height="44"/>
+                            <subviews>
+                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="i9Z-nS-HTl">
+                                    <rect key="frame" x="345" y="2" width="40" height="40"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" constant="40" id="RUe-fm-F92"/>
+                                        <constraint firstAttribute="height" constant="40" id="f88-EA-Yk1"/>
+                                    </constraints>
+                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                                    <state key="normal" image="insititution_setting"/>
+                                    <connections>
+                                        <action selector="buttonAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="cZx-c1-gq8"/>
+                                    </connections>
+                                </button>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="uBH-qe-Dun">
+                                    <rect key="frame" x="0.0" y="43" width="393" height="1"/>
+                                    <color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="1" id="0G9-bs-BQy"/>
+                                    </constraints>
+                                </view>
+                            </subviews>
+                            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                            <constraints>
+                                <constraint firstItem="i9Z-nS-HTl" firstAttribute="centerY" secondItem="8bj-IM-ZrU" secondAttribute="centerY" id="4Tu-xn-BLJ"/>
+                                <constraint firstAttribute="trailing" secondItem="i9Z-nS-HTl" secondAttribute="trailing" constant="8" id="4Vr-rS-9Zc"/>
+                                <constraint firstAttribute="height" constant="44" id="cAd-fz-cWk"/>
+                                <constraint firstItem="uBH-qe-Dun" firstAttribute="leading" secondItem="8bj-IM-ZrU" secondAttribute="leading" id="cEw-66-In8"/>
+                                <constraint firstAttribute="trailing" secondItem="uBH-qe-Dun" secondAttribute="trailing" id="lVV-uo-rck"/>
+                                <constraint firstAttribute="bottom" secondItem="uBH-qe-Dun" secondAttribute="bottom" id="mTK-gh-u2A"/>
+                            </constraints>
+                        </view>
+                    </subviews>
+                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                    <constraints>
+                        <constraint firstItem="8bj-IM-ZrU" firstAttribute="leading" secondItem="Aya-Or-AgC" secondAttribute="leading" id="9C9-Yl-C5f"/>
+                        <constraint firstAttribute="bottom" secondItem="8bj-IM-ZrU" secondAttribute="bottom" id="W9f-A1-clx"/>
+                        <constraint firstAttribute="trailing" secondItem="8bj-IM-ZrU" secondAttribute="trailing" id="Y4B-kN-wtT"/>
+                    </constraints>
+                </view>
+            </subviews>
+            <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+            <constraints>
+                <constraint firstItem="Aya-Or-AgC" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="SsU-Wa-peI"/>
+                <constraint firstItem="Aya-Or-AgC" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="WA4-Y6-pSe"/>
+                <constraint firstAttribute="bottom" secondItem="Aya-Or-AgC" secondAttribute="bottom" id="t4w-EC-M8d"/>
+                <constraint firstAttribute="trailing" secondItem="Aya-Or-AgC" secondAttribute="trailing" id="uiM-bc-mqR"/>
+            </constraints>
+            <nil key="simulatedTopBarMetrics"/>
+            <nil key="simulatedBottomBarMetrics"/>
+            <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+            <connections>
+                <outlet property="lineView" destination="uBH-qe-Dun" id="0H2-1A-4tV"/>
+            </connections>
+            <point key="canvasLocation" x="37.404580152671755" y="-161.97183098591549"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="insititution_setting" width="24" height="24"/>
+    </resources>
+</document>

+ 16 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/NavController/InstitutionNavController.h

@@ -0,0 +1,16 @@
+//
+//  InstitutionNavController.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import <UIKit/UIKit.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface InstitutionNavController : UINavigationController
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 31 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/NavController/InstitutionNavController.m

@@ -0,0 +1,31 @@
+//
+//  InstitutionNavController.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "InstitutionNavController.h"
+
+@interface InstitutionNavController ()
+
+@end
+
+@implementation InstitutionNavController
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    // Do any additional setup after loading the view.
+}
+
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end

+ 26 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/TabbarController/InstitutionTabBarController.h

@@ -0,0 +1,26 @@
+//
+//  InstitutionTabBarController.h
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import <UIKit/UIKit.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface InstitutionTabBarController : UITabBarController
+
+- (void)tabBarSelectedWithIndex:(NSInteger)index;
+
+- (void)noteNewsWithIndex:(NSInteger)index count:(NSInteger)count; //提醒
+
+- (void)noteBadgeValueIndex:(NSInteger)index desc:(NSString *)desc;
+
+- (void)clearNewsWithIndex:(NSInteger)index;  //清除
+
+- (void)removeControllerNotifer;  // 移除子控制器通知
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 38 - 0
KulexiuForStudent/KulexiuForStudent/InstitutionModule/TabbarController/InstitutionTabBarController.m

@@ -0,0 +1,38 @@
+//
+//  InstitutionTabBarController.m
+//  KulexiuForStudent
+//
+//  Created by 王智 on 2023/9/11.
+//
+
+#import "InstitutionTabBarController.h"
+#import "InstitutionNavController.h"
+#import "KSBaseViewController.h"
+
+@interface InstitutionTabBarController ()<UITabBarControllerDelegate>
+
+@end
+
+@implementation InstitutionTabBarController
+
+- (void)viewDidLoad {
+    [super viewDidLoad];
+    // Do any additional setup after loading the view.
+    self.delegate = self;
+    [self configItems];
+}
+
+- (void)configItems {
+    
+}
+/*
+#pragma mark - Navigation
+
+// In a storyboard-based application, you will often want to do a little preparation before navigation
+- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
+    // Get the new view controller using [segue destinationViewController].
+    // Pass the selected object to the new view controller.
+}
+*/
+
+@end