Explorar o código

1.商品类型筛选。

石慧云 %!s(int64=4) %!d(string=hai) anos
pai
achega
4e2055f05e

+ 4 - 6
app/src/main/java/com/quansu/heifengwuliu/fragment/DriverWayBillFragment.kt

@@ -75,7 +75,7 @@ class DriverWayBillFragment : MBTabFragment<DriverWayBillVModel, FragmentWaybill
 
             var bean= SearchBean(vm.province_out,vm.city_out,vm.area_out,vm.province_in,vm.city_in,vm.area_in,vm.k!!,
                     vm.carCode, vm.timeOutStart.value!!, vm.timeOutEnd.value!!, vm.timeInStart.value!!,
-                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString())
+                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString(),vm.goodsCode)
             RxBus.get().post(ConfigRx.SEARCH_REFRESH, bean)
 
             binding.drawerLayout.closeDrawers()
@@ -85,7 +85,7 @@ class DriverWayBillFragment : MBTabFragment<DriverWayBillVModel, FragmentWaybill
 
             var bean= SearchBean(vm.province_out,vm.city_out,vm.area_out,vm.province_in,vm.city_in,vm.area_in,vm.k!!,
                     vm.carCode, vm.timeOutStart.value!!, vm.timeOutEnd.value!!, vm.timeInStart.value!!,
-                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString())
+                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString(),vm.goodsCode)
             RxBus.get().post(ConfigRx.SEARCH_REFRESH, bean)
 
             binding.drawerLayout.closeDrawers()
@@ -171,13 +171,11 @@ class DriverWayBillFragment : MBTabFragment<DriverWayBillVModel, FragmentWaybill
 //
 //                    }
 //                })
-//            }
-//
-//
-//
 //
 //        }
 
+
+
         binding.butChoseSort.onClick {
             //选择排序类型
 

+ 17 - 0
app/src/main/java/com/quansu/heifengwuliu/fragment/IndexFragment.kt

@@ -140,6 +140,23 @@ class IndexFragment : MBRFragment<IndexVModel, IndexAdapter, FragmentIndexBindin
             })
         }
 
+
+        binding.butGoodsType.onClick {
+            //商品类型
+
+            if(null==vm.goodsList.value){
+                return@onClick
+            }
+            PopuBottomUtils.showList(context(), (vm.goodsList.value as ArrayList<SelectData>?)!!,object : ChoiceListData {
+                override fun onRestuse(code: String?,name: String?) {
+                    vm.goodsName.value = name
+                    vm.goodsCode=code.toString()
+                    vm.butColor.value=true
+                }
+            })
+
+
+        }
         binding.butCarType.onClick {
             if(null==vm.list.value){
                 return@onClick

+ 2 - 2
app/src/main/java/com/quansu/heifengwuliu/fragment/WayBillFragment.kt

@@ -171,7 +171,7 @@ class WayBillFragment : MBTabFragment<DriverWayBillVModel, FragmentWaybillBindin
 
             var bean= SearchBean(vm.province_out,vm.city_out,vm.area_out,vm.province_in,vm.city_in,vm.area_in,vm.k!!,
                     vm.carCode, vm.timeOutStart.value!!, vm.timeOutEnd.value!!, vm.timeInStart.value!!,
-                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString())
+                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString(),vm.goodsCode)
             RxBus.get().post(ConfigRx.SEARCH_REFRESH, bean)
 
             binding.drawerLayout.closeDrawers()
@@ -181,7 +181,7 @@ class WayBillFragment : MBTabFragment<DriverWayBillVModel, FragmentWaybillBindin
 
             var bean= SearchBean(vm.province_out,vm.city_out,vm.area_out,vm.province_in,vm.city_in,vm.area_in,vm.k!!,
                     vm.carCode, vm.timeOutStart.value!!, vm.timeOutEnd.value!!, vm.timeInStart.value!!,
-                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString())
+                    vm.timeInEnd.value!!, vm.priceStart!!, vm.priceEnd!!,vm.sortCode,vm.sortChose.value.toString(),vm.goodsCode)
             RxBus.get().post(ConfigRx.SEARCH_REFRESH, bean)
 
             binding.drawerLayout.closeDrawers()

