|
@@ -6,19 +6,24 @@ import android.text.TextUtils;
|
|
|
import android.view.View;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
+import com.alibaba.android.arouter.launcher.ARouter;
|
|
|
import com.bigkoo.pickerview.builder.TimePickerBuilder;
|
|
|
import com.bigkoo.pickerview.listener.CustomListener;
|
|
|
import com.bigkoo.pickerview.listener.OnDismissListener;
|
|
|
import com.bigkoo.pickerview.view.TimePickerView;
|
|
|
import com.chad.library.adapter.base.BaseQuickAdapter;
|
|
|
+import com.chad.library.adapter.base.listener.OnItemChildClickListener;
|
|
|
+import com.chad.library.adapter.base.listener.OnItemClickListener;
|
|
|
import com.cooleshow.base.bean.CommonCourseConfigBean;
|
|
|
import com.cooleshow.base.constanst.Constants;
|
|
|
import com.cooleshow.base.constanst.CourseAttendanceStatusType;
|
|
|
import com.cooleshow.base.constanst.CourseGroupStatusType;
|
|
|
import com.cooleshow.base.interfaces.IFilterViewData;
|
|
|
+import com.cooleshow.base.router.RouterPath;
|
|
|
import com.cooleshow.base.ui.fragment.BaseFragment;
|
|
|
import com.cooleshow.base.ui.fragment.BaseMVPFragment;
|
|
|
import com.cooleshow.base.utils.TimeUtils;
|
|
|
+import com.cooleshow.base.utils.ToastUtil;
|
|
|
import com.cooleshow.base.utils.UiUtils;
|
|
|
import com.cooleshow.base.widgets.EmptyViewLayout;
|
|
|
import com.cooleshow.base.widgets.dialog.CommonFilterDialog;
|
|
@@ -32,6 +37,7 @@ import com.cooleshow.teacher.constants.CourseConstants;
|
|
|
import com.cooleshow.teacher.contract.PianoCourseGroupDetailContract;
|
|
|
import com.cooleshow.teacher.databinding.FgPianoCourseGroupDetailLayoutBinding;
|
|
|
import com.cooleshow.teacher.presenter.course.PianoCourseGroupDetailPresenter;
|
|
|
+import com.dayayuemeng.classroom.helper.OpenClassRoomHelper;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
@@ -39,6 +45,7 @@ import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
+import androidx.annotation.NonNull;
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
|
|
|
|
/**
|
|
@@ -59,6 +66,7 @@ public class PianoCourseGroupDetailFragment extends BaseMVPFragment<FgPianoCours
|
|
|
private int currentSelectAttendancePosition = 0;
|
|
|
private CommonFilterDialog mAttendanceStatusFilterDialog;
|
|
|
private CommonFilterDialog mStatusFilterDialog;
|
|
|
+ private CommonCourseConfigBean mConfigBean;
|
|
|
|
|
|
@Override
|
|
|
protected FgPianoCourseGroupDetailLayoutBinding getLayoutView() {
|
|
@@ -103,6 +111,45 @@ public class PianoCourseGroupDetailFragment extends BaseMVPFragment<FgPianoCours
|
|
|
mViewBinding.flTime.setOnClickListener(this);
|
|
|
mViewBinding.flStatus.setOnClickListener(this);
|
|
|
mViewBinding.flAttendance.setOnClickListener(this);
|
|
|
+
|
|
|
+ mAdapter.setOnItemClickListener(new OnItemClickListener() {
|
|
|
+ @Override
|
|
|
+ public void onItemClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) {
|
|
|
+ if (position < mAdapter.getData().size()) {
|
|
|
+ VIPCourseGroupDetailListBean bean = mAdapter.getData().get(position);
|
|
|
+ ARouter.getInstance().build(RouterPath.CourseCenter.PIANO_ROOM_COURSE_DETAIL)
|
|
|
+ .withString(CourseConstants.COURSE_ID, bean.getCourseId())
|
|
|
+ .navigation();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ mAdapter.setOnItemChildClickListener(new OnItemChildClickListener() {
|
|
|
+ @Override
|
|
|
+ public void onItemChildClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) {
|
|
|
+ //去上课
|
|
|
+ if (UiUtils.isFastClick()) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (view.getId() == R.id.tv_go_start) {
|
|
|
+ if (position < mAdapter.getData().size()) {
|
|
|
+ VIPCourseGroupDetailListBean bean = mAdapter.getData().get(position);
|
|
|
+ goCourse(bean.getId(), bean.getStartTime(), bean.getSubjectName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void goCourse(String id, String startTime, String subjectName) {
|
|
|
+ if (mConfigBean != null) {
|
|
|
+ boolean lessThanTargetTime = TimeUtils.isLessThanTargetTime(mConfigBean.getPianoStartTime(), startTime);
|
|
|
+ if (!lessThanTargetTime) {
|
|
|
+ ToastUtil.getInstance().showShort("课程还未开始,请在上课前" + mConfigBean.getPianoStartTime() + "分钟进入");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ OpenClassRoomHelper.start(getActivity(), id, subjectName);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -156,7 +203,10 @@ public class PianoCourseGroupDetailFragment extends BaseMVPFragment<FgPianoCours
|
|
|
|
|
|
@Override
|
|
|
public void getCourseConfigSuccess(CommonCourseConfigBean data) {
|
|
|
-
|
|
|
+ if (isDetached()) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ this.mConfigBean = data;
|
|
|
}
|
|
|
|
|
|
@Override
|