Browse Source

增加琴房课详情页跳转聊天

Pq 3 năm trước cách đây
mục cha
commit
f3d7b366e7

+ 9 - 2
rong_im/kit/src/main/java/io/rong/imkit/utils/helper/OpenChatHelper.java

@@ -1,6 +1,7 @@
 package io.rong.imkit.utils.helper;
 
 import android.content.Context;
+import android.text.TextUtils;
 
 import com.cooleshow.base.utils.Utils;
 
@@ -12,11 +13,17 @@ import io.rong.imkit.RongIM;
 public class OpenChatHelper {
     public static final String SINGLE_CHAT="single";//单聊
 
-    public static void goChat(Context context,String groupId, String groupName) {
-        RongIM.getInstance().startPrivateChat(context, groupId, groupName);
+    public static void goChat(Context context,String targetId, String groupName) {
+        if(TextUtils.isEmpty(targetId)){
+            return;
+        }
+        RongIM.getInstance().startPrivateChat(context, targetId, groupName);
     }
 
     public static void goGroupChat(Context context,String groupId, String groupName) {
+        if(TextUtils.isEmpty(groupId)){
+            return;
+        }
         RongIM.getInstance().startGroupChat(context, groupId, groupName);
     }
 }

+ 1 - 0
student/src/main/java/com/cooleshow/student/bean/PianoRoomCourseHomeworkBean.java

@@ -59,6 +59,7 @@ public class PianoRoomCourseHomeworkBean {
     public String teacherName;
     public String teacherReplied;
     public String title;
+    public String imGroupId;
     public int homeworkExpire;//作业过期 1:已过期 0:未过期
 
 }

+ 13 - 1
student/src/main/java/com/cooleshow/student/ui/course/PianoRoomCourseDetailActivity.java

@@ -18,6 +18,7 @@ import com.cooleshow.student.presenter.course.PianoRoomCourseDetailPresenter;
 import com.cooleshow.base.widgets.VideoThumbnailView;
 
 import androidx.annotation.NonNull;
+import io.rong.imkit.utils.helper.OpenChatHelper;
 
 /**
  * Author by pq, Date on 2022/4/27.
@@ -27,6 +28,8 @@ import androidx.annotation.NonNull;
 public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPianoRoomCourseDetailLayoutBinding, PianoRoomCourseDetailPresenter> implements PianoRoomCourseDetailContract.PianoRoomCourseDetailView, View.OnClickListener {
     public static final String COURSE_ID = "course_id";
     private String mCourseId;
+    private PianoRoomCourseHomeworkBean mInfoBean;
+
 
     @NonNull
     @Override
@@ -42,6 +45,7 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
             finish();
             return;
         }
+        viewBinding.ivGoChat.setOnClickListener(this);
     }
 
     @Override
@@ -74,6 +78,7 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
         if (infoBean == null) {
             return;
         }
+        this.mInfoBean = infoBean;
         //时间
         viewBinding.tvCourseTime.setText(infoBean.classDate);
         //学生头像
@@ -203,7 +208,14 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
 
     @Override
     public void onClick(View v) {
-
+        int id = v.getId();
+        if (id == R.id.iv_go_chat) {
+            //跳转聊天
+            if (mInfoBean != null) {
+                OpenChatHelper.goGroupChat(PianoRoomCourseDetailActivity.this, mInfoBean.imGroupId, "");
+            }
+            return;
+        }
     }
 
 

+ 13 - 2
student/src/main/res/layout/activity_piano_room_course_detail_layout.xml

@@ -96,7 +96,7 @@
 
                 <TextView
                     android:id="@+id/tv_title"
-                    android:layout_width="0dp"
+                    android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginStart="10dp"
                     android:layout_marginEnd="10dp"
@@ -108,11 +108,22 @@
                     android:textStyle="bold"
                     app:layout_constraintBottom_toTopOf="@+id/tv_course_name"
                     app:layout_constraintLeft_toRightOf="@+id/iv_avatar"
-                    app:layout_constraintRight_toRightOf="parent"
+                    app:layout_constraintRight_toLeftOf="@+id/iv_go_chat"
                     app:layout_constraintTop_toTopOf="@+id/iv_avatar"
                     app:layout_constraintVertical_chainStyle="packed"
                     tools:text="张豆豆张豆豆张豆豆张豆" />
 
+
+                <ImageView
+                    android:id="@+id/iv_go_chat"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="8dp"
+                    android:src="@drawable/icon_chat_small"
+                    app:layout_constraintBottom_toBottomOf="@+id/tv_title"
+                    app:layout_constraintLeft_toRightOf="@+id/tv_title"
+                    app:layout_constraintTop_toTopOf="@+id/tv_title" />
+
                 <TextView
                     android:id="@+id/tv_course_name"
                     android:layout_width="wrap_content"

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

@@ -27,6 +27,7 @@ import java.util.List;
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 import androidx.recyclerview.widget.LinearLayoutManager;
+import io.rong.imkit.utils.helper.OpenChatHelper;
 
 /**
  * Author by pq, Date on 2022/6/24.
@@ -39,6 +40,7 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
     private String mCourseId;
     private PianoRoomCourseStudentListAdapter mAdapter;
     private CourseSetCommentDialog mSetCommentDialog;
+    private PianoRoomCourseInfoBean mInfoBean;
 
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -55,6 +57,7 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
         }
 
         viewBinding.tvSetHomework.setOnClickListener(this);
+        viewBinding.ivGoChat.setOnClickListener(this);
     }
 
     @Override
@@ -117,6 +120,7 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
         if (infoBean == null) {
             return;
         }
+        this.mInfoBean = infoBean;
         //时间
         viewBinding.tvCourseTime.setText(infoBean.classDate);
         //title
@@ -205,6 +209,12 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
             showSetCommentDialog();
             return;
         }
+        if (id == R.id.iv_go_chat) {
+            //跳转聊天
+            if (mInfoBean != null) {
+                OpenChatHelper.goGroupChat(PianoRoomCourseDetailActivity.this, mInfoBean.imGroupId, mInfoBean.courseGroupName);
+            }
+        }
     }
 
     private void showSetCommentDialog() {

+ 1 - 0
teacher/src/main/res/layout/activity_piano_room_detail_layout.xml

@@ -109,6 +109,7 @@
                     tools:text="张豆豆张豆豆张豆豆张豆" />
 
                 <ImageView
+                    android:id="@+id/iv_go_chat"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginStart="8dp"