From 572899a6a72fb71c0a29ec5774de3b61ddd4bd7e Mon Sep 17 00:00:00 2001
From: 杨锴 <841720330@qq.com>
Date: 星期四, 15 八月 2024 18:59:56 +0800
Subject: [PATCH] UI

---
 XQMuse/Root/Home/VC/CommentListVC.swift                                              |  139 ++
 XQMuse/Root/Home/View/HomeHeaderVC.swift                                             |   54 +
 XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@3x.png                  |    0 
 XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@3x.png                        |    0 
 XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@3x.png     |    0 
 XQMuse/Root/Home/TCell/CommentUserInputContentTCell.xib                              |   57 +
 XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/Contents.json                       |   22 
 XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@2x.png          |    0 
 XQMuse/Root/Course/CourseVC.swift                                                    |  143 ++
 XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@3x.png |    0 
 XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/Contents.json                   |   22 
 XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/Contents.json                      |   22 
 XQMuse/Root/Home/CCell/HomeRelaxBanner_2_CCell.xib                                   |    4 
 XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@2x.png                  |    0 
 XQMuse.xcodeproj/project.pbxproj                                                     |  126 ++
 XQMuse/Root/Home/View/PaymentOrderResultTopView.swift                                |   35 
 XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@2x.png                     |    0 
 XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@3x.png          |    0 
 XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/Contents.json                        |   22 
 XQMuse/Root/Other/View/ChooseOptView.swift                                           |   84 +
 XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/Contents.json                     |   22 
 XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.swift                               |   33 
 XQMuse/Root/Home/VC/HomeItemDetailVC.swift                                           |   16 
 XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@3x.png              |    0 
 XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@3x.png                 |    0 
 XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@2x.png                   |    0 
 XQMuse/Config/HoverHeaderFlowLayout.swift                                            |   99 +
 XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/Contents.json                   |   22 
 XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@2x.png                        |    0 
 XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/Contents.json                |   22 
 XQMuse/Root/Home/HomeVC.swift                                                        |   29 
 XQMuse/Root/Home/VC/CommentListVC.xib                                                |  165 +++
 XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@3x.png                    |    0 
 XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/Contents.json              |   22 
 XQMuse/Assets.xcassets/Icons/icon_freee.imageset/Contents.json                       |   22 
 XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@2x.png |    0 
 XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@3x.png                 |    0 
 XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.swift                              |   20 
 XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.xib                                 |   99 +
 XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@3x.png |    0 
 XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/Contents.json                     |   22 
 XQMuse/Root/Home/TCell/Home_Style_3_TCell.swift                                      |   12 
 XQMuse/Root/Home/TCell/Home_Style_4_TCell.swift                                      |   38 
 XQMuse/Root/Home/VC/PaymentOrderResultVC.xib                                         |   22 
 XQMuse/Root/Course/VC/CourseVCTeacherSpecialVC.swift                                 |   30 
 XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.xib                                |   91 +
 XQMuse/Root/Home/VC/PaymentOrderVC.swift                                             |   49 
 XQMuse/Root/Home/VC/HomeTyroGuideVC.swift                                            |   37 
 XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@2x.png |    0 
 XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@3x.png                     |    0 
 XQMuse/Root/Home/View/CommentCommentHeaderView.swift                                 |   89 +
 XQMuse/Root/Me/VC/VIPCenterVC.xib                                                    |  205 +++
 XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/Contents.json              |   22 
 XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@3x.png                   |    0 
 XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.swift                          |   17 
 XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@2x.png                    |    0 
 XQMuse/Root/Home/VC/PaymentOrderResultVC.swift                                       |  140 ++
 XQMuse/Root/Home/View/PaymentOrderResultTopView.xib                                  |  121 ++
 XQMuse/Root/Other/View/ChooseOptView.xib                                             |   88 +
 XQMuse/Root/Home/TCell/CommentUserInputContentTCell.swift                            |   24 
 XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@2x.png     |    0 
 XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@2x.png                 |    0 
 XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@2x.png                 |    0 
 XQMuse/Root/Course/VC/CourseVCOfficalCommentVC.swift                                 |  102 +
 XQMuse/Root/Home/VC/PaymentOrderVC.xib                                               |  487 +++++++++
 XQMuse/Root/Me/VC/VIPCenterVC.swift                                                  |  127 ++
 XQMuse/Assets.xcassets/Btns/btn_good.imageset/Contents.json                          |   22 
 XQMuse/Root/Home/VC/HomeItemDetailVC.xib                                             |    4 
 XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@2x.png              |    0 
 XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.xib                            |   25 
 70 files changed, 3,053 insertions(+), 22 deletions(-)

diff --git a/XQMuse.xcodeproj/project.pbxproj b/XQMuse.xcodeproj/project.pbxproj
index d3eec54..61bf7ac 100644
--- a/XQMuse.xcodeproj/project.pbxproj
+++ b/XQMuse.xcodeproj/project.pbxproj
@@ -7,6 +7,12 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
+		1300BD3B2C6DFB1C000BCA5E /* VIPCenterVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1300BD3A2C6DFB1C000BCA5E /* VIPCenterVC.xib */; };
+		1300BD3C2C6DFB1C000BCA5E /* VIPCenterVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1300BD392C6DFB1C000BCA5E /* VIPCenterVC.swift */; };
+		130913EA2C6DE33200418201 /* PaymentOrderResultVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 130913E92C6DE33200418201 /* PaymentOrderResultVC.xib */; };
+		130913EB2C6DE33200418201 /* PaymentOrderResultVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130913E82C6DE33200418201 /* PaymentOrderResultVC.swift */; };
+		130913EE2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 130913ED2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.xib */; };
+		130913EF2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130913EC2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.swift */; };
 		130B76592C6C4963006371AF /* HomeRelaxVoiceCCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130B76572C6C4963006371AF /* HomeRelaxVoiceCCell.swift */; };
 		130B765A2C6C4963006371AF /* HomeRelaxVoiceCCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 130B76582C6C4963006371AF /* HomeRelaxVoiceCCell.xib */; };
 		130B765D2C6C4C33006371AF /* HomeItemListVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130B765B2C6C4C33006371AF /* HomeItemListVC.swift */; };
@@ -19,8 +25,15 @@
 		131E75C52C6B87C500E2C85D /* ForgotPasswordChangeVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 131E75C22C6B87C400E2C85D /* ForgotPasswordChangeVC.swift */; };
 		132EB01C2C6B32B200990429 /* RegisterVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 132EB01A2C6B32B200990429 /* RegisterVC.swift */; };
 		132EB01D2C6B32B200990429 /* RegisterVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 132EB01B2C6B32B200990429 /* RegisterVC.xib */; };
+		1336EFA52C6DEB550075E070 /* HoverHeaderFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1336EFA42C6DEB550075E070 /* HoverHeaderFlowLayout.swift */; };
+		1336EFA72C6DEC640075E070 /* PaymentOrderResultTopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1336EFA62C6DEC640075E070 /* PaymentOrderResultTopView.swift */; };
+		1336EFA92C6DEC6B0075E070 /* PaymentOrderResultTopView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1336EFA82C6DEC6B0075E070 /* PaymentOrderResultTopView.xib */; };
 		134783CF2C6C86EC0096C736 /* PlaySettingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 134783CE2C6C86EC0096C736 /* PlaySettingView.swift */; };
 		134783D12C6C86F40096C736 /* PlaySettingView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 134783D02C6C86F40096C736 /* PlaySettingView.xib */; };
+		134A45322C6E0D6400538D78 /* CourseVCOfficalCommentVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 134A45302C6E0D6400538D78 /* CourseVCOfficalCommentVC.swift */; };
+		134A45352C6E0E0000538D78 /* CourseVCTeacherSpecialVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 134A45342C6E0E0000538D78 /* CourseVCTeacherSpecialVC.swift */; };
+		134A45392C6E167D00538D78 /* CourseOfficalCommendTopCCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 134A45372C6E167D00538D78 /* CourseOfficalCommendTopCCell.swift */; };
+		134A453A2C6E167D00538D78 /* CourseOfficalCommendTopCCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 134A45382C6E167D00538D78 /* CourseOfficalCommendTopCCell.xib */; };
 		137175C62C6C3C4700B38EF1 /* SourceHanSansCN-Regular.otf in Resources */ = {isa = PBXBuildFile; fileRef = 137175C52C6C3C4700B38EF1 /* SourceHanSansCN-Regular.otf */; };
 		137175C82C6C3C6D00B38EF1 /* Agenda-Light.otf in Resources */ = {isa = PBXBuildFile; fileRef = 137175C72C6C3C6D00B38EF1 /* Agenda-Light.otf */; };
 		137175CB2C6C412A00B38EF1 /* BackgroundVoiceVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 137175C92C6C412A00B38EF1 /* BackgroundVoiceVC.swift */; };
@@ -29,6 +42,13 @@
 		1377768E2C6AFD25004FF994 /* LoginVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1377768C2C6AFD25004FF994 /* LoginVC.xib */; };
 		137776922C6AFE69004FF994 /* SearchVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 137776902C6AFE69004FF994 /* SearchVC.swift */; };
 		137776932C6AFE69004FF994 /* SearchVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 137776912C6AFE69004FF994 /* SearchVC.xib */; };
+		1377B40C2C6D936A00CF7CA5 /* CommentUserInputContentTCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1377B40A2C6D936A00CF7CA5 /* CommentUserInputContentTCell.swift */; };
+		1377B40D2C6D936A00CF7CA5 /* CommentUserInputContentTCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1377B40B2C6D936A00CF7CA5 /* CommentUserInputContentTCell.xib */; };
+		1377B40F2C6D93FA00CF7CA5 /* CommentCommentHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1377B40E2C6D93FA00CF7CA5 /* CommentCommentHeaderView.swift */; };
+		1377B4112C6DAA1900CF7CA5 /* ChooseOptView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1377B4102C6DAA1900CF7CA5 /* ChooseOptView.swift */; };
+		1377B4132C6DAA2000CF7CA5 /* ChooseOptView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1377B4122C6DAA2000CF7CA5 /* ChooseOptView.xib */; };
+		1377B4162C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1377B4142C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.swift */; };
+		1377B4172C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1377B4152C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.xib */; };
 		137ABE342C6B3F64003A91C5 /* ForgotPasswordVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 137ABE322C6B3F64003A91C5 /* ForgotPasswordVC.swift */; };
 		137ABE352C6B3F64003A91C5 /* ForgotPasswordVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 137ABE332C6B3F64003A91C5 /* ForgotPasswordVC.xib */; };
 		137ABE382C6B6641003A91C5 /* WebVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 137ABE372C6B6641003A91C5 /* WebVC.swift */; };
@@ -77,10 +97,21 @@
 		13D256B72C6C68F8006FC2D7 /* ShareView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13D256B62C6C68F8006FC2D7 /* ShareView.xib */; };
 		13E0FBF92C6C8BDE009997AE /* CountdownChooseListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13E0FBF82C6C8BDE009997AE /* CountdownChooseListView.swift */; };
 		13E0FBFB2C6C8BE3009997AE /* CountdownChooseListView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13E0FBFA2C6C8BE3009997AE /* CountdownChooseListView.xib */; };
+		13E160202C6CB8930027F781 /* CommentListVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13E1601F2C6CB8930027F781 /* CommentListVC.xib */; };
+		13E160212C6CB8930027F781 /* CommentListVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13E1601E2C6CB8930027F781 /* CommentListVC.swift */; };
+		13EFCDBE2C6DCF5800B51AE6 /* HomeTyroGuideVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13EFCDBD2C6DCF5800B51AE6 /* HomeTyroGuideVC.swift */; };
+		13EFCDC12C6DD27A00B51AE6 /* PaymentOrderVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13EFCDBF2C6DD27A00B51AE6 /* PaymentOrderVC.swift */; };
+		13EFCDC22C6DD27A00B51AE6 /* PaymentOrderVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13EFCDC02C6DD27A00B51AE6 /* PaymentOrderVC.xib */; };
 		D80DD987C5D5D23DD582763D /* Pods_XQMuse.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 627C13604519744922724D64 /* Pods_XQMuse.framework */; };
 /* End PBXBuildFile section */
 
 /* Begin PBXFileReference section */
+		1300BD392C6DFB1C000BCA5E /* VIPCenterVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VIPCenterVC.swift; sourceTree = "<group>"; };
+		1300BD3A2C6DFB1C000BCA5E /* VIPCenterVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = VIPCenterVC.xib; sourceTree = "<group>"; };
+		130913E82C6DE33200418201 /* PaymentOrderResultVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentOrderResultVC.swift; sourceTree = "<group>"; };
+		130913E92C6DE33200418201 /* PaymentOrderResultVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PaymentOrderResultVC.xib; sourceTree = "<group>"; };
+		130913EC2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeRelaxBanner_2_1_CCell.swift; sourceTree = "<group>"; };
+		130913ED2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomeRelaxBanner_2_1_CCell.xib; sourceTree = "<group>"; };
 		130B76572C6C4963006371AF /* HomeRelaxVoiceCCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeRelaxVoiceCCell.swift; sourceTree = "<group>"; };
 		130B76582C6C4963006371AF /* HomeRelaxVoiceCCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomeRelaxVoiceCCell.xib; sourceTree = "<group>"; };
 		130B765B2C6C4C33006371AF /* HomeItemListVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeItemListVC.swift; sourceTree = "<group>"; };
@@ -93,8 +124,15 @@
 		131E75C32C6B87C400E2C85D /* ForgotPasswordChangeVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ForgotPasswordChangeVC.xib; sourceTree = "<group>"; };
 		132EB01A2C6B32B200990429 /* RegisterVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RegisterVC.swift; sourceTree = "<group>"; };
 		132EB01B2C6B32B200990429 /* RegisterVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RegisterVC.xib; sourceTree = "<group>"; };
+		1336EFA42C6DEB550075E070 /* HoverHeaderFlowLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HoverHeaderFlowLayout.swift; sourceTree = "<group>"; };
+		1336EFA62C6DEC640075E070 /* PaymentOrderResultTopView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentOrderResultTopView.swift; sourceTree = "<group>"; };
+		1336EFA82C6DEC6B0075E070 /* PaymentOrderResultTopView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PaymentOrderResultTopView.xib; sourceTree = "<group>"; };
 		134783CE2C6C86EC0096C736 /* PlaySettingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaySettingView.swift; sourceTree = "<group>"; };
 		134783D02C6C86F40096C736 /* PlaySettingView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlaySettingView.xib; sourceTree = "<group>"; };
+		134A45302C6E0D6400538D78 /* CourseVCOfficalCommentVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseVCOfficalCommentVC.swift; sourceTree = "<group>"; };
+		134A45342C6E0E0000538D78 /* CourseVCTeacherSpecialVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseVCTeacherSpecialVC.swift; sourceTree = "<group>"; };
+		134A45372C6E167D00538D78 /* CourseOfficalCommendTopCCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseOfficalCommendTopCCell.swift; sourceTree = "<group>"; };
+		134A45382C6E167D00538D78 /* CourseOfficalCommendTopCCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseOfficalCommendTopCCell.xib; sourceTree = "<group>"; };
 		137175C52C6C3C4700B38EF1 /* SourceHanSansCN-Regular.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "SourceHanSansCN-Regular.otf"; sourceTree = "<group>"; };
 		137175C72C6C3C6D00B38EF1 /* Agenda-Light.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Agenda-Light.otf"; sourceTree = "<group>"; };
 		137175C92C6C412A00B38EF1 /* BackgroundVoiceVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BackgroundVoiceVC.swift; sourceTree = "<group>"; };
@@ -103,6 +141,13 @@
 		1377768C2C6AFD25004FF994 /* LoginVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LoginVC.xib; sourceTree = "<group>"; };
 		137776902C6AFE69004FF994 /* SearchVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchVC.swift; sourceTree = "<group>"; };
 		137776912C6AFE69004FF994 /* SearchVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SearchVC.xib; sourceTree = "<group>"; };
+		1377B40A2C6D936A00CF7CA5 /* CommentUserInputContentTCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommentUserInputContentTCell.swift; sourceTree = "<group>"; };
+		1377B40B2C6D936A00CF7CA5 /* CommentUserInputContentTCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CommentUserInputContentTCell.xib; sourceTree = "<group>"; };
+		1377B40E2C6D93FA00CF7CA5 /* CommentCommentHeaderView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CommentCommentHeaderView.swift; sourceTree = "<group>"; };
+		1377B4102C6DAA1900CF7CA5 /* ChooseOptView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChooseOptView.swift; sourceTree = "<group>"; };
+		1377B4122C6DAA2000CF7CA5 /* ChooseOptView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ChooseOptView.xib; sourceTree = "<group>"; };
+		1377B4142C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Home_Style_4_Inner_1_CCell.swift; sourceTree = "<group>"; };
+		1377B4152C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Home_Style_4_Inner_1_CCell.xib; sourceTree = "<group>"; };
 		137ABE322C6B3F64003A91C5 /* ForgotPasswordVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ForgotPasswordVC.swift; sourceTree = "<group>"; };
 		137ABE332C6B3F64003A91C5 /* ForgotPasswordVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ForgotPasswordVC.xib; sourceTree = "<group>"; };
 		137ABE372C6B6641003A91C5 /* WebVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebVC.swift; sourceTree = "<group>"; };
@@ -153,6 +198,11 @@
 		13D256B62C6C68F8006FC2D7 /* ShareView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ShareView.xib; sourceTree = "<group>"; };
 		13E0FBF82C6C8BDE009997AE /* CountdownChooseListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CountdownChooseListView.swift; sourceTree = "<group>"; };
 		13E0FBFA2C6C8BE3009997AE /* CountdownChooseListView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CountdownChooseListView.xib; sourceTree = "<group>"; };
+		13E1601E2C6CB8930027F781 /* CommentListVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommentListVC.swift; sourceTree = "<group>"; };
+		13E1601F2C6CB8930027F781 /* CommentListVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CommentListVC.xib; sourceTree = "<group>"; };
+		13EFCDBD2C6DCF5800B51AE6 /* HomeTyroGuideVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeTyroGuideVC.swift; sourceTree = "<group>"; };
+		13EFCDBF2C6DD27A00B51AE6 /* PaymentOrderVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentOrderVC.swift; sourceTree = "<group>"; };
+		13EFCDC02C6DD27A00B51AE6 /* PaymentOrderVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PaymentOrderVC.xib; sourceTree = "<group>"; };
 		257B6AA3157A71622E7EABC6 /* Pods-XQMuse.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-XQMuse.debug.xcconfig"; path = "Target Support Files/Pods-XQMuse/Pods-XQMuse.debug.xcconfig"; sourceTree = "<group>"; };
 		627C13604519744922724D64 /* Pods_XQMuse.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_XQMuse.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		B934C5A58089E8AEA47DCFE7 /* Pods-XQMuse.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-XQMuse.release.xcconfig"; path = "Target Support Files/Pods-XQMuse/Pods-XQMuse.release.xcconfig"; sourceTree = "<group>"; };
@@ -170,6 +220,15 @@
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
+		1300BD382C6DFB0A000BCA5E /* VC */ = {
+			isa = PBXGroup;
+			children = (
+				1300BD392C6DFB1C000BCA5E /* VIPCenterVC.swift */,
+				1300BD3A2C6DFB1C000BCA5E /* VIPCenterVC.xib */,
+			);
+			path = VC;
+			sourceTree = "<group>";
+		};
 		131E75C62C6B87CC00E2C85D /* VC */ = {
 			isa = PBXGroup;
 			children = (
@@ -185,6 +244,24 @@
 				139466462C6B8E0200F6FB15 /* UpdatePhoneVC.xib */,
 			);
 			path = VC;
+			sourceTree = "<group>";
+		};
+		134A452F2C6E0D3800538D78 /* VC */ = {
+			isa = PBXGroup;
+			children = (
+				134A45302C6E0D6400538D78 /* CourseVCOfficalCommentVC.swift */,
+				134A45342C6E0E0000538D78 /* CourseVCTeacherSpecialVC.swift */,
+			);
+			path = VC;
+			sourceTree = "<group>";
+		};
+		134A45362C6E165F00538D78 /* CCell */ = {
+			isa = PBXGroup;
+			children = (
+				134A45372C6E167D00538D78 /* CourseOfficalCommendTopCCell.swift */,
+				134A45382C6E167D00538D78 /* CourseOfficalCommendTopCCell.xib */,
+			);
+			path = CCell;
 			sourceTree = "<group>";
 		};
 		137175C42C6C3C2100B38EF1 /* Fonts */ = {
@@ -218,6 +295,13 @@
 				130B765C2C6C4C33006371AF /* HomeItemListVC.xib */,
 				1385E0082C6C57A900AADB1F /* HomeItemDetailVC.swift */,
 				1385E0092C6C57A900AADB1F /* HomeItemDetailVC.xib */,
+				13E1601E2C6CB8930027F781 /* CommentListVC.swift */,
+				13E1601F2C6CB8930027F781 /* CommentListVC.xib */,
+				13EFCDBD2C6DCF5800B51AE6 /* HomeTyroGuideVC.swift */,
+				13EFCDBF2C6DD27A00B51AE6 /* PaymentOrderVC.swift */,
+				13EFCDC02C6DD27A00B51AE6 /* PaymentOrderVC.xib */,
+				130913E82C6DE33200418201 /* PaymentOrderResultVC.swift */,
+				130913E92C6DE33200418201 /* PaymentOrderResultVC.xib */,
 			);
 			path = VC;
 			sourceTree = "<group>";
