lmw
2025-02-06 ab2842d427504c531c79ddb9c5a9ef1df7833014
app/src/main/java/com/sinata/xqmuse/ui/home/HomeFragment.kt
@@ -19,11 +19,13 @@
import com.sinata.xqmuse.ui.home.adapter.HomeBannerAdapter
import com.sinata.xqmuse.ui.home.adapter.TopMenuAdapter
import com.sinata.xqmuse.ui.login.LoginActivity
import com.sinata.xqmuse.ui.mine.VipActivity
import com.sinata.xqmuse.utils.Const
import com.sinata.xqmuse.utils.event.EmptyEvent
import com.sinata.xqmuse.utils.interfaces.StringCallback
import kotlinx.android.synthetic.main.fragment_home.*
import org.greenrobot.eventbus.EventBus
import org.jetbrains.anko.startActivity
import org.jetbrains.anko.support.v4.startActivity
import org.jetbrains.anko.support.v4.toast
@@ -62,7 +64,6 @@
        getList()
        getBottomMenu()
        initClick()
        changeBg()
    }
    fun refreshData(){
@@ -96,13 +97,29 @@
        }
        iv_today.setOnClickListener {
            if (today!=null){
                showDialog()
                HttpManager.getMeditationDetails(today!!.meditationId).requestByF(this,success = {_,data->
                    dismissDialog()
                    MainActivity.voice = data
                    EventBus.getDefault().post(EmptyEvent(Const.EventCode.START_THINK))
                }){_,_->
                    dismissDialog()
                if (MainActivity.voice?.id == today?.meditationId){
                    EventBus.getDefault().post(EmptyEvent(Const.EventCode.PAUSE_OR_RESUME_THINK))
                    if (MainActivity.playing) //播放中
                        iv_play_today.setImageResource(R.mipmap.player_pause)
                    else
                        iv_play_today.setImageResource(R.mipmap.play)
                }else{
                    showDialog()
                    HttpManager.getMeditationDetails(today!!.meditationId).requestByF(this,success = {_,data->
                        dismissDialog()
                        if (data?.chargeType == 2&&data.isVip != 1){ //会员免费
                            startActivity<VipActivity>()
                        }else if (data?.chargeType == 3&&data.isBuy != 1){ //单独收费且未购买
                            startActivity<BuyVoiceActivity>("id" to data.id)
                        }else{
                            if (MainActivity.playing)
                                EventBus.getDefault().post(EmptyEvent(Const.EventCode.FINISH_THINK))
                            MainActivity.voice = data
                            EventBus.getDefault().post(EmptyEvent(Const.EventCode.START_THINK))
                        }
                    }){_,_->
                        dismissDialog()
                    }
                }
            }
        }
@@ -118,8 +135,7 @@
        iv_pri_empty.setOnClickListener { startActivity<LoginActivity>() }
    }
    fun changeBg(){
        val bg = SPUtils.instance().getString(Const.User.BG)
    fun changeBg(bg:String){
        if (!bg.isNullOrEmpty())
            iv_home.setImageURI(bg)
    }
@@ -150,23 +166,26 @@
                iv_daily_empty.visible()
            }else{
                iv_daily_empty.gone()
                iv_today.setImageURI(today?.clientMeditationVO?.backgroundUrl)
                iv_today.setImageURI(today?.imageUrl)
                tv_length_today.text = "${today?.clientMeditationVO?.meditationTitle?.ellipsize(12)} | ${"%02d:%02d".format((data?.time?:0)/60,(data?.time?:0)%60)}"
                tv_today_count.text = "${today?.clientMeditationVO?.realLearnedNum}人已参加学习"
                tv_today_count.text = "${(today?.clientMeditationVO?.realLearnedNum?:0)+(today?.clientMeditationVO?.virtualLearnedNum?:0)}人已参加学习"
            }
        }
    }
    fun refreshTodayPlayingState(){
        if (MainActivity.voice?.id == today?.meditationId&&MainActivity.playing)
            iv_play_today.setImageResource(R.mipmap.player_pause)
        else
            iv_play_today.setImageResource(R.mipmap.play)
    }
    fun getPrivacy() {
        if (!SPUtils.instance().getString(Const.User.TOKEN).isNullOrEmpty()) {
            gp_pri_empty.gone()
            HttpManager.getPersonalityPlan().requestByF(this){_,data->
                privacy.clear()
                privacy.addAll(data?: arrayListOf())
                privacyAdapter.notifyDataSetChanged()
            }
        }else
            gp_pri_empty.visible()
        HttpManager.getPersonalityPlan().requestByF(this){_,data->
            privacy.clear()
            privacy.addAll(data?: arrayListOf())
            privacyAdapter.notifyDataSetChanged()
        }
    }
    private fun getList() {