123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- 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;
- import com.cooleshow.base.common.BaseApplication;
- import com.cooleshow.base.common.WebConstants;
- import com.cooleshow.base.constanst.Constants;
- import com.cooleshow.base.constanst.RouteConstants;
- import com.cooleshow.base.router.RouterPath;
- import org.json.JSONObject;
- /**
- * Author by pq, Date on 2022/6/29.
- */
- public class JumpUtils {
- public static final String ACTION_H5 = "h5";
- public static final String ACTION_APP = "app";
- public static boolean jump(RouteBean routeBean) {
- if (routeBean == null) {
- return false;
- }
- try {
- String action = routeBean.action;
- 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)) {
- //购买陪练课,跳转首页课表
- ARouter.getInstance().build(RouterPath.APPCenter.PATH_HOME)
- .withInt(Constants.MAIN_PAGE_SELECT_POTION_KEY, 1)
- .navigation();
- 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()) {
- ARouter.getInstance().build(RouterPath.CommentCenter.TEACHER_RECEIVED_COMMENT)
- .navigation();
- return true;
- }
- }
- if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_HOMEWORK)) {
- //原生跳作业详情页面
- if (BaseApplication.Companion.isTeacherClient()) {
- //老师端 区分琴房课和陪练课
- String params = routeBean.params;
- if (!TextUtils.isEmpty(params)) {
- String courseId = getParams(params, "courseId");
- String studentId = getParams(params, "studentId");
- if (!TextUtils.isEmpty(courseId) && !TextUtils.isEmpty(studentId)) {
- ARouter.getInstance().build(RouterPath.WorkCenter.TEACHER_WORK_ASSIGN_HOMEWORK)
- .withString("course_id", courseId)
- .withString("student_id", studentId)
- .navigation();
- return true;
- }
- }
- } else {
- //学生端直接跳作业详情页面
- String params = routeBean.params;
- if (!TextUtils.isEmpty(params)) {
- String courseId = getParams(params, "courseId");
- if (!TextUtils.isEmpty(courseId)) {
- ARouter.getInstance().build(RouterPath.WorkCenter.STUDENT_HOMEWORK_DETAIL)
- .withString("course_id", courseId)
- .navigation();
- return true;
- }
- }
- }
- }
- if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_MESSAGE)) {
- //消息页面
- ARouter.getInstance().build(RouterPath.MessageCenter.TEACHER_MESSAGE_MESSAGEBOX)
- .navigation();
- return true;
- }
- if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_MUSIC_SHEET)) {
- //我的乐谱
- if (BaseApplication.Companion.isTeacherClient()) {
- ARouter.getInstance().build(RouterPath.ScoreCenter.TEACHER_MINE_SCORE)
- .navigation();
- return true;
- }
- }
- if (TextUtils.equals(routeBean.pageTag, RouteConstants.PAGE_TAG_LIVE_ROOM)) {
- //跳转直播间
- if (!BaseApplication.Companion.isTeacherClient()) {
- String liveRoomId = getParams(routeBean.params, "liveRoomId");
- Log.i("pq", "routeBean liveRoomId:" + liveRoomId);
- if (TextUtils.isEmpty(liveRoomId)) {
- return false;
- }
- ARouter.getInstance().build(RouterPath.LiveCenter.ACTIVITY_LIVE_ROOM)
- .withString("roomid_key", liveRoomId)
- .navigation();
- return true;
- }
- }
- }
- } else {
- //跳转H5页面
- if (TextUtils.isEmpty(routeBean.url)) {
- return false;
- }
- ARouter.getInstance()
- .build(RouterPath.WebCenter.ACTIVITY_HTML)
- .withString(WebConstants.WEB_URL, routeBean.url)
- .navigation();
- return true;
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return false;
- }
- private static String getParams(String paramsJson, String key) {
- try {
- paramsJson.replace("\\", "");
- JSONObject jsonObject = new JSONObject(paramsJson);
- return jsonObject.optString(key);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return "";
- }
- /**
- * 跳转首页,选中目标页面
- *
- * @param selectPosition
- */
- public static void jumpMain(int selectPosition) {
- ARouter.getInstance().build(RouterPath.APPCenter.PATH_HOME)
- .withInt(Constants.MAIN_PAGE_SELECT_POTION_KEY, selectPosition)
- .navigation();
- }
- }
|