From d1a9e3312387b6c47e6186af506787a8a66369d1 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期六, 09 十一月 2024 18:40:36 +0800 Subject: [PATCH] fix --- app/src/main/java/com/sinata/xqmuse/ui/course/MyCourseActivity.kt | 115 +++++++++++++++++++++++++++------------------------------ 1 files changed, 55 insertions(+), 60 deletions(-) diff --git a/app/src/main/java/com/sinata/xqmuse/ui/course/MyCourseActivity.kt b/app/src/main/java/com/sinata/xqmuse/ui/course/MyCourseActivity.kt index a1c988e..8846151 100644 --- a/app/src/main/java/com/sinata/xqmuse/ui/course/MyCourseActivity.kt +++ b/app/src/main/java/com/sinata/xqmuse/ui/course/MyCourseActivity.kt @@ -1,94 +1,89 @@ package com.sinata.xqmuse.ui.course -import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.GridLayoutManager +import cn.sinata.xldutils.gone +import cn.sinata.xldutils.visible import com.sinata.xqmuse.R import com.sinata.xqmuse.network.HttpManager import com.sinata.xqmuse.network.entity.* import com.sinata.xqmuse.network.request import com.sinata.xqmuse.ui.TransparentStatusBarActivity -import com.sinata.xqmuse.ui.course.adapter.FilterAdapter +import com.sinata.xqmuse.ui.course.adapter.CourseGridAdapter import com.sinata.xqmuse.utils.Const import com.sinata.xqmuse.utils.event.EmptyEvent -import com.sinata.xqmuse.utils.extention.clickDelay import kotlinx.android.synthetic.main.activity_my_course.* import org.greenrobot.eventbus.EventBus -import org.greenrobot.eventbus.Subscribe +import org.jetbrains.anko.startActivity class MyCourseActivity : TransparentStatusBarActivity() { override fun setContentView() = R.layout.activity_my_course - private var page = 1 - var search:String? = null //搜索 - private val filterList = arrayListOf<Filter>() - private val filterAdapter = FilterAdapter(filterList,true) + private val myList = arrayListOf<CourseBean>() + private val myAdapter = CourseGridAdapter(myList) + private val freeList = arrayListOf<CourseBean>() + private val freeAdapter = CourseGridAdapter(freeList) override fun initClick() { - tv_search.clickDelay { - val s = et_search.text.toString() - search = if (s.isNullOrEmpty()) null else s - hideInputMethod() - refreshLayout.resetNoMoreData() - page = 1 - getData() + myAdapter.setOnItemClickListener { view, position -> + showDialog() + HttpManager.getPayCourseInfoById(myList[position].businessId?:"").request(this,success = { _, data-> + dismissDialog() + data?.goDetail(this) + }){_,_-> + dismissDialog() + } } - - + freeAdapter.setOnItemClickListener { view, position -> + showDialog() + HttpManager.getPayCourseInfoById(freeList[position].businessId?:"").request(this,success = { _, data-> + dismissDialog() + data?.goDetail(this) + }){_,_-> + dismissDialog() + } + } + tv_ask.setOnClickListener { + startActivity<HelpCenterActivity>() + } + tv_action.setOnClickListener { + EventBus.getDefault().post(EmptyEvent(Const.EventCode.SWITCH_COURSE)) + finish() + } } override fun initView() { - EventBus.getDefault().register(this) - rv_filter.layoutManager = LinearLayoutManager(this) - rv_filter.adapter = filterAdapter - rv_course.layoutManager = LinearLayoutManager(this) + rv_free.layoutManager = GridLayoutManager(this,2) + rv_free.adapter = freeAdapter + rv_my.layoutManager = GridLayoutManager(this,2) + rv_my.adapter = myAdapter refreshLayout.setOnRefreshListener { - val s = et_search.text.toString() - search = if (s.isNullOrEmpty()) null else s - page = 1 getData() } - refreshLayout.setOnLoadMoreListener { - page++ - getData() - } - getFilter() - page = 1 + refreshLayout.setEnableLoadMore(false) getData() - } - private fun getFilter() { - HttpManager.getList().request(this){_, data-> - filterList.clear() - filterList.add(Filter("类型:",data?.fitnessType?: arrayListOf())) - filterList.add(Filter("部位:",data?.fitnessPosition?: arrayListOf())) - filterList.add(Filter("难度:",data?.difficulty?: arrayListOf())) - filterList.add(Filter("时长:",data?.time?: arrayListOf())) - filterAdapter.notifyDataSetChanged() - } - } private fun getData(){ - val diff = filterList.filter { it.name == "难度:" }.firstOrNull()?.list?.filter { it.checked }?.joinToString (","){ it.id.toString() } - val position = filterList.filter { it.name == "部位:" }.firstOrNull()?.list?.filter { it.checked }?.joinToString (","){ it.name } - val times = filterList.filter { it.name == "时长:" }.firstOrNull()?.list?.filter { it.checked }?.joinToString (","){ it.id.toString() } - val types = filterList.filter { it.name == "类型:" }.firstOrNull()?.list?.filter { it.checked }?.joinToString (","){ it.id.toString() } - - } - - @Subscribe - fun refresh(e: EmptyEvent){ - if (e.code == Const.EventCode.REFRESH_MY_COURSE){ - refreshLayout.resetNoMoreData() - page = 1 - getData() + HttpManager.studyPage().request(this,success = {_,data-> + refreshLayout.finishRefresh(true) + myList.clear() + myList.addAll(data?.courseList?: arrayListOf()) + freeList.clear() + freeList.addAll(data?.freeCourseList?: arrayListOf()) + myAdapter.notifyDataSetChanged() + freeAdapter.notifyDataSetChanged() + if (myList.isNullOrEmpty()){ + tv_empty.visible() + tv_action.visible() + }else{ + tv_empty.gone() + tv_action.gone() + } + }){_,_-> + refreshLayout.finishRefresh(false) } } - - override fun onDestroy() { - super.onDestroy() - EventBus.getDefault().unregister(this) - } - } -- Gitblit v1.7.1