@@ -316,8 +400,9 @@
 		13985DB32C69B7D40046B6DC /* Config */ = {
 			isa = PBXGroup;
 			children = (
-				137175C42C6C3C2100B38EF1 /* Fonts */,
 				139C165F2C6A0FBB00A924D9 /* TestLeftRightCollectionViewFlowLayout.swift */,
+				1336EFA42C6DEB550075E070 /* HoverHeaderFlowLayout.swift */,
+				137175C42C6C3C2100B38EF1 /* Fonts */,
 				13985DB42C69B7DF0046B6DC /* Def.swift */,
 				13985DB72C69B80D0046B6DC /* Themes.swift */,
 			);
@@ -327,9 +412,12 @@
 		13985DBB2C69DDDC0046B6DC /* View */ = {
 			isa = PBXGroup;
 			children = (
+				1377B40E2C6D93FA00CF7CA5 /* CommentCommentHeaderView.swift */,
 				13985DBC2C69DDF30046B6DC /* HomeTopMenuView.swift */,
 				13985DBE2C69DDF90046B6DC /* HomeTopMenuView.xib */,
 				13985DCF2C69F2A80046B6DC /* HomeHeaderVC.swift */,
+				1336EFA62C6DEC640075E070 /* PaymentOrderResultTopView.swift */,
+				1336EFA82C6DEC6B0075E070 /* PaymentOrderResultTopView.xib */,
 			);
 			path = View;
 			sourceTree = "<group>";
@@ -347,6 +435,10 @@
 				130B76582C6C4963006371AF /* HomeRelaxVoiceCCell.xib */,
 				1385E0042C6C558200AADB1F /* HomeRelaxBanner_2_CCell.swift */,
 				1385E0052C6C558200AADB1F /* HomeRelaxBanner_2_CCell.xib */,
+				1377B4142C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.swift */,
+				1377B4152C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.xib */,
+				130913EC2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.swift */,
+				130913ED2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.xib */,
 			);
 			path = CCell;
 			sourceTree = "<group>";
@@ -354,6 +446,8 @@
 		13985DC52C69E9260046B6DC /* Course */ = {
 			isa = PBXGroup;
 			children = (
+				134A45362C6E165F00538D78 /* CCell */,
+				134A452F2C6E0D3800538D78 /* VC */,
 				13985DC62C69E9550046B6DC /* CourseVC.swift */,
 			);
 			path = Course;
@@ -385,6 +479,7 @@
 		13985DCA2C69E9C10046B6DC /* Me */ = {
 			isa = PBXGroup;
 			children = (
+				1300BD382C6DFB0A000BCA5E /* VC */,
 				13985DCD2C69EA160046B6DC /* MeVC.swift */,
 			);
 			path = Me;
@@ -401,6 +496,8 @@
 				139C165C2C6A0AC600A924D9 /* Home_Style_3_TCell.xib */,
 				130ED7E52C6AEF5900D0736E /* Home_Style_4_TCell.swift */,
 				130ED7E62C6AEF5900D0736E /* Home_Style_4_TCell.xib */,
+				1377B40A2C6D936A00CF7CA5 /* CommentUserInputContentTCell.swift */,
+				1377B40B2C6D936A00CF7CA5 /* CommentUserInputContentTCell.xib */,
 			);
 			path = TCell;
 			sourceTree = "<group>";
@@ -414,6 +511,8 @@
 				134783D02C6C86F40096C736 /* PlaySettingView.xib */,
 				13E0FBF82C6C8BDE009997AE /* CountdownChooseListView.swift */,
 				13E0FBFA2C6C8BE3009997AE /* CountdownChooseListView.xib */,
+				1377B4102C6DAA1900CF7CA5 /* ChooseOptView.swift */,
+				1377B4122C6DAA2000CF7CA5 /* ChooseOptView.xib */,
 			);
 			path = View;
 			sourceTree = "<group>";
@@ -496,13 +595,18 @@
 			buildActionMask = 2147483647;
 			files = (
 				13985DD42C69FC1F0046B6DC /* Home_Style_1_TCell.xib in Resources */,
+				1377B4132C6DAA2000CF7CA5 /* ChooseOptView.xib in Resources */,
 				130B765E2C6C4C33006371AF /* HomeItemListVC.xib in Resources */,
 				1385E0072C6C558200AADB1F /* HomeRelaxBanner_2_CCell.xib in Resources */,
 				132EB01D2C6B32B200990429 /* RegisterVC.xib in Resources */,
+				1336EFA92C6DEC6B0075E070 /* PaymentOrderResultTopView.xib in Resources */,
 				137ABE352C6B3F64003A91C5 /* ForgotPasswordVC.xib in Resources */,
 				1377768E2C6AFD25004FF994 /* LoginVC.xib in Resources */,
+				130913EE2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.xib in Resources */,
 				130ED7E82C6AEF5900D0736E /* Home_Style_4_TCell.xib in Resources */,
+				1377B4172C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.xib in Resources */,
 				13985D9F2C69B2440046B6DC /* Assets.xcassets in Resources */,
+				13EFCDC22C6DD27A00B51AE6 /* PaymentOrderVC.xib in Resources */,
 				13D256B72C6C68F8006FC2D7 /* ShareView.xib in Resources */,
 				13985DC32C69E0BF0046B6DC /* HomeTopMenuCCell.xib in Resources */,
 				139C165E2C6A0AC600A924D9 /* Home_Style_3_TCell.xib in Resources */,
@@ -510,18 +614,23 @@
 				13985DA22C69B2440046B6DC /* Base in Resources */,
 				134783D12C6C86F40096C736 /* PlaySettingView.xib in Resources */,
 				139C165A2C6A053000A924D9 /* Home_Style_2_TCell.xib in Resources */,
+				1300BD3B2C6DFB1C000BCA5E /* VIPCenterVC.xib in Resources */,
 				139466482C6B8E0200F6FB15 /* UpdatePhoneVC.xib in Resources */,
+				134A453A2C6E167D00538D78 /* CourseOfficalCommendTopCCell.xib in Resources */,
+				1377B40D2C6D936A00CF7CA5 /* CommentUserInputContentTCell.xib in Resources */,
 				137175CC2C6C412A00B38EF1 /* BackgroundVoiceVC.xib in Resources */,
 				137776932C6AFE69004FF994 /* SearchVC.xib in Resources */,
 				13985DBF2C69DDF90046B6DC /* HomeTopMenuView.xib in Resources */,
 				1385E00B2C6C57A900AADB1F /* HomeItemDetailVC.xib in Resources */,
 				137ABE3C2C6B6BDD003A91C5 /* ForgotPasswordInputCodeVC.xib in Resources */,
+				130913EA2C6DE33200418201 /* PaymentOrderResultVC.xib in Resources */,
 				130ED7ED2C6AF05C00D0736E /* Home_Style_4_Inner_CCell.xib in Resources */,
 				137175C62C6C3C4700B38EF1 /* SourceHanSansCN-Regular.otf in Resources */,
 				131E75C42C6B87C500E2C85D /* ForgotPasswordChangeVC.xib in Resources */,
 				139C16642C6A108A00A924D9 /* HomeRelaxBannerCCell.xib in Resources */,
 				13E0FBFB2C6C8BE3009997AE /* CountdownChooseListView.xib in Resources */,
 				130B765A2C6C4963006371AF /* HomeRelaxVoiceCCell.xib in Resources */,
+				13E160202C6CB8930027F781 /* CommentListVC.xib in Resources */,
 				139228B12C6B8374006F3CB6 /* Popup_1_View.xib in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
@@ -584,17 +693,26 @@
 				13985DB22C69B7B00046B6DC /* TapBtn.swift in Sources */,
 				13985DBA2C69B8ED0046B6DC /* HomeVC.swift in Sources */,
 				13985DAF2C69B7B00046B6DC /* BaseNav.swift in Sources */,
+				134A45352C6E0E0000538D78 /* CourseVCTeacherSpecialVC.swift in Sources */,
+				134A45392C6E167D00538D78 /* CourseOfficalCommendTopCCell.swift in Sources */,
 				13985D982C69B2410046B6DC /* SceneDelegate.swift in Sources */,
 				13985DBD2C69DDF30046B6DC /* HomeTopMenuView.swift in Sources */,
+				1377B4112C6DAA1900CF7CA5 /* ChooseOptView.swift in Sources */,
 				1385E0062C6C558200AADB1F /* HomeRelaxBanner_2_CCell.swift in Sources */,
+				130913EB2C6DE33200418201 /* PaymentOrderResultVC.swift in Sources */,
 				137ABE342C6B3F64003A91C5 /* ForgotPasswordVC.swift in Sources */,
+				13EFCDBE2C6DCF5800B51AE6 /* HomeTyroGuideVC.swift in Sources */,
+				134A45322C6E0D6400538D78 /* CourseVCOfficalCommentVC.swift in Sources */,
 				139C16602C6A0FBB00A924D9 /* TestLeftRightCollectionViewFlowLayout.swift in Sources */,
 				13985DC72C69E9550046B6DC /* CourseVC.swift in Sources */,
 				1385E0022C6C4F1200AADB1F /* Services.swift in Sources */,
 				13985DB82C69B80D0046B6DC /* Themes.swift in Sources */,
 				13985DD02C69F2A80046B6DC /* HomeHeaderVC.swift in Sources */,
+				1336EFA52C6DEB550075E070 /* HoverHeaderFlowLayout.swift in Sources */,
 				13985DB52C69B7DF0046B6DC /* Def.swift in Sources */,
 				139228AF2C6B836B006F3CB6 /* Popup_1_View.swift in Sources */,
+				1336EFA72C6DEC640075E070 /* PaymentOrderResultTopView.swift in Sources */,
+				13EFCDC12C6DD27A00B51AE6 /* PaymentOrderVC.swift in Sources */,
 				13985DCE2C69EA160046B6DC /* MeVC.swift in Sources */,
 				13985DCC2C69E9FA0046B6DC /* PavilionVC.swift in Sources */,
 				13985DC42C69E0BF0046B6DC /* HomeTopMenuCCell.swift in Sources */,
@@ -609,10 +727,16 @@
 				13E0FBF92C6C8BDE009997AE /* CountdownChooseListView.swift in Sources */,
 				130ED7EE2C6AF05C00D0736E /* Home_Style_4_Inner_CCell.swift in Sources */,
 				139C165D2C6A0AC600A924D9 /* Home_Style_3_TCell.swift in Sources */,
+				1377B40F2C6D93FA00CF7CA5 /* CommentCommentHeaderView.swift in Sources */,
+				1377B40C2C6D936A00CF7CA5 /* CommentUserInputContentTCell.swift in Sources */,
 				1385DFFA2C6C4EBC00AADB1F /* RefreshModel.swift in Sources */,
 				139C16632C6A108A00A924D9 /* HomeRelaxBannerCCell.swift in Sources */,
 				131E75C52C6B87C500E2C85D /* ForgotPasswordChangeVC.swift in Sources */,
 				130ED7E72C6AEF5900D0736E /* Home_Style_4_TCell.swift in Sources */,
+				130913EF2C6DE67E00418201 /* HomeRelaxBanner_2_1_CCell.swift in Sources */,
+				1300BD3C2C6DFB1C000BCA5E /* VIPCenterVC.swift in Sources */,
+				1377B4162C6DCC4300CF7CA5 /* Home_Style_4_Inner_1_CCell.swift in Sources */,
+				13E160212C6CB8930027F781 /* CommentListVC.swift in Sources */,
 				137ABE3B2C6B6BDD003A91C5 /* ForgotPasswordInputCodeVC.swift in Sources */,
 				130B765D2C6C4C33006371AF /* HomeItemListVC.swift in Sources */,
 				1385E0002C6C4F1200AADB1F /* NetworkRequest.swift in Sources */,
diff --git a/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/Contents.json b/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/Contents.json
new file mode 100644
index 0000000..097eb9b
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "btn_close_1@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "btn_close_1@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@2x.png b/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@2x.png
new file mode 100644
index 0000000..bae2b5a
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@3x.png b/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@3x.png
new file mode 100644
index 0000000..52c682b
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_close_1.imageset/btn_close_1@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/Contents.json b/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/Contents.json
new file mode 100644
index 0000000..98cb4a5
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "btn_collect_1_s@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "btn_collect_1_s@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@2x.png b/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@2x.png
new file mode 100644
index 0000000..18cfc41
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@3x.png b/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@3x.png
new file mode 100644
index 0000000..203b9d9
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_collect_1_s.imageset/btn_collect_1_s@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_good.imageset/Contents.json b/XQMuse/Assets.xcassets/Btns/btn_good.imageset/Contents.json
new file mode 100644
index 0000000..d099fa1
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_good.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "btn_good@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "btn_good@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@2x.png b/XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@2x.png
new file mode 100644
index 0000000..0734150
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@3x.png b/XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@3x.png
new file mode 100644
index 0000000..8293fca
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_good.imageset/btn_good@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/Contents.json b/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/Contents.json
new file mode 100644
index 0000000..f87fece
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "btn_like_u@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "btn_like_u@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@2x.png b/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@2x.png
new file mode 100644
index 0000000..27d127f
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@3x.png b/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@3x.png
new file mode 100644
index 0000000..475a2a0
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_like_u.imageset/btn_like_u@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/Contents.json b/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/Contents.json
new file mode 100644
index 0000000..cb2a5fa
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "btn_roll_loop@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "btn_roll_loop@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@2x.png b/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@2x.png
new file mode 100644
index 0000000..ef77008
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@3x.png b/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@3x.png
new file mode 100644
index 0000000..ca81b9f
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Btns/btn_roll_loop.imageset/btn_roll_loop@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/Contents.json b/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/Contents.json
new file mode 100644
index 0000000..72d9c06
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "icon_choose_small_1@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "icon_choose_small_1@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@2x.png b/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@2x.png
new file mode 100644
index 0000000..7b1fd7d
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@3x.png b/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@3x.png
new file mode 100644
index 0000000..a0ecd35
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_choose_small_1.imageset/icon_choose_small_1@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/Contents.json b/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/Contents.json
new file mode 100644
index 0000000..96402d0
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "icon_choose_small_2@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "icon_choose_small_2@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@2x.png b/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@2x.png
new file mode 100644
index 0000000..fe3b7bb
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@3x.png b/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@3x.png
new file mode 100644
index 0000000..2c0d644
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_choose_small_2.imageset/icon_choose_small_2@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/Contents.json b/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/Contents.json
new file mode 100644
index 0000000..4fb2a4b
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "icon_freee@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "icon_freee@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@2x.png b/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@2x.png
new file mode 100644
index 0000000..07c40c6
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@3x.png b/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@3x.png
new file mode 100644
index 0000000..297f4e6
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_freee.imageset/icon_freee@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/Contents.json b/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/Contents.json
new file mode 100644
index 0000000..1f1815e
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "icon_success_full@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "icon_success_full@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@2x.png b/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@2x.png
new file mode 100644
index 0000000..73d3fb6
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@3x.png b/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@3x.png
new file mode 100644
index 0000000..ce93b77
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_success_full.imageset/icon_success_full@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/Contents.json b/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/Contents.json
new file mode 100644
index 0000000..cba6d91
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "icon_wallet@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "icon_wallet@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@2x.png b/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@2x.png
new file mode 100644
index 0000000..b08afcc
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@3x.png b/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@3x.png
new file mode 100644
index 0000000..9f02fd9
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Icons/icon_wallet.imageset/icon_wallet@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/Contents.json b/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/Contents.json
new file mode 100644
index 0000000..bb7f43e
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "bg_vip@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "bg_vip@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@2x.png b/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@2x.png
new file mode 100644
index 0000000..d6c5368
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@3x.png b/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@3x.png
new file mode 100644
index 0000000..0cb99e6
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Placeholder/bg_vip.imageset/bg_vip@3x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/Contents.json b/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/Contents.json
new file mode 100644
index 0000000..ef2da66
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/Contents.json
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "bg_vip_u@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "bg_vip_u@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@2x.png b/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@2x.png
new file mode 100644
index 0000000..ad9809a
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@2x.png
Binary files differ
diff --git a/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@3x.png b/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@3x.png
new file mode 100644
index 0000000..975bec3
--- /dev/null
+++ b/XQMuse/Assets.xcassets/Placeholder/bg_vip_u.imageset/bg_vip_u@3x.png
Binary files differ
diff --git a/XQMuse/Config/HoverHeaderFlowLayout.swift b/XQMuse/Config/HoverHeaderFlowLayout.swift
new file mode 100644
index 0000000..86843a1
--- /dev/null
+++ b/XQMuse/Config/HoverHeaderFlowLayout.swift
@@ -0,0 +1,99 @@
+//
+//  HoverHeaderFlowLayout.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import Foundation
+import UIKit
+import JQTools
+
+/// 悬浮HeaderView
+class HoverHeaderFlowLayout:UICollectionViewFlowLayout{
+				var naviHeight:CGFloat = JQ_NavBarHeight//默认分组停放高度
+				override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
+								//UICollectionViewLayoutAttributes:我称它为collectionView中的item(包括cell和header、footer这些)的结构信息
+								//截取到父类所返回的数组(里面放的是当前屏幕所能展示的item的结构信息),并转化成不可变数组
+								var superArray = super.layoutAttributesForElements(in: rect)
+								//创建存索引的数组,无符号(正整数),无序(不能通过下标取值),不可重复(重复的话会自动过滤)
+								let noneHeaderSections=NSMutableIndexSet();
+								for  attributes:UICollectionViewLayoutAttributes in superArray! {
+												//如果当前的元素分类是一个cell,将cell所在的分区section加入数组,重复的话会自动过滤
+												if attributes.representedElementCategory == .cell{
+																noneHeaderSections.add(attributes.indexPath.section)
+												}
+								}
+								//遍历superArray,将当前屏幕中拥有的header的section从数组中移除,得到一个当前屏幕中没有header的section数组
+								//正常情况下,随着手指往上移,header脱离屏幕会被系统回收而cell尚在,也会触发该方法
+								for attributes:UICollectionViewLayoutAttributes in superArray! {
+												//如果当前的元素是一个header,将header所在的section从数组中移除
+												if attributes.representedElementKind == UICollectionView.elementKindSectionHeader {
+																noneHeaderSections.remove(attributes.indexPath.section)
+												}
+								}
+								//遍历当前屏幕中没有header的section数组
+								noneHeaderSections .enumerate({ (idx, obj) -> Void in
+												//取到当前section中第一个item的indexPath
+												let indexPath = NSIndexPath(item: 0, section: idx)
+												let attributes=self.layoutAttributesForSupplementaryView(ofKind: UICollectionView.elementKindSectionHeader, at: indexPath as IndexPath)
+												//如果当前分区确实有因为离开屏幕而被系统回收的header
+												if attributes != nil {
+																//将该header结构信息重新加入到superArray中去
+																superArray?.append(attributes!)
+												}
+								})
+								//遍历superArray,改变header结构信息中的参数,使它可以在当前section还没完全离开屏幕的时候一直显示
+								for  attributes:UICollectionViewLayoutAttributes in superArray! {
+												//如果当前item是header
+												if attributes.representedElementKind == UICollectionView.elementKindSectionHeader {
+																//得到当前header所在分区的cell的数量
+																let numberOfItemsInSection=self.collectionView!.numberOfItems(inSection: attributes.indexPath.section)
+																//取到当前section中第一个item的indexPath
+																let firstItemIndexPath = NSIndexPath(item: 0, section: attributes.indexPath.section)
+																//得到最后一个item的indexPath
+																let lastItemIndexPath = NSIndexPath(item: max(0, numberOfItemsInSection-1), section: attributes.indexPath.section)
+																//得到第一个item和最后一个item的结构信息
+																var firstItemAttributes, lastItemAttributes:UICollectionViewLayoutAttributes
+																if numberOfItemsInSection>0 {
+																				//cell有值,则获取第一个cell和最后一个cell的结构信息
+																				firstItemAttributes=self.layoutAttributesForItem(at: firstItemIndexPath as IndexPath)!
+																				lastItemAttributes=self.layoutAttributesForItem(at: lastItemIndexPath as IndexPath)!
+																}else{
+																				//cell没值,就新建一个UICollectionViewLayoutAttributes
+																				firstItemAttributes=UICollectionViewLayoutAttributes()
+																				//然后模拟出在当前分区中的唯一一个cell,cell在header的下面,高度为0,还与header隔着可能存在的sectionInset的top
+																				let y=attributes.frame.maxY + sectionInset.top
+																				firstItemAttributes.frame=CGRect(x: 0, y: y, width: 0, height: 0)
+																				//因为只有一个cell,所以最后一个cell等于第一个cell
+																				lastItemAttributes=firstItemAttributes;
+																}
+																//获取当前header的frame
+																var rect=attributes.frame;
+																//当前的滑动距离 + 因为导航栏产生的偏移量,默认为0(如果app需求不同,需自己设置)
+																let offset=(self.collectionView?.contentOffset.y)! + naviHeight
+																//第一个cell的y值 - 当前header的高度 - 可能存在的sectionInset的top
+																let headerY=firstItemAttributes.frame.origin.y-rect.size.height-sectionInset.top
+																//哪个大取哪个,保证header悬停
+																//针对当前header基本上都是offset更加大,针对下一个header则会是headerY大,各自处理
+																let maxY=max(offset, headerY)
+																//最后一个cell的y值 + 最后一个cell的高度 + 可能存在的sectionInset的bottom - 当前header的高度
+																//当当前section的footer或者下一个section的header接触到当前header的底部,计算出的headerMissingY即为有效值
+																let headerMissingY = lastItemAttributes.frame.maxY + sectionInset.bottom - rect.size.height;
+																//给rect的y赋新值,因为在最后消失的临界点要跟谁消失,所以取小
+																rect.origin.y=min(maxY, headerMissingY)
+																//给header的结构信息的frame重新赋值
+																attributes.frame=rect
+																//如果按照正常情况下,header离开屏幕被系统回收,而header的层次关系又与cell相等,如果不去理会,会出现cell在header上面的情况
+																//通过打印可以知道cell的层次关系zIndex数值为0,我们可以将header的zIndex设置成1,如果不放心,也可以将它设置成非常大,这里随便填了个7
+																attributes.zIndex=7
+
+												}
+								}
+								return superArray
+				}
+				//return true;表示一旦滑动就实时调用上面这个layoutAttributesForElementsInRect:方法
+				override func shouldInvalidateLayout(forBoundsChange newBounds: CGRect) -> Bool {
+								return true
+				}
+}
diff --git a/XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.swift b/XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.swift
new file mode 100644
index 0000000..1595704
--- /dev/null
+++ b/XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.swift
@@ -0,0 +1,17 @@
+//
+//  CourseOfficalCommendTopCCell.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+
+class CourseOfficalCommendTopCCell: UICollectionViewCell {
+
+    override func awakeFromNib() {
+        super.awakeFromNib()
+        // Initialization code
+    }
+
+}
diff --git a/XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.xib b/XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.xib
new file mode 100644
index 0000000..7da392c
--- /dev/null
+++ b/XQMuse/Root/Course/CCell/CourseOfficalCommendTopCCell.xib
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.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"/>
+        <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="_CourseOfficalCommendTopCCell" id="gTV-IL-0wX" customClass="CourseOfficalCommendTopCCell" customModule="XQMuse" customModuleProvider="target">
+            <rect key="frame" x="0.0" y="0.0" width="328" height="269"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
+                <rect key="frame" x="0.0" y="0.0" width="328" height="269"/>
+                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+            </view>
+            <viewLayoutGuide key="safeArea" id="ZTg-uK-7eu"/>
+            <size key="customSize" width="328" height="269"/>
+            <point key="canvasLocation" x="293.12977099236639" y="97.535211267605632"/>
+        </collectionViewCell>
+    </objects>
+</document>
diff --git a/XQMuse/Root/Course/CourseVC.swift b/XQMuse/Root/Course/CourseVC.swift
index 5281bff..21f7221 100644
--- a/XQMuse/Root/Course/CourseVC.swift
+++ b/XQMuse/Root/Course/CourseVC.swift
@@ -6,24 +6,149 @@
 //
 
 import UIKit
+import SPPageMenu
+import JQTools
+import FFPage
 
 class CourseVC: BaseVC {
+
+				private(set) var pageMenu:SPPageMenu = {
+								let pageMenu = SPPageMenu(frame: .zero, trackerStyle: .line)
+								// 追踪线
+								pageMenu.trackerWidth = 27.5
+								pageMenu.setTrackerHeight(11, cornerRadius:0)
+								pageMenu.trackerFollowingMode = .always
+								pageMenu.contentInset = UIEdgeInsets(top: 0, left: 19.5, bottom: 15, right: 19.5)
+								pageMenu.setItems(["官方推荐","导师专栏"], selectedItemIndex: 0)
+								pageMenu.backgroundColor = UIColor(hexString: "#F0F0F0")
+								pageMenu.tracker.image = UIImage(named: "icon_unline")
+								pageMenu.tracker.backgroundColor = .clear
+
+								// 分割线
+								pageMenu.dividingLine.backgroundColor = .clear
+								pageMenu.dividingLineHeight = 1
+
+								// item
+								pageMenu.spacing = 27.0
+								pageMenu.permutationWay = .scrollAdaptContent
+
+								// 字体
+								pageMenu.selectedItemTitleFont = Def_SourceHanSansCN_Regular(fontSize: 21)
+								pageMenu.unSelectedItemTitleFont = Def_SourceHanSansCN_Regular(fontSize: 16)
+								// 颜色
+								pageMenu.selectedItemTitleColor = UIColor(hexStr: "#252A23")
+								pageMenu.unSelectedItemTitleColor = UIColor(hexStr: "#A1A1A1")
+								return pageMenu
+				}()
+
+				lazy var pageViewController:FFPageViewController = {
+								let pageVC = FFPageViewController()
+								pageVC.view.backgroundColor = .clear
+								pageVC.scrollview.backgroundColor = .clear
+
+								pageVC.scrollview.bounces = false
+								return pageVC
+				}()
 
     override func viewDidLoad() {
         super.viewDidLoad()
 
-        // Do any additional setup after loading the view.
     }
     
+				override func setUI() {
+								super.setUI()
+								let titleView = UIView()
+								titleView.frame = CGRect(x: 0, y: 0, width: 100, height: 40)
+								let titleL = UILabel()
+								titleL.font = Def_SourceHanSansCN_Regular(fontSize: 21)
+								titleL.text = "心泉课程"
+								titleL.textAlignment = .center
+								titleL.textColor = UIColor(hexStr: "#252A23")
+								titleL.frame = CGRect(x: 0, y: 0, width: 100, height: 19)
 
-    /*
-    // MARK: - Navigation
+								let subTitleL = UILabel()
+								subTitleL.font = Def_Agenda_Light(fontSize: 8)
+								subTitleL.text = "XIN QUAN"
+								subTitleL.textAlignment = .center
+								subTitleL.textColor = UIColor(hexStr: "#252A23")
+								subTitleL.frame = CGRect(x: 0, y: 20, width: 100, height: 19)
 
-    // In a storyboard-based application, you will often want to do a little preparation before navigation
-    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
-        // Get the new view controller using segue.destination.
-        // Pass the selected object to the new view controller.
-    }
-    */
+								titleView.addSubview(titleL)
+								titleView.addSubview(subTitleL)
 
+								navigationItem.titleView = titleView
+
+								let search = UIButton(type: .custom)
+								search.setImage(UIImage(named: "btn_search"), for: .normal)
+								search.addTarget(self, action: #selector(searchAction), for: .touchUpInside)
+								search.bounds = CGRect(origin: .zero, size:CGSize(width: 50, height: 30))
+								navigationItem.leftBarButtonItem = UIBarButtonItem(customView: search)
+
+
+								let voices = UIButton(type: .custom)
+								voices.setImage(UIImage(named: "btn_voices"), for: .normal)
+								voices.addTarget(self, action: #selector(settingvoiceAction), for: .touchUpInside)
+								voices.bounds = CGRect(origin: .zero, size:CGSize(width: 50, height: 30))
+								navigationItem.rightBarButtonItem = UIBarButtonItem(customView: voices)
+
+								pageMenu.delegate = self
+
+								view.addSubview(pageMenu)
+								pageMenu.snp.makeConstraints { make in
+												make.left.right.equalToSuperview()
+												make.height.equalTo(73.5)
+												make.top.equalTo(self.view.safeAreaLayoutGuide.snp.top)
+								}
+								view.addSubview(pageViewController.view)
+								pageViewController.view.backgroundColor = .clear
+								pageViewController.delegate = self
+								pageViewController.view.snp.makeConstraints { make in
+												make.top.equalTo(pageMenu.snp.bottom)
+												make.left.right.bottom.equalToSuperview()
+								}
+
+				}
+
+
+				@objc func searchAction(){
+								let vc = SearchVC()
+								push(vc: vc)
+				}
+
+				@objc func settingvoiceAction(){
+								let vc = BackgroundVoiceVC()
+								push(vc: vc)
+				}
+
+}
+
+extension CourseVC:SPPageMenuDelegate{
+				func pageMenu(_ pageMenu: SPPageMenu, itemSelectedAt index: Int) {
+								pageViewController.scroll(toPage: index, animation: true)
+				}
+}
+
+
+extension CourseVC:FFPageViewControllerDelegate{
+
+				func pageViewController(_ pageViewController: FFPageViewController, currentPageChanged currentPage: Int) {
+								pageMenu.selectedItemIndex = currentPage
+				}
+
+				func totalPagesOfpageViewController(_ pageViewConteoller: FFPageViewController) -> UInt {
+								return 2
+				}
+
+				func pageViewController(_ pageViewConteoller: FFPageViewController, controllerForPage page: Int) -> UIViewController {
+
+								if page == 0{
+												return CourseVCOfficalCommentVC()
+								}
+
+								if page == 1{
+												return CourseVCTeacherSpecialVC()
+								}
+
+								return UIViewController()
+				}
 }
diff --git a/XQMuse/Root/Course/VC/CourseVCOfficalCommentVC.swift b/XQMuse/Root/Course/VC/CourseVCOfficalCommentVC.swift
new file mode 100644
index 0000000..7dec829
--- /dev/null
+++ b/XQMuse/Root/Course/VC/CourseVCOfficalCommentVC.swift
@@ -0,0 +1,102 @@
+//
+//  CourseVCOfficalCommentVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class CourseVCOfficalCommentVC: BaseVC {
+
+				private var collectionView:UICollectionView!
+				private var titleItems = [TitleItem]()
+
+				override func viewDidLoad() {
+								super.viewDidLoad()
+
+								titleItems.append(TitleItem(title: "新手冥想指南", subTitle: "Meditation guide"))
+								titleItems.append(TitleItem(title: "推荐课程", subTitle: "与内心的宁静与喜悦入睡"))
+				}
+
+				override func setUI() {
+								super.setUI()
+								view.backgroundColor = UIColor(hexString: "#F0F0F0")
+								let layout = UICollectionViewFlowLayout()
+								collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)
+								collectionView.delegate = self
+								collectionView.dataSource = self
+								collectionView.contentInset = UIEdgeInsets(top: 0, left: 19, bottom: 0, right: 19)
+								collectionView.register(UINib(nibName: "HomeRelaxBanner_2_CCell", bundle: nil), forCellWithReuseIdentifier: "_HomeRelaxBanner_2_CCell")
+								collectionView.register(UINib(nibName: "CourseOfficalCommendTopCCell", bundle: nil), forCellWithReuseIdentifier: "_CourseOfficalCommendTopCCell")
+
+								collectionView.register(HomeHeaderView_1.self, forSupplementaryViewOfKind: UICollectionView.elementKindSectionHeader, withReuseIdentifier: "header")
+								view.addSubview(collectionView)
+								collectionView.snp.makeConstraints { make in
+												make.edges.equalToSuperview()
+								}
+				}
+}
+
+extension CourseVCOfficalCommentVC:UICollectionViewDelegate & UICollectionViewDataSource{
+
+
+				func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
+								if kind == UICollectionView.elementKindSectionHeader{
+												let headerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "header", for: indexPath) as! HomeHeaderView_1
+												let m = titleItems[indexPath.section]
+												headerView.setTitle(m.title, subTitle: m.subTitle)
+												return headerView
+								}
+								return UICollectionReusableView()
+				}
+
+				func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
+
+								if indexPath.section == 0{
+												let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_CourseOfficalCommendTopCCell", for: indexPath) as! CourseOfficalCommendTopCCell
+												cell.backgroundColor = .jq_randomColor
+												return cell
+								}
+
+								let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_HomeRelaxBanner_2_CCell", for: indexPath) as! HomeRelaxBanner_2_CCell
+								cell.backgroundColor = .jq_randomColor
+								return cell
+				}
+
+				func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
+								if section == 0{
+												return 1
+								}
+								return 20
+				}
+
+				func numberOfSections(in collectionView: UICollectionView) -> Int {
+								return titleItems.count
+				}
+}
+
+extension CourseVCOfficalCommentVC:UICollectionViewDelegateFlowLayout{
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
+								if indexPath.section == 0{
+												return CGSize(width: JQ_ScreenW, height: 421)
+								}
+
+								let w = (JQ_ScreenW - 19 * 2 - 14) / 2
+
+								return CGSize(width: w, height: w * 1.314)
+				}
+
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
+								return 14
+				}
+
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
+								return 14
+				}
+
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int) -> CGSize {
+								return CGSize(width: JQ_ScreenW, height: 80.5)
+				}
+}
diff --git a/XQMuse/Root/Course/VC/CourseVCTeacherSpecialVC.swift b/XQMuse/Root/Course/VC/CourseVCTeacherSpecialVC.swift
new file mode 100644
index 0000000..d258bb4
--- /dev/null
+++ b/XQMuse/Root/Course/VC/CourseVCTeacherSpecialVC.swift
@@ -0,0 +1,30 @@
+//
+//  CourseVCTeacherSpecialVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class CourseVCTeacherSpecialVC: BaseVC {
+
+    override func viewDidLoad() {
+        super.viewDidLoad()
+
+								view.backgroundColor = .jq_randomColor
+    }
+    
+
+    /*
+    // MARK: - Navigation
+
+    // In a storyboard-based application, you will often want to do a little preparation before navigation
+    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
+        // Get the new view controller using segue.destination.
+        // Pass the selected object to the new view controller.
+    }
+    */
+
+}
diff --git a/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.swift b/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.swift
new file mode 100644
index 0000000..1ed8503
--- /dev/null
+++ b/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.swift
@@ -0,0 +1,33 @@
+//
+//  HomeRelaxBanner_2_1_CCell.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class HomeRelaxBanner_2_1_CCell: UICollectionViewCell {
+
+				@IBOutlet weak var view_text_bg: UIView!
+				override func awakeFromNib() {
+								super.awakeFromNib()
+								// Initialization code
+
+
+								jq_cornerRadius = 10
+
+								let blurEffect = UIBlurEffect(style: .light)
+								let visualEffectView = UIVisualEffectView(effect: blurEffect)
+								view_text_bg.addSubview(visualEffectView)
+								visualEffectView.snp.makeConstraints { make in
+												make.edges.equalToSuperview()
+								}
+								visualEffectView.alpha = 0.7
+								view_text_bg.sendSubviewToBack(visualEffectView)
+								visualEffectView.layer.masksToBounds = true
+				}
+
+
+}
diff --git a/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.xib b/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.xib
new file mode 100644
index 0000000..6ba81d1
--- /dev/null
+++ b/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_1_CCell.xib
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.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"/>
+        <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="_HomeRelaxBanner_2_1_CCell" id="gTV-IL-0wX" customClass="HomeRelaxBanner_2_1_CCell" customModule="XQMuse" customModuleProvider="target">
+            <rect key="frame" x="0.0" y="0.0" width="160" height="196"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
+                <rect key="frame" x="0.0" y="0.0" width="160" height="196"/>
+                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                <subviews>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="VwD-36-ent">
+                        <rect key="frame" x="0.0" y="0.0" width="160" height="196"/>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="nyj-tV-0t4">
+                        <rect key="frame" x="0.0" y="146" width="160" height="50"/>
+                        <subviews>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6md-5M-Pce">
+                                <rect key="frame" x="20" y="5.9999999999999991" width="13" height="10.666666666666664"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="10.57" id="b4q-6z-Gno"/>
+                                </constraints>
+                                <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                                <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="1000" text="--" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="EeQ-hi-VEz">
+                                <rect key="frame" x="20" y="22" width="89" height="10.666666666666664"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="10.57" id="ma3-Tn-T3O"/>
+                                </constraints>
+                                <fontDescription key="fontDescription" type="system" pointSize="8"/>
+                                <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_use_small" translatesAutoresizingMaskIntoConstraints="NO" id="Y7f-aB-0R5">
+                                <rect key="frame" x="119" y="22" width="10" height="10.666666666666664"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="10" id="3we-wk-eag"/>
+                                    <constraint firstAttribute="height" constant="10.5" id="T4v-eM-jjx"/>
+                                </constraints>
+                            </imageView>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="1000" verticalHuggingPriority="251" text="0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Wxc-EY-qwU">
+                                <rect key="frame" x="131" y="22.666666666666657" width="6" height="9.6666666666666643"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="8"/>
+                                <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <constraints>
+                            <constraint firstAttribute="trailing" secondItem="Wxc-EY-qwU" secondAttribute="trailing" constant="23" id="1lo-tj-hSD"/>
+                            <constraint firstItem="Y7f-aB-0R5" firstAttribute="leading" secondItem="EeQ-hi-VEz" secondAttribute="trailing" constant="10" id="6Ta-sO-wtF"/>
+                            <constraint firstItem="Wxc-EY-qwU" firstAttribute="leading" secondItem="Y7f-aB-0R5" secondAttribute="trailing" constant="2" id="HlL-mC-Zj3"/>
+                            <constraint firstItem="6md-5M-Pce" firstAttribute="top" secondItem="nyj-tV-0t4" secondAttribute="top" constant="6" id="KXL-JH-Ymd"/>
+                            <constraint firstItem="Wxc-EY-qwU" firstAttribute="centerY" secondItem="EeQ-hi-VEz" secondAttribute="centerY" id="Pau-3T-hlR"/>
+                            <constraint firstItem="Y7f-aB-0R5" firstAttribute="centerY" secondItem="EeQ-hi-VEz" secondAttribute="centerY" id="Te3-Aw-qID"/>
+                            <constraint firstItem="EeQ-hi-VEz" firstAttribute="top" secondItem="6md-5M-Pce" secondAttribute="bottom" constant="5.5" id="TwN-Dx-nby"/>
+                            <constraint firstItem="6md-5M-Pce" firstAttribute="leading" secondItem="nyj-tV-0t4" secondAttribute="leading" constant="20" id="UZ1-SQ-4vN"/>
+                            <constraint firstItem="EeQ-hi-VEz" firstAttribute="leading" secondItem="6md-5M-Pce" secondAttribute="leading" id="qrg-fN-GGz"/>
+                            <constraint firstAttribute="height" constant="50" id="tml-hU-Ojf"/>
+                        </constraints>
+                    </view>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_freee" translatesAutoresizingMaskIntoConstraints="NO" id="C5o-Fs-4Xu">
+                        <rect key="frame" x="11" y="9" width="50" height="18"/>
+                    </imageView>
+                </subviews>
+            </view>
+            <viewLayoutGuide key="safeArea" id="ZTg-uK-7eu"/>
+            <constraints>
+                <constraint firstAttribute="bottom" secondItem="nyj-tV-0t4" secondAttribute="bottom" id="6kR-m6-W7L"/>
+                <constraint firstItem="VwD-36-ent" firstAttribute="top" secondItem="gTV-IL-0wX" secondAttribute="top" id="6q4-UC-TbP"/>
+                <constraint firstItem="nyj-tV-0t4" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="HsY-aP-b2m"/>
+                <constraint firstItem="C5o-Fs-4Xu" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" constant="11" id="LW9-j0-pdo"/>
+                <constraint firstItem="C5o-Fs-4Xu" firstAttribute="top" secondItem="gTV-IL-0wX" secondAttribute="top" constant="9" id="M5Z-Od-Ixc"/>
+                <constraint firstAttribute="trailing" secondItem="VwD-36-ent" secondAttribute="trailing" id="eMF-Er-Mtm"/>
+                <constraint firstItem="VwD-36-ent" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="gba-Nk-kGk"/>
+                <constraint firstAttribute="trailing" secondItem="nyj-tV-0t4" secondAttribute="trailing" id="oZN-uZ-l0V"/>
+                <constraint firstAttribute="bottom" secondItem="VwD-36-ent" secondAttribute="bottom" id="p7n-UX-5N7"/>
+            </constraints>
+            <size key="customSize" width="160" height="196"/>
+            <connections>
+                <outlet property="view_text_bg" destination="nyj-tV-0t4" id="Lef-w5-fi6"/>
+            </connections>
+            <point key="canvasLocation" x="164.8854961832061" y="71.83098591549296"/>
+        </collectionViewCell>
+    </objects>
+    <resources>
+        <image name="icon_freee" width="50" height="18"/>
+        <image name="icon_use_small" width="10" height="10.666666984558105"/>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_CCell.xib b/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_CCell.xib
index b12a6fd..93f37e0 100644
--- a/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_CCell.xib
+++ b/XQMuse/Root/Home/CCell/HomeRelaxBanner_2_CCell.xib
@@ -69,10 +69,6 @@
                     </view>
                     <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_vip" translatesAutoresizingMaskIntoConstraints="NO" id="yBF-fO-fwz">
                         <rect key="frame" x="14.666666666666666" y="7.6666666666666661" width="21.333333333333336" height="21.333333333333336"/>
