package com.fanghua.driver.ui.mine
|
|
import androidx.core.content.ContextCompat
|
import androidx.core.os.bundleOf
|
import androidx.fragment.app.Fragment
|
import cn.sinata.xldutils.utils.StringUtils
|
import cn.sinata.xldutils.utils.TimeUtils
|
import cn.sinata.xldutils.utils.clickDelay
|
import com.fanghua.driver.R
|
import com.fanghua.driver.base.BaseEvent
|
import com.fanghua.driver.base.MyBaseActivity
|
import com.fanghua.driver.bean.RankData
|
import com.fanghua.driver.dialog.TypeDialog
|
import com.fanghua.driver.ui.mine.money_bag.RankFragment
|
import com.fanghua.driver.utils.citypickerview.picker.widget.builder.TimePickerBuilder
|
import com.fanghua.driver.utils.citypickerview.picker.widget.configure.TimePickerType
|
import com.fanghua.driver.utils.citypickerview.picker.widget.listener.OnTimeSelectListener
|
import kotlinx.android.synthetic.main.activity_rank.*
|
import org.greenrobot.eventbus.EventBus
|
import java.util.*
|
|
class RankActivity : MyBaseActivity() {
|
override fun setContentView() {
|
setContentView(R.layout.activity_rank)
|
}
|
private val fragments = arrayListOf<Fragment>()
|
var type = 2 //1=日,2=月,3=年
|
|
override fun initView() {
|
setTitleText("业绩排行")
|
fragments.add(RankFragment.newInstance(1))
|
fragments.add(RankFragment.newInstance(2))
|
fragments.add(RankFragment.newInstance(3))
|
tab_layout.setViewPager(view_pager, arrayOf("订单排名","佣金排名","收入排名"),this,fragments)
|
tv_time.text = TimeUtils.getTimeYM(System.currentTimeMillis())
|
}
|
|
override fun setOnclick() {
|
tv_time.clickDelay {
|
showTimePicker()
|
}
|
tv_type.clickDelay {
|
val typeDialog = TypeDialog()
|
typeDialog.arguments = bundleOf("type" to tv_type.text.toString(),"list" to arrayListOf("日","月","年"))
|
typeDialog.setCallback(object :TypeDialog.OnOkClick{
|
override fun onOk(name: String, type: Int) {
|
tv_type.text = name
|
this@RankActivity.type = if (name == "月") 2 else if (name == "年") 3 else 1
|
tv_time.text = if (this@RankActivity.type == 1) TimeUtils.getTimeYMD1(System.currentTimeMillis()) else if (this@RankActivity.type == 2) TimeUtils.getTimeYM(System.currentTimeMillis()) else TimeUtils.getTimeY(System.currentTimeMillis())
|
EventBus.getDefault().post(BaseEvent(BaseEvent.REFRESH_DATE))
|
}
|
})
|
typeDialog.show(supportFragmentManager,"type")
|
}
|
}
|
|
fun getTime() = tv_time.text.toString()
|
|
fun showData(data:RankData){
|
iv_avatar.setImageURI(data.avatar)
|
tv_name.text = "%s|当前排名第%d名".format(data.name,data.position)
|
tv_phone.text = StringUtils.hidePhoneNumber(data.phone)
|
tv_income.text = "%s元".format(data.grossIncome)
|
tv_count.text = "%d单".format(data.totalOrder)
|
}
|
|
fun showTimePicker() {
|
var startCalendar = Calendar.getInstance()
|
var endCalendar = Calendar.getInstance()
|
var nowCalendar = Calendar.getInstance()
|
startCalendar.set(2023, 1, 1)
|
val time = tv_time.text.toString()
|
nowCalendar.set(Calendar.YEAR, time.substring(0,4).toInt())
|
if (time.length>5)
|
nowCalendar.set(Calendar.MONTH, time.substring(5,7).toInt()-1)
|
if (time.length>8)
|
nowCalendar.set(Calendar.DAY_OF_MONTH, time.substring(8,10).toInt())
|
var timePic = TimePickerBuilder(this,
|
OnTimeSelectListener { date, v ->
|
tv_time.text = if (type == 1) TimeUtils.getTimeYMD1(date.time) else if (type == 2) TimeUtils.getTimeYM(date.time) else TimeUtils.getTimeY(date.time)
|
EventBus.getDefault().post(BaseEvent(BaseEvent.REFRESH_DATE))
|
})
|
.setTitleText("")
|
.setBgColor(ContextCompat.getColor(this, R.color.white))
|
.setCancelColor(ContextCompat.getColor(this, R.color.black_333333))
|
.setSubmitColor(ContextCompat.getColor(this, R.color.main_yellow_shen))
|
.setRangDate(startCalendar, endCalendar)
|
.setDate(nowCalendar)
|
.setType(if (type == 1) TimePickerType.DEFAULT else if (type == 2) TimePickerType.YM else TimePickerType.YEAR)
|
.setSubmitText("确认")
|
.setLineSpacingMultiplier(2f)
|
.build()
|
timePic.show()
|
}
|
}
|