honghengqiang 3 سال پیش
والد
کامیت
7f174793ff

+ 9 - 0
baseswago/src/main/java/com/swago/baseswago/model/live/RankListModel.java

@@ -14,6 +14,7 @@ public class RankListModel {
      */
      */
 
 
     private int count;
     private int count;
+    private String total;
     /**
     /**
      * total_coins : string
      * total_coins : string
      * user_id : Unknown Type: float
      * user_id : Unknown Type: float
@@ -32,6 +33,14 @@ public class RankListModel {
         this.count = count;
         this.count = count;
     }
     }
 
 
+    public String getTotal() {
+        return total;
+    }
+
+    public void setTotal(String total) {
+        this.total = total;
+    }
+
     public List<ListBean> getList() {
     public List<ListBean> getList() {
         return list;
         return list;
     }
     }

+ 1 - 1
home/src/main/java/com/swago/home/innerhome/FollowFragment.kt

@@ -34,7 +34,6 @@ class FollowFragment : BaseListFragment<FragmentHotBinding, MomentModel>(){
         GridLayoutManager(context,2)
         GridLayoutManager(context,2)
     }
     }
     override val loadData: (page: Int) -> Unit = {
     override val loadData: (page: Int) -> Unit = {
-        isFirstLoadData = false
         homeVm.getHomeList(3, it+1)
         homeVm.getHomeList(3, it+1)
     }
     }
 
 
@@ -84,6 +83,7 @@ class FollowFragment : BaseListFragment<FragmentHotBinding, MomentModel>(){
         if (!isFirstLoadData){
         if (!isFirstLoadData){
             smartRecyclerView.startRefresh()
             smartRecyclerView.startRefresh()
         }
         }
+        isFirstLoadData = false
     }
     }
 
 
 }
 }

+ 1 - 1
home/src/main/java/com/swago/home/innerhome/HotFragment.kt

@@ -46,7 +46,6 @@ class HotFragment : BaseListFragment<FragmentHotBinding, MomentModel>() {
         GridLayoutManager(context, 2)
         GridLayoutManager(context, 2)
     }
     }
     override val loadData: (page: Int) -> Unit = {
     override val loadData: (page: Int) -> Unit = {
-        isFirstLoadData = false
         homeVm.getHotList(1, it + 1)
         homeVm.getHotList(1, it + 1)
     }
     }
 
 
@@ -121,6 +120,7 @@ class HotFragment : BaseListFragment<FragmentHotBinding, MomentModel>() {
         if (!isFirstLoadData){
         if (!isFirstLoadData){
             smartRecyclerView.startRefresh()
             smartRecyclerView.startRefresh()
         }
         }
+        isFirstLoadData = false
     }
     }
 
 
     override fun loadMoreNeed(): Boolean {
     override fun loadMoreNeed(): Boolean {

+ 1 - 1
home/src/main/java/com/swago/home/innerhome/NewFragment.kt

@@ -35,7 +35,6 @@ class NewFragment  : BaseListFragment<FragmentHotBinding, MomentModel>(){
         GridLayoutManager(context,2)
         GridLayoutManager(context,2)
     }
     }
     override val loadData: (page: Int) -> Unit = {
     override val loadData: (page: Int) -> Unit = {
-        isFirstLoadData = false
         homeVm.getHomeList(2, it+1)
         homeVm.getHomeList(2, it+1)
     }
     }
 
 
@@ -71,6 +70,7 @@ class NewFragment  : BaseListFragment<FragmentHotBinding, MomentModel>(){
         if (!isFirstLoadData){
         if (!isFirstLoadData){
             smartRecyclerView.startRefresh()
             smartRecyclerView.startRefresh()
         }
         }
+        isFirstLoadData = false
     }
     }
 
 
     override fun loadMoreNeed(): Boolean {
     override fun loadMoreNeed(): Boolean {

+ 63 - 15
room/src/main/java/com/swago/room/ranklist/RankListActivity.kt

@@ -2,7 +2,9 @@ package com.swago.room.ranklist
 
 
 import android.content.Context
 import android.content.Context
 import android.graphics.Color
 import android.graphics.Color
+import androidx.activity.viewModels
 import androidx.core.content.ContextCompat
 import androidx.core.content.ContextCompat
+import androidx.fragment.app.viewModels
 import com.alibaba.android.arouter.facade.annotation.Autowired
 import com.alibaba.android.arouter.facade.annotation.Autowired
 import com.alibaba.android.arouter.facade.annotation.Route
 import com.alibaba.android.arouter.facade.annotation.Route
 import com.alibaba.android.arouter.launcher.ARouter
 import com.alibaba.android.arouter.launcher.ARouter
@@ -12,8 +14,10 @@ import com.swago.baseswago.activity.BaseXActivity
 import com.swago.baseswago.constant.ARouteConstant
 import com.swago.baseswago.constant.ARouteConstant
 import com.swago.baseswago.util.AppContext
 import com.swago.baseswago.util.AppContext
 import com.swago.baseswago.util.DpPxUtil
 import com.swago.baseswago.util.DpPxUtil
+import com.swago.baseswago.util.UserInfo
 import com.swago.room.R
 import com.swago.room.R
 import com.swago.room.databinding.ActivityRankListBinding
 import com.swago.room.databinding.ActivityRankListBinding
+import com.swago.room.vm.RoomOtherVm
 import net.lucode.hackware.magicindicator.ViewPagerHelper
 import net.lucode.hackware.magicindicator.ViewPagerHelper
 import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator
 import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator
 import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter
 import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter
@@ -26,41 +30,46 @@ import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.Simple
  *description:
  *description:
  */
  */
 @Route(path = ARouteConstant.Room.rankList)
 @Route(path = ARouteConstant.Room.rankList)
-class RankListActivity :BaseXActivity<ActivityRankListBinding>() {
+class RankListActivity : BaseXActivity<ActivityRankListBinding>() {
 
 
+    private val roomOtherVm by viewModels<RoomOtherVm>()
 
 
     @Autowired
     @Autowired
     @JvmField
     @JvmField
     var roomId = ""
     var roomId = ""
 
 
 
 
-
     private val listTitles = arrayListOf(
     private val listTitles = arrayListOf(
         AppContext.getContext().resources.getString(R.string.daily),
         AppContext.getContext().resources.getString(R.string.daily),
         AppContext.getContext().resources.getString(R.string.weekly),
         AppContext.getContext().resources.getString(R.string.weekly),
-        AppContext.getContext().resources.getString(R.string.monthly))
-
+        AppContext.getContext().resources.getString(R.string.monthly)
+    )
 
 
 
 
-    override fun loadData() {}
+    override fun loadData() {
+        roomOtherVm.getRankList(roomId, 1, 1)
+    }
 
 
     override fun initOther() {
     override fun initOther() {
         ARouter.getInstance().inject(this)
         ARouter.getInstance().inject(this)
 
 
         setBackView(binding.toolbar.ivBack)
         setBackView(binding.toolbar.ivBack)
         binding.toolbar.ivBack.setImageResource(R.mipmap.back_white)
         binding.toolbar.ivBack.setImageResource(R.mipmap.back_white)
-        binding.toolbar.tvTitle.text = AppContext.getContext().resources.getString(R.string.fans_list)
-        binding.toolbar.tvTitle.setTextColor(ContextCompat.getColor(this,R.color._ffffff))
+        binding.toolbar.tvTitle.text =
+            AppContext.getContext().resources.getString(R.string.fans_list)
+        binding.toolbar.tvTitle.setTextColor(ContextCompat.getColor(this, R.color._ffffff))
         binding.viewPager.offscreenPageLimit = 3
         binding.viewPager.offscreenPageLimit = 3
-        val listFragments = arrayListOf(RankListFragment.newInstance(roomId,1),
-            RankListFragment.newInstance(roomId,2),
-            RankListFragment.newInstance(roomId,3))
-        val viewPagerAdapter = SwagoAdapter(listFragments,supportFragmentManager,listTitles)
+        val listFragments = arrayListOf(
+            RankListFragment.newInstance(roomId, 1),
+            RankListFragment.newInstance(roomId, 2),
+            RankListFragment.newInstance(roomId, 3)
+        )
+        val viewPagerAdapter = SwagoAdapter(listFragments, supportFragmentManager, listTitles)
         binding.viewPager.adapter = viewPagerAdapter
         binding.viewPager.adapter = viewPagerAdapter
 
 
         val commonNavigator = CommonNavigator(this)
         val commonNavigator = CommonNavigator(this)
         commonNavigator.isAdjustMode = true
         commonNavigator.isAdjustMode = true
-        commonNavigator.adapter = object: CommonNavigatorAdapter(){
+        commonNavigator.adapter = object : CommonNavigatorAdapter() {
             override fun getCount(): Int {
             override fun getCount(): Int {
                 return listTitles.size
                 return listTitles.size
             }
             }
@@ -70,7 +79,7 @@ class RankListActivity :BaseXActivity<ActivityRankListBinding>() {
                 simplePagerTitleView.text = listTitles[index]
                 simplePagerTitleView.text = listTitles[index]
                 val padding = DpPxUtil.dip2px(15f).toFloat()
                 val padding = DpPxUtil.dip2px(15f).toFloat()
                 simplePagerTitleView.textSize = 16f
                 simplePagerTitleView.textSize = 16f
-                simplePagerTitleView.setPadding(padding.toInt(),0, padding.toInt(),0)
+                simplePagerTitleView.setPadding(padding.toInt(), 0, padding.toInt(), 0)
                 simplePagerTitleView.normalColor = Color.parseColor("#868686")
                 simplePagerTitleView.normalColor = Color.parseColor("#868686")
                 simplePagerTitleView.selectedColor = Color.parseColor("#000000")
                 simplePagerTitleView.selectedColor = Color.parseColor("#000000")
                 simplePagerTitleView.setOnClickListener {
                 simplePagerTitleView.setOnClickListener {
@@ -93,10 +102,49 @@ class RankListActivity :BaseXActivity<ActivityRankListBinding>() {
         }
         }
 
 
         binding.magicIndicator.navigator = commonNavigator
         binding.magicIndicator.navigator = commonNavigator
-        ViewPagerHelper.bind(binding.magicIndicator,binding.viewPager)
+        ViewPagerHelper.bind(binding.magicIndicator, binding.viewPager)
     }
     }
 
 
-    override fun initLiveData() {
+    private val diamondDrawable by lazy {
+        AppContext.getContext().resources.getDrawable(R.mipmap.icon_diamond)
+    }
 
 
+    private val coinDrawable by lazy {
+        AppContext.getContext().resources.getDrawable(R.mipmap.icon_room_coin)
+    }
+
+    override fun initLiveData() {
+        roomOtherVm.totalLiveData.observe(this) {
+            binding.tvIncome.text = it
+            UserInfo.getUserInfo()?.let {
+                when (it.user_type) {
+                    0 -> {
+                        binding.tvIncome.setCompoundDrawablesWithIntrinsicBounds(
+                            null,
+                            coinDrawable,
+                            null,
+                            null
+                        )
+                    }
+
+                    1 -> {
+                        binding.tvIncome.setCompoundDrawablesWithIntrinsicBounds(
+                            diamondDrawable,
+                            null,
+                            null,
+                            null
+                        )
+                    }
+                    else -> {
+                        binding.tvIncome.setCompoundDrawablesWithIntrinsicBounds(
+                            coinDrawable,
+                            null,
+                            null,
+                            null
+                        )
+                    }
+                }
+            }
+        }
     }
     }
 }
 }

+ 5 - 0
room/src/main/java/com/swago/room/vm/RoomOtherVm.kt

@@ -23,6 +23,10 @@ class RoomOtherVm (application: Application) : BaseViewModel(application){
         MutableLiveData<GameListModel>()
         MutableLiveData<GameListModel>()
     }
     }
 
 
+    val totalLiveData by lazy {
+        MutableLiveData<String>()
+    }
+
     fun getGameList(){
     fun getGameList(){
         requestData {
         requestData {
             gameListModelLiveData.value = ApiManager.roomApi.getGameList()
             gameListModelLiveData.value = ApiManager.roomApi.getGameList()
@@ -35,6 +39,7 @@ class RoomOtherVm (application: Application) : BaseViewModel(application){
             requestData {
             requestData {
                 val data = ApiManager.roomApi.getRankList(roomId,rankType,page)
                 val data = ApiManager.roomApi.getRankList(roomId,rankType,page)
                 rankListLiveData.value = data.list
                 rankListLiveData.value = data.list
+                totalLiveData.value = data.total
             }
             }
 
 
             requestError {
             requestError {