-                        <constraints>
-                            <constraint firstAttribute="width" constant="21.5" id="bKV-6r-xqd"/>
-                            <constraint firstAttribute="height" constant="21.5" id="puY-wU-5SI"/>
-                        </constraints>
                     </imageView>
                 </subviews>
             </view>
diff --git a/XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.swift b/XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.swift
new file mode 100644
index 0000000..9792db2
--- /dev/null
+++ b/XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.swift
@@ -0,0 +1,20 @@
+//
+//  Home_Style_4_Inner_1_CCell.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class Home_Style_4_Inner_1_CCell: UICollectionViewCell {
+
+				@IBOutlet weak var view_shadow: UIView!
+
+				override func awakeFromNib() {
+								super.awakeFromNib()
+								view_shadow.jq_gradientColor(colorArr: [UIColor.black.withAlphaComponent(0.2).cgColor,UIColor.clear.cgColor], cornerRadius: 0, startPoint: CGPoint(x: 1, y: 1), endPoint: CGPoint(x: 1, y: 0), bounds: nil, locations: nil)
+				}
+
+}
diff --git a/XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.xib b/XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.xib
new file mode 100644
index 0000000..47d5085
--- /dev/null
+++ b/XQMuse/Root/Home/CCell/Home_Style_4_Inner_1_CCell.xib
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <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"/>
+        <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="_Home_Style_4_Inner_1_CCell" id="gTV-IL-0wX" customClass="Home_Style_4_Inner_1_CCell" customModule="XQMuse" customModuleProvider="target">
+            <rect key="frame" x="0.0" y="0.0" width="413" height="265"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
+                <rect key="frame" x="0.0" y="0.0" width="413" height="265"/>
+                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                <subviews>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="j7d-BF-xYH">
+                        <rect key="frame" x="0.0" y="255.66666666666666" width="413" height="9.333333333333286"/>
+                        <color key="backgroundColor" red="0.94117647059999998" green="0.94117647059999998" blue="0.94117647059999998" alpha="0.45000000000000001" colorSpace="custom" customColorSpace="sRGB"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="9.5" id="wsl-qN-1LP"/>
+                        </constraints>
+                    </view>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="ajx-e3-nPT">
+                        <rect key="frame" x="0.0" y="0.0" width="413" height="255.66666666666666"/>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="all-AA-1bU">
+                        <rect key="frame" x="0.0" y="155.66666666666666" width="413" height="100"/>
+                        <subviews>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_pay_s" translatesAutoresizingMaskIntoConstraints="NO" id="blS-wb-4tS">
+                                <rect key="frame" x="24" y="58.000000000000007" width="14.666666666666664" height="18.333333333333336"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="18.5" id="ENQ-ju-UWO"/>
+                                    <constraint firstAttribute="width" constant="14.5" id="cuz-Sz-rLa"/>
+                                </constraints>
+                            </imageView>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tDO-qY-aGP">
+                                <rect key="frame" x="43" y="53.333333333333343" width="42" height="20.333333333333329"/>
+                                <fontDescription key="fontDescription" type="system" weight="medium" pointSize="17"/>
+                                <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="can be switched on" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NTV-9E-3YX">
+                                <rect key="frame" x="43" y="77.666666666666686" width="94" height="12"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="10"/>
+                                <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="NTV-9E-3YX" firstAttribute="leading" secondItem="tDO-qY-aGP" secondAttribute="leading" id="51K-EF-Rvn"/>
+                            <constraint firstItem="blS-wb-4tS" firstAttribute="leading" secondItem="all-AA-1bU" secondAttribute="leading" constant="24" id="Lqw-Rn-RNa"/>
+                            <constraint firstItem="NTV-9E-3YX" firstAttribute="top" secondItem="tDO-qY-aGP" secondAttribute="bottom" constant="4" id="ZMe-Wi-gxX"/>
+                            <constraint firstItem="blS-wb-4tS" firstAttribute="top" secondItem="tDO-qY-aGP" secondAttribute="top" constant="4.5" id="bis-tD-VTd"/>
+                            <constraint firstAttribute="height" constant="100" id="j9f-27-wVi"/>
+                            <constraint firstItem="tDO-qY-aGP" firstAttribute="leading" secondItem="blS-wb-4tS" secondAttribute="trailing" constant="4.5" id="mdv-eZ-D7N"/>
+                            <constraint firstAttribute="bottom" secondItem="blS-wb-4tS" secondAttribute="bottom" constant="23.5" id="o7z-53-St0"/>
+                        </constraints>
+                    </view>
+                </subviews>
+            </view>
+            <constraints>
+                <constraint firstItem="j7d-BF-xYH" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="2GG-1b-kYs"/>
+                <constraint firstItem="ajx-e3-nPT" firstAttribute="top" secondItem="gTV-IL-0wX" secondAttribute="top" id="3RP-eN-eVJ"/>
+                <constraint firstAttribute="trailing" secondItem="j7d-BF-xYH" secondAttribute="trailing" id="8dC-va-Zn5"/>
+                <constraint firstItem="j7d-BF-xYH" firstAttribute="top" secondItem="ajx-e3-nPT" secondAttribute="bottom" id="AvF-8C-wci"/>
+                <constraint firstItem="all-AA-1bU" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="NnN-W9-Grf"/>
+                <constraint firstAttribute="trailing" secondItem="all-AA-1bU" secondAttribute="trailing" id="QUs-lC-uZ4"/>
+                <constraint firstItem="ajx-e3-nPT" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="pof-Re-QZd"/>
+                <constraint firstAttribute="bottom" secondItem="j7d-BF-xYH" secondAttribute="bottom" id="weD-8Z-X7c"/>
+                <constraint firstItem="j7d-BF-xYH" firstAttribute="top" secondItem="all-AA-1bU" secondAttribute="bottom" id="x5m-nj-8va"/>
+                <constraint firstAttribute="trailing" secondItem="ajx-e3-nPT" secondAttribute="trailing" id="yxG-4V-MPe"/>
+            </constraints>
+            <size key="customSize" width="413" height="265"/>
+            <connections>
+                <outlet property="view_shadow" destination="all-AA-1bU" id="JuG-YX-jmu"/>
+            </connections>
+            <point key="canvasLocation" x="416.03053435114504" y="96.126760563380287"/>
+        </collectionViewCell>
+    </objects>
+    <resources>
+        <image name="icon_pay_s" width="14.666666984558105" height="18.666666030883789"/>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Home/HomeVC.swift b/XQMuse/Root/Home/HomeVC.swift
index 4843d1b..dfe8316 100644
--- a/XQMuse/Root/Home/HomeVC.swift
+++ b/XQMuse/Root/Home/HomeVC.swift
@@ -27,7 +27,7 @@
 								titleItems.append(TitleItem(title: "新手冥想指南", subTitle: "Meditation guide"))
 								titleItems.append(TitleItem(title: "放松助眠", subTitle: "与内心的宁静与喜悦入睡",hasMore:true))
 								titleItems.append(TitleItem(title: "放松助眠", subTitle: "与内心的宁静与喜悦入睡",hasMore:true))
