123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- package com.hdl.xl.vmodel
- import android.app.Activity
- import android.app.Application
- import android.content.ClipData
- import android.content.ClipboardManager
- import android.content.Context
- import android.text.TextUtils
- import android.view.View
- import android.widget.LinearLayout
- import androidx.lifecycle.MutableLiveData
- import androidx.lifecycle.viewModelScope
- import com.hdl.xl.model.MyOrderListDetail
- import com.hdl.xl.model.PayOrder
- import com.ysnows.base.base.BRepository
- import com.ysnows.base.base.BViewModel
- import com.hdl.xl.model.TibetaDetails
- import com.hdl.xl.utils.PopuBuyUtils
- import com.hdl.xl.utils.PopuDownWxUtils
- import com.hdl.xl.utils.net.NetEngine
- import kotlinx.coroutines.launch
- class TibetanDetailsVModel(application: Application) : BViewModel<BRepository>(application) {
- var ll: LinearLayout? = null
- var id:String?=null
- var link= MutableLiveData<String>()
- var linkName= MutableLiveData<String>()
- var data= MutableLiveData<TibetaDetails>()
- //倒计时
- var isUp = true
- var time = MutableLiveData<String>()
- var bean=MutableLiveData<PayOrder>()
- var is_remind=MutableLiveData<Boolean>()
- //支付成功后是否显示弹框
- var myBean=MutableLiveData<MyOrderListDetail>()
- fun toCopy(){
- if(TextUtils.isEmpty(link.value)){
- toast("合约地址为空")
- return
- }
- val cm: ClipboardManager? = repository().context?.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager?
- val mClipData = ClipData.newPlainText("Label",link.value )
- cm?.setPrimaryClip(mClipData)
- toast("文字已复制到粘贴板")
- }
- fun toClose(){
- (repository().context as Activity).finish()
- }
- fun getInfoTo(){
- viewModelScope.launch {
- var it=repository().preq { NetEngine.service.CollectionDetail(id) }
- if(it.ok()){
- data.value=it.data
- is_remind.value=it.data?.is_remind
- }
- }
- }
- //
- // fun getInfo(){
- // viewModelScope.launch {
- // var it=repository().lreq { NetEngine.service.CollectionDetail(id) }
- // if(it.ok()){
- //
- // data.value=it.data
- // is_remind.value=it.data?.is_remind
- //
- // }
- //
- // }
- // }
- var popuBuyUtils:PopuBuyUtils?=null
- fun toBuy(view :View){//支付弹框
- popuBuyUtils= PopuBuyUtils
- popuBuyUtils?.show(repository().context!!, data.value?.cover,data.value?.name,data.value?.price,data.value?.buy_count, view)
- // PopuBuyUtils.show(repository().context!!, data.value?.cover,data.value?.name,data.value?.price, view)
- }
- fun getUrl() {
- toShareCode(data.value?.cover)
- }
- fun toShareCode(shareUrl: String?) {
- if (TextUtils.isEmpty(shareUrl)) {
- return
- }
- PopuDownWxUtils.show(repository().context!!,
- shareUrl!!,data.value?.name,data.value?.id,
- "https://xlapi.xiangliannft.com/h5/pages/index/goodsinfo",
- ll!!,repository().context!!.contentResolver)
- // PopuShareWxUtils.show(repository().context!!, shareUrl!!, ll!!,repository().context!!.contentResolver)
- }
- fun getCertificate(){
- viewModelScope.launch {
- var it=repository().lreq { NetEngine.service.certificate() }
- if(it.ok()){
- link.value=it.data?.link
- linkName.value=it.data?.name
- }
- }
- }
- //设置购买提醒
- fun toBuyTime(){
- viewModelScope.launch {
- var it=repository().lreq { NetEngine.service.setRemind(data.value?.id) }
- if(it.ok(true)){
- //刷新
- is_remind.value=true
- }
- }
- }
- fun toPayOrder(order_no:String?,from:String?){
- viewModelScope.launch {
- var it=repository().lreq { NetEngine.service.payOrder(order_no,from) }
- if(it.code==0){
- toast(it.msg)
- return@launch
- }
- if(it.ok(true)){
- popuBuyUtils?.setDisMiss()
- if("sd" == from) {//杉德支付
- bean.value = it.data
- }else{
- //刷新数据
- getMyOrder(order_no)
- }
- }
- }
- }
- fun getMyOrder(order_no:String?){
- viewModelScope.launch {
- var it = repository().lreq { NetEngine.service.setMyOrderListDetail(order_no, "2") }
- if (it.ok()) {
- myBean.value = it.data
- }
- }
- }
- }
|