package com.quansu.heifengwuliu.vmodel import android.app.Application import android.os.Bundle import androidx.lifecycle.MutableLiveData import com.quansu.heifengwuliu.activity.SourceDetailsActivity import com.quansu.heifengwuliu.model.DataInfoBean import com.quansu.heifengwuliu.model.InfoEditBean import com.quansu.heifengwuliu.utils.net.NetEngine import com.yanzhenjie.permission.AndPermission import com.yanzhenjie.permission.runtime.Permission import com.ysnows.base.base.BRepository import com.ysnows.base.base.BViewModel import com.ysnows.base.ccretrofit.CCRetrofit import com.ysnows.base.route.IGaode import com.ysnows.base.utils.UiSwitch open class OwnerSingleVModel(application: Application) : BViewModel(application) { var unit: MutableLiveData = MutableLiveData(unitValues) var goodstype: MutableLiveData = MutableLiveData() var insurance: MutableLiveData = MutableLiveData() var isPush: MutableLiveData = MutableLiveData(isPushValue) var isAgree: MutableLiveData = MutableLiveData(isPushValue) val info: MutableLiveData = MutableLiveData() companion object { const val isPushValue = 1 const val unitValues = "吨" } fun choseUnits() { //选择单车运量 // QMUIBottomSheet.BottomListSheetBuilder(repository().context) // .addItem("吨") // .addItem("方") // .addItem("件") // .setOnSheetItemClickListener { dialog, itemView, position, tag -> // // when(position){ // 0->unit.value="吨" // 1->unit.value="方" // 2->unit.value="件" // else ->unit.value="" // } // dialog.dismiss() // // } // .build() // .show() } fun getDataInfo(info_id:String){ repository().rxLreq(NetEngine.service.infoGet(info_id)) .doOnNext() { if (it.ok()) { info.value=it.data() as DataInfoBean } } .subscribe() } fun setReleaseSource(info_id:String,type_id:String,total:String,driver:String, nums:String,is_public:String,is_insurance:String, type:String,data:String,send:String,receive:String ){ //todo:发布货源 repository().rxLreq(NetEngine.service.infoEdit(info_id,type_id,total,driver,nums,is_public,is_insurance,type, data,send,receive)) .doOnNext() { if (it.ok(true)) { var bean=it.data() as InfoEditBean UiSwitch.bundle(repository().context, SourceDetailsActivity::class.java, Bundle().apply { putString("info_id", bean.info_id) putInt("again", 0) }) } } .subscribe() } fun locationMap() { //定位到当前位置 AndPermission.with(repository().context) .runtime() .permission(Permission.ACCESS_COARSE_LOCATION, Permission.ACCESS_FINE_LOCATION, Permission.WRITE_EXTERNAL_STORAGE, Permission.READ_EXTERNAL_STORAGE, Permission.READ_PHONE_STATE ) .onGranted { data -> CCRetrofit.instance() .with(repository().context) .create(IGaode::class.java) .currentLocation() .subscribe() } .start() } }