+ 1 - 1
app/src/main/java/com/quansu/heifengwuliu/model/InfoBean.kt

@@ -19,7 +19,7 @@ class InfoBean(var info_id: String, var uid: String,
                var bank: String, var kbank: String, var number: String,
                var type:List<SelectData>,
                var car_types: List<CarTypeBeanS>,
-
+               var goods_type:List<SelectData>,
                var driver_img: String, var driving_z: String, var driving_f: String,
                var tonnage: Int, var license_dl: String, var license_cy: String,
                var car_type: CarTypeBean, var car_load: String,

+ 1 - 1
app/src/main/java/com/quansu/heifengwuliu/model/bean/SearchBean.kt

@@ -9,6 +9,6 @@ data class SearchBean(var province_out: String,var city_out: String,var area_out
                       var k:String,
                       var type_id: String,var s_time1: String,var s_time2: String,
                       var r_time1: String,var r_time2: String,var price1: String,
-                      var price2: String,var sort: String,var asc: String,
+                      var price2: String,var sort: String,var asc: String,var goods_type:String
 ){
 }

+ 5 - 0
app/src/main/java/com/quansu/heifengwuliu/utils/VerifyUtils.kt

@@ -2,6 +2,8 @@ package com.quansu.heifengwuliu.utils
 
 import android.content.Context
 import android.content.Intent
+import android.view.inputmethod.InputMethodManager
+
 
 /**
  *Created by shihuiyun
@@ -60,6 +62,9 @@ object VerifyUtils {
     }
 
 
+
+
+
 }
 
 

+ 7 - 2
app/src/main/java/com/quansu/heifengwuliu/utils/net/ApiService.kt

@@ -254,7 +254,9 @@ interface ApiService {
             @Query("r_time1") r_time1: String?,@Query("r_time2") r_time2: String?,@Query("price1") price1: String?,
             @Query("price2") price2: String?,@Query("sort") sort: String?,@Query("asc") asc: String?,
 
-            @Query("info_state") info_state: String?, @Query("p") p: Int): Resp<List<InfoListBean>>
+            @Query("info_state") info_state: String?,
+            @Query("goods_type") goods_type: String?,
+            @Query("p") p: Int): Resp<List<InfoListBean>>
 
 
     /**
@@ -400,6 +402,7 @@ interface ApiService {
                                @Query("type_id") type_id: String?,@Query("s_time1") s_time1: String?,@Query("s_time2") s_time2: String?,
                                @Query("r_time1") r_time1: String?,@Query("r_time2") r_time2: String?,@Query("price1") price1: String?,
                                @Query("price2") price2: String?,@Query("sort") sort: String?,@Query("asc") asc: String?,
+                               @Query("goods_type") goods_type: String?,
                                @Query("p") p: Int): Resp<List<InfoListBean>>
 
 
@@ -440,7 +443,9 @@ interface ApiService {
             @Query("r_time1") r_time1: String?,@Query("r_time2") r_time2: String?,@Query("price1") price1: String?,
             @Query("price2") price2: String?,@Query("sort") sort: String?,@Query("asc") asc: String?,
 
-            @Query("order_state") order_state: String?, @Query("p") p: Int): Resp<List<InfoListBean>>
+            @Query("order_state") order_state: String?,
+            @Query("goods_type") goods_type: String?,
+            @Query("p") p: Int): Resp<List<InfoListBean>>
 
 
     /**

+ 3 - 1
app/src/main/java/com/quansu/heifengwuliu/vmodel/DriverOrderListVModel.kt

@@ -71,7 +71,9 @@ class DriverOrderListVModel(application: Application) : BRViewModel<BRRepository
                     searchBean.value?.price2,
                     searchBean.value?.sort,
                     ss,
-                    infoState, repository().page)
+                    infoState,
+                    searchBean.value?.goods_type,
+                    repository().page)
         }
     }
 

+ 80 - 55
app/src/main/java/com/quansu/heifengwuliu/vmodel/DriverWayBillVModel.kt

@@ -6,6 +6,7 @@ import android.text.TextUtils
 import android.util.Log
 import androidx.databinding.Bindable
 import androidx.lifecycle.MutableLiveData
+import com.qmuiteam.qmui.kotlin.onClick
 import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton
 import com.quansu.heifengwuliu.BR
 import com.quansu.heifengwuliu.inte.ChoiceListData
@@ -23,7 +24,7 @@ import java.util.*
  *Created by shihuiyun
  *on 2020/9/27
  */
-class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(application)  {
+class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(application) {
     //搜索条件
     var province_out: String = ""
     var city_out: String = ""
@@ -39,10 +40,17 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
     //按钮颜色
     val butColor: MutableLiveData<Boolean> = MutableLiveData<Boolean>(false)
 
-    val list:MutableLiveData<List<InfoBean.CarTypeBeanS>> = MutableLiveData<List<InfoBean.CarTypeBeanS>>(null)
+    val list: MutableLiveData<List<InfoBean.CarTypeBeanS>> = MutableLiveData<List<InfoBean.CarTypeBeanS>>(null)
+    val goodsList: MutableLiveData<List<SelectData>> = MutableLiveData<List<SelectData>>()
+
     //车辆类型
     var carName: MutableLiveData<String> = MutableLiveData<String>("")
-    var carCode: String=""
+    var carCode: String = ""
+
+    //商品类型
+    var goodsName: MutableLiveData<String> = MutableLiveData<String>()
+    var goodsCode: String = ""
+
 
     //装货时间段
     var timeOutStart: MutableLiveData<String> = MutableLiveData<String>("")
@@ -56,12 +64,12 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
 
     var sortName: MutableLiveData<String> = MutableLiveData<String>("")
 
-    var sortCode: String=""
+    var sortCode: String = ""
 
     val sortChose: MutableLiveData<Int> = MutableLiveData<Int>(-1)//0是正序 1是倒序
 
 
-    var butCarType: QMUIRoundButton? =null
+    var butCarType: QMUIRoundButton? = null
 
     override fun firstReq() {
         super.firstReq()
@@ -69,8 +77,6 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
     }
 
 
-
-
     @Bindable
     var priceStart: String? = null
         set(value) {
@@ -93,11 +99,12 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
             field = value
             notifyPropertyChanged(BR.k)
         }
+
     init {
-        k=""
-        priceStart=""
-        priceEnd=""
-        list.value= ArrayList<InfoBean.CarTypeBeanS>()
+        k = ""
+        priceStart = ""
+        priceEnd = ""
+        list.value = ArrayList<InfoBean.CarTypeBeanS>()
     }
 
 
@@ -107,8 +114,10 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
                 .doOnNext {
                     if (it.ok()) {
                         val bean = it.data()
-                        list.value=bean!!.car_types
-                        if(boolean){
+                        list.value = bean!!.car_types
+                        goodsList.value = bean!!.goods_type
+
+                        if (boolean) {
                             show()
                         }
                     }
@@ -117,13 +126,12 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
 
     }
 
-    fun toChoseSort(type:Int){//1正序 2倒序
+    fun toChoseSort(type: Int) {//1正序 2倒序
         sortChose.value = type
     }
 
 
-
-    var  textWatcher= object: SimpleTextWatcher(){
+    var textWatcher = object : SimpleTextWatcher() {
         override fun afterTextChanged(s: Editable?) {
             super.afterTextChanged(s)
             inspectButColor()
@@ -131,51 +139,53 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
     }
 
 
-    fun inspectButColor(){
+    fun inspectButColor() {
 
-        butColor.value = !(TextUtils.isEmpty(province_out)&& TextUtils.isEmpty(city_out)&& TextUtils.isEmpty(area_out)&&
-                TextUtils.isEmpty(province_in)&& TextUtils.isEmpty(city_in)&& TextUtils.isEmpty(area_in)&&
-                TextUtils.isEmpty(carCode)&& TextUtils.isEmpty(timeOutStart.value)&&
-                TextUtils.isEmpty(timeOutEnd.value)&& TextUtils.isEmpty(timeInStart.value)&& TextUtils.isEmpty(timeInEnd.value)&&
-                TextUtils.isEmpty(sortName.value)&& TextUtils.isEmpty(k))
+        butColor.value = !(TextUtils.isEmpty(province_out) && TextUtils.isEmpty(city_out) && TextUtils.isEmpty(area_out) &&
+                TextUtils.isEmpty(province_in) && TextUtils.isEmpty(city_in) && TextUtils.isEmpty(area_in) &&
+                TextUtils.isEmpty(carCode) && TextUtils.isEmpty(timeOutStart.value) &&
+                TextUtils.isEmpty(timeOutEnd.value) && TextUtils.isEmpty(timeInStart.value) && TextUtils.isEmpty(timeInEnd.value) &&
+                TextUtils.isEmpty(sortName.value) && TextUtils.isEmpty(k))
 
     }
 
-    fun  clearSearch(){
+    fun clearSearch() {
         //清空
-        k=""
-        priceStart=""
-        priceEnd=""
-        name_out.value=""
-        name_in.value=""
-        province_out=""
-        city_out=""
-        area_out=""
-        province_in=""
-        city_in=""
-        area_in=""
-        carName.value=""
-        carCode=""
-        timeOutStart.value=""
-        timeOutEnd.value=""
-        timeInStart.value=""
-        timeInEnd.value=""
-        sortName.value=""
-        sortCode=""
-        sortChose.value=-1
+        k = ""
+        priceStart = ""
+        priceEnd = ""
+        name_out.value = ""
+        name_in.value = ""
+        province_out = ""
+        city_out = ""
+        area_out = ""
+        province_in = ""
+        city_in = ""
+        area_in = ""
+        carName.value = ""
+        carCode = ""
+        timeOutStart.value = ""
+        timeOutEnd.value = ""
+        timeInStart.value = ""
+        timeInEnd.value = ""
+        sortName.value = ""
+        sortCode = ""
+        sortChose.value = -1
+        goodsName.value = ""
+        goodsCode = ""
         //筛选按钮颜色
-        butColor.value=false
+        butColor.value = false
     }
 
 
-    fun toChoseCar(){
+    fun toChoseCar() {
 
-        if(list.value?.size==0){
-            Log.e("-shy-", "1111: " )
+        if (list.value?.size == 0) {
+            Log.e("-shy-", "1111: ")
             getInfo(true)
 
-        }else {
-            Log.e("-shy-", "2222: " )
+        } else {
+            Log.e("-shy-", "2222: ")
 
             show()
 
@@ -183,18 +193,35 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
     }
 
 
-    fun show(){
+    fun toGoodsType() {
+
+        if(null==goodsList.value){
+            return
+        }
+        PopuBottomUtils.showList(repository().context!!, (goodsList.value as ArrayList<SelectData>?)!!,object : ChoiceListData {
+            override fun onRestuse(code: String?,name: String?) {
+                goodsName.value = name
+                goodsCode=code.toString()
+                butColor.value=true
+            }
+        })
+
+
+    }
+
+
+    fun show() {
         var seletlist = ArrayList<SelectData>()
         for (item in list.value!!) {
             var bean = SelectData(item.type_id, item.type_name)
             seletlist.add(bean)
         }
 
-        PopuBottomUtils.showList(repository().context!!,seletlist,object : ChoiceListData {
-            override fun onRestuse(code: String?,name: String?) {
+        PopuBottomUtils.showList(repository().context!!, seletlist, object : ChoiceListData {
+            override fun onRestuse(code: String?, name: String?) {
                 carCode = code.toString()
                 carName.value = name
-                butColor.value=true
+                butColor.value = true
             }
         })
 
@@ -208,6 +235,4 @@ class DriverWayBillVModel(application: Application) : BViewModel<BRepository>(ap
     }
 
 
-
-
 }

+ 14 - 1
app/src/main/java/com/quansu/heifengwuliu/vmodel/IndexVModel.kt

@@ -11,6 +11,7 @@ import com.quansu.heifengwuliu.activity.GrabDetailsActivity
 import com.quansu.heifengwuliu.config.MIntentAction
 import com.quansu.heifengwuliu.fragment.IndexFragment
 import com.quansu.heifengwuliu.model.InfoBean
+import com.quansu.heifengwuliu.model.SelectData
 import com.quansu.heifengwuliu.utils.net.NetEngine
 import com.quansu.heifengwuliu.view.SimpleTextWatcher
 import com.ysnows.base.base.BRRepository
@@ -40,10 +41,19 @@ class IndexVModel(application: Application) : BRViewModel<BRRepository>(applicat
 
     val list: MutableLiveData<List<InfoBean.CarTypeBeanS>> = MutableLiveData<List<InfoBean.CarTypeBeanS>>()
 
+    val goodsList: MutableLiveData<List<SelectData>> = MutableLiveData<List<SelectData>>()
+
+
     //车辆类型
     var carName: MutableLiveData<String> = MutableLiveData<String>()
     var carCode: String = ""
 
+    //商品类型
+    var goodsName: MutableLiveData<String> = MutableLiveData<String>()
+    var goodsCode: String = ""
+
+
+
     //装货时间段
     var timeOutStart: MutableLiveData<String> = MutableLiveData<String>()
     var timeOutEnd: MutableLiveData<String> = MutableLiveData<String>()
@@ -112,7 +122,7 @@ class IndexVModel(application: Application) : BRViewModel<BRRepository>(applicat
 
                     carCode, timeOutStart.value, timeOutEnd.value,
                     timeInStart.value, timeInEnd.value,
-                    priceStart, priceEnd, sortCode, ss,
+                    priceStart, priceEnd, sortCode, ss,goodsCode,
 
                     repository().page)
         }
@@ -124,6 +134,7 @@ class IndexVModel(application: Application) : BRViewModel<BRRepository>(applicat
                     if (it.ok()) {
                         var bean = it.data()
                         list.value = bean!!.car_types
+                        goodsList.value=bean!!.goods_type
                     }
                 }
                 .subscribe()
@@ -175,6 +186,8 @@ class IndexVModel(application: Application) : BRViewModel<BRRepository>(applicat
         sortName.value = ""
         sortCode = ""
         sortChose.value = -1
+        goodsName.value=""
+        goodsCode=""
         //筛选按钮颜色
         butColor.value = false
     }

+ 3 - 1
app/src/main/java/com/quansu/heifengwuliu/vmodel/OrderListVModel.kt

@@ -92,7 +92,9 @@ class OrderListVModel(application: Application) : BRViewModel<BRRepository>(appl
                 searchBean.value?.price2,
                 searchBean.value?.sort,
                 ss,
-                infoState, repository().page)}
+                infoState,
+                searchBean.value?.goods_type,
+                repository().page)}
     }
 
 }

+ 10 - 10
app/src/main/java/com/quansu/heifengwuliu/vmodel/PersonalVerityVModel.kt

@@ -81,11 +81,11 @@ class PersonalVerityVModel(application: Application) : BViewModel<PersonalVerify
             toast("姓名格式不对,请核实!")
             return
         }
-        //判断是否和图片上的一致
-        if(!TextUtils.isEmpty(nameID)&&(!name.equals(nameID))){
-            toast("输入姓名和身份证上姓名不一致,请核实!")
-            return
-        }
+//        //判断是否和图片上的一致
+//        if(!TextUtils.isEmpty(nameID)&&(!name.equals(nameID))){
+//            toast("输入姓名和身份证上姓名不一致,请核实!")
+//            return
+//        }
 
         if(TextUtils.isEmpty(iDNumber)){
             toast("请输入身份证号")
@@ -95,11 +95,11 @@ class PersonalVerityVModel(application: Application) : BViewModel<PersonalVerify
             toast("身份证格式不对,请核实!")
             return
         }
-        //判断是否和图片上的一致
-        if(!TextUtils.isEmpty(iDNumberID)&&(!iDNumber.equals(iDNumberID))){
-            toast("输入身份证号和身份证上的身份证号不一致,请核实!")
-            return
-        }
+//        //判断是否和图片上的一致
+//        if(!TextUtils.isEmpty(iDNumberID)&&(!iDNumber.equals(iDNumberID))){
+//            toast("输入身份证号和身份证上的身份证号不一致,请核实!")
+//            return
+//        }
 
 
         repository().rxLreq(NetEngine.service.setInfo(imgIDMan.value, imgIDEmblem.value,name,iDNumber))

+ 24 - 5
app/src/main/java/com/quansu/heifengwuliu/vmodel/SourceDetailsVModel.kt

@@ -9,6 +9,8 @@ import android.content.Intent
 import android.net.Uri
 import android.os.Bundle
 import android.text.TextUtils
+import android.util.Log
+import android.view.KeyEvent
 import android.view.LayoutInflater
 import android.widget.FrameLayout
 import android.widget.ImageView
@@ -26,13 +28,11 @@ import com.qmuiteam.qmui.widget.popup.QMUIPopup
 import com.qmuiteam.qmui.widget.popup.QMUIPopups
 import com.quansu.heifengwuliu.BR
 import com.quansu.heifengwuliu.R
-import com.quansu.heifengwuliu.activity.OneLoginActivity
 import com.quansu.heifengwuliu.activity.PasswordActivity
 import com.quansu.heifengwuliu.activity.VehicleListActivity
 import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.inte.ChoiceData
 import com.quansu.heifengwuliu.model.DataInfoBean
-import com.quansu.heifengwuliu.model.User
 import com.quansu.heifengwuliu.utils.PopuTipsUtils
 import com.quansu.heifengwuliu.utils.net.NetEngine
 import com.quansu.heifengwuliu.view.PasswordView
@@ -40,10 +40,8 @@ import com.yanzhenjie.permission.Action
 import com.yanzhenjie.permission.AndPermission
 import com.ysnows.base.base.BRepository
 import com.ysnows.base.base.BViewModel
-import com.ysnows.base.ccretrofit.CCRetrofit
-import com.ysnows.base.route.IJpush
-import com.ysnows.base.utils.MMKVManager
 import com.ysnows.base.utils.UiSwitch
+import java.io.IOException
 
 
 /*
@@ -96,6 +94,7 @@ open class SourceDetailsVModel(application: Application) : BViewModel<BRepositor
                 .doOnNext() {
                     if (it.ok(true)) {
                         isPayShow.value=false
+
                     }
                 }
                 .subscribe()
@@ -133,7 +132,16 @@ open class SourceDetailsVModel(application: Application) : BViewModel<BRepositor
                 password = pwd!!
                 if (!TextUtils.isEmpty(password) && password.length == 6) {
                     getInfoPay(info_id, password)
+
+
                     mNormalPopup.dismiss()
+                    //关闭虚拟键盘
+                    try {
+                        val runtime = Runtime.getRuntime()
+                        runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK)
+                    } catch (e: IOException) {
+                        Log.e("Exception when doBack", e.toString())
+                    }
                 }
 
             }
@@ -145,7 +153,18 @@ open class SourceDetailsVModel(application: Application) : BViewModel<BRepositor
                 password = pwd!!
                 if (!TextUtils.isEmpty(password) && password.length == 6) {
                     getInfoPay(info_id, password)
+//                    payPwdEditText.onWindowFocusChanged(true)
+//                    VerifyUtils.isHideKeyboard(repository().context!!)
+
                     mNormalPopup.dismiss()
+
+                    try {
+                        val runtime = Runtime.getRuntime()
+                        runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK)
+                    } catch (e: IOException) {
+                        Log.e("Exception when doBack", e.toString())
+                    }
+
                 }
             }
 

+ 28 - 0
app/src/main/java/com/quansu/heifengwuliu/vmodel/WaybillDetailsVModel.kt

@@ -9,6 +9,8 @@ import android.content.Intent
 import android.net.Uri
 import android.os.Bundle
 import android.text.TextUtils
+import android.util.Log
+import android.view.KeyEvent
 import android.view.LayoutInflater
 import android.widget.*
 import androidx.databinding.Bindable
@@ -34,6 +36,7 @@ import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.config.MIntentAction
 import com.quansu.heifengwuliu.model.WaybillDetails
 import com.quansu.heifengwuliu.utils.ChosePhotoUtils
+import com.quansu.heifengwuliu.utils.VerifyUtils
 import com.quansu.heifengwuliu.utils.net.NetEngine
 import com.quansu.heifengwuliu.view.PasswordView
 import com.yanzhenjie.permission.Action
@@ -45,6 +48,7 @@ import com.ysnows.base.model.PositionBean
 import com.ysnows.base.route.IGaode
 import com.ysnows.base.utils.UiSwitch
 import kotlinx.coroutines.launch
+import java.io.IOException
 import java.util.*
 
 
@@ -528,6 +532,13 @@ open class WaybillDetailsVModel(application: Application) : BViewModel<BReposito
                     }
                     getInfoPay(money, order_id, password)
                     mNormalPopup.dismiss()
+                    //关闭虚拟键盘
+                    try {
+                        val runtime = Runtime.getRuntime()
+                        runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK)
+                    } catch (e: IOException) {
+                        Log.e("Exception when doBack", e.toString())
+                    }
                 }
 
             }
@@ -545,7 +556,16 @@ open class WaybillDetailsVModel(application: Application) : BViewModel<BReposito
                         return
                     }
                     getInfoPay(money, order_id, password)
+
                     mNormalPopup.dismiss()
+
+                    //关闭虚拟键盘
+                    try {
+                        val runtime = Runtime.getRuntime()
+                        runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK)
+                    } catch (e: IOException) {
+                        Log.e("Exception when doBack", e.toString())
+                    }
                 }
             }
 
@@ -562,6 +582,14 @@ open class WaybillDetailsVModel(application: Application) : BViewModel<BReposito
             if (!TextUtils.isEmpty(password) && password.length == 6) {
                 getInfoPay(money, order_id, password)
                 mNormalPopup.dismiss()
+
+                //关闭虚拟键盘
+                try {
+                    val runtime = Runtime.getRuntime()
+                    runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK)
+                } catch (e: IOException) {
+                    Log.e("Exception when doBack", e.toString())
+                }
             } else {
                 toast("请输入支付密码")
                 return@setOnClickListener

+ 24 - 0
app/src/main/res/layout/fragment_index.xml

@@ -67,6 +67,7 @@
             <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
                 android:id="@+id/refresh_layout"
                 android:layout_width="match_parent"
+
                 android:layout_height="match_parent"
                 android:layout_marginTop="12dp"
                 >
@@ -293,6 +294,29 @@
                                 android:layout_width="wrap_content"
                                 android:layout_height="wrap_content"
                                 android:layout_marginTop="14dp"
+                                android:text="商品类型"
+                                android:textColor="#353637"
+                                android:textSize="14sp" />
+
+                            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton
+                                android:id="@+id/but_goods_type"
+                                android:layout_width="97dp"
+                                android:layout_height="28dp"
+                                android:layout_marginTop="10dp"
+                                android:hint="请选择商品类型"
+                                android:text="@{vm.goodsName}"
+                                android:textColor="#FFBC00"
+                                android:textColorHint="#FFBC00"
+                                android:textSize="12sp"
+                                app:qmui_backgroundColor="#FFF9E9"
+                                app:qmui_borderColor="#FFF9E9"
+                                app:qmui_radius="4dp" />
+
+
+                            <TextView
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="14dp"
                                 android:text="装货时间段"
                                 android:textColor="#353637"
                                 android:textSize="14sp" />

+ 23 - 0
app/src/main/res/layout/fragment_waybill.xml

@@ -308,6 +308,29 @@
                                 app:qmui_borderColor="#FFF9E9"
                                 app:qmui_radius="4dp" />
 
+                            <TextView
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="14dp"
+                                android:text="商品类型"
+                                android:textColor="#353637"
+                                android:textSize="14sp" />
+
+                            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton
+                                android:id="@+id/but_goods_type"
+                                android:layout_width="97dp"
+                                android:layout_height="28dp"
+                                android:layout_marginTop="10dp"
+                                android:hint="请选择商品类型"
+                                android:text="@{vm.goodsName}"
+                                android:onClick="@{v->vm.toGoodsType()}"
+                                android:textColor="#FFBC00"
+                                android:textColorHint="#FFBC00"
+                                android:textSize="12sp"
+                                app:qmui_backgroundColor="#FFF9E9"
+                                app:qmui_borderColor="#FFF9E9"
+                                app:qmui_radius="4dp" />
+
 
                             <TextView
                                 android:layout_width="wrap_content"