邓琴文 пре 3 година
родитељ
комит
ce7f8183c0
27 измењених фајлова са 225 додато и 109 уклоњено
  1. 9 0
      BaseLibrary/src/main/java/com/cooleshow/base/utils/UiUtils.java
  2. 1 0
      student/src/main/java/com/cooleshow/student/adapter/HomeHotAlbumAdapter.java
  3. 6 9
      student/src/main/java/com/cooleshow/student/ui/main/HomeFragment.java
  4. 1 1
      student/src/main/java/com/cooleshow/student/widgets/SimpleMonthView.java
  5. 1 1
      student/src/main/java/com/cooleshow/student/widgets/SimpleWeekView.java
  6. 14 0
      student/src/main/res/layout/layout_home_hot_album_item.xml
  7. 3 3
      teacher/src/main/java/com/cooleshow/teacher/adapter/HomeworkAdapter.java
  8. 4 0
      teacher/src/main/java/com/cooleshow/teacher/adapter/MineLiveCourseAdapter.java
  9. 5 3
      teacher/src/main/java/com/cooleshow/teacher/adapter/MineLiveCourseListAdapter.java
  10. 1 1
      teacher/src/main/java/com/cooleshow/teacher/adapter/PianoRoomCourseListAdapter.java
  11. 1 0
      teacher/src/main/java/com/cooleshow/teacher/bean/MineLiveCourseListBean.java
  12. 59 42
      teacher/src/main/java/com/cooleshow/teacher/bean/SparringCourseHomeworkBean.java
  13. 2 1
      teacher/src/main/java/com/cooleshow/teacher/ui/comment/CourseCommentDetailActivity.java
  14. 2 2
      teacher/src/main/java/com/cooleshow/teacher/ui/course/MineLiveCourseActivity.java
  15. 11 1
      teacher/src/main/java/com/cooleshow/teacher/ui/course/MineVideoCourseFragment.java
  16. 30 18
      teacher/src/main/java/com/cooleshow/teacher/ui/course/PianoRoomCourseDetailActivity.java
  17. 4 1
      teacher/src/main/java/com/cooleshow/teacher/ui/homepage/HomePageActivity.java
  18. 2 1
      teacher/src/main/java/com/cooleshow/teacher/ui/homepage/LiveCoursePageFragment.java
  19. 2 2
      teacher/src/main/java/com/cooleshow/teacher/ui/work/AssignHomeworkActivity.java
  20. 1 1
      teacher/src/main/java/com/cooleshow/teacher/widgets/SimpleMonthView.java
  21. 1 1
      teacher/src/main/java/com/cooleshow/teacher/widgets/SimpleWeekView.java
  22. 7 0
      teacher/src/main/res/drawable/gray_1_radius_bg.xml
  23. 1 2
      teacher/src/main/res/layout/activity_assign_homework.xml
  24. 4 3
      teacher/src/main/res/layout/fragment_home_layout.xml
  25. 33 15
      teacher/src/main/res/layout/item_live_course_list_layout.xml
  26. 1 0
      teacher/src/main/res/layout/layout_item_homework.xml
  27. 19 1
      teacher/src/main/res/layout/layout_mine_live_course_item.xml

+ 9 - 0
BaseLibrary/src/main/java/com/cooleshow/base/utils/UiUtils.java

@@ -185,6 +185,15 @@ public class UiUtils {
     }
 
     public static String getCourseTimeString(String start, String end) {
+        if (TextUtils.isEmpty(start) && TextUtils.isEmpty(end)) {
+            return "";
+        }
+        if (TextUtils.isEmpty(start) && !TextUtils.isEmpty(end)) {
+            return TimeUtils.date2String(TimeUtils.getDate(start), "yyyy-MM-dd HH:mm");
+        }
+        if (!TextUtils.isEmpty(start) && TextUtils.isEmpty(end)) {
+            return TimeUtils.date2String(TimeUtils.getDate(end), "yyyy-MM-dd HH:mm");
+        }
         String time = "";
         String startTime = TimeUtils.date2String(TimeUtils.getDate(start), "yyyy-MM-dd");
         String endTime = TimeUtils.date2String(TimeUtils.getDate(end), "yyyy-MM-dd");

+ 1 - 0
student/src/main/java/com/cooleshow/student/adapter/HomeHotAlbumAdapter.java

@@ -29,5 +29,6 @@ public class HomeHotAlbumAdapter extends BaseQuickAdapter<HotAlbumBean.RowsBean,
         GlideUtils.INSTANCE.loadImage(getContext(),item.albumCoverUrl,im_pic);
         TextView tv_collect_num=helper.getView(R.id.tv_collect_num);
         tv_collect_num.setText(item.albumFavoriteCount+"");
+        helper.setText(R.id.album_name,item.albumName);
     }
 }