-
+								titleItems.append(TitleItem(title: "放松助眠", subTitle: "与内心的宁静与喜悦入睡",hasMore:true))
     }
 
 				override func setUI() {
@@ -120,9 +120,29 @@
 //								present(nav, animated: true)
 				}
 
+				@objc func jumpMoreAction(_ sender:UIButton){
+								switch sender.tag {
+												case 201:
+																//跳转计划引导
+																break
+												default:
+																 let topTitle = titleItems[sender.tag - 200].title
+																let vc = HomeItemListVC(topTitle: topTitle, id: 0)
+																push(vc: vc)
+								}
+				}
+
 }
 
 extension HomeVC:UITableViewDelegate & UITableViewDataSource{
+
+				func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
+								if indexPath.section == 2{
+												let vc = HomeTyroGuideVC()
+												push(vc: vc)
+								}
+				}
+
 				func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
 								if indexPath.section == 0{
 												let cell = tableView.dequeueReusableCell(withIdentifier: "_Home_Style_1_TCell") as! Home_Style_1_TCell
@@ -130,7 +150,8 @@
 								}
 
 								if indexPath.section == 1{
-												let cell = tableView.dequeueReusableCell(withIdentifier: "_Home_Style_2_TCell") as! Home_Style_2_TCell
+												let cell = tableView.dequeueReusableCell(withIdentifier: "_Home_Style_4_TCell") as! Home_Style_4_TCell
+												cell.style = .style1
 												return cell
 								}
 
@@ -147,11 +168,13 @@
 
 								if indexPath.section == 4{
 												let cell = tableView.dequeueReusableCell(withIdentifier: "_Home_Style_4_TCell") as! Home_Style_4_TCell
+												cell.style = .style2
 												return cell
 								}
 
 								if indexPath.section == 5{
 												let cell = tableView.dequeueReusableCell(withIdentifier: "_Home_Style_4_TCell") as! Home_Style_4_TCell
+												cell.style = .style2
 												return cell
 								}
 
@@ -187,6 +210,8 @@
 								let headerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: "_HomeHeaderView") as! HomeHeaderView
 								headerView.setTitle(titleItems[section].title, subTitle: titleItems[section].subTitle)
 								headerView.btn_more.isHidden = !titleItems[section].hasMore
+								headerView.btn_more.tag = section + 200
+								headerView.btn_more.addTarget(self, action: #selector(jumpMoreAction(_:)), for: .touchUpInside)
 
 								if section == 1{
 												headerView.btn_more.setImage(UIImage(named: "btn_more"), for: .normal)
diff --git a/XQMuse/Root/Home/TCell/CommentUserInputContentTCell.swift b/XQMuse/Root/Home/TCell/CommentUserInputContentTCell.swift
new file mode 100644
index 0000000..6eeff7f
--- /dev/null
+++ b/XQMuse/Root/Home/TCell/CommentUserInputContentTCell.swift
@@ -0,0 +1,24 @@
+//
+//  CommentUserInputContentTCell.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+
+class CommentUserInputContentTCell: UITableViewCell {
+
+    override func awakeFromNib() {
+        super.awakeFromNib()
+								selectionStyle = .none
+								
+    }
+
+    override func setSelected(_ selected: Bool, animated: Bool) {
+        super.setSelected(selected, animated: animated)
+
+        // Configure the view for the selected state
+    }
+    
+}
diff --git a/XQMuse/Root/Home/TCell/CommentUserInputContentTCell.xib b/XQMuse/Root/Home/TCell/CommentUserInputContentTCell.xib
new file mode 100644
index 0000000..ff0bb0b
--- /dev/null
+++ b/XQMuse/Root/Home/TCell/CommentUserInputContentTCell.xib
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="System colors in document resources" minToolsVersion="11.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="264" id="KGk-i7-Jjw" customClass="CommentUserInputContentTCell" customModule="XQMuse" customModuleProvider="target">
+            <rect key="frame" x="0.0" y="0.0" width="455" height="264"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
+                <rect key="frame" x="0.0" y="0.0" width="455" height="264"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="JzV-uN-yIi">
+                        <rect key="frame" x="21.999999999999996" y="28.999999999999996" width="38.666666666666657" height="38.666666666666657"/>
+                        <color key="backgroundColor" systemColor="secondarySystemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="38.5" id="PhY-mQ-I2e"/>
+                            <constraint firstAttribute="width" constant="38.5" id="z6u-Bo-dOZ"/>
+                        </constraints>
+                        <userDefinedRuntimeAttributes>
+                            <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                            <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                <real key="value" value="19.25"/>
+                            </userDefinedRuntimeAttribute>
+                        </userDefinedRuntimeAttributes>
+                    </imageView>
+                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="d4h-Q7-y18">
+                        <rect key="frame" x="81" y="28" width="42" height="21"/>
+                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                        <nil key="textColor"/>
+                        <nil key="highlightedColor"/>
+                    </label>
+                </subviews>
+                <constraints>
+                    <constraint firstItem="JzV-uN-yIi" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="22" id="HkZ-1d-3HB"/>
+                    <constraint firstItem="JzV-uN-yIi" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="29" id="fxZ-lQ-vtI"/>
+                </constraints>
+            </tableViewCellContentView>
+            <viewLayoutGuide key="safeArea" id="njF-e1-oar"/>
+            <point key="canvasLocation" x="183.96946564885496" y="97.183098591549296"/>
+        </tableViewCell>
+    </objects>
+    <resources>
+        <systemColor name="secondarySystemBackgroundColor">
+            <color red="0.94901960784313721" green="0.94901960784313721" blue="0.96862745098039216" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+        </systemColor>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Home/TCell/Home_Style_3_TCell.swift b/XQMuse/Root/Home/TCell/Home_Style_3_TCell.swift
index f56ba46..5ed61e1 100644
--- a/XQMuse/Root/Home/TCell/Home_Style_3_TCell.swift
+++ b/XQMuse/Root/Home/TCell/Home_Style_3_TCell.swift
@@ -39,6 +39,18 @@
 								cell.contentView.backgroundColor = .jq_randomColor
 								return cell
 				}
+
+				func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
+								if indexPath.row == 0{
+												let vc = PaymentOrderVC()
+												JQ_currentViewController().jq_push(vc: vc)
+								}
+
+								if indexPath.row == 1{
+												let vc = VIPCenterVC()
+												JQ_currentViewController().jq_push(vc: vc)
+								}
+				}
 }
 
 extension Home_Style_3_TCell:UICollectionViewDelegateFlowLayout{
diff --git a/XQMuse/Root/Home/TCell/Home_Style_4_TCell.swift b/XQMuse/Root/Home/TCell/Home_Style_4_TCell.swift
index 7f2d85f..de52d04 100644
--- a/XQMuse/Root/Home/TCell/Home_Style_4_TCell.swift
+++ b/XQMuse/Root/Home/TCell/Home_Style_4_TCell.swift
@@ -8,8 +8,15 @@
 import UIKit
 import JQTools
 
+enum Home_Style_4_Style{
+				case style1
+				case style2
+}
+
 class Home_Style_4_TCell: UITableViewCell {
 
+				var style:Home_Style_4_Style!
+				
 				@IBOutlet weak var collectionView: UICollectionView!
 
 				override func awakeFromNib() {
@@ -17,20 +24,35 @@
 								collectionView.delegate = self
 								collectionView.dataSource = self
 								collectionView.isPagingEnabled = true
+								collectionView.register(UINib(nibName: "Home_Style_4_Inner_1_CCell", bundle: nil), forCellWithReuseIdentifier: "_Home_Style_4_Inner_1_CCell")
 								collectionView.register(UINib(nibName: "Home_Style_4_Inner_CCell", bundle: nil), forCellWithReuseIdentifier: "_Home_Style_4_Inner_CCell")
 								collectionView.showsHorizontalScrollIndicator = false
     }
 }
 
 extension Home_Style_4_TCell:UICollectionViewDelegate & UICollectionViewDataSource{
+
+				func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
+								let detailVC = HomeItemDetailVC()
+								JQ_currentViewController().jq_push(vc: detailVC)
+				}
+
 				func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
-								return 8
+								return 3
 				}
 				
 				func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
+								if style == .style1{
+												let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_Home_Style_4_Inner_1_CCell", for: indexPath) as! Home_Style_4_Inner_1_CCell
+												return cell
+								}
 
-								let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_Home_Style_4_Inner_CCell", for: indexPath) as! Home_Style_4_Inner_CCell
-								return cell
+								if style == .style2{
+												let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_Home_Style_4_Inner_CCell", for: indexPath) as! Home_Style_4_Inner_CCell
+												return cell
+								}
+
+								return UICollectionViewCell()
 				}
 }
 
@@ -43,6 +65,14 @@
 				}
 
 				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
-								return CGSize(width: JQ_ScreenW, height: JQ_ScreenW * 0.734)
+								if style == .style2{
+												return CGSize(width: JQ_ScreenW, height: JQ_ScreenW * 0.734)
+								}
+
+								if style == .style1{
+												return CGSize(width: JQ_ScreenW, height: JQ_ScreenW * 0.551)
+								}
+
+								return .zero
 				}
 }
diff --git a/XQMuse/Root/Home/VC/CommentListVC.swift b/XQMuse/Root/Home/VC/CommentListVC.swift
new file mode 100644
index 0000000..b929978
--- /dev/null
+++ b/XQMuse/Root/Home/VC/CommentListVC.swift
@@ -0,0 +1,139 @@
+//
+//  CommentListVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/14.
+//
+
+import UIKit
+import QMUIKit
+import JQTools
+
+class CommentListVC: BaseVC {
+
+				@IBOutlet weak var view_content: UIView!
+				@IBOutlet weak var tf_input: QMUITextField!
+				@IBOutlet weak var label_questionNum: UILabel!
+				@IBOutlet weak var tableView: UITableView!
+				@IBOutlet weak var cons_height: NSLayoutConstraint!
+				
+    override func viewDidLoad() {
+        super.viewDidLoad()
+								view.backgroundColor = .clear
+								tf_input.tintColor = Def_ThemeColor
+								tableView.separatorStyle = .none
+								tableView.delegate = self
+								tableView.dataSource = self
+								if #available(iOS 15.0, *) {
+												tableView.sectionHeaderTopPadding = 0
+								}
+
+								cons_height.constant = JQ_ScreenH - 151 - JQ_NavBarHeight - UIDevice.jq_safeEdges.top - UIDevice.jq_safeEdges.bottom
+								tableView.register(CommentCommentHeaderView.self, forHeaderFooterViewReuseIdentifier: "_header")
+								tableView.register(CommentReplyTCell.self, forCellReuseIdentifier: "_CommentReplyTCell")
+    }
+
+				override func viewDidLayoutSubviews() {
+								super.viewDidLayoutSubviews()
+								view_content.jq_cornerPart(byRoundingCorners: [.topLeft,.topRight], radii: 20)
+				}
+
+				@IBAction func closeAction(_ sender: UIButton) {
+								self.dismiss(animated: true)
+				}
+				
+				@IBAction func sendAction(_ sender: UIButton) {
+
+				}
+
+				@objc func longPressAction(_ gesture:UITapGestureRecognizer){
+								if gesture.state == .began {
+												// 当长按开始时,你可以获取到 cell 的信息
+												if let headerView = gesture.view as? CommentCommentHeaderView {
+																let index = headerView.tag - 1000
+																ChooseOptView.show(titles: ["举报提问","拉入黑名单"]) { _ in
+																				
+																}
+												}
+								}
+				}
+}
+
+extension CommentListVC:UITableViewDelegate & UITableViewDataSource{
+
+				func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
+								let headerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: "_header") as! CommentCommentHeaderView
+								headerView.tag = section + 1000
+
+								if headerView.gestureRecognizers == nil{
+												let longPress	= UILongPressGestureRecognizer(target: self, action: #selector(longPressAction))
+												longPress.minimumPressDuration = 0.5
+												headerView.addGestureRecognizer(longPress)
+								}
+
+								return headerView
+				}
+
+				func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
+								return UITableView.automaticDimension
+				}
+
+				func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
+								return 0.001
+				}
+
+				func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
+								return UITableView.automaticDimension
+				}
+
+				func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
+								var cell = tableView.dequeueReusableCell(withIdentifier: "_CommentReplyTCell", for: indexPath) as? CommentReplyTCell
+
+								cell?.setText(text: "助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。助力13亿女性及其家庭生命蜕变,幸福重生的伟大愿景。")
+								return cell!
+				}
+
+				func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
+								return 1
+				}
+
+				func numberOfSections(in tableView: UITableView) -> Int {
+								return 2
+				}
+}
+
+class CommentReplyTCell:UITableViewCell{
+
+				private lazy var label_content:UILabel = {
+								let label = UILabel()
+								label.textColor = UIColor(hexString: "#383838")
+								label.numberOfLines = 0
+								return label
+
+				}()
+
+				override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
+								super.init(style: .default, reuseIdentifier: reuseIdentifier)
+								if !self.contentView.subviews.contains(label_content){
+												self.selectionStyle = .none
+												self.contentView.addSubview(label_content)
+												label_content.snp.makeConstraints { make in
+																make.top.equalToSuperview().offset(5)
+																make.left.equalTo(72.5)
+																make.right.equalTo(-28.5)
+																make.height.greaterThanOrEqualTo(0)
+																make.bottom.equalToSuperview().offset(0).priority(800)
+												}
+								}
+				}
+
+				func setText(text:String){
+								label_content.attributedText = AttributedStringbuilder().add(string: "平台回复:", withFont: .systemFont(ofSize: 12.5, weight: .bold), withColor: UIColor(hexString: "#383838")!,lineSpace: 5)
+												.add(string: text, withFont: .systemFont(ofSize: 12.5), withColor: UIColor(hexString: "#383838")!,lineSpace: 5).mutableAttributedString
+
+				}
+
+				required init?(coder: NSCoder) {
+								fatalError("init(coder:) has not been implemented")
+				}
+}
diff --git a/XQMuse/Root/Home/VC/CommentListVC.xib b/XQMuse/Root/Home/VC/CommentListVC.xib
new file mode 100644
index 0000000..b9160c7
--- /dev/null
+++ b/XQMuse/Root/Home/VC/CommentListVC.xib
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="System colors in document resources" minToolsVersion="11.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="CommentListVC" customModule="XQMuse" customModuleProvider="target">
+            <connections>
+                <outlet property="cons_height" destination="Jt5-vL-Xy7" id="erW-Ls-spJ"/>
+                <outlet property="label_questionNum" destination="tJL-SB-mev" id="hHc-29-HND"/>
+                <outlet property="tableView" destination="3LK-mI-8Z0" id="B19-t5-s0l"/>
+                <outlet property="tf_input" destination="p6F-O6-dow" id="j8I-wI-R2G"/>
+                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
+                <outlet property="view_content" destination="0U5-hZ-s5i" id="uKy-gK-PdH"/>
+            </connections>
+        </placeholder>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZLl-N5-S08">
+                    <rect key="frame" x="0.0" y="729" width="393" height="123"/>
+                    <subviews>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="zMX-CZ-PZh">
+                            <rect key="frame" x="295.66666666666669" y="18.666666666666629" width="53" height="29"/>
+                            <color key="backgroundColor" red="0.59999999999999998" green="0.71372549019607845" blue="0.51372549019607838" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="29" id="7zY-nc-cNb"/>
+                                <constraint firstAttribute="width" constant="53" id="h5X-iG-2KS"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="发布"/>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                    <real key="value" value="14.5"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                            <connections>
+                                <action selector="sendAction:" destination="-1" eventType="touchUpInside" id="nCB-YR-oTw"/>
+                            </connections>
+                        </button>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Stl-8O-SW3">
+                            <rect key="frame" x="48.999999999999986" y="18.666666666666629" width="232.66666666666663" height="29"/>
+                            <subviews>
+                                <textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="留下你的精彩评论吧" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="p6F-O6-dow" customClass="QMUITextField">
+                                    <rect key="frame" x="16" y="0.0" width="208.66666666666666" height="29"/>
+                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="11"/>
+                                    <textInputTraits key="textInputTraits"/>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="color" keyPath="placeholderColor">
+                                            <color key="value" red="0.76470588235294112" green="0.76470588235294112" blue="0.76470588235294112" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        </userDefinedRuntimeAttribute>
+                                    </userDefinedRuntimeAttributes>
+                                </textField>
+                            </subviews>
+                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                            <constraints>
+                                <constraint firstAttribute="trailing" secondItem="p6F-O6-dow" secondAttribute="trailing" constant="8" id="8TK-xK-ojU"/>
+                                <constraint firstItem="p6F-O6-dow" firstAttribute="top" secondItem="Stl-8O-SW3" secondAttribute="top" id="Azz-Ud-JFW"/>
+                                <constraint firstAttribute="bottom" secondItem="p6F-O6-dow" secondAttribute="bottom" id="Ozg-qC-Mq4"/>
+                                <constraint firstAttribute="height" constant="29" id="azq-2q-uXC"/>
+                                <constraint firstItem="p6F-O6-dow" firstAttribute="leading" secondItem="Stl-8O-SW3" secondAttribute="leading" constant="16" id="vwq-Ag-TCy"/>
+                            </constraints>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="color" keyPath="ld_borderColorXIB">
+                                    <color key="value" red="0.76470588240000004" green="0.76470588240000004" blue="0.76470588240000004" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_borderWidthXIB">
+                                    <real key="value" value="0.5"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                    <real key="value" value="14.5"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                        </view>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstItem="zMX-CZ-PZh" firstAttribute="centerY" secondItem="Stl-8O-SW3" secondAttribute="centerY" id="7Js-Xb-w0K"/>
+                        <constraint firstItem="zMX-CZ-PZh" firstAttribute="top" secondItem="ZLl-N5-S08" secondAttribute="top" constant="18.5" id="8hi-C8-9pO"/>
+                        <constraint firstAttribute="bottomMargin" secondItem="zMX-CZ-PZh" secondAttribute="bottom" constant="33.5" id="GzM-Ua-Hc9"/>
+                        <constraint firstAttribute="trailing" secondItem="zMX-CZ-PZh" secondAttribute="trailing" constant="44.5" id="JTi-St-uAF"/>
+                        <constraint firstItem="Stl-8O-SW3" firstAttribute="leading" secondItem="ZLl-N5-S08" secondAttribute="leading" constant="49" id="O3g-0S-qi6"/>
+                        <constraint firstItem="zMX-CZ-PZh" firstAttribute="leading" secondItem="Stl-8O-SW3" secondAttribute="trailing" constant="14" id="m88-K6-Hud"/>
+                    </constraints>
+                </view>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="0U5-hZ-s5i">
+                    <rect key="frame" x="0.0" y="329" width="393" height="400"/>
+                    <subviews>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0条提问" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tJL-SB-mev">
+                            <rect key="frame" x="169.66666666666666" y="24" width="54" height="17"/>
+                            <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
+                            <color key="textColor" red="0.2196078431372549" green="0.2196078431372549" blue="0.2196078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <nil key="highlightedColor"/>
+                        </label>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="zsV-4W-6yf">
+                            <rect key="frame" x="22" y="62" width="349" height="0.6666666666666643"/>
+                            <color key="backgroundColor" red="0.81568627450980391" green="0.81568627450980391" blue="0.81568627450980391" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="0.5" id="UcA-2w-8E0"/>
+                            </constraints>
+                        </view>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="WBR-j8-RVW">
+                            <rect key="frame" x="343" y="17.666666666666686" width="30" height="30"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="30" id="1oL-UI-u25"/>
+                                <constraint firstAttribute="height" constant="30" id="9ok-sn-Uf8"/>
+                            </constraints>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" image="btn_close_1"/>
+                            <connections>
+                                <action selector="closeAction:" destination="-1" eventType="touchUpInside" id="fk5-Mx-Y2A"/>
+                            </connections>
+                        </button>
+                        <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="grouped" separatorStyle="default" allowsSelection="NO" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="18" estimatedSectionHeaderHeight="-1" sectionFooterHeight="18" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="3LK-mI-8Z0">
+                            <rect key="frame" x="0.0" y="62.666666666666686" width="393" height="337.33333333333331"/>
+                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                            <inset key="separatorInset" minX="15" minY="0.0" maxX="0.0" maxY="0.0"/>
+                        </tableView>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstAttribute="bottom" secondItem="3LK-mI-8Z0" secondAttribute="bottom" id="8bF-fE-Qnl"/>
+                        <constraint firstItem="zsV-4W-6yf" firstAttribute="leading" secondItem="0U5-hZ-s5i" secondAttribute="leading" constant="22" id="GYY-md-vcF"/>
+                        <constraint firstAttribute="height" constant="400" id="Jt5-vL-Xy7"/>
+                        <constraint firstItem="tJL-SB-mev" firstAttribute="top" secondItem="0U5-hZ-s5i" secondAttribute="top" constant="24" id="Pft-fr-Og2"/>
+                        <constraint firstAttribute="trailing" secondItem="WBR-j8-RVW" secondAttribute="trailing" constant="20" id="QCa-fd-2CB"/>
+                        <constraint firstItem="tJL-SB-mev" firstAttribute="centerX" secondItem="0U5-hZ-s5i" secondAttribute="centerX" id="U0k-kn-jV1"/>
+                        <constraint firstAttribute="trailing" secondItem="3LK-mI-8Z0" secondAttribute="trailing" id="etj-p3-kS2"/>
+                        <constraint firstAttribute="trailing" secondItem="zsV-4W-6yf" secondAttribute="trailing" constant="22" id="jVv-PN-k4y"/>
+                        <constraint firstItem="WBR-j8-RVW" firstAttribute="centerY" secondItem="tJL-SB-mev" secondAttribute="centerY" id="jcE-5f-nbR"/>
+                        <constraint firstItem="zsV-4W-6yf" firstAttribute="top" secondItem="tJL-SB-mev" secondAttribute="bottom" constant="21" id="p1i-1u-ria"/>
+                        <constraint firstItem="3LK-mI-8Z0" firstAttribute="top" secondItem="zsV-4W-6yf" secondAttribute="bottom" id="q7m-mm-acC"/>
+                        <constraint firstItem="3LK-mI-8Z0" firstAttribute="leading" secondItem="0U5-hZ-s5i" secondAttribute="leading" id="sXT-C6-oD6"/>
+                    </constraints>
+                </view>
+            </subviews>
+            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
+            <constraints>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="ZLl-N5-S08" secondAttribute="trailing" id="D5k-zM-9Qm"/>
+                <constraint firstItem="ZLl-N5-S08" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="FVr-hV-lL4"/>
+                <constraint firstItem="0U5-hZ-s5i" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="MK9-At-Oza"/>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="0U5-hZ-s5i" secondAttribute="trailing" id="Wzp-bR-aRa"/>
+                <constraint firstAttribute="bottom" secondItem="ZLl-N5-S08" secondAttribute="bottom" id="ZT9-Iu-0bE"/>
+                <constraint firstItem="ZLl-N5-S08" firstAttribute="top" secondItem="0U5-hZ-s5i" secondAttribute="bottom" id="aUb-Le-fpf"/>
+            </constraints>
+            <point key="canvasLocation" x="82" y="21"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="btn_close_1" width="12" height="12"/>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Home/VC/HomeItemDetailVC.swift b/XQMuse/Root/Home/VC/HomeItemDetailVC.swift
index e5df84a..4a4d58d 100644
--- a/XQMuse/Root/Home/VC/HomeItemDetailVC.swift
+++ b/XQMuse/Root/Home/VC/HomeItemDetailVC.swift
@@ -23,6 +23,18 @@
 								title = "心泉·疗愈"
     }
 
