package com.dollearn.student.ui.course.adapter
|
|
import android.widget.TextView
|
import androidx.core.os.bundleOf
|
import cn.sinata.xldutils.activity.BaseActivity
|
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
|
import cn.sinata.xldutils.adapter.util.ViewHolder
|
import cn.sinata.xldutils.gone
|
import cn.sinata.xldutils.utils.myToast
|
import cn.sinata.xldutils.utils.parserTime
|
import cn.sinata.xldutils.utils.showAllowingStateLoss
|
import cn.sinata.xldutils.visible
|
import com.google.gson.Gson
|
import com.dollearn.student.R
|
import com.dollearn.student.dialog.CheckQrCodeDialog
|
import com.dollearn.student.network.HttpManager
|
import com.dollearn.student.network.entity.Duration
|
import com.dollearn.student.network.entity.QrBean
|
import com.dollearn.student.network.entity.ReserveRecord
|
import com.dollearn.student.network.request
|
import com.dollearn.student.ui.course.PracticeListActivity
|
import org.jetbrains.anko.backgroundResource
|
import org.jetbrains.anko.startActivity
|
import org.jetbrains.anko.textColorResource
|
import java.util.ArrayList
|
|
class ReserveRecordAdapter(list: ArrayList<ReserveRecord>) :
|
HFRecyclerAdapter<ReserveRecord>(list, R.layout.item_reserve_record) {
|
var stuId = ""
|
override fun onBind(holder: ViewHolder, position: Int, data: ReserveRecord) {
|
val state = holder.bind<TextView>(R.id.tv_state)
|
val action = holder.bind<TextView>(R.id.tv_action)
|
holder.setText(R.id.tv_name, data.coursePackageName)
|
holder.setText(R.id.tv_course, "${data.courseHours}课时")
|
holder.setText(R.id.tv_address, data.storeNameAddr)
|
holder.setText(R.id.tv_time, data.timeFrame)
|
when (data.status) {//1待上课 2已开始 3已完成 4已取消,5已请假
|
1 -> {
|
action.visible()
|
action.text = "二维码"
|
action.backgroundResource = R.drawable.bg_orange_2dp
|
state.text = "待上课"
|
state.textColorResource = R.color.colorPrimary
|
}
|
2 -> {
|
action.gone()
|
state.text = "已开始"
|
state.textColorResource = R.color.textColor99
|
}
|
3 -> {
|
action.text = "课后练习"
|
action.visible()
|
action.backgroundResource = R.drawable.bg_blue_4dp
|
state.text = "已完成"
|
state.textColorResource = R.color.textColor99
|
}
|
4 -> {
|
action.gone()
|
state.text = "已取消"
|
state.textColorResource = R.color.textColor99
|
}
|
5 -> {
|
action.gone()
|
state.text = "已请假"
|
state.textColorResource = R.color.textColor99
|
}
|
}
|
action.setOnClickListener {
|
if (data.status == 1) {
|
// HttpManager.cancelCourse(data.courseStuRecordId).request(context as BaseActivity){_,_->
|
// context.myToast("取消成功")
|
// data.status = 4
|
// notifyItemChanged(position)
|
// }
|
val duration = listOf(
|
Duration(
|
data.timeFrame.substring(0, 19).parserTime()/1000,
|
"${data.timeFrame.substring(0, 11)}${data.timeFrame.substring(20, 28)}".parserTime()/1000
|
)
|
)
|
val qrBean = QrBean(data.sid, data.rid, data.userId, duration)
|
val dialog = CheckQrCodeDialog()
|
dialog.arguments = bundleOf("qrinfo" to Gson().toJson(qrBean))
|
dialog.showAllowingStateLoss((action.context as BaseActivity).supportFragmentManager, "checkqr")
|
} else if (data.status == 3) {
|
context.startActivity<PracticeListActivity>("stuId" to stuId)
|
}
|
}
|
}
|
|
}
|