+ 6 - 9
student/src/main/java/com/cooleshow/student/ui/main/HomeFragment.java

@@ -288,15 +288,12 @@ public class HomeFragment extends BaseMVPFragment<FragmentHomeLayoutBinding, Hom
         mViewBinding.rvHotAlbum.setLayoutManager(manager);
         HomeHotAlbumAdapter albumAdapter = new HomeHotAlbumAdapter(data.rows);
         mViewBinding.rvHotAlbum.setAdapter(albumAdapter);
-        albumAdapter.setOnItemClickListener(new OnItemClickListener() {
-            @Override
-            public void onItemClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) {
-                HotAlbumBean.RowsBean item = (HotAlbumBean.RowsBean) adapter.getItem(position);
-                ARouter.getInstance()
-                        .build(RouterPath.WebCenter.ACTIVITY_HTML)
-                        .withString(WebConstants.WEB_URL, WebConstants.STUDENT_MUSIC_ALBUM_DETAIL + item.id)
-                        .navigation();
-            }
+        albumAdapter.setOnItemClickListener((adapter, view, position) -> {
+            HotAlbumBean.RowsBean item = (HotAlbumBean.RowsBean) adapter.getItem(position);
+            ARouter.getInstance()
+                    .build(RouterPath.WebCenter.ACTIVITY_HTML)
+                    .withString(WebConstants.WEB_URL, WebConstants.STUDENT_MUSIC_ALBUM_DETAIL + item.id)
+                    .navigation();
         });
 
     }

+ 1 - 1
student/src/main/java/com/cooleshow/student/widgets/SimpleMonthView.java