+				override func viewDidAppear(_ animated: Bool) {
+								super.viewDidAppear(animated)
+
+								//如果从支付过来的,移除支付
+								navigationController!.viewControllers.removeAll { vc in
+												if vc is PaymentOrderResultVC || vc is PaymentOrderVC{
+																return true
+												}
+												return false
+								}
+				}
+
 				override func setUI() {
 
 								let collect_bitem = UIBarButtonItem(image: UIImage(named: "btn_collect"), style: .plain, target: self, action: #selector(collectionAction))
@@ -59,7 +71,9 @@
 				}
 
 				@IBAction func commentAction(_ sender: TapBtn) {
-
+								let vc = CommentListVC()
+								vc.modalPresentationStyle = .custom
+								present(vc, animated: true)
 				}
 
 				@IBAction func beLikeAction(_ sender: UIButton) {
diff --git a/XQMuse/Root/Home/VC/HomeItemDetailVC.xib b/XQMuse/Root/Home/VC/HomeItemDetailVC.xib
index 3b46a91..14d6df3 100644
--- a/XQMuse/Root/Home/VC/HomeItemDetailVC.xib
+++ b/XQMuse/Root/Home/VC/HomeItemDetailVC.xib
@@ -116,7 +116,8 @@
                         <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="OBt-Rv-6FE">
                             <rect key="frame" x="350.33333333333331" y="55" width="21.666666666666686" height="22"/>
                             <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
-                            <state key="normal" image="btn_like"/>
+                            <state key="normal" image="btn_like_u"/>
+                            <state key="selected" image="btn_like"/>
                             <connections>
                                 <action selector="beLikeAction:" destination="-1" eventType="touchUpInside" id="yQs-VU-v7b"/>
                             </connections>
@@ -221,6 +222,7 @@
     <resources>
         <image name="btn_comment" width="18.666666030883789" height="19"/>
         <image name="btn_like" width="21.666666030883789" height="17"/>
+        <image name="btn_like_u" width="21.666666030883789" height="17"/>
         <image name="btn_list" width="17" height="13.666666984558105"/>
         <image name="btn_roll" width="22.666666030883789" height="19.666666030883789"/>
         <image name="btn_time" width="20.666666030883789" height="20.666666030883789"/>
diff --git a/XQMuse/Root/Home/VC/HomeTyroGuideVC.swift b/XQMuse/Root/Home/VC/HomeTyroGuideVC.swift
new file mode 100644
index 0000000..dbaed65
--- /dev/null
+++ b/XQMuse/Root/Home/VC/HomeTyroGuideVC.swift
@@ -0,0 +1,37 @@
+//
+//  HomeTyroGuideVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+
+class HomeTyroGuideVC: BaseVC {
+
+				var scrollView:UIScrollView!
+				var centerImage:UIImageView!
+
+    override func viewDidLoad() {
+        super.viewDidLoad()
+								title = "心泉·疗愈"
+    }
+
+				override func setUI() {
+								super.setUI()
+								scrollView = UIScrollView()
+								scrollView.showsVerticalScrollIndicator = false
+								view.addSubview(scrollView)
+								scrollView.snp.makeConstraints { make in
+												make.edges.equalToSuperview()
+								}
+
+								centerImage = UIImageView()
+								scrollView.addSubview(centerImage)
+								centerImage.snp.makeConstraints { make in
+												make.edges.equalToSuperview()
+												make.centerX.equalToSuperview()
+												make.height.equalTo(1200)
+								}
+				}
+}
diff --git a/XQMuse/Root/Home/VC/PaymentOrderResultVC.swift b/XQMuse/Root/Home/VC/PaymentOrderResultVC.swift
new file mode 100644
index 0000000..a8abf8e
--- /dev/null
+++ b/XQMuse/Root/Home/VC/PaymentOrderResultVC.swift
@@ -0,0 +1,140 @@
+//
+//  PaymentOrderResultVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+class PaymentOrderResultVC: BaseVC {
+
+				var collectionView:UICollectionView!
+				private  let topView = PaymentOrderResultTopView.jq_loadNibView()
+//				private let shadowView = UIView()
+
+				override func viewDidLoad() {
+								super.viewDidLoad()
+								title = "支付结果"
+
+				}
+
+				override func setUI() {
+								super.setUI()
+								view.backgroundColor = .white
+
+								let layout = HoverHeaderFlowLayout()
+								let w = (JQ_ScreenW - 18 * 3) / 2
+								layout.itemSize = CGSize(width: w, height: w * 1.319)
+								layout.headerReferenceSize = CGSize(width: JQ_ScreenW, height: 59)
+								collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)
+								collectionView.backgroundColor = .clear
+								collectionView.delegate = self
+								collectionView.delegate = self
+								collectionView.dataSource = self
+								collectionView.backgroundColor = .white
+								collectionView.contentInset = UIEdgeInsets(top: 298, left: 18, bottom: 0, right: 18)
+								collectionView.register(UINib(nibName: "HomeRelaxBanner_2_1_CCell", bundle: nil), forCellWithReuseIdentifier: "_HomeRelaxBanner_2_1_CCell")
+								collectionView.register(PaymentOrderResultHeaderView.self, forSupplementaryViewOfKind: UICollectionView.elementKindSectionHeader, withReuseIdentifier: "header")
+								view.addSubview(collectionView)
+								collectionView.snp.makeConstraints { make in
+												make.edges.equalToSuperview()
+								}
+
+
+								view.addSubview(topView)
+								topView.backgroundColor = .clear
+								topView.snp.makeConstraints {[unowned self] make in
+												make.top.equalTo(self.view.safeAreaLayoutGuide.snp.top).offset(0)
+												make.left.right.equalToSuperview()
+												make.height.equalTo(278)
+								}
+
+//								view.addSubview(shadowView)
+//								shadowView.backgroundColor = .white
+//								shadowView.snp.makeConstraints {[unowned self] make in
+//												make.top.equalTo(self.view.safeAreaLayoutGuide.snp.top).offset(0)
+//												make.left.right.equalToSuperview()
+//												make.height.equalTo(30)
+//								}
+
+				}
+
+				override func viewDidLayoutSubviews() {
+								super.viewDidLayoutSubviews()
+//								shadowView.jq_gradientColor(colorArr: [UIColor(hexStr: "#F5F5F5").withAlphaComponent(0.15).cgColor,UIColor.clear.cgColor], cornerRadius: 0, startPoint: CGPoint(x: 0, y: 0), endPoint: CGPoint(x: 0, y: 1), bounds: CGRect(x: 0, y: 0, width: JQ_ScreenW, height: 30),locations: [0.1,0.9])
+				}
+}
+
+extension PaymentOrderResultVC:UIScrollViewDelegate{
+				func scrollViewDidScroll(_ scrollView: UIScrollView) {
+								let v = (scrollView.contentOffset.y) + 298
+								topView.y = -v
+				}
+}
+
+extension PaymentOrderResultVC:UICollectionViewDelegate & UICollectionViewDataSource{
+				func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
+								return 50
+				}
+
+				func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
+//								let vc = HomeItemDetailVC()
+//								push(vc: vc)
+								
+				}
+
+				func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
+								let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_HomeRelaxBanner_2_1_CCell", for: indexPath) as! HomeRelaxBanner_2_1_CCell
+								cell.backgroundColor = .jq_randomColor
+								return cell
+				}
+
+				func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
+								if kind == UICollectionView.elementKindSectionHeader{
+												let headerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "header", for: indexPath) as! PaymentOrderResultHeaderView
+												return headerView
+								}
+
+								return UICollectionReusableView()
+				}
+}
+
+class PaymentOrderResultHeaderView:UICollectionReusableView{
+
+				override init(frame: CGRect) {
+								super.init(frame: frame)
+								setUI()
+				}
+
+				required init?(coder: NSCoder) {
+								fatalError("init(coder:) has not been implemented")
+				}
+
+				private func setUI(){
+								backgroundColor = .white
+
+								let lineView = UIView()
+								lineView.backgroundColor = UIColor(hexString: "#979797")?.withAlphaComponent(0.26)
+								addSubview(lineView)
+								lineView.snp.makeConstraints { make in
+												make.left.equalTo(76)
+												make.right.equalTo(-76)
+												make.height.equalTo(1)
+												make.centerY.equalToSuperview()
+								}
+
+								let lineLabel = UILabel()
+								lineLabel.text = "猜你喜欢"
+								lineLabel.backgroundColor = .white
+								lineLabel.textAlignment = .center
+								lineLabel.font = .systemFont(ofSize: 14, weight: .medium)
+								lineLabel.textColor = UIColor(hexString: "#3F4343")?.withAlphaComponent(0.79)
+								addSubview(lineLabel)
+								lineLabel.snp.makeConstraints { make in
+												make.center.equalToSuperview()
+												make.width.equalTo(71)
+												make.height.equalTo(20)
+								}
+				}
+}
diff --git a/XQMuse/Root/Home/VC/PaymentOrderResultVC.xib b/XQMuse/Root/Home/VC/PaymentOrderResultVC.xib
new file mode 100644
index 0000000..fba5c60
--- /dev/null
+++ b/XQMuse/Root/Home/VC/PaymentOrderResultVC.xib
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13142" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <dependencies>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12042"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="PaymentOrderResultVC" customModuleProvider="target">
+            <connections>
+                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
+            </connections>
+        </placeholder>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
+            <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
+        </view>
+    </objects>
+</document>
diff --git a/XQMuse/Root/Home/VC/PaymentOrderVC.swift b/XQMuse/Root/Home/VC/PaymentOrderVC.swift
new file mode 100644
index 0000000..14e6be9
--- /dev/null
+++ b/XQMuse/Root/Home/VC/PaymentOrderVC.swift
@@ -0,0 +1,49 @@
+//
+//  PaymentOrderVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import QMUIKit
+
+class PaymentOrderVC: BaseVC {
+
+				@IBOutlet weak var tf_phone: QMUITextField!
+				@IBOutlet weak var label_walletBalance: UILabel!
+				@IBOutlet weak var btn_isreadAgreement: UIButton!
+				
+				override func viewDidLoad() {
+        super.viewDidLoad()
+								title = "确认订单"
+
+    }
+
+				override func setUI() {
+								super.setUI()
+								
+				}
+
+				@IBAction func invateRegisterAction(_ sender: UIButton) {
+
+				}
+
+				@IBAction func searchUserAction(_ sender: UIButton) {
+
+				}
+
+				@IBAction func readAgreementAction(_ sender: UIButton) {
+								sender.isSelected = !sender.isSelected
+				}
+
+
+				@IBAction func webAgreementAction(_ sender: UIButton) {
+
+				}
+
+				@IBAction func completeAction(_ sender: UIButton) {
+								let vc = PaymentOrderResultVC()
+								push(vc: vc)
+				}
+}
diff --git a/XQMuse/Root/Home/VC/PaymentOrderVC.xib b/XQMuse/Root/Home/VC/PaymentOrderVC.xib
new file mode 100644
index 0000000..129fdf5
--- /dev/null
+++ b/XQMuse/Root/Home/VC/PaymentOrderVC.xib
@@ -0,0 +1,487 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="System colors in document resources" minToolsVersion="11.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="PaymentOrderVC" customModule="XQMuse" customModuleProvider="target">
+            <connections>
+                <outlet property="btn_isreadAgreement" destination="9jh-cC-nHB" id="kmT-qh-HGA"/>
+                <outlet property="label_walletBalance" destination="W3z-Hl-09j" id="CNw-KV-Uyh"/>
+                <outlet property="tf_phone" destination="W3K-U0-zHA" id="IkD-kf-fwY"/>
+                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
+            </connections>
+        </placeholder>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="jDI-6t-fTs">
+                    <rect key="frame" x="0.0" y="59" width="393" height="759"/>
+                    <subviews>
+                        <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="16" translatesAutoresizingMaskIntoConstraints="NO" id="3me-1I-5oC">
+                            <rect key="frame" x="8" y="14" width="377" height="404.33333333333331"/>
+                            <subviews>
+                                <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="H4R-h3-5Ua">
+                                    <rect key="frame" x="0.0" y="0.0" width="377" height="331.33333333333331"/>
+                                    <subviews>
+                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8V3-V7-K06">
+                                            <rect key="frame" x="0.0" y="0.0" width="377" height="184"/>
+                                            <subviews>
+                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="LBY-Q2-RQA">
+                                                    <rect key="frame" x="13.666666666666664" y="16" width="87.333333333333343" height="85"/>
+                                                    <color key="backgroundColor" systemColor="separatorColor"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="87.400000000000006" id="aed-zb-a4A"/>
+                                                        <constraint firstAttribute="height" constant="84.900000000000006" id="ggl-aL-eV6"/>
+                                                    </constraints>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                                            <real key="value" value="10"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                    </userDefinedRuntimeAttributes>
+                                                </imageView>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="1000" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GMw-pK-u8J">
+                                                    <rect key="frame" x="120.33333333333334" y="24.666666666666671" width="14.666666666666657" height="19.333333333333329"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                                    <color key="textColor" red="0.27450980392156865" green="0.27450980392156865" blue="0.27450980392156865" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="1000" text="疗愈币0" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="iyN-A8-Fyo">
+                                                    <rect key="frame" x="145" y="27.666666666666668" width="218" height="14.333333333333332"/>
+                                                    <fontDescription key="fontDescription" type="system" weight="heavy" pointSize="12"/>
+                                                    <color key="textColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="导师 --" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="y7d-Qe-XsO">
+                                                    <rect key="frame" x="120.33333333333333" y="78" width="39.333333333333329" height="14.333333333333329"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="12"/>
+                                                    <color key="textColor" red="0.47058823529411764" green="0.47058823529411764" blue="0.47058823529411764" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="x1" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hW7-II-bKY">
+                                                    <rect key="frame" x="346.66666666666669" y="78" width="14" height="14.333333333333329"/>
+                                                    <fontDescription key="fontDescription" type="system" weight="heavy" pointSize="12"/>
+                                                    <color key="textColor" red="0.54117647059999996" green="0.68235294120000001" blue="0.39607843139999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gF5-hA-riS">
+                                                    <rect key="frame" x="13" y="123" width="351" height="0.3333333333333286"/>
+                                                    <color key="backgroundColor" red="0.81568627450980391" green="0.81568627450980391" blue="0.81568627450980391" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="0.5" id="owu-BJ-bUd"/>
+                                                    </constraints>
+                                                </view>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="订单金额" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g8H-Sg-oWt">
+                                                    <rect key="frame" x="15.000000000000004" y="123.33333333333336" width="57.333333333333343" height="60.666666666666671"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="14"/>
+                                                    <color key="textColor" red="0.15686274509803921" green="0.15686274509803921" blue="0.15686274509803921" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="疗愈币0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="s0D-hY-lov">
+                                                    <rect key="frame" x="318.66666666666669" y="146.66666666666666" width="47" height="14.333333333333343"/>
+                                                    <fontDescription key="fontDescription" type="system" weight="heavy" pointSize="12"/>
+                                                    <color key="textColor" red="0.15686274509803921" green="0.15686274509803921" blue="0.15686274509803921" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                            </subviews>
+                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                            <constraints>
+                                                <constraint firstAttribute="trailing" secondItem="iyN-A8-Fyo" secondAttribute="trailing" constant="14" id="1Ab-m9-kit"/>
+                                                <constraint firstItem="iyN-A8-Fyo" firstAttribute="top" secondItem="8V3-V7-K06" secondAttribute="top" constant="27.5" id="1jT-vp-k8O"/>
+                                                <constraint firstItem="g8H-Sg-oWt" firstAttribute="leading" secondItem="8V3-V7-K06" secondAttribute="leading" constant="15" id="66U-aa-BBJ"/>
+                                                <constraint firstAttribute="trailing" secondItem="s0D-hY-lov" secondAttribute="trailing" constant="11.5" id="AMo-y5-7xA"/>
+                                                <constraint firstItem="gF5-hA-riS" firstAttribute="leading" secondItem="8V3-V7-K06" secondAttribute="leading" constant="13" id="CKv-M9-zoV"/>
+                                                <constraint firstItem="LBY-Q2-RQA" firstAttribute="leading" secondItem="8V3-V7-K06" secondAttribute="leading" constant="13.5" id="EII-gU-Axu"/>
+                                                <constraint firstItem="GMw-pK-u8J" firstAttribute="top" secondItem="LBY-Q2-RQA" secondAttribute="top" constant="8.5" id="GT6-MO-JEf"/>
+                                                <constraint firstItem="gF5-hA-riS" firstAttribute="top" secondItem="LBY-Q2-RQA" secondAttribute="bottom" constant="22" id="MNO-Oi-6hN"/>
+                                                <constraint firstItem="y7d-Qe-XsO" firstAttribute="bottom" secondItem="LBY-Q2-RQA" secondAttribute="bottom" constant="-8.5" id="P9l-wb-EZU"/>
+                                                <constraint firstItem="s0D-hY-lov" firstAttribute="centerY" secondItem="g8H-Sg-oWt" secondAttribute="centerY" id="Seu-ey-YgT"/>
+                                                <constraint firstAttribute="height" constant="184" id="Wwm-Xp-ZAb"/>
+                                                <constraint firstAttribute="trailing" secondItem="gF5-hA-riS" secondAttribute="trailing" constant="13" id="X1m-vX-ke1"/>
+                                                <constraint firstItem="iyN-A8-Fyo" firstAttribute="leading" secondItem="GMw-pK-u8J" secondAttribute="trailing" constant="10" id="avh-A8-gij"/>
+                                                <constraint firstItem="LBY-Q2-RQA" firstAttribute="top" secondItem="8V3-V7-K06" secondAttribute="top" constant="16" id="cdP-YT-xpZ"/>
+                                                <constraint firstAttribute="bottom" secondItem="g8H-Sg-oWt" secondAttribute="bottom" id="eRY-pS-OfM"/>
+                                                <constraint firstItem="g8H-Sg-oWt" firstAttribute="top" secondItem="gF5-hA-riS" secondAttribute="bottom" id="oPQ-76-UJG"/>
+                                                <constraint firstItem="hW7-II-bKY" firstAttribute="centerY" secondItem="y7d-Qe-XsO" secondAttribute="centerY" id="ofA-gH-hqR"/>
+                                                <constraint firstItem="GMw-pK-u8J" firstAttribute="leading" secondItem="LBY-Q2-RQA" secondAttribute="trailing" constant="19.5" id="svq-SW-m5m"/>
+                                                <constraint firstAttribute="trailing" secondItem="hW7-II-bKY" secondAttribute="trailing" constant="16.5" id="xEi-a8-oiB"/>
+                                                <constraint firstItem="y7d-Qe-XsO" firstAttribute="leading" secondItem="GMw-pK-u8J" secondAttribute="leading" id="ydi-ue-GMN"/>
+                                            </constraints>
+                                        </view>
+                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4AR-Ov-N15">
+                                            <rect key="frame" x="0.0" y="184" width="377" height="73"/>
+                                            <subviews>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qe7-dR-bUh">
+                                                    <rect key="frame" x="13" y="0.0" width="351" height="0.66666666666666663"/>
+                                                    <color key="backgroundColor" red="0.81568627449999997" green="0.81568627449999997" blue="0.81568627449999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="0.5" id="SWq-R5-MlN"/>
+                                                    </constraints>
+                                                </view>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="好友账号" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="C5w-jL-Klr">
+                                                    <rect key="frame" x="15.000000000000004" y="32.666666666666686" width="57.333333333333343" height="13.333333333333336"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="13.5" id="vK6-2b-dMV"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="14"/>
+                                                    <color key="textColor" red="0.15686274510000001" green="0.15686274510000001" blue="0.15686274510000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6I2-HS-Bee">
+                                                    <rect key="frame" x="98.333333333333343" y="20.666666666666689" width="264.66666666666663" height="37.333333333333343"/>
+                                                    <subviews>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="4Lf-NY-aGs">
+                                                            <rect key="frame" x="186.33333333333337" y="3.6666666666666288" width="62" height="30"/>
+                                                            <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="15"/>
+                                                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                                                            <state key="normal" title="查询账号">
+                                                                <color key="titleColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            </state>
+                                                            <connections>
+                                                                <action selector="searchUserAction:" destination="-1" eventType="touchUpInside" id="tB2-lO-CI9"/>
+                                                            </connections>
+                                                        </button>
+                                                        <textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入好友手机号" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="W3K-U0-zHA" customClass="QMUITextField">
+                                                            <rect key="frame" x="22.000000000000014" y="0.0" width="142.33333333333337" height="37.333333333333336"/>
+                                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="12"/>
+                                                            <textInputTraits key="textInputTraits" keyboardType="numberPad"/>
+                                                            <userDefinedRuntimeAttributes>
+                                                                <userDefinedRuntimeAttribute type="number" keyPath="maximumTextLength">
+                                                                    <integer key="value" value="11"/>
+                                                                </userDefinedRuntimeAttribute>
+                                                            </userDefinedRuntimeAttributes>
+                                                        </textField>
+                                                    </subviews>
+                                                    <color key="backgroundColor" red="0.96470588235294119" green="0.96470588235294119" blue="0.96470588235294119" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="bottom" secondItem="W3K-U0-zHA" secondAttribute="bottom" id="4oG-31-jMv"/>
+                                                        <constraint firstAttribute="trailing" secondItem="4Lf-NY-aGs" secondAttribute="trailing" constant="16.5" id="Hb7-iV-iFK"/>
+                                                        <constraint firstAttribute="height" constant="37.5" id="Ys9-7K-SeD"/>
+                                                        <constraint firstItem="4Lf-NY-aGs" firstAttribute="centerY" secondItem="6I2-HS-Bee" secondAttribute="centerY" id="hSe-2O-7A4"/>
+                                                        <constraint firstItem="W3K-U0-zHA" firstAttribute="top" secondItem="6I2-HS-Bee" secondAttribute="top" id="lQJ-xY-LjC"/>
+                                                        <constraint firstItem="W3K-U0-zHA" firstAttribute="leading" secondItem="6I2-HS-Bee" secondAttribute="leading" constant="22" id="lVm-OD-nze"/>
+                                                        <constraint firstItem="4Lf-NY-aGs" firstAttribute="leading" secondItem="W3K-U0-zHA" secondAttribute="trailing" constant="22" id="xuH-bp-wvT"/>
+                                                    </constraints>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                                            <real key="value" value="18.75"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                    </userDefinedRuntimeAttributes>
+                                                </view>
+                                            </subviews>
+                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                            <constraints>
+                                                <constraint firstItem="qe7-dR-bUh" firstAttribute="leading" secondItem="4AR-Ov-N15" secondAttribute="leading" constant="13" id="2dB-G5-Dxy"/>
+                                                <constraint firstItem="qe7-dR-bUh" firstAttribute="top" secondItem="4AR-Ov-N15" secondAttribute="top" id="2i8-9X-Nhk"/>
+                                                <constraint firstAttribute="trailing" secondItem="6I2-HS-Bee" secondAttribute="trailing" constant="14" id="9GI-su-N8M"/>
+                                                <constraint firstAttribute="bottom" secondItem="C5w-jL-Klr" secondAttribute="bottom" constant="27" id="Bsq-R5-IOM"/>
+                                                <constraint firstItem="C5w-jL-Klr" firstAttribute="leading" secondItem="4AR-Ov-N15" secondAttribute="leading" constant="15" id="QOx-K7-9Cf"/>
+                                                <constraint firstItem="6I2-HS-Bee" firstAttribute="centerY" secondItem="C5w-jL-Klr" secondAttribute="centerY" id="lhx-yv-LxK"/>
+                                                <constraint firstAttribute="trailing" secondItem="qe7-dR-bUh" secondAttribute="trailing" constant="13" id="rls-z3-x6a"/>
+                                                <constraint firstItem="6I2-HS-Bee" firstAttribute="leading" secondItem="C5w-jL-Klr" secondAttribute="trailing" constant="26" id="t1P-Q5-jyI"/>
+                                                <constraint firstItem="C5w-jL-Klr" firstAttribute="top" secondItem="qe7-dR-bUh" secondAttribute="bottom" constant="32" id="y2d-Wc-wJy"/>
+                                            </constraints>
+                                        </view>
+                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="nDP-lX-aFn">
+                                            <rect key="frame" x="0.0" y="257" width="377" height="74.333333333333314"/>
+                                            <subviews>
+                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="TT7-tl-th0">
+                                                    <rect key="frame" x="13.666666666666671" y="0.0" width="53" height="53"/>
+                                                    <color key="backgroundColor" red="0.81568627449999997" green="0.81568627449999997" blue="0.81568627449999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="53.100000000000001" id="H0U-WM-5Rh"/>
+                                                        <constraint firstAttribute="width" constant="53.100000000000001" id="vFe-hz-ysZ"/>
+                                                    </constraints>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                                            <real key="value" value="26.550000000000001"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                    </userDefinedRuntimeAttributes>
+                                                </imageView>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hrJ-kN-vso">
+                                                    <rect key="frame" x="75" y="12.666666666666686" width="14" height="14.333333333333336"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="14.5" id="6vP-7r-hz3"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="15"/>
+                                                    <color key="textColor" red="0.082352941176470587" green="0.15294117647058825" blue="0.082352941176470587" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*******" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ZF1-aZ-gRo">
+                                                    <rect key="frame" x="75" y="37.666666666666686" width="39.666666666666657" height="14.333333333333336"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                                    <color key="textColor" red="0.46666666666666667" green="0.46666666666666667" blue="0.46666666666666667" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOfLines="3" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jVb-Rt-nvY">
+                                                    <rect key="frame" x="102.66666666666667" y="0.0" width="171.66666666666663" height="40.333333333333336"/>
+                                                    <attributedString key="attributedText">
+                                                        <fragment content="未查询到账户信息">
+                                                            <attributes>
+                                                                <color key="NSColor" red="0.46666666666666667" green="0.46666666666666667" blue="0.46666666666666667" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                                <font key="NSFont" metaFont="cellTitle"/>
+                                                                <font key="NSOriginalFont" metaFont="cellTitle"/>
+                                                                <paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="wordWrapping" baseWritingDirection="natural" lineHeightMultiple="1.3999999999999999" tighteningFactorForTruncation="0.0">
+                                                                    <lineBreakStrategy key="lineBreakStrategy" pushOut="YES" hangulWordPriority="YES" standard="YES"/>
+                                                                </paragraphStyle>
+                                                            </attributes>
+                                                        </fragment>
+                                                        <fragment>
+                                                            <string key="content" base64-UTF8="YES">
+Cg
+</string>
+                                                            <attributes>
+                                                                <color key="NSColor" red="0.46666666666666667" green="0.46666666666666667" blue="0.46666666666666667" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                                <font key="NSFont" metaFont="cellTitle"/>
+                                                                <paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="wordWrapping" baseWritingDirection="natural" lineHeightMultiple="1.3999999999999999" tighteningFactorForTruncation="0.0">
+                                                                    <lineBreakStrategy key="lineBreakStrategy" pushOut="YES" hangulWordPriority="YES" standard="YES"/>
+                                                                </paragraphStyle>
+                                                            </attributes>
+                                                        </fragment>
+                                                        <fragment content="可分享二维码至好友,邀请注册">
+                                                            <attributes>
+                                                                <color key="NSColor" red="0.46666666666666667" green="0.46666666666666667" blue="0.46666666666666667" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                                <font key="NSFont" metaFont="cellTitle"/>
+                                                                <font key="NSOriginalFont" metaFont="cellTitle"/>
+                                                                <paragraphStyle key="NSParagraphStyle" alignment="natural" lineBreakMode="wordWrapping" baseWritingDirection="natural" tighteningFactorForTruncation="0.0" allowsDefaultTighteningForTruncation="NO"/>
+                                                            </attributes>
+                                                        </fragment>
+                                                    </attributedString>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3oo-WM-iPM">
+                                                    <rect key="frame" x="304.66666666666669" y="48.666666666666686" width="57" height="11.666666666666664"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="11.5" id="VZq-Ht-vK3"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                                                    <state key="normal" title="邀请注册&gt;">
+                                                        <color key="titleColor" red="0.12941176470588234" green="0.74117647058823533" blue="0.94117647058823528" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    </state>
+                                                    <connections>
+                                                        <action selector="invateRegisterAction:" destination="-1" eventType="touchUpInside" id="aG5-GB-JKi"/>
+                                                    </connections>
+                                                </button>
+                                            </subviews>
+                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                            <constraints>
+                                                <constraint firstItem="jVb-Rt-nvY" firstAttribute="top" secondItem="nDP-lX-aFn" secondAttribute="top" id="8Zk-eE-Igp"/>
+                                                <constraint firstItem="TT7-tl-th0" firstAttribute="leading" secondItem="nDP-lX-aFn" secondAttribute="leading" constant="13.5" id="AF2-I3-7dY"/>
+                                                <constraint firstItem="hrJ-kN-vso" firstAttribute="top" secondItem="TT7-tl-th0" secondAttribute="top" constant="12.5" id="Fyp-9m-tWi"/>
+                                                <constraint firstAttribute="height" constant="74.200000000000003" id="Qr5-hA-Inm"/>
+                                                <constraint firstItem="TT7-tl-th0" firstAttribute="top" secondItem="nDP-lX-aFn" secondAttribute="top" id="aAo-RJ-pRa"/>
+                                                <constraint firstItem="hrJ-kN-vso" firstAttribute="leading" secondItem="TT7-tl-th0" secondAttribute="trailing" constant="8.5" id="caT-gK-t5S"/>
+                                                <constraint firstAttribute="trailing" secondItem="3oo-WM-iPM" secondAttribute="trailing" constant="15.5" id="cbc-z8-CEq"/>
+                                                <constraint firstItem="ZF1-aZ-gRo" firstAttribute="top" secondItem="hrJ-kN-vso" secondAttribute="bottom" constant="10.5" id="dC3-2u-PfV"/>
+                                                <constraint firstAttribute="bottom" secondItem="3oo-WM-iPM" secondAttribute="bottom" constant="14" id="fR1-dr-Rrz"/>
+                                                <constraint firstItem="ZF1-aZ-gRo" firstAttribute="leading" secondItem="hrJ-kN-vso" secondAttribute="leading" id="iWe-1d-lr3"/>
+                                                <constraint firstItem="jVb-Rt-nvY" firstAttribute="centerX" secondItem="nDP-lX-aFn" secondAttribute="centerX" id="zjC-zc-BNr"/>
+                                            </constraints>
+                                        </view>
+                                    </subviews>
+                                </stackView>
+                                <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="w7E-wj-goh">
+                                    <rect key="frame" x="0.0" y="347.33333333333331" width="377" height="57"/>
+                                    <subviews>
+                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dXP-rs-EAP">
+                                            <rect key="frame" x="0.0" y="0.0" width="377" height="57"/>
+                                            <subviews>
+                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_wallet" translatesAutoresizingMaskIntoConstraints="NO" id="3oH-OO-NEc">
+                                                    <rect key="frame" x="13.000000000000002" y="17.666666666666686" width="21.666666666666671" height="21.666666666666671"/>
+                                                </imageView>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="余额抵扣" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="TAm-8d-ISp">
+                                                    <rect key="frame" x="42.333333333333329" y="20" width="57.333333333333329" height="17"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="14"/>
+                                                    <color key="textColor" red="0.15686274509803921" green="0.15686274509803921" blue="0.15686274509803921" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="当前可用 ¥0.00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="W3z-Hl-09j">
+                                                    <rect key="frame" x="111" y="21.666666666666686" width="78.666666666666686" height="13.333333333333336"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="11"/>
+                                                    <color key="textColor" red="0.55686274509803924" green="0.55686274509803924" blue="0.55686274509803924" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_choose_small_s" translatesAutoresizingMaskIntoConstraints="NO" id="XNw-nK-MjP">
+                                                    <rect key="frame" x="347.33333333333331" y="20.333333333333371" width="15.666666666666686" height="16"/>
+                                                </imageView>
+                                            </subviews>
+                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                            <constraints>
+                                                <constraint firstItem="3oH-OO-NEc" firstAttribute="centerY" secondItem="dXP-rs-EAP" secondAttribute="centerY" id="5YR-Zx-2K1"/>
+                                                <constraint firstItem="TAm-8d-ISp" firstAttribute="centerY" secondItem="3oH-OO-NEc" secondAttribute="centerY" id="Fpk-D9-CpC"/>
+                                                <constraint firstItem="TAm-8d-ISp" firstAttribute="leading" secondItem="3oH-OO-NEc" secondAttribute="trailing" constant="7.5" id="Hj8-LR-gAd"/>
+                                                <constraint firstItem="3oH-OO-NEc" firstAttribute="leading" secondItem="dXP-rs-EAP" secondAttribute="leading" constant="13" id="ZA2-Ui-sAL"/>
+                                                <constraint firstAttribute="height" constant="57" id="eun-wF-OxK"/>
+                                                <constraint firstItem="XNw-nK-MjP" firstAttribute="centerY" secondItem="dXP-rs-EAP" secondAttribute="centerY" id="mYL-ud-OMf"/>
+                                                <constraint firstItem="W3z-Hl-09j" firstAttribute="leading" secondItem="TAm-8d-ISp" secondAttribute="trailing" constant="11.5" id="ncp-qs-Wq1"/>
+                                                <constraint firstAttribute="trailing" secondItem="XNw-nK-MjP" secondAttribute="trailing" constant="14" id="reU-yz-Jef"/>
+                                                <constraint firstItem="W3z-Hl-09j" firstAttribute="centerY" secondItem="3oH-OO-NEc" secondAttribute="centerY" id="rf6-DL-KBg"/>
+                                            </constraints>
+                                        </view>
+                                    </subviews>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                        <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                            <real key="value" value="10"/>
+                                        </userDefinedRuntimeAttribute>
+                                    </userDefinedRuntimeAttributes>
+                                </stackView>
+                            </subviews>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                    <real key="value" value="10"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                        </stackView>
+                    </subviews>
+                    <color key="backgroundColor" red="0.96470588235294119" green="0.96470588235294119" blue="0.96470588235294119" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                    <constraints>
+                        <constraint firstItem="3me-1I-5oC" firstAttribute="leading" secondItem="jDI-6t-fTs" secondAttribute="leading" constant="8" id="7QP-Wu-rmk"/>
+                        <constraint firstItem="3me-1I-5oC" firstAttribute="top" secondItem="jDI-6t-fTs" secondAttribute="top" constant="14" id="8SM-fY-xg6"/>
+                        <constraint firstItem="3me-1I-5oC" firstAttribute="centerX" secondItem="jDI-6t-fTs" secondAttribute="centerX" id="cLe-W7-it0"/>
+                        <constraint firstAttribute="trailing" secondItem="3me-1I-5oC" secondAttribute="trailing" constant="8" id="tad-cX-Gms"/>
+                        <constraint firstAttribute="bottom" secondItem="3me-1I-5oC" secondAttribute="bottom" id="vI8-Um-Iyl"/>
+                    </constraints>
+                </scrollView>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Obq-1G-1Dv">
+                    <rect key="frame" x="0.0" y="652" width="393" height="200"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="zZD-Dw-hLM">
+                            <rect key="frame" x="0.0" y="74" width="393" height="126"/>
+                            <subviews>
+                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Pyy-JM-4Pd">
+                                    <rect key="frame" x="261" y="21.666666666666629" width="111" height="34"/>
+                                    <color key="backgroundColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="34" id="6Nl-CN-S1r"/>
+                                        <constraint firstAttribute="width" constant="111" id="OOS-Hg-erC"/>
+                                    </constraints>
+                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
+                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                                    <state key="normal" title="确认并支付"/>
+                                    <userDefinedRuntimeAttributes>
+                                        <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                        <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                            <real key="value" value="17"/>
+                                        </userDefinedRuntimeAttribute>
+                                    </userDefinedRuntimeAttributes>
+                                    <connections>
+                                        <action selector="completeAction:" destination="-1" eventType="touchUpInside" id="b6g-LP-usR"/>
+                                    </connections>
+                                </button>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="合计" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JBC-49-la1">
+                                    <rect key="frame" x="19.666666666666664" y="30" width="28.666666666666664" height="17"/>
+                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="14"/>
+                                    <nil key="textColor"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="疗愈币0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="M0e-rH-WtI">
+                                    <rect key="frame" x="53.333333333333343" y="31.333333333333368" width="47" height="14.333333333333332"/>
+                                    <fontDescription key="fontDescription" type="system" weight="heavy" pointSize="12"/>
+                                    <color key="textColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                            <constraints>
+                                <constraint firstAttribute="bottomMargin" secondItem="Pyy-JM-4Pd" secondAttribute="bottom" constant="28.5" id="N0G-EG-xk9"/>
+                                <constraint firstAttribute="trailing" secondItem="Pyy-JM-4Pd" secondAttribute="trailing" constant="21" id="RoM-sw-iu1"/>
+                                <constraint firstItem="M0e-rH-WtI" firstAttribute="leading" secondItem="JBC-49-la1" secondAttribute="trailing" constant="5" id="fCj-BL-1bO"/>
+                                <constraint firstItem="Pyy-JM-4Pd" firstAttribute="centerY" secondItem="JBC-49-la1" secondAttribute="centerY" id="hvn-yw-c3j"/>
+                                <constraint firstItem="M0e-rH-WtI" firstAttribute="centerY" secondItem="JBC-49-la1" secondAttribute="centerY" id="iJ0-vD-NtC"/>
+                                <constraint firstItem="Pyy-JM-4Pd" firstAttribute="top" secondItem="zZD-Dw-hLM" secondAttribute="top" constant="21.5" id="pXj-Zn-UWT"/>
+                                <constraint firstItem="JBC-49-la1" firstAttribute="leading" secondItem="zZD-Dw-hLM" secondAttribute="leading" constant="19.5" id="z7o-9a-Uki"/>
+                            </constraints>
+                        </view>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="9jh-cC-nHB">
+                            <rect key="frame" x="20.666666666666668" y="40.666666666666629" width="13.000000000000004" height="13"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="13" id="IBF-jr-z9B"/>
+                                <constraint firstAttribute="height" constant="13" id="V4I-Tw-Hxq"/>
+                            </constraints>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" image="icon_choose_small_2"/>
+                            <state key="selected" image="icon_choose_small_s"/>
+                            <connections>
+                                <action selector="readAgreementAction:" destination="-1" eventType="touchUpInside" id="GM6-Su-Dlt"/>
+                            </connections>
+                        </button>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="我已阅读并同意" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jye-SN-JpG">
+                            <rect key="frame" x="38.666666666666657" y="39.333333333333371" width="93" height="15.666666666666664"/>
+                            <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                            <color key="textColor" red="0.49803921568627452" green="0.49803921568627452" blue="0.49803921568627452" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <nil key="highlightedColor"/>
+                        </label>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5Pu-d3-I9P">
+                            <rect key="frame" x="136.66666666666666" y="33" width="153.99999999999997" height="28"/>
+                            <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="《课程/疗愈音频购买协议》">
+                                <color key="titleColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            </state>
+                            <connections>
+                                <action selector="webAgreementAction:" destination="-1" eventType="touchUpInside" id="lQQ-SI-FRJ"/>
+                            </connections>
+                        </button>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="内容" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="A9Y-9h-ygH">
+                            <rect key="frame" x="295.66666666666669" y="39.333333333333371" width="26.666666666666686" height="15.666666666666664"/>
+                            <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                            <color key="textColor" red="0.49803921569999998" green="0.49803921569999998" blue="0.49803921569999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <nil key="highlightedColor"/>
+                        </label>
+                    </subviews>
+                    <color key="backgroundColor" red="0.96470588235294119" green="0.96470588235294119" blue="0.96470588235294119" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                    <constraints>
+                        <constraint firstItem="jye-SN-JpG" firstAttribute="centerY" secondItem="9jh-cC-nHB" secondAttribute="centerY" id="4uv-QN-KbO"/>
+                        <constraint firstItem="9jh-cC-nHB" firstAttribute="leading" secondItem="Obq-1G-1Dv" secondAttribute="leading" constant="20.5" id="BAt-W9-wQ3"/>
+                        <constraint firstAttribute="trailing" secondItem="zZD-Dw-hLM" secondAttribute="trailing" id="QNj-HH-BI8"/>
+                        <constraint firstAttribute="height" constant="200" id="SY9-Mu-JJ9"/>
+                        <constraint firstAttribute="bottom" secondItem="zZD-Dw-hLM" secondAttribute="bottom" id="VpP-mK-kyn"/>
+                        <constraint firstItem="A9Y-9h-ygH" firstAttribute="leading" secondItem="5Pu-d3-I9P" secondAttribute="trailing" constant="5" id="XBX-AX-6Id"/>
+                        <constraint firstItem="A9Y-9h-ygH" firstAttribute="centerY" secondItem="9jh-cC-nHB" secondAttribute="centerY" id="c9X-yt-FKJ"/>
+                        <constraint firstItem="zZD-Dw-hLM" firstAttribute="leading" secondItem="Obq-1G-1Dv" secondAttribute="leading" id="i9z-mv-DHb"/>
+                        <constraint firstItem="5Pu-d3-I9P" firstAttribute="leading" secondItem="jye-SN-JpG" secondAttribute="trailing" constant="5" id="q5m-YL-LGA"/>
+                        <constraint firstItem="jye-SN-JpG" firstAttribute="leading" secondItem="9jh-cC-nHB" secondAttribute="trailing" constant="5" id="qwc-IC-lkt"/>
+                        <constraint firstItem="zZD-Dw-hLM" firstAttribute="top" secondItem="9jh-cC-nHB" secondAttribute="bottom" constant="20.5" id="vw8-uk-x3o"/>
+                        <constraint firstItem="5Pu-d3-I9P" firstAttribute="centerY" secondItem="9jh-cC-nHB" secondAttribute="centerY" id="wil-L5-3cB"/>
+                    </constraints>
+                </view>
+            </subviews>
+            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
+            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+            <constraints>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="jDI-6t-fTs" secondAttribute="bottom" id="76U-vg-IWM"/>
+                <constraint firstAttribute="bottom" secondItem="Obq-1G-1Dv" secondAttribute="bottom" id="OPT-8Z-cDT"/>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="jDI-6t-fTs" secondAttribute="trailing" id="Oze-d1-Fo4"/>
+                <constraint firstItem="Obq-1G-1Dv" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="d3q-1L-OOX"/>
+                <constraint firstItem="jDI-6t-fTs" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="hE9-Y9-CQv"/>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Obq-1G-1Dv" secondAttribute="trailing" id="iK0-gu-tri"/>
+                <constraint firstItem="jDI-6t-fTs" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="qRi-DQ-rsJ"/>
+            </constraints>
+            <point key="canvasLocation" x="136.64122137404578" y="20.422535211267608"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="icon_choose_small_2" width="13" height="13"/>
+        <image name="icon_choose_small_s" width="15.666666984558105" height="16"/>
+        <image name="icon_wallet" width="21.666666030883789" height="21.666666030883789"/>
+        <systemColor name="separatorColor">
+            <color red="0.23529411764705882" green="0.23529411764705882" blue="0.2627450980392157" alpha="0.28999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
+        </systemColor>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Home/View/CommentCommentHeaderView.swift b/XQMuse/Root/Home/View/CommentCommentHeaderView.swift
new file mode 100644
index 0000000..2a992f3
--- /dev/null
+++ b/XQMuse/Root/Home/View/CommentCommentHeaderView.swift
@@ -0,0 +1,89 @@
+//
+//  CommentCommentHeaderView.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class CommentCommentHeaderView: UITableViewHeaderFooterView {
+
+				private var img_userCover:UIImageView!
+				private var label_userName:UILabel!
+				private var label_content:UILabel!
+				private var btn_belike:UIButton!
+				private var label_datetime:UILabel!
+
+				override init(reuseIdentifier: String?) {
+								super.init(reuseIdentifier: reuseIdentifier)
+
+								setUI()
+				}
+
+				private func setUI(){
+
+								img_userCover = UIImageView()
+								img_userCover.backgroundColor = .gray
+								img_userCover.jq_cornerRadius = 19.25
+								contentView.addSubview(img_userCover)
+								img_userCover.snp.makeConstraints { make in
+												make.top.equalTo(22.5)
+												make.left.equalTo(22)
+												make.width.height.equalTo(38.5)
+								}
+
+								label_userName = UILabel()
+								label_userName.text = "张小胖"
+								label_userName.font = UIFont.systemFont(ofSize: 14, weight: .bold)
+								label_userName.textColor = UIColor(hexString: "#383838")
+								contentView.addSubview(label_userName)
+								label_userName.snp.makeConstraints {[unowned self] make in
+												make.left.equalTo(self.img_userCover.snp.right).offset(12.5)
+												make.centerY.equalTo(self.img_userCover)
+												make.height.equalTo(13.5)
+												make.right.equalTo(-50)
+								}
+
+								btn_belike = UIButton(type: .custom)
+								btn_belike.setImage(UIImage(named: "btn_good"), for: .normal)
+								contentView.addSubview(btn_belike)
+								btn_belike.snp.makeConstraints { make in
+												make.width.height.equalTo(30)
+												make.right.equalTo(-20)
+												make.centerY.equalTo(label_userName)
+								}
+
+								label_content = UILabel()
+								label_content.text = "众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好众生皆苦,心态放好"
+								label_content.font = UIFont.systemFont(ofSize: 12.5, weight: .bold)
+								label_content.numberOfLines = 0
+								label_content.textColor = UIColor(hexString: "#383838")
+								contentView.addSubview(label_content)
+								label_content.snp.makeConstraints {[unowned self] make in
+												make.top.equalTo(self.label_userName.snp.bottom).offset(12.5)
+												make.left.equalTo(self.label_userName.snp.left)
+												make.right.equalTo(-10)
+												make.height.greaterThanOrEqualTo(13.5)
+								}
+
+								label_datetime = UILabel()
+								label_datetime.text = "2024-10-25 21:23"
+								label_datetime.font = UIFont.systemFont(ofSize: 9.41, weight: .medium)
+								label_datetime.textColor = UIColor(hexString: "#B6B6B6")
+								contentView.addSubview(label_datetime)
+								label_datetime.snp.makeConstraints {[unowned self] make in
+												make.top.equalTo(self.label_content.snp.bottom).offset(9)
+												make.left.equalTo(self.label_userName.snp.left)
+												make.height.equalTo(7)
+												make.bottom.equalToSuperview().offset(-10)
+								}
+
+				}
+
+				required init?(coder: NSCoder) {
+								fatalError("init(coder:) has not been implemented")
+				}
+				
+}
diff --git a/XQMuse/Root/Home/View/HomeHeaderVC.swift b/XQMuse/Root/Home/View/HomeHeaderVC.swift
index 369b445..ca62bbe 100644
--- a/XQMuse/Root/Home/View/HomeHeaderVC.swift
+++ b/XQMuse/Root/Home/View/HomeHeaderVC.swift
@@ -63,3 +63,57 @@
 				}
 				
 }
