|
@@ -5,15 +5,20 @@ import android.view.View;
|
|
|
|
|
|
import com.alibaba.android.arouter.launcher.ARouter;
|
|
import com.alibaba.android.arouter.launcher.ARouter;
|
|
import com.chad.library.adapter.base.BaseQuickAdapter;
|
|
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.chad.library.adapter.base.listener.OnItemClickListener;
|
|
import com.chad.library.adapter.base.listener.OnLoadMoreListener;
|
|
import com.chad.library.adapter.base.listener.OnLoadMoreListener;
|
|
import com.cooleshow.base.common.WebConstants;
|
|
import com.cooleshow.base.common.WebConstants;
|
|
import com.cooleshow.base.constanst.Constants;
|
|
import com.cooleshow.base.constanst.Constants;
|
|
import com.cooleshow.base.router.RouterPath;
|
|
import com.cooleshow.base.router.RouterPath;
|
|
import com.cooleshow.base.ui.fragment.BaseMVPFragment;
|
|
import com.cooleshow.base.ui.fragment.BaseMVPFragment;
|
|
|
|
+import com.cooleshow.base.utils.ToastUtil;
|
|
|
|
+import com.cooleshow.base.utils.UiUtils;
|
|
import com.cooleshow.base.widgets.EmptyViewLayout;
|
|
import com.cooleshow.base.widgets.EmptyViewLayout;
|
|
|
|
+import com.cooleshow.base.widgets.dialog.CommonDialog;
|
|
import com.cooleshow.teacher.R;
|
|
import com.cooleshow.teacher.R;
|
|
import com.cooleshow.teacher.adapter.HomePageVipCourseAdapter;
|
|
import com.cooleshow.teacher.adapter.HomePageVipCourseAdapter;
|
|
|
|
+import com.cooleshow.teacher.bean.CourseOptionListBean;
|
|
import com.cooleshow.teacher.bean.VideoCourseListBean;
|
|
import com.cooleshow.teacher.bean.VideoCourseListBean;
|
|
import com.cooleshow.teacher.contract.VIPCustomCoursePageContract;
|
|
import com.cooleshow.teacher.contract.VIPCustomCoursePageContract;
|
|
import com.cooleshow.teacher.databinding.FragmentVipCustomCoursePageLayoutBinding;
|
|
import com.cooleshow.teacher.databinding.FragmentVipCustomCoursePageLayoutBinding;
|
|
@@ -22,6 +27,8 @@ import com.cooleshow.usercenter.bean.TeacherUserInfo;
|
|
import com.scwang.smart.refresh.layout.api.RefreshLayout;
|
|
import com.scwang.smart.refresh.layout.api.RefreshLayout;
|
|
import com.scwang.smart.refresh.layout.listener.OnRefreshListener;
|
|
import com.scwang.smart.refresh.layout.listener.OnRefreshListener;
|
|
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.recyclerview.widget.GridLayoutManager;
|
|
import androidx.recyclerview.widget.GridLayoutManager;
|
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
@@ -33,12 +40,13 @@ import androidx.recyclerview.widget.RecyclerView;
|
|
public class VIPCustomCoursePageFragment extends BaseMVPFragment<FragmentVipCustomCoursePageLayoutBinding, VIPCustomCoursePagePresenter> implements VIPCustomCoursePageContract.View, View.OnClickListener {
|
|
public class VIPCustomCoursePageFragment extends BaseMVPFragment<FragmentVipCustomCoursePageLayoutBinding, VIPCustomCoursePagePresenter> implements VIPCustomCoursePageContract.View, View.OnClickListener {
|
|
private HomePageVipCourseAdapter mPageVipCourseAdapter;
|
|
private HomePageVipCourseAdapter mPageVipCourseAdapter;
|
|
public static final String TIP_CACHE_KEY = "vip_course_tip_key";
|
|
public static final String TIP_CACHE_KEY = "vip_course_tip_key";
|
|
|
|
+ private HomePageVipCourseAdapter mAdapter;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
protected void initView(View rootView) {
|
|
protected void initView(View rootView) {
|
|
|
|
|
|
- mViewBinding.commonHeader.setDataStyle(TIP_CACHE_KEY,R.drawable.icon_vip_custom_course_des_tag, getString(R.string.vip_course_des_title), getString(R.string.vip_custom_course_des), R.drawable.icon_vip_course_set,getString(R.string.set_vip_course_confirm_text), new View.OnClickListener() {
|
|
|
|
|
|
+ mViewBinding.commonHeader.setDataStyle(TIP_CACHE_KEY, R.drawable.icon_vip_custom_course_des_tag, getString(R.string.vip_course_des_title), getString(R.string.vip_custom_course_des), R.drawable.icon_vip_course_set, getString(R.string.set_vip_course_confirm_text), new View.OnClickListener() {
|
|
@Override
|
|
@Override
|
|
public void onClick(View v) {
|
|
public void onClick(View v) {
|
|
ARouter.getInstance().build(RouterPath.CourseCenter.VIP_COURSE_SETTING)
|
|
ARouter.getInstance().build(RouterPath.CourseCenter.VIP_COURSE_SETTING)
|
|
@@ -66,6 +74,17 @@ public class VIPCustomCoursePageFragment extends BaseMVPFragment<FragmentVipCust
|
|
|
|
|
|
@Override
|
|
@Override
|
|
protected void initData() {
|
|
protected void initData() {
|
|
|
|
+ mAdapter = new HomePageVipCourseAdapter();
|
|
|
|
+ EmptyViewLayout emptyViewLayout = new EmptyViewLayout(getContext());
|
|
|
|
+ emptyViewLayout.setContent(com.cooleshow.base.R.drawable.icon_empty_course, "暂无课程");
|
|
|
|
+ mAdapter.setEmptyView(emptyViewLayout);
|
|
|
|
+ mViewBinding.recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
|
|
|
|
+ mViewBinding.recyclerView.setAdapter(mAdapter);
|
|
|
|
+
|
|
|
|
+ initListener();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private void initListener() {
|
|
mViewBinding.refreshLayout.setOnRefreshListener(new OnRefreshListener() {
|
|
mViewBinding.refreshLayout.setOnRefreshListener(new OnRefreshListener() {
|
|
@Override
|
|
@Override
|
|
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
|
|
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
|
|
@@ -73,10 +92,45 @@ public class VIPCustomCoursePageFragment extends BaseMVPFragment<FragmentVipCust
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
|
|
+ mAdapter.setOnItemChildClickListener(new OnItemChildClickListener() {
|
|
|
|
+ @Override
|
|
|
|
+ public void onItemChildClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) {
|
|
|
|
+ int id = view.getId();
|
|
|
|
+ if (UiUtils.isFastClick()) {
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if (id == R.id.fl_del) {
|
|
|
|
+ CourseOptionListBean courseOptionListBean = mAdapter.getData().get(position);
|
|
|
|
+ showConfirmDialog(courseOptionListBean.getId());
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private void showConfirmDialog(String id) {
|
|
|
|
+ CommonDialog commonDialog = new CommonDialog(getContext());
|
|
|
|
+ commonDialog.show();
|
|
|
|
+ commonDialog.setTitle("提示");
|
|
|
|
+ commonDialog.setContent("确认删除该课程方案吗?");
|
|
|
|
+ commonDialog.setConfirmText("确认");
|
|
|
|
+ commonDialog.setOnCancelClickListener(new View.OnClickListener() {
|
|
|
|
+ @Override
|
|
|
|
+ public void onClick(View v) {
|
|
|
|
+ commonDialog.dismiss();
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ commonDialog.setOnConfirmClickListener(new View.OnClickListener() {
|
|
|
|
+ @Override
|
|
|
|
+ public void onClick(View v) {
|
|
|
|
+ commonDialog.dismiss();
|
|
|
|
+ presenter.delCourseOptions(id);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
}
|
|
}
|
|
|
|
|
|
private void queryCourse(boolean isLoading) {
|
|
private void queryCourse(boolean isLoading) {
|
|
- presenter.queryVideoCourseGroup(isLoading);
|
|
|
|
|
|
+ presenter.queryVIPCourseOptions(isLoading);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -91,28 +145,34 @@ public class VIPCustomCoursePageFragment extends BaseMVPFragment<FragmentVipCust
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void onClick(View view) {
|
|
public void onClick(View view) {
|
|
- switch (view.getId()) {
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ int id = view.getId();
|
|
|
|
|
|
- @Override
|
|
|
|
- public void queryVideoCourseGroupSuccess(int page, VideoCourseListBean data) {
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void onResume() {
|
|
public void onResume() {
|
|
super.onResume();
|
|
super.onResume();
|
|
|
|
+ queryCourse(false);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
- public void queryVideoCourseGroupError(int page) {
|
|
|
|
|
|
+ public void queryVIPCourseOptionsSuccess(ArrayList<CourseOptionListBean> data) {
|
|
if (isDetached()) {
|
|
if (isDetached()) {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
+ if (mAdapter != null) {
|
|
|
|
+ mViewBinding.refreshLayout.finishRefresh();
|
|
|
|
+ mAdapter.setNewInstance(data);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void getTeacherInfoSuccess(TeacherUserInfo teacherUserInfo) {
|
|
|
|
-
|
|
|
|
|
|
+ public void delOptionSuccess() {
|
|
|
|
+ if (isDetached()) {
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ ToastUtil.getInstance().showShort("删除成功");
|
|
|
|
+ queryCourse(false);
|
|
}
|
|
}
|
|
}
|
|
}
|