@@ -127,7 +127,7 @@ public class SimpleMonthView extends MonthView {
         int cy = y + mItemHeight / 2;
 
         if (isSelected) {//优先绘制选择的
-            canvas.drawText(calendar.isCurrentDay() ? "今" : String.valueOf(calendar.getDay()),
+            canvas.drawText(String.valueOf(calendar.getDay()),
                     cx,
                     baselineY,
                     mSelectTextPaint);

+ 1 - 1
student/src/main/java/com/cooleshow/student/widgets/SimpleWeekView.java

@@ -91,7 +91,7 @@ public class SimpleWeekView extends WeekView {
         int cy = mItemHeight / 2;
 
         if (isSelected) {
-            canvas.drawText(calendar.isCurrentDay() ? "今" : String.valueOf(calendar.getDay()),
+            canvas.drawText(String.valueOf(calendar.getDay()),
                     cx,
                     baselineY,
                     mSelectTextPaint);

+ 14 - 0
student/src/main/res/layout/layout_home_hot_album_item.xml

@@ -24,6 +24,7 @@
         app:layout_constraintTop_toTopOf="parent" />
 
     <LinearLayout
+        android:id="@+id/img_root"
         android:layout_width="@dimen/dp_66"
         android:layout_height="@dimen/dp_20"
         android:layout_marginBottom="@dimen/dp_6"
@@ -49,4 +50,17 @@
             android:textSize="@dimen/sp_11" />
     </LinearLayout>
 
+    <TextView
+        android:id="@+id/album_name"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:maxLines="1"
+        android:ellipsize="end"
+        android:textSize="@dimen/sp_14"
+        android:gravity="center"
+        android:textColor="@color/black_333"
+        android:layout_marginTop="@dimen/dp_8"
+        app:layout_constraintTop_toBottomOf="@+id/img_root"
+        app:layout_constraintRight_toRightOf="@+id/img_root"
+        app:layout_constraintLeft_toLeftOf="@+id/img_root" />
 </androidx.constraintlayout.widget.ConstraintLayout>

+ 3 - 3
teacher/src/main/java/com/cooleshow/teacher/adapter/HomeworkAdapter.java

@@ -44,8 +44,8 @@ public class HomeworkAdapter extends BaseQuickAdapter<HomeworkListBean.RowsBean,
         ImageView im_header = helper.getView(R.id.im_header);
         TextView tv_name = helper.getView(R.id.tv_name);
         RecyclerView rv_mark = helper.getView(R.id.rv_mark);
-        GlideUtils.INSTANCE.loadImage(getContext(), item.studentAvatar, im_header, R.drawable.icon_teacher_default_head);
-        tv_name.setText(item.courseGroupName);
+        String tvname = item.classNum > 0 ? "第" + item.classNum + "课" : "";
+        tv_name.setText(item.courseGroupName + tvname);
         if (TextUtils.equals(mDecorate, "YES")) {
             tv_state.setVisibility(View.VISIBLE);
             if (TextUtils.equals(item.homeworkStatus, "NOTCOMMIT")) {
@@ -81,7 +81,7 @@ public class HomeworkAdapter extends BaseQuickAdapter<HomeworkListBean.RowsBean,
             rv_mark.setVisibility(View.GONE);
         }
 
-        helper.setText(R.id.tv_date, UiUtils.getCourseTimeString(item.startTime,item.endTime));
+        helper.setText(R.id.tv_date, UiUtils.getCourseTimeString(item.startTime, item.endTime));
 
     }
 

+ 4 - 0
teacher/src/main/java/com/cooleshow/teacher/adapter/MineLiveCourseAdapter.java

@@ -30,6 +30,9 @@ public class MineLiveCourseAdapter extends BaseQuickAdapter<MineLiveCourseListBe
 
     @Override
     protected void convert(BaseViewHolder helper, MineLiveCourseListBean.RowsBean item) {
+        if(item == null){
+            return;
+        }
         ImageView im_pic = helper.getView(R.id.im_pic);
         GlideUtils.INSTANCE.loadImage(getContext(), item.backgroundPic, im_pic);
         TextView tv_subject_name=helper.getView(R.id.tv_subject_name);
@@ -44,6 +47,7 @@ public class MineLiveCourseAdapter extends BaseQuickAdapter<MineLiveCourseListBe
         tv_date.setText(item.courseStartTime);
         TextView tv_price=helper.getView(R.id.tv_price);
         tv_price.setText("¥"+item.coursePrice+"/"+item.courseNum+"课时");
+        helper.setText(R.id.subject_name,item.subjectName);
     }
 
     @NonNull

+ 5 - 3
teacher/src/main/java/com/cooleshow/teacher/adapter/MineLiveCourseListAdapter.java

@@ -11,6 +11,7 @@ import com.chad.library.adapter.base.module.BaseLoadMoreModule;
 import com.chad.library.adapter.base.module.LoadMoreModule;
 import com.chad.library.adapter.base.viewholder.BaseViewHolder;
 import com.cooleshow.base.utils.GlideUtils;
+import com.cooleshow.base.utils.UiUtils;
 import com.cooleshow.teacher.R;
 import com.cooleshow.teacher.bean.MineLiveCourseListBean;
 import com.cooleshow.teacher.constants.CourseConstants;
@@ -30,17 +31,18 @@ public class MineLiveCourseListAdapter extends BaseQuickAdapter<MineLiveCourseLi
     @Override
     protected void convert(@NonNull BaseViewHolder holder, MineLiveCourseListBean.RowsBean data) {
         //时间
-        holder.setText(R.id.tv_time, data.salesEndDate);
+        holder.setText(R.id.tv_time, data.courseStartTime);
         //title
         holder.setText(R.id.tv_title, data.courseGroupName);
         //subjectName
         holder.setText(R.id.tv_course_name, data.subjectName);
         //购买人数
-        holder.setText(R.id.tv_buy_num, getContext().getString(R.string.pay_count_str, data.studentCount+""));
+        holder.setText(R.id.tv_buy_num, getContext().getString(R.string.pay_count_str, data.studentCount + ""));
         //头像
         ImageView iv_avatar = holder.getView(R.id.iv_bg);
         GlideUtils.INSTANCE.loadImage(getContext(), data.backgroundPic, iv_avatar, R.drawable.icon_teacher_default_head);
-
+        GlideUtils.INSTANCE.loadImage(getContext(), data.avatar, holder.getView(R.id.teacher_head), R.drawable.icon_teacher_default_head);
+        holder.setText(R.id.teacher_name,data.teacherName);
         TextView tvCourseStatusBt = holder.getView(R.id.tv_course_status);
 
         if (TextUtils.equals(CourseConstants.COURSE_STATUS_NOT_START, data.status)) {

+ 1 - 1
teacher/src/main/java/com/cooleshow/teacher/adapter/PianoRoomCourseListAdapter.java

@@ -38,7 +38,7 @@ public class PianoRoomCourseListAdapter extends BaseQuickAdapter<PianoRoomCourse
         holder.setText(R.id.tv_title, data.groupName);
         //subjectName
         holder.setText(R.id.tv_course_name, data.subjectName);
-        holder.setText(R.id.tv_buy_num, data.studentCount + "人参与");
+        holder.setText(R.id.tv_buy_num, data.studentCount + "人");
         TextView tv_course_status = holder.getView(R.id.tv_course_status);
 
         if (TextUtils.equals(CourseConstants.COURSE_STATUS_NOT_START, data.status)) {

+ 1 - 0
teacher/src/main/java/com/cooleshow/teacher/bean/MineLiveCourseListBean.java

@@ -54,6 +54,7 @@ public class MineLiveCourseListBean {
         public String imGroupId;
         public int mixStudentNum;
         public String salesEndDate;
+        public String salesStartDate;
         public int singleCourseMinutes;
         public String status;
         public int studentCount;

+ 59 - 42
teacher/src/main/java/com/cooleshow/teacher/bean/SparringCourseHomeworkBean.java

@@ -1,64 +1,81 @@
 package com.cooleshow.teacher.bean;
 
+import com.google.gson.Gson;
+import com.google.gson.reflect.TypeToken;
+
+import java.lang.reflect.Type;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * Author by pq, Date on 2022/4/27.
  */
 public class SparringCourseHomeworkBean {
-
-    /**
-     * startTime : 2022-04-24 09:30:00
-     * endTime : 2022-04-24 10:00:00
-     * id : 0
-     * content :
-     * decorateTime : null
-     * courseScheduleId : 66
-     * courseGroupId : 23
-     * courseType : PRACTICE
-     * subjectName : 西洋管乐
-     * studentId : 44
-     * teacherId : 15
-     * title :
-     * studentAvatar :
-     * studentName : cy
-     * teacherAvatar : https://daya.ks3-cn-beijing.ksyun.com/202204/T3R3yxq.jpeg
-     * teacherName : 张三
-     * submitHomework : 0
-     * studentHomeworkId : 0
-     * reviewHomework : 0
-     * submitTime : null
-     * attachments :
-     * classDate : 2022-04-24 00:00:00
-     * teacherReplied :
-     * courseStatus : NOT_START
-     * decorateHomework : 0
-     * studentAttachments :
-     */
-
-    public String startTime;
     public String endTime;
-    public String id;
-    public String content;
-    public Object decorateTime;
-    public String courseScheduleId;
-    public int courseGroupId;
+    public String startTime;
+    public String decorateTime;
+    public int homeworkExpire;
+    public int decorateHomework;
+    public String studentAttachments;
+    public Object submitTime;
+    public int studentId;
+    public String imGroupId;
     public String courseType;
     public String subjectName;
-    public int studentId;
+    public int classNum;
+    public int courseGroupId;
     public int teacherId;
+    public String courseScheduleId;
     public String title;
     public String studentAvatar;
     public String studentName;
-    public String teacherAvatar;
     public String teacherName;
+    public String teacherAvatar;
+    public String courseGroupName;
     public int submitHomework;
     public int studentHomeworkId;
     public int reviewHomework;
-    public Object submitTime;
     public String attachments;
     public String classDate;
     public String teacherReplied;
     public String courseStatus;
-    public int decorateHomework;
-    public String studentAttachments;
-    public int homeworkExpire;//作业过期 1:已过期 0:未过期
+    public int studentNum;
+    public int id;
+    public String content;
+
+    /**  {
+        "endTime": "2022-07-01 23:59:00",
+            "startTime": "2022-07-01 00:00:00",
+            "decorateTime": "2022-07-02 17:59:40",
+            "homeworkExpire": 0,
+            "decorateHomework": 1,
+            "studentAttachments": "",
+            "submitTime": null,
+            "studentId": 588,
+            "imGroupId": "",
+            "courseType": "PRACTICE",
+            "subjectName": "架子鼓",
+            "classNum": 2,
+            "courseGroupId": 498,
+            "teacherId": 586,
+            "courseScheduleId": 1492,
+            "title": "",
+            "studentAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/android/2022-06/1656502994369_1656502994369.jpg",
+            "studentName": "盆小强",
+            "teacherName": "盆大强",
+            "teacherAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/android/2022-06/1656502685158_1656502685158.jpg",
+            "courseGroupName": "架子鼓陪练课",
+            "submitHomework": 0,
+            "studentHomeworkId": 0,
+            "reviewHomework": 0,
+            "attachments": "11111",
+            "classDate": "2022-07-01 00:00:00",
+            "teacherReplied": "",
+            "courseStatus": "COMPLETE",
+            "studentNum": 1,
+            "id": 32,
+            "content": "11111"
+    } */
+
+   
 }

+ 2 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/comment/CourseCommentDetailActivity.java

@@ -9,6 +9,7 @@ import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.GlideUtils;
 import com.cooleshow.base.utils.ToastUtils;
+import com.cooleshow.base.utils.UiUtils;
 import com.cooleshow.base.utils.helper.QMUIStatusBarHelper;
 import com.cooleshow.teacher.R;
 import com.cooleshow.teacher.bean.SparringCourseCommentBean;
@@ -115,7 +116,7 @@ public class CourseCommentDetailActivity extends BaseMVPActivity<ActivityCourseC
             //学生名称
             viewBinding.tvTitle.setText(commentBean.userName);
             //开始时间
-            viewBinding.tvTime.setText(commentBean.startTime);
+            viewBinding.tvTime.setText(UiUtils.getCourseTimeString(commentBean.startTime,commentBean.endTime));
 
             if (TextUtils.equals(CourseConstants.COURSE_STATUS_NOT_START, commentBean.status)) {
                 //未开始

+ 2 - 2
teacher/src/main/java/com/cooleshow/teacher/ui/course/MineLiveCourseActivity.java

@@ -71,8 +71,8 @@ public class MineLiveCourseActivity extends BaseMVPActivity<ActivityMineLiveCour
         initTabLayoutAndViewPager();
     }
 
-    private List<String> titles = new ArrayList<String>(Arrays.asList("进行中","未上架","销售中","已完成"));
-    private List<String> types = new ArrayList<String>(Arrays.asList("ING","NOT_SALE","APPLY","COMPLETE"));
+    private List<String> titles = new ArrayList<String>(Arrays.asList("进行中","未上架","销售中","已完成","已取消"));
+    private List<String> types = new ArrayList<String>(Arrays.asList("ING","NOT_SALE","APPLY","COMPLETE","CANCEL"));
     private List<Fragment> fragments = new ArrayList<>();
 
     private void initTabLayoutAndViewPager() {

+ 11 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/course/MineVideoCourseFragment.java

@@ -53,7 +53,7 @@ public class MineVideoCourseFragment extends BaseMVPFragment<FragmentMineVideoCo
 
                 break;
             case R.id.tv_open:
-                if (mViewBinding.tvOpen.getText().toString().equals("去认证")){
+                if (mViewBinding.tvOpen.getText().toString().equals("去认证")) {
                     ARouter.getInstance().build(RouterPath.WebCenter.ACTIVITY_HTML)
                             .withString(WebConstants.WEB_URL, WebConstants.TEACHER_CERT)
                             .navigation();
@@ -95,6 +95,14 @@ public class MineVideoCourseFragment extends BaseMVPFragment<FragmentMineVideoCo
         LayoutInflater inflater = LayoutInflater.from(getContext());
         View emptyLayout = inflater.inflate(R.layout.empty_mine_video_course, null);
         TextView tv_create = emptyLayout.findViewById(R.id.tv_create);
+        TextView tvEmptyHint = emptyLayout.findViewById(R.id.tv_empty_hint);
+        if (TextUtils.equals(auditStatus, "PASS")) {
+            tvEmptyHint.setText("您尚未创建视频课");
+        } else if (TextUtils.equals(auditStatus, "DOING")) {
+            tvEmptyHint.setText("暂无审核中视频课程");
+        } else if (TextUtils.equals(auditStatus, "UNPASS")) {
+            tvEmptyHint.setText("暂无审核失败视频课程");
+        }
         tv_create.setOnClickListener(this);
         mineVideoCourseAdapter.setEmptyView(emptyLayout);
         rvAddress.setAdapter(mineVideoCourseAdapter);
@@ -169,11 +177,13 @@ public class MineVideoCourseFragment extends BaseMVPFragment<FragmentMineVideoCo
 
         }
     }
+
     @Override
     public void onResume() {
         super.onResume();
         presenter.getTeacherUserInfo();
     }
+
     @Override
     public void queryVideoCourseGroupError(int page) {
         if (isDetached()) {

+ 30 - 18
teacher/src/main/java/com/cooleshow/teacher/ui/course/PianoRoomCourseDetailActivity.java

@@ -11,6 +11,8 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.chad.library.adapter.base.listener.OnItemClickListener;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
+import com.cooleshow.base.utils.ToastUtil;
+import com.cooleshow.base.utils.UiUtils;
 import com.cooleshow.base.utils.helper.QMUIStatusBarHelper;
 import com.cooleshow.base.widgets.EmptyViewLayout;
 import com.cooleshow.teacher.R;
@@ -39,6 +41,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) {
@@ -73,16 +76,20 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
     }
 
     private void initListener() {
-        mAdapter.setOnItemClickListener(new OnItemClickListener() {
-            @Override
-            public void onItemClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) {
-                if (position < mAdapter.getData().size()) {
-                    PianoRoomCourseInfoBean.StudentHomeworkListBean.RecordsBean recordsBean = mAdapter.getData().get(position);
-                    ARouter.getInstance().build(RouterPath.CourseCenter.PIANO_ROOM_COURSE_HOMEWORK)
-                            .withString("studentId", recordsBean.studentId)
-                            .withString("course_id", mCourseId)
-                            .navigation();
-                }
+        mAdapter.setOnItemClickListener((adapter, view, position) -> {
+            if (mInfoBean == null) {
+                return;
+            }
+            if (TextUtils.equals(mInfoBean.courseStatus, CourseConstants.COURSE_FILTER_HAS_NOT_STARTED)) {
+                ToastUtil.getInstance().showShort("您还未布置作业");
+                return;
+            }
+            if (position < mAdapter.getData().size()) {
+                PianoRoomCourseInfoBean.StudentHomeworkListBean.RecordsBean recordsBean = mAdapter.getData().get(position);
+                ARouter.getInstance().build(RouterPath.CourseCenter.PIANO_ROOM_COURSE_HOMEWORK)
+                        .withString("studentId", recordsBean.studentId)
+                        .withString("course_id", mCourseId)
+                        .navigation();
             }
         });
     }
@@ -117,8 +124,9 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
         if (infoBean == null) {
             return;
         }
+        mInfoBean = infoBean;
         //时间
-        viewBinding.tvCourseTime.setText(infoBean.classDate);
+        viewBinding.tvCourseTime.setText(UiUtils.getCourseTimeString(infoBean.startTime, infoBean.endTime));
         //title
         viewBinding.tvTitle.setText(infoBean.courseGroupName);
         //subjectName
@@ -208,15 +216,19 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
     }
 
     private void showSetCommentDialog() {
+        if (mInfoBean == null) {
+            return;
+        }
+        if (TextUtils.equals(mInfoBean.courseStatus, CourseConstants.COURSE_FILTER_HAS_NOT_STARTED)) {
+            ToastUtil.getInstance().showShort("课程结束之后才可以布置作业哦~");
+            return;
+        }
         if (mSetCommentDialog == null) {
             mSetCommentDialog = new CourseSetCommentDialog(this);
-            mSetCommentDialog.setOnSubmitClickListener(new CourseSetCommentDialog.OnSubmitClickListener() {
-                @Override
-                public void onSubmit(String content, int type) {
-                    if (type == CourseSetCommentDialog.TYPE_SET_HOMEWORK) {
-                        //提交布置作业
-                        presenter.submitSparringCourseHomework(content, mCourseId);
-                    }
+            mSetCommentDialog.setOnSubmitClickListener((content, type) -> {
+                if (type == CourseSetCommentDialog.TYPE_SET_HOMEWORK) {
+                    //提交布置作业
+                    presenter.submitSparringCourseHomework(content, mCourseId);
                 }
             });
         }

+ 4 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/homepage/HomePageActivity.java

@@ -152,7 +152,7 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
             viewBinding.ratingBar.setVisibility(View.VISIBLE);
             viewBinding.ratingBar.setRating(info.starGrade);
             viewBinding.tvNoScore.setVisibility(View.GONE);
-        } else if(TextUtils.equals(info.entryStatus, TeacherInfoConstants.ENTRY_STATUS_PASS)){
+        } else if (TextUtils.equals(info.entryStatus, TeacherInfoConstants.ENTRY_STATUS_PASS)) {
             viewBinding.ratingBar.setVisibility(View.INVISIBLE);
             viewBinding.tvNoScore.setVisibility(View.VISIBLE);
         }
@@ -186,6 +186,9 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
             String[] subjectNames = UiUtils.splitSubjectName(info.subjectName);
             if (subjectNames != null && subjectNames.length > 0) {
                 for (int i = 0; i < subjectNames.length; i++) {
+                    if (i >= 4) {
+                        break;
+                    }
                     createSubjectView(subjectNames[i]);
                 }
             }

+ 2 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/homepage/LiveCoursePageFragment.java

@@ -33,6 +33,7 @@ import java.util.Date;
 
 /**
  * Author by pq, Date on 2022/5/9.
+ * 我的主页-直播课
  */
 public class LiveCoursePageFragment extends BaseMVPFragment<FragmentLiveCoursePageLayoutBinding, LiveCoursePagePresenter> implements LiveCoursePageContract.LiveCoursePageView, View.OnClickListener {
     private int currentPage;
@@ -70,7 +71,7 @@ public class LiveCoursePageFragment extends BaseMVPFragment<FragmentLiveCoursePa
         mViewBinding.recyclerView.setLayoutManager(new LinearLayoutManager(requireContext()));
         mViewBinding.recyclerView.setAdapter(mAdapter);
         mAdapter.setOnItemClickListener((adapter, view, position) -> {
-            LiveCourseListBean.RowsBean item = (LiveCourseListBean.RowsBean) adapter.getItem(position);
+            MineLiveCourseListBean.RowsBean item =  mAdapter.getData().get(position);
             ARouter.getInstance()
                     .build(RouterPath.WebCenter.ACTIVITY_HTML)
                     .withString(WebConstants.WEB_URL, WebConstants.TEACHER_LIVE_DETAIL + "?groupId=" + item.courseGroupId)

+ 2 - 2
teacher/src/main/java/com/cooleshow/teacher/ui/work/AssignHomeworkActivity.java

@@ -98,11 +98,11 @@ public class AssignHomeworkActivity extends BaseMVPActivity<ActivityAssignHomewo
         if (bean == null) {
             return;
         }
-        //学生头像
-        GlideUtils.INSTANCE.loadImage(this, bean.studentAvatar, viewBinding.imHeader, R.drawable.icon_teacher_default_head);
         //subjectName
         viewBinding.tvCourseName.setText(bean.subjectName);
         viewBinding.tvName.setText(bean.studentName);
+        String tvname = bean.classNum > 0 ? "第" + bean.classNum + "课" : "";
+        viewBinding.tvName.setText(bean.courseGroupName + tvname);
 
         viewBinding.tvDate.setText(UiUtils.getCourseTimeString(bean.startTime,bean.endTime));
 

+ 1 - 1
teacher/src/main/java/com/cooleshow/teacher/widgets/SimpleMonthView.java

@@ -128,7 +128,7 @@ public class SimpleMonthView extends MonthView {
         int cy = y + mItemHeight / 2;
 
         if (isSelected) {//优先绘制选择的
-            canvas.drawText(calendar.isCurrentDay() ? "今" : String.valueOf(calendar.getDay()),
+            canvas.drawText(String.valueOf(calendar.getDay()),
                     cx,
                     baselineY,
                     mSelectTextPaint);

+ 1 - 1
teacher/src/main/java/com/cooleshow/teacher/widgets/SimpleWeekView.java

@@ -91,7 +91,7 @@ public class SimpleWeekView extends WeekView {
         int cy = mItemHeight / 2;
 
         if (isSelected) {
-            canvas.drawText(calendar.isCurrentDay() ? "今" : String.valueOf(calendar.getDay()),
+            canvas.drawText(String.valueOf(calendar.getDay()),
                     cx,
                     baselineY,
                     mSelectTextPaint);

+ 7 - 0
teacher/src/main/res/drawable/gray_1_radius_bg.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <solid android:color="#4A000000"/>
+    <corners android:radius="@dimen/dp_1"/>
+</shape>

+ 1 - 2
teacher/src/main/res/layout/activity_assign_homework.xml

@@ -37,7 +37,6 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginLeft="7dp"
-            android:text="2021/09/17 14:00~15:00"
             android:textColor="@color/color_666666"
             android:textSize="@dimen/sp_13"
             app:layout_constraintBottom_toBottomOf="@+id/im_clock"
@@ -73,6 +72,7 @@
             android:layout_marginLeft="11dp"
             android:layout_marginTop="17dp"
             android:layout_marginBottom="20dp"
+            android:src="@drawable/icon_piano_room_course"
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintLeft_toLeftOf="parent"
             app:layout_constraintTop_toBottomOf="@+id/view_line"
@@ -83,7 +83,6 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginLeft="10dp"
-            android:text="张豆豆"
             android:textColor="@color/color_1a1a1a"
             android:textSize="@dimen/sp_16"
             app:layout_constraintLeft_toRightOf="@+id/im_header"

+ 4 - 3
teacher/src/main/res/layout/fragment_home_layout.xml

@@ -31,10 +31,10 @@
         <ImageView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_marginTop="74dp"
             android:src="@drawable/bg_home_header2"
+            android:layout_marginTop="@dimen/dp_11"
             app:layout_constraintRight_toRightOf="parent"
-            app:layout_constraintTop_toBottomOf="@+id/view_status_bar" />
+            app:layout_constraintTop_toTopOf="@+id/iv_avatar" />
 
         <ImageView
             android:id="@+id/iv_app_name"
@@ -267,8 +267,9 @@
             android:layout_width="match_parent"
             android:layout_height="44dp"
             android:layout_marginStart="14dp"
-            android:layout_marginTop="91dp"
+            android:layout_marginTop="@dimen/dp_111"
             android:layout_marginEnd="14dp"
+            app:layout_goneMarginTop="@dimen/dp_100"
             android:background="@drawable/bg_white_10dp"
             android:elevation="2dp"
             android:orientation="horizontal"

+ 33 - 15
teacher/src/main/res/layout/item_live_course_list_layout.xml

@@ -41,6 +41,7 @@
         android:layout_height="wrap_content"
         android:layout_marginStart="5dp"
         android:src="@drawable/icon_chat_small"
+        android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="@+id/tv_title"
         app:layout_constraintLeft_toRightOf="@+id/tv_title"
         app:layout_constraintTop_toTopOf="@+id/tv_title" />
@@ -48,32 +49,49 @@
     <TextView
         android:id="@+id/tv_course_name"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginTop="8dp"
-        android:layout_marginBottom="5dp"
-        android:background="@drawable/shape_couse_type_text_bg"
+        android:layout_height="@dimen/dp_13"
+        android:layout_marginStart="@dimen/dp_3"
+        android:layout_marginBottom="@dimen/dp_4"
+        android:background="@drawable/gray_1_radius_bg"
         android:gravity="center"
         android:includeFontPadding="false"
-        android:paddingStart="4dp"
-        android:paddingTop="2dp"
-        android:paddingEnd="4dp"
-        android:paddingBottom="2dp"
-        android:textColor="@color/color_ff8c00"
-        android:textSize="@dimen/sp_11"
+        android:paddingStart="@dimen/dp_3"
+        android:paddingEnd="@dimen/dp_3"
+        android:textColor="@color/white"
+        android:textSize="@dimen/sp_9"
         app:layout_constraintBottom_toBottomOf="@+id/iv_bg"
-        app:layout_constraintLeft_toLeftOf="@+id/tv_title"
+        app:layout_constraintLeft_toLeftOf="@+id/iv_bg"
         tools:text="单簧管" />
 
+    <de.hdodenhof.circleimageview.CircleImageView
+        android:id="@+id/teacher_head"
+        android:layout_width="@dimen/dp_18"
+        android:layout_height="@dimen/dp_18"
+        android:layout_marginBottom="@dimen/dp_1"
+        app:layout_constraintBottom_toBottomOf="@+id/iv_bg"
+        app:layout_constraintLeft_toLeftOf="@+id/tv_title" />
+
+    <TextView
+        android:id="@+id/teacher_name"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingLeft="@dimen/dp_6"
+        android:textColor="@color/color_999999"
+        android:textSize="@dimen/sp_13"
+        app:layout_constraintBottom_toBottomOf="@+id/teacher_head"
+        app:layout_constraintLeft_toRightOf="@+id/teacher_head"
+        app:layout_constraintTop_toTopOf="@+id/teacher_head" />
+
     <View
         android:id="@+id/view_line2"
         android:layout_width="1dp"
         android:layout_height="11dp"
-        android:layout_marginStart="8dp"
+        android:layout_marginStart="@dimen/dp_3"
         android:background="@color/color_d3d3d3"
         android:visibility="visible"
-        app:layout_constraintBottom_toBottomOf="@+id/tv_course_name"
-        app:layout_constraintLeft_toRightOf="@+id/tv_course_name"
-        app:layout_constraintTop_toTopOf="@+id/tv_course_name" />
+        app:layout_constraintBottom_toBottomOf="@+id/teacher_name"
+        app:layout_constraintLeft_toRightOf="@+id/teacher_name"
+        app:layout_constraintTop_toTopOf="@+id/teacher_name" />
 
     <TextView
         android:id="@+id/tv_buy_num"

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

@@ -62,6 +62,7 @@
             android:layout_marginLeft="11dp"
             android:layout_marginTop="17dp"
             android:layout_marginBottom="20dp"
+            android:src="@drawable/icon_piano_room_course"
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintLeft_toLeftOf="parent"
             app:layout_constraintTop_toBottomOf="@+id/view_line"

+ 19 - 1
teacher/src/main/res/layout/layout_mine_live_course_item.xml

@@ -2,7 +2,8 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content">
+    android:layout_height="wrap_content"
+    xmlns:tools="http://schemas.android.com/tools">
 
     <androidx.constraintlayout.widget.ConstraintLayout
         android:layout_width="match_parent"
@@ -23,6 +24,23 @@
             app:qmui_corner_radius="5dp" />
 
         <TextView
+            android:id="@+id/subject_name"
+            android:layout_width="wrap_content"
+            android:layout_height="@dimen/dp_13"
+            android:layout_marginStart="@dimen/dp_3"
+            android:layout_marginBottom="@dimen/dp_4"
+            android:background="@drawable/gray_1_radius_bg"
+            android:gravity="center"
+            android:includeFontPadding="false"
+            android:paddingStart="@dimen/dp_3"
+            android:paddingEnd="@dimen/dp_3"
+            android:textColor="@color/white"
+            android:textSize="@dimen/sp_9"
+            app:layout_constraintBottom_toBottomOf="@+id/im_pic"
+            app:layout_constraintLeft_toLeftOf="@+id/im_pic"
+            tools:text="单簧管" />
+
+        <TextView
             android:id="@+id/tv_subject_name"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"