Forráskód Böngészése

增加我的课程路由跳转

Pq 2 éve
szülő
commit
ebc799a051

+ 3 - 0
BaseLibrary/src/main/java/com/cooleshow/base/constanst/RouteConstants.java

@@ -12,4 +12,7 @@ public class RouteConstants {
     public static final String PAGE_TAG_MESSAGE="message";//消息页面
     public static final String PAGE_TAG_MUSIC_SHEET="musicSheet";//我的乐谱
     public static final String PAGE_TAG_LIVE_ROOM="liveRoom";//直播间
+    public static final String PAGE_TAG_PRACTICE_CLASS="practiceClass";//我的课表 -> 陪练课
+    public static final String PAGE_TAG_LIVE_CLASS="liveClass";//我的课表 -> 直播课
+    public static final String PAGE_TAG_VIDEO_CLASS="videoClass";//我的课表 -> 视频课
 }

+ 27 - 0
BaseLibrary/src/main/java/com/cooleshow/base/utils/JumpUtils.java

@@ -1,6 +1,7 @@
 package com.cooleshow.base.utils;
 
 import android.text.TextUtils;
+import android.util.Log;
 
 import com.alibaba.android.arouter.launcher.ARouter;
 import com.cooleshow.base.bean.RouteBean;
@@ -29,6 +30,7 @@ public class JumpUtils {
 
             if (TextUtils.equals(action, ACTION_APP)) {
                 //跳转原生页面
+                Log.i("pq", "routeBean tag:" + routeBean.pageTag);
                 if (!TextUtils.isEmpty(routeBean.pageTag)) {
                     if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_BUY_PRACTICE) || TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_COURSE_REMIND)) {
                         //购买陪练课,跳转首页课表
@@ -38,6 +40,30 @@ public class JumpUtils {
                         return true;
                     }
 
+                    if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_PRACTICE_CLASS)) {
+                        //我的课表 -> 陪练课
+                        ARouter.getInstance().build(RouterPath.CourseCenter.TEACHER_MINE_COURSE)
+                                .navigation();
+                        return true;
+                    }
+
+                    if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_LIVE_CLASS)) {
+                        //我的课表 -> 直播课
+                        ARouter.getInstance().build(RouterPath.CourseCenter.TEACHER_MINE_COURSE)
+                                .withInt("selectPosition",1)
+                                .navigation();
+                        return true;
+                    }
+
+                    if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_VIDEO_CLASS)) {
+                        //我的课表 -> 视频课
+                        ARouter.getInstance().build(RouterPath.CourseCenter.TEACHER_MINE_COURSE)
+                                .withInt("selectPosition",2)
+                                .navigation();
+                        return true;
+                    }
+
+
                     if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_EVALUATE)) {
                         //跳转评价页面
                         if (BaseApplication.Companion.isTeacherClient()) {
@@ -98,6 +124,7 @@ public class JumpUtils {
                         //跳转直播间
                         if (!BaseApplication.Companion.isTeacherClient()) {
                             String liveRoomId = getParams(routeBean.params, "liveRoomId");
+                            Log.i("pq", "routeBean liveRoomId:" + liveRoomId);
                             if (TextUtils.isEmpty(liveRoomId)) {
                                 return false;
                             }

+ 10 - 2
student/src/main/java/com/cooleshow/student/ui/course/MineCourseActivity.java

@@ -33,8 +33,7 @@ import io.rong.imkit.utils.StatusBarUtil;
  */
 @Route(path = RouterPath.CourseCenter.TEACHER_MINE_COURSE)
 public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseBinding, MineCoursePresenter> implements MineCourseContract.MineCourseView {
-
-
+    public static final String SELECT_POSITION = "selectPosition";
     private TabLayout tabLayout;
     private ViewPager2 viewPager;
     private List<String> titles = new ArrayList<String>(Arrays.asList("陪练课", "直播课", "视频课", "琴房课"));
@@ -71,8 +70,17 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseBindin
     @Override
     public void initData() {
         super.initData();
+        int selectPosition = getIntent().getIntExtra(SELECT_POSITION, -1);
         initTabLayoutAndViewPager();
         presenter.querySubjectItem();
+        if (selectPosition != -1 && selectPosition < fragments.size()) {
+            viewPager.post(new Runnable() {
+                @Override
+                public void run() {
+                    viewPager.setCurrentItem(selectPosition);
+                }
+            });
+        }
     }
 
     private void initTabLayoutAndViewPager() {

+ 10 - 0
teacher/src/main/java/com/cooleshow/teacher/ui/course/MineCourseActivity.java

@@ -30,6 +30,7 @@ import androidx.viewpager2.widget.ViewPager2;
  */
 @Route(path = RouterPath.CourseCenter.TEACHER_MINE_COURSE)
 public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayoutBinding, MineCoursePresenter> implements MineCourseContract.MineCourseView {
+    public static final String SELECT_POSITION = "selectPosition";
     private ArrayList<Fragment> mFragments = new ArrayList<>();
     private SparringCourseFragment mSparringCourseFragment;
     private LiveCourseFragment mLiveCourseFragment;
@@ -111,6 +112,7 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayout
     @Override
     public void initData() {
         super.initData();
+        int selectPosition = getIntent().getIntExtra(SELECT_POSITION, -1);
         mSparringCourseFragment = new SparringCourseFragment();
         mLiveCourseFragment = new LiveCourseFragment();
         mVideoCourseFragment = new VideoCourseFragment();
@@ -124,6 +126,14 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayout
         viewBinding.viewPager.setAdapter(mineCoursePageAdapter);
         viewBinding.viewPager.setOffscreenPageLimit(mFragments.size());
         presenter.querySubjectItem();
+        if (selectPosition != -1 && selectPosition < mFragments.size()) {
+            viewBinding.viewPager.post(new Runnable() {
+                @Override
+                public void run() {
+                    viewBinding.viewPager.setCurrentItem(selectPosition);
+                }
+            });
+        }
     }
 
     @Override