+
+class HomeHeaderView_1: UICollectionReusableView{
+				private var label_title:UILabel!
+				private var label_subTitle:UILabel!
+				private(set) var btn_more:UIButton!
+
+				override init(frame: CGRect) {
+								super.init(frame: frame)
+								setUI()
+				}
+
+				private func setUI(){
+								backgroundColor = .white
+
+								label_title = UILabel()
+								label_title.font = .systemFont(ofSize: 21)
+								label_title.textColor = UIColor(hexStr: "#252A23")
+								addSubview(label_title)
+								label_title.snp.makeConstraints { make in
+												make.left.equalTo(19)
+												make.top.equalTo(25.5)
+												make.height.equalTo(19.5)
+								}
+
+								label_subTitle = UILabel()
+								label_subTitle.font = .systemFont(ofSize: 8)
+								label_subTitle.textColor = UIColor(hexStr: "#A1A1A1")
+								addSubview(label_subTitle)
+								label_subTitle.snp.makeConstraints { make in
+												make.left.equalTo(19)
+												make.top.equalTo(label_title.snp.bottom).offset(9)
+												make.height.equalTo(5.5)
+								}
+
+								btn_more = UIButton(type: .custom)
+								btn_more.setImage(UIImage(named: "btn_more"), for: .normal)
+								addSubview(btn_more)
+								btn_more.snp.makeConstraints { make in
+												make.centerY.equalToSuperview()
+												make.right.equalTo(-18.5)
+												make.width.equalTo(21)
+												make.height.equalTo(16)
+								}
+				}
+
+				func setTitle(_ title:String,subTitle:String){
+								label_title.text = title
+								label_subTitle.text = subTitle
+				}
+
+				required init?(coder: NSCoder) {
+								fatalError("init(coder:) has not been implemented")
+				}
+}
diff --git a/XQMuse/Root/Home/View/PaymentOrderResultTopView.swift b/XQMuse/Root/Home/View/PaymentOrderResultTopView.swift
new file mode 100644
index 0000000..704b384
--- /dev/null
+++ b/XQMuse/Root/Home/View/PaymentOrderResultTopView.swift
@@ -0,0 +1,35 @@
+//
+//  PaymentOrderResultTopView.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class PaymentOrderResultTopView: UIView,JQNibView{
+
+
+				@IBOutlet weak var label_price: UILabel!
+				@IBOutlet weak var btn_lookCourse: UIButton!
+
+				override func awakeFromNib() {
+								super.awakeFromNib()
+				}
+
+				@IBAction func backRootAction(_ sender: UIButton) {
+								JQ_currentNavigationController().popToRootViewController(animated: true)
+				}
+
+				@IBAction func lookCourseAction(_ sender: UIButton) {
+//							let vc	= HomeItemDetailVC()
+//								JQ_currentViewController().jq_push(vc: vc)
+				}
+				
+
+				override func layoutSubviews() {
+								super.layoutSubviews()
+								btn_lookCourse.jq_gradientNibColor(colorArr: [UIColor(hexStr: "#8EA47A").cgColor,UIColor(hexStr: "#AFCA98").cgColor], cornerRadius: 20)
+				}
+}
diff --git a/XQMuse/Root/Home/View/PaymentOrderResultTopView.xib b/XQMuse/Root/Home/View/PaymentOrderResultTopView.xib
new file mode 100644
index 0000000..2768715
--- /dev/null
+++ b/XQMuse/Root/Home/View/PaymentOrderResultTopView.xib
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <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="PaymentOrderResultTopView" customModule="XQMuse" customModuleProvider="target">
+            <rect key="frame" x="0.0" y="0.0" width="446" height="497"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_success_full" translatesAutoresizingMaskIntoConstraints="NO" id="mgD-oQ-zrB">
+                    <rect key="frame" x="203" y="49" width="40" height="40"/>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="40" id="QfZ-XE-fPk"/>
+                        <constraint firstAttribute="width" constant="40" id="RRI-ss-kRL"/>
+                    </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="Vka-pM-ru5">
+                    <rect key="frame" x="194.33333333333334" y="109" width="57.333333333333343" height="20"/>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="20" id="SWT-Sd-K2H"/>
+                    </constraints>
+                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
+                    <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
+                    <nil key="highlightedColor"/>
+                </label>
+                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2980.00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hDa-VO-Vzk">
+                    <rect key="frame" x="160.66666666666666" y="165" width="124.99999999999997" height="37"/>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="37" id="9iu-Ck-Y6k"/>
+                    </constraints>
+                    <fontDescription key="fontDescription" type="boldSystem" pointSize="30"/>
+                    <color key="textColor" red="1" green="0.56470588235294117" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                    <nil key="highlightedColor"/>
+                </label>
+                <stackView opaque="NO" contentMode="scaleToFill" spacing="28" translatesAutoresizingMaskIntoConstraints="NO" id="YSN-KS-kvL">
+                    <rect key="frame" x="69" y="238" width="308" height="40"/>
+                    <subviews>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="dSe-ud-2f1">
+                            <rect key="frame" x="0.0" y="0.0" width="140" height="40"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="140" id="KJI-qN-yKV"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="返回首页">
+                                <color key="titleColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            </state>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                    <real key="value" value="20"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="color" keyPath="ld_borderColorXIB">
+                                    <color key="value" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                </userDefinedRuntimeAttribute>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_borderWidthXIB">
+                                    <real key="value" value="1"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                            <connections>
+                                <action selector="backRootAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="4hh-39-Uur"/>
+                            </connections>
+                        </button>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Ber-Ph-V3S">
+                            <rect key="frame" x="168" y="0.0" width="140" height="40"/>
+                            <color key="backgroundColor" red="0.68627450980000004" green="0.79215686269999996" blue="0.59607843140000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="140" id="Ure-sX-8tw"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="查看课程"/>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                    <real key="value" value="20"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                            <connections>
+                                <action selector="lookCourseAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="cH2-C0-P6A"/>
+                            </connections>
+                        </button>
+                    </subviews>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="40" id="wwu-Aj-T3Z"/>
+                    </constraints>
+                </stackView>
+            </subviews>
+            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+            <constraints>
+                <constraint firstItem="YSN-KS-kvL" firstAttribute="top" secondItem="hDa-VO-Vzk" secondAttribute="bottom" constant="36" id="A1T-Ct-hRw"/>
+                <constraint firstItem="Vka-pM-ru5" firstAttribute="centerX" secondItem="mgD-oQ-zrB" secondAttribute="centerX" id="ErP-1R-DQc"/>
+                <constraint firstItem="mgD-oQ-zrB" firstAttribute="centerX" secondItem="iN0-l3-epB" secondAttribute="centerX" id="UMW-JZ-qPo"/>
+                <constraint firstItem="hDa-VO-Vzk" firstAttribute="top" secondItem="Vka-pM-ru5" secondAttribute="bottom" constant="36" id="VTL-4p-1DR"/>
+                <constraint firstItem="Vka-pM-ru5" firstAttribute="top" secondItem="mgD-oQ-zrB" secondAttribute="bottom" constant="20" id="ah5-Sm-gIS"/>
+                <constraint firstItem="YSN-KS-kvL" firstAttribute="centerX" secondItem="iN0-l3-epB" secondAttribute="centerX" id="eRB-0r-Pw4"/>
+                <constraint firstItem="hDa-VO-Vzk" firstAttribute="centerX" secondItem="mgD-oQ-zrB" secondAttribute="centerX" id="vfJ-ca-4A7"/>
+                <constraint firstItem="mgD-oQ-zrB" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" constant="49" id="zDJ-bC-aYO"/>
+            </constraints>
+            <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+            <connections>
+                <outlet property="btn_lookCourse" destination="Ber-Ph-V3S" id="GQR-Kj-KTd"/>
+                <outlet property="label_price" destination="hDa-VO-Vzk" id="AaM-U3-GkQ"/>
+            </connections>
+            <point key="canvasLocation" x="122.13740458015266" y="-104.5774647887324"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="icon_success_full" width="40" height="40"/>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Me/VC/VIPCenterVC.swift b/XQMuse/Root/Me/VC/VIPCenterVC.swift
new file mode 100644
index 0000000..76ee13f
--- /dev/null
+++ b/XQMuse/Root/Me/VC/VIPCenterVC.swift
@@ -0,0 +1,127 @@
+//
+//  VIPCenterVC.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class VIPCenterVC: BaseVC {
+
+				@IBOutlet weak var collectionView: UICollectionView!
+				private var selectIndex = 0
+
+				override func viewDidLoad() {
+        super.viewDidLoad()
+								title = "会员中心"
+
+								collectionView.delegate = self
+								collectionView.dataSource = self
+								collectionView.showsHorizontalScrollIndicator = false
+								collectionView.contentInset = UIEdgeInsets(top: 0, left: 15, bottom: 0, right: 15)
+								collectionView.register(VipCenterCCell.self, forCellWithReuseIdentifier: "cell")
+    }
+}
+
+extension VIPCenterVC:UICollectionViewDelegate & UICollectionViewDataSource{
+
+				func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
+								selectIndex = indexPath.row
+								collectionView.reloadData()
+				}
+
+				func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
+								let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! VipCenterCCell
+								cell.isSelect(indexPath.row == selectIndex)
+								return cell
+				}
+
+				func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
+								return 5
+				}
+}
+
+extension VIPCenterVC:UICollectionViewDelegateFlowLayout{
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
+								return CGSize(width: 111, height: 132)
+				}
+
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
+								return 11.5
+				}
+
+				func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
+								return 11.5
+				}
+}
+
+class VipCenterCCell:UICollectionViewCell{
+
+				private var label_title:UILabel!
+				private var label_price:UILabel!
+				private var lable_priorDay:UILabel!
+
+				override init(frame: CGRect) {
+								super.init(frame: frame)
+								contentView.jq_cornerRadius = 10
+								contentView.backgroundColor = UIColor(hexString: "#EFF2F2")
+								setUI()
+				}
+
+
+				func setUI(){
+								label_title  = UILabel()
+								label_title.text = "年度会员"
+								label_title.textAlignment = .center
+								label_title.textColor = UIColor(hexString: "#353535")
+								label_title.font = .systemFont(ofSize: 16, weight: .medium)
+								contentView.addSubview(label_title)
+								label_title.snp.makeConstraints { make in
+												make.top.equalTo(31)
+												make.centerX.equalToSuperview()
+												make.height.equalTo(15)
+								}
+
+								label_price  = UILabel()
+								label_price.attributedText = AttributedStringbuilder.build().add(string: "¥", withFont: .systemFont(ofSize: 15, weight:.heavy), withColor: UIColor(hexString: "#353535")!).add(string: "199", withFont: .systemFont(ofSize: 20, weight:.heavy), withColor: UIColor(hexString: "#353535")!).mutableAttributedString
+								label_price.textAlignment = .center
+								label_price.font = .systemFont(ofSize: 16, weight: .medium)
+								contentView.addSubview(label_price)
+								label_price.snp.makeConstraints { make in
+												make.top.equalTo(label_title.snp.bottom).offset(15.5)
+												make.centerX.equalToSuperview()
+												make.height.equalTo(15)
+								}
+
+								lable_priorDay  = UILabel()
+								lable_priorDay.text = "¥0/天"
+								lable_priorDay.textAlignment = .center
+								lable_priorDay.font = .systemFont(ofSize: 11, weight: .medium)
+								contentView.addSubview(lable_priorDay)
+								lable_priorDay.snp.makeConstraints { make in
+												make.top.equalTo(label_price.snp.bottom).offset(15.5)
+												make.centerX.equalToSuperview()
+												make.height.equalTo(15)
+								}
+				}
+
+				func isSelect(_ state:Bool){
+								if state{
+												contentView.backgroundColor = UIColor(hexString: "#A6C586")
+												label_title.textColor = .white
+												lable_priorDay.textColor = .white
+												label_price.attributedText = AttributedStringbuilder.build().add(string: "¥", withFont: .systemFont(ofSize: 15, weight:.heavy), withColor: .white).add(string: "199", withFont: .systemFont(ofSize: 20, weight:.heavy), withColor: .white).mutableAttributedString
+								}else{
+												contentView.backgroundColor = UIColor(hexString: "#EFF2F2")
+												label_title.textColor = UIColor(hexString: "#353535")
+												lable_priorDay.textColor = UIColor(hexString: "#B7B7B7")
+												label_price.attributedText = AttributedStringbuilder.build().add(string: "¥", withFont: .systemFont(ofSize: 15, weight:.heavy), withColor: UIColor(hexString: "#353535")!).add(string: "199", withFont: .systemFont(ofSize: 20, weight:.heavy), withColor: UIColor(hexString: "#353535")!).mutableAttributedString
+								}
+				}
+
+				required init?(coder: NSCoder) {
+								fatalError("init(coder:) has not been implemented")
+				}
+}
diff --git a/XQMuse/Root/Me/VC/VIPCenterVC.xib b/XQMuse/Root/Me/VC/VIPCenterVC.xib
new file mode 100644
index 0000000..03139b4
--- /dev/null
+++ b/XQMuse/Root/Me/VC/VIPCenterVC.xib
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="System colors in document resources" minToolsVersion="11.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="VIPCenterVC" customModule="XQMuse" customModuleProvider="target">
+            <connections>
+                <outlet property="collectionView" destination="Ue5-Zy-CjC" id="lPV-ex-sdB"/>
+                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
+            </connections>
+        </placeholder>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg_voice_top" translatesAutoresizingMaskIntoConstraints="NO" id="VLP-Hy-naC">
+                    <rect key="frame" x="0.0" y="0.0" width="393" height="297"/>
+                </imageView>
+                <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bkf-bh-gzu">
+                    <rect key="frame" x="0.0" y="59" width="393" height="759"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="L2t-aS-dfp">
+                            <rect key="frame" x="0.0" y="0.0" width="393" height="462.66666666666669"/>
+                            <subviews>
+                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="h8a-aO-hri">
+                                    <rect key="frame" x="14" y="54.666666666666679" width="365" height="113.33333333333331"/>
+                                    <subviews>
+                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg_vip_u" translatesAutoresizingMaskIntoConstraints="NO" id="w2X-DC-MsM">
+                                            <rect key="frame" x="0.0" y="0.0" width="365" height="113.33333333333333"/>
+                                        </imageView>
+                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="心泉·疗愈会员" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="YxW-A0-Oga">
+                                            <rect key="frame" x="19.666666666666657" y="23.333333333333329" width="151" height="21"/>
+                                            <constraints>
+                                                <constraint firstAttribute="height" constant="21" id="jjF-Bb-zsz"/>
+                                            </constraints>
+                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="22"/>
+                                            <color key="textColor" red="0.039215686274509803" green="0.25882352941176467" blue="0.074509803921568626" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                            <nil key="highlightedColor"/>
+                                        </label>
+                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="升级为高级会员,解锁全部体验" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="teL-7U-G1S">
+                                            <rect key="frame" x="19" y="85.999999999999986" width="143.33333333333334" height="12"/>
+                                            <fontDescription key="fontDescription" type="system" pointSize="10"/>
+                                            <color key="textColor" red="0.039215686274509803" green="0.25882352941176467" blue="0.074509803921568626" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                            <nil key="highlightedColor"/>
+                                        </label>
+                                    </subviews>
+                                    <constraints>
+                                        <constraint firstAttribute="width" secondItem="h8a-aO-hri" secondAttribute="height" multiplier="1:0.311" id="HXf-AV-84L"/>
+                                        <constraint firstAttribute="bottom" secondItem="w2X-DC-MsM" secondAttribute="bottom" id="Id9-B8-cpn"/>
+                                        <constraint firstAttribute="trailing" secondItem="w2X-DC-MsM" secondAttribute="trailing" id="UQH-42-3iR"/>
+                                        <constraint firstItem="w2X-DC-MsM" firstAttribute="top" secondItem="h8a-aO-hri" secondAttribute="top" id="VlU-n4-JnN"/>
+                                        <constraint firstItem="teL-7U-G1S" firstAttribute="top" secondItem="YxW-A0-Oga" secondAttribute="bottom" constant="41.5" id="Y8p-oG-uQE"/>
+                                        <constraint firstItem="YxW-A0-Oga" firstAttribute="leading" secondItem="h8a-aO-hri" secondAttribute="leading" constant="19.5" id="ZIt-OF-kPt"/>
+                                        <constraint firstItem="teL-7U-G1S" firstAttribute="leading" secondItem="h8a-aO-hri" secondAttribute="leading" constant="19" id="mBe-9s-o0A"/>
+                                        <constraint firstItem="YxW-A0-Oga" firstAttribute="top" secondItem="h8a-aO-hri" secondAttribute="top" constant="23.5" id="qjQ-kX-c9q"/>
+                                        <constraint firstItem="w2X-DC-MsM" firstAttribute="leading" secondItem="h8a-aO-hri" secondAttribute="leading" id="tk8-g5-TUO"/>
+                                    </constraints>
+                                </view>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="VIP会员套餐" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="yWI-Sm-wHz">
+                                    <rect key="frame" x="31.666666666666664" y="197" width="102.66666666666669" height="21"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="18"/>
+                                    <nil key="textColor"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                                <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" dataMode="none" translatesAutoresizingMaskIntoConstraints="NO" id="Ue5-Zy-CjC">
+                                    <rect key="frame" x="0.0" y="230.66666666666669" width="393" height="132"/>
+                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="132" id="p8z-dn-4dN"/>
+                                    </constraints>
+                                    <collectionViewFlowLayout key="collectionViewLayout" scrollDirection="horizontal" minimumLineSpacing="10" minimumInteritemSpacing="10" id="hVs-Ty-M7N">
+                                        <size key="itemSize" width="128" height="128"/>
+                                        <size key="headerReferenceSize" width="0.0" height="0.0"/>
+                                        <size key="footerReferenceSize" width="0.0" height="0.0"/>
+                                        <inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
+                                    </collectionViewFlowLayout>
+                                </collectionView>
+                                <wkWebView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="a9D-PO-axc">
+                                    <rect key="frame" x="0.0" y="362.66666666666669" width="393" height="100"/>
+                                    <constraints>
+                                        <constraint firstAttribute="height" constant="100" id="AWY-C0-cXO"/>
+                                    </constraints>
+                                    <wkWebViewConfiguration key="configuration">
+                                        <audiovisualMediaTypes key="mediaTypesRequiringUserActionForPlayback" none="YES"/>
+                                        <wkPreferences key="preferences"/>
+                                    </wkWebViewConfiguration>
+                                </wkWebView>
+                            </subviews>
+                            <constraints>
+                                <constraint firstItem="a9D-PO-axc" firstAttribute="top" secondItem="Ue5-Zy-CjC" secondAttribute="bottom" id="15v-6A-0ji"/>
+                                <constraint firstItem="Ue5-Zy-CjC" firstAttribute="top" secondItem="yWI-Sm-wHz" secondAttribute="bottom" constant="12.5" id="8id-05-Hve"/>
+                                <constraint firstItem="yWI-Sm-wHz" firstAttribute="top" secondItem="h8a-aO-hri" secondAttribute="bottom" constant="29" id="G5O-gM-Ih2"/>
+                                <constraint firstAttribute="trailing" secondItem="h8a-aO-hri" secondAttribute="trailing" constant="14" id="Hkp-e9-iFe"/>
+                                <constraint firstAttribute="trailing" secondItem="a9D-PO-axc" secondAttribute="trailing" id="N5F-Dn-3Lx"/>
+                                <constraint firstAttribute="trailing" secondItem="Ue5-Zy-CjC" secondAttribute="trailing" id="NFg-Zq-3Ts"/>
+                                <constraint firstItem="h8a-aO-hri" firstAttribute="leading" secondItem="L2t-aS-dfp" secondAttribute="leading" constant="14" id="cJj-1e-X2q"/>
+                                <constraint firstItem="a9D-PO-axc" firstAttribute="leading" secondItem="L2t-aS-dfp" secondAttribute="leading" id="gth-kx-AnP"/>
+                                <constraint firstItem="yWI-Sm-wHz" firstAttribute="leading" secondItem="L2t-aS-dfp" secondAttribute="leading" constant="31.5" id="h7x-TM-VyG"/>
+                                <constraint firstAttribute="bottom" secondItem="a9D-PO-axc" secondAttribute="bottom" id="rmB-ii-O0j"/>
+                                <constraint firstItem="h8a-aO-hri" firstAttribute="top" secondItem="L2t-aS-dfp" secondAttribute="top" constant="54.5" id="wLL-2b-kPO"/>
+                                <constraint firstItem="Ue5-Zy-CjC" firstAttribute="leading" secondItem="L2t-aS-dfp" secondAttribute="leading" id="yRz-xH-u7d"/>
+                            </constraints>
+                        </view>
+                    </subviews>
+                    <constraints>
+                        <constraint firstAttribute="bottom" secondItem="L2t-aS-dfp" secondAttribute="bottom" id="J9p-nF-AxN"/>
+                        <constraint firstItem="L2t-aS-dfp" firstAttribute="leading" secondItem="bkf-bh-gzu" secondAttribute="leading" id="O3u-1O-MwX"/>
+                        <constraint firstAttribute="trailing" secondItem="L2t-aS-dfp" secondAttribute="trailing" id="QkV-Xp-1qW"/>
+                        <constraint firstItem="L2t-aS-dfp" firstAttribute="centerX" secondItem="bkf-bh-gzu" secondAttribute="centerX" id="bfq-QO-tXk"/>
+                        <constraint firstItem="L2t-aS-dfp" firstAttribute="top" secondItem="bkf-bh-gzu" secondAttribute="top" id="ti0-Sy-Y1M"/>
+                    </constraints>
+                </scrollView>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Qa1-cj-VoU">
+                    <rect key="frame" x="0.0" y="715" width="393" height="137"/>
+                    <subviews>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="s5h-cp-fKN">
+                            <rect key="frame" x="21.666666666666657" y="0.0" width="350" height="53.666666666666664"/>
+                            <color key="backgroundColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="53.5" id="zkd-En-arm"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" weight="heavy" pointSize="18"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="立即开通"/>
+                            <userDefinedRuntimeAttributes>
+                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
+                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
+                                    <real key="value" value="26.75"/>
+                                </userDefinedRuntimeAttribute>
+                            </userDefinedRuntimeAttributes>
+                        </button>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="6ZY-8B-NMH">
+                            <rect key="frame" x="22" y="76.666666666666629" width="12.666666666666664" height="12.333333333333329"/>
+                            <constraints>
+                                <constraint firstAttribute="width" constant="12.5" id="uyB-GW-yJB"/>
+                                <constraint firstAttribute="height" constant="12.5" id="zwf-eK-ebh"/>
+                            </constraints>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" image="icon_choose_small_1"/>
+                            <state key="selected" image="icon_choose_small_s"/>
+                        </button>
+                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="同意" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tC0-1B-EV0">
+                            <rect key="frame" x="40" y="74.666666666666629" width="27" height="16"/>
+                            <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                            <color key="textColor" red="0.49803921568627452" green="0.49803921568627452" blue="0.49803921568627452" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            <nil key="highlightedColor"/>
+                        </label>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Tne-Fn-Oic">
+                            <rect key="frame" x="72" y="68.666666666666629" width="94" height="28"/>
+                            <fontDescription key="fontDescription" type="system" pointSize="13"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="《会员用户协议》">
+                                <color key="titleColor" red="0.54117647058823526" green="0.68235294117647061" blue="0.396078431372549" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                            </state>
+                        </button>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="137" id="482-Qh-0Jv"/>
+                        <constraint firstItem="Tne-Fn-Oic" firstAttribute="leading" secondItem="tC0-1B-EV0" secondAttribute="trailing" constant="5" id="9QN-fL-PVq"/>
+                        <constraint firstItem="6ZY-8B-NMH" firstAttribute="top" secondItem="s5h-cp-fKN" secondAttribute="bottom" constant="23" id="Jut-EV-WxL"/>
+                        <constraint firstItem="s5h-cp-fKN" firstAttribute="leading" secondItem="Qa1-cj-VoU" secondAttribute="leading" constant="21.5" id="Mmx-Rp-0pN"/>
+                        <constraint firstItem="tC0-1B-EV0" firstAttribute="centerY" secondItem="6ZY-8B-NMH" secondAttribute="centerY" id="Nvb-nK-Bbm"/>
+                        <constraint firstAttribute="trailing" secondItem="s5h-cp-fKN" secondAttribute="trailing" constant="21.5" id="Xai-on-BIU"/>
+                        <constraint firstItem="tC0-1B-EV0" firstAttribute="leading" secondItem="6ZY-8B-NMH" secondAttribute="trailing" constant="5.5" id="gHh-CI-WH0"/>
+                        <constraint firstItem="Tne-Fn-Oic" firstAttribute="centerY" secondItem="6ZY-8B-NMH" secondAttribute="centerY" id="ggp-TL-60y"/>
+                        <constraint firstItem="6ZY-8B-NMH" firstAttribute="leading" secondItem="Qa1-cj-VoU" secondAttribute="leading" constant="22" id="hEr-N9-UVg"/>
+                        <constraint firstItem="s5h-cp-fKN" firstAttribute="top" secondItem="Qa1-cj-VoU" secondAttribute="top" id="rid-ce-fN9"/>
+                    </constraints>
+                </view>
+            </subviews>
+            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
+            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+            <constraints>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Qa1-cj-VoU" secondAttribute="trailing" id="17Q-Ar-AY7"/>
+                <constraint firstItem="VLP-Hy-naC" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" id="DUD-QX-KBG"/>
+                <constraint firstItem="bkf-bh-gzu" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="GX4-yE-DfY"/>
+                <constraint firstAttribute="bottom" secondItem="Qa1-cj-VoU" secondAttribute="bottom" id="ORB-Sa-yIO"/>
+                <constraint firstItem="VLP-Hy-naC" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="TTg-Kg-sh0"/>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="bkf-bh-gzu" secondAttribute="trailing" id="bNU-bF-fJd"/>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="bkf-bh-gzu" secondAttribute="bottom" id="gKn-YZ-1jy"/>
+                <constraint firstItem="bkf-bh-gzu" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="kpV-5I-DMc"/>
+                <constraint firstItem="Qa1-cj-VoU" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="m1A-Bv-NWm"/>
+                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="VLP-Hy-naC" secondAttribute="trailing" id="ul0-Xj-7Nb"/>
+            </constraints>
+            <point key="canvasLocation" x="140" y="21"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="bg_vip_u" width="364.66665649414062" height="113.66666412353516"/>
+        <image name="bg_voice_top" width="390" height="297"/>
+        <image name="icon_choose_small_1" width="16" height="16"/>
+        <image name="icon_choose_small_s" width="15.666666984558105" height="16"/>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>
diff --git a/XQMuse/Root/Other/View/ChooseOptView.swift b/XQMuse/Root/Other/View/ChooseOptView.swift
new file mode 100644
index 0000000..b10a088
--- /dev/null
+++ b/XQMuse/Root/Other/View/ChooseOptView.swift
@@ -0,0 +1,84 @@
+//
+//  ChooseOptView.swift
+//  XQMuse
+//
+//  Created by 无故事王国 on 2024/8/15.
+//
+
+import UIKit
+import JQTools
+
+class ChooseOptView: UIView,JQNibView{
+
+				@IBOutlet weak var view_container: UIView!
+				@IBOutlet weak var tableView: UITableView!
+				@IBOutlet weak var cons_hight: NSLayoutConstraint!
+				@IBOutlet weak var cons_bottom: NSLayoutConstraint!
+				@IBOutlet weak var cons_cancel_bottom: NSLayoutConstraint!
+				private var items = [String]()
+				private var clouse:((Int)->Void)!
+
+				override func awakeFromNib() {
+								super.awakeFromNib()
+
+								tableView.delegate = self
+								tableView.dataSource = self
+								tableView.separatorStyle = .none
+								tableView.register(UITableViewCell.self, forCellReuseIdentifier: "_cell")
+								alpha = 0
+								cons_hight.constant = 0
+								cons_cancel_bottom.constant = UIDevice.jq_safeEdges.bottom
+								cons_bottom.constant = -JQ_ScreenW
+								layoutIfNeeded()
+				}
+
+				static func show(titles:[String],clouse:@escaping (Int)->Void){
+								let optView = ChooseOptView.jq_loadNibView()
+								optView.items = titles
+								optView.clouse = clouse
+								optView.frame = sceneDelegate?.window?.frame ?? .zero
+								sceneDelegate?.window?.addSubview(optView)
+
+								optView.cons_hight.constant = Double(titles.count) * 56
+								optView.cons_bottom.constant = -UIDevice.jq_safeEdges.bottom
+								UIView.animate(withDuration: 0.4) {
+												optView.alpha = 1
+												optView.layoutIfNeeded()
+								}
+				}
+
+				override func layoutSubviews() {
+								super.layoutSubviews()
+								view_container.jq_cornerPart(byRoundingCorners: [.topLeft,.topRight], radii: 22)
+				}
+
+				@IBAction func cancelAction(_ sender: Any) {
+								self.cons_bottom.constant = -JQ_ScreenW
+								UIView.animate(withDuration: 0.4) {
+												self.alpha = 0
+												self.layoutIfNeeded()
+								} completion: { _ in
+												self.removeFromSuperview()
+								}
+				}
+}
+
+extension ChooseOptView:UITableViewDelegate & UITableViewDataSource{
+				func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
+								return items.count
+				}
+				
+				func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
+								var cell = tableView.dequeueReusableCell(withIdentifier: "_cell")
+								cell!.textLabel?.font = UIFont.systemFont(ofSize: 15, weight: .medium)
+								cell!.textLabel?.textColor = UIColor(hexString: "#92A87D")
+								cell!.selectionStyle = .none
+								cell?.textLabel?.textAlignment = .center
+								cell?.textLabel?.text = items[indexPath.row]
+								return cell!
+				}
+				
+				func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
+								return 56
+				}
+}
diff --git a/XQMuse/Root/Other/View/ChooseOptView.xib b/XQMuse/Root/Other/View/ChooseOptView.xib
new file mode 100644
index 0000000..34c543b
--- /dev/null
+++ b/XQMuse/Root/Other/View/ChooseOptView.xib
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="System colors in document resources" minToolsVersion="11.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="ChooseOptView" customModule="XQMuse" customModuleProvider="target">
+            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="7hd-X4-jnx">
+                    <rect key="frame" x="0.0" y="697" width="393" height="155"/>
+                    <subviews>
+                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="kna-Ip-6Bx">
+                            <rect key="frame" x="0.0" y="57" width="393" height="56"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="56" id="gEr-Pp-xqo"/>
+                            </constraints>
+                            <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                            <state key="normal" title="取消">
+                                <color key="titleColor" red="0.19607843137254902" green="0.19607843137254902" blue="0.19607843137254902" alpha="0.90000000000000002" colorSpace="custom" customColorSpace="sRGB"/>
+                            </state>
+                            <connections>
+                                <action selector="cancelAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="M22-Kg-s2o"/>
+                            </connections>
+                        </button>
+                        <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="qay-oH-tG7">
+                            <rect key="frame" x="0.0" y="0.0" width="393" height="56"/>
+                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="56" id="uir-ga-z0g"/>
+                            </constraints>
+                        </tableView>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dpN-jw-hER">
+                            <rect key="frame" x="0.0" y="56" width="393" height="1"/>
+                            <color key="backgroundColor" red="0.59215686274509804" green="0.59215686274509804" blue="0.59215686274509804" alpha="0.080000000000000002" colorSpace="custom" customColorSpace="sRGB"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="1" id="r8G-HJ-2pB"/>
+                            </constraints>
+                        </view>
+                    </subviews>
+                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                    <constraints>
+                        <constraint firstItem="dpN-jw-hER" firstAttribute="leading" secondItem="7hd-X4-jnx" secondAttribute="leading" id="0Mz-qH-S7E"/>
+                        <constraint firstItem="kna-Ip-6Bx" firstAttribute="leading" secondItem="7hd-X4-jnx" secondAttribute="leading" id="2hD-56-mub"/>
+                        <constraint firstAttribute="bottomMargin" secondItem="kna-Ip-6Bx" secondAttribute="bottom" id="CZq-RJ-SgM"/>
+                        <constraint firstItem="dpN-jw-hER" firstAttribute="top" secondItem="qay-oH-tG7" secondAttribute="bottom" id="EgY-36-Rv7"/>
+                        <constraint firstItem="dpN-jw-hER" firstAttribute="top" secondItem="qay-oH-tG7" secondAttribute="bottom" id="Ird-Ph-U3G"/>
+                        <constraint firstItem="qay-oH-tG7" firstAttribute="leading" secondItem="7hd-X4-jnx" secondAttribute="leading" id="J4F-q7-cVV"/>
+                        <constraint firstAttribute="trailing" secondItem="qay-oH-tG7" secondAttribute="trailing" id="K2S-zI-gMA"/>
+                        <constraint firstItem="kna-Ip-6Bx" firstAttribute="top" secondItem="dpN-jw-hER" secondAttribute="bottom" id="gMw-Yj-rrf"/>
+                        <constraint firstAttribute="trailing" secondItem="kna-Ip-6Bx" secondAttribute="trailing" id="iJy-rf-I9w"/>
+                        <constraint firstAttribute="trailing" secondItem="dpN-jw-hER" secondAttribute="trailing" id="ssg-as-5Kn"/>
+                        <constraint firstItem="qay-oH-tG7" firstAttribute="top" secondItem="7hd-X4-jnx" secondAttribute="top" id="ydC-Vg-0F3"/>
+                    </constraints>
+                </view>
+            </subviews>
+            <viewLayoutGuide key="safeArea" id="Eor-ew-SMj"/>
+            <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.69999999999999996" colorSpace="custom" customColorSpace="sRGB"/>
+            <constraints>
+                <constraint firstAttribute="bottom" secondItem="7hd-X4-jnx" secondAttribute="bottom" id="BTa-FL-IQa"/>
+                <constraint firstItem="7hd-X4-jnx" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="c5H-tP-bEh"/>
+                <constraint firstAttribute="trailing" secondItem="7hd-X4-jnx" secondAttribute="trailing" id="msX-tJ-Wk6"/>
+            </constraints>
+            <connections>
+                <outlet property="cons_bottom" destination="BTa-FL-IQa" id="U1i-Ow-Lpd"/>
+                <outlet property="cons_cancel_bottom" destination="CZq-RJ-SgM" id="Ing-kw-4fE"/>
+                <outlet property="cons_hight" destination="uir-ga-z0g" id="J81-3E-ScT"/>
+                <outlet property="tableView" destination="qay-oH-tG7" id="4oP-yA-wHr"/>
+                <outlet property="view_container" destination="7hd-X4-jnx" id="uLl-Sn-M7n"/>
+            </connections>
+            <point key="canvasLocation" x="81.679389312977094" y="20.422535211267608"/>
+        </view>
+    </objects>
+    <resources>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+    </resources>
+</document>

--
Gitblit v1.7.1