Parcourir la source

1.再来一单。

石慧云 il y a 4 ans
Parent
commit
02f2512a61

+ 12 - 0
app/src/main/java/com/quansu/heifengwuliu/activity/HomeActivity.kt

@@ -5,12 +5,17 @@ import android.os.Bundle
 import android.util.Log
 import androidx.core.content.ContextCompat
 import androidx.lifecycle.Observer
+import com.google.gson.Gson
+import com.hwangjr.rxbus.annotation.Subscribe
+import com.hwangjr.rxbus.annotation.Tag
 import com.quansu.heifengwuliu.R
 import com.quansu.heifengwuliu.base.MBActivity
+import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.databinding.ActivityHomeBinding
 import com.quansu.heifengwuliu.fragment.DeliverGoodsFragment
 import com.quansu.heifengwuliu.fragment.MineFragment
 import com.quansu.heifengwuliu.fragment.WayBillFragment
+import com.quansu.heifengwuliu.model.DataInfoBean
 import com.quansu.heifengwuliu.repository.HomeRepository
 import com.quansu.heifengwuliu.vmodel.HomeVModel
 import com.ysnows.base.base.BRepository
@@ -108,4 +113,11 @@ class HomeActivity : MBActivity<HomeVModel, ActivityHomeBinding>() {
         get() = true
 
 
+    @Subscribe(tags = [Tag(ConfigRx.ADD_ADAIN)])
+    fun getAgainDatas(json: String) {
+        //再来一单 切换到货源界面
+        binding.mainMenu.switchTab(0)
+
+    }
+
 }

+ 6 - 0
app/src/main/java/com/quansu/heifengwuliu/activity/SourceDetailsActivity.kt

@@ -17,6 +17,7 @@ import com.quansu.heifengwuliu.vmodel.SourceDetailsVModel
  */
 class SourceDetailsActivity: MBActivity<SourceDetailsVModel, ActivitySourcedetailsBinding>() {
     var type=1//0运单详情(显示运输轨迹按钮,下一步按钮) 1 货源详情(取消发布 再来一单 接单车辆)
+
     override fun __before() {
         super.__before()
         var type=intent?.extras?.getInt("type", 1)
@@ -27,6 +28,8 @@ class SourceDetailsActivity: MBActivity<SourceDetailsVModel, ActivitySourcedetai
     override fun initCreate(savedInstanceState: Bundle?) {
         super.initCreate(savedInstanceState)
         vm.type.value=type
+        vm.again= intent?.extras?.getInt("again", 0)!!
+
         var info_id=intent?.extras?.getString("info_id", "")
 
         if(!TextUtils.isEmpty(info_id)) {
@@ -74,6 +77,9 @@ class SourceDetailsActivity: MBActivity<SourceDetailsVModel, ActivitySourcedetai
         return SourceDetailsVModel::class.java
     }
 
+    override val isRxbus: Boolean
+        get() = true
+
 
 
 

+ 208 - 131
app/src/main/java/com/quansu/heifengwuliu/adapter/CarEnterAdapter.kt

@@ -3,18 +3,17 @@ package com.quansu.heifengwuliu.adapter
 import android.text.Editable
 import android.text.TextUtils
 import android.text.TextWatcher
-import android.util.Log
 import android.view.View
+import android.view.View.OnFocusChangeListener
 import android.widget.EditText
 import com.chad.library.adapter.base.viewholder.BaseDataBindingHolder
-import com.hwangjr.rxbus.RxBus
 import com.qmuiteam.qmui.widget.dialog.QMUIDialog
 import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction
 import com.quansu.heifengwuliu.R
-import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.databinding.ItemOutcarBinding
 import com.quansu.heifengwuliu.inte.ChoiceData
 import com.quansu.heifengwuliu.inte.ChoiceListData
+import com.quansu.heifengwuliu.inte.onTextChangeListener
 import com.quansu.heifengwuliu.model.SelectData
 import com.quansu.heifengwuliu.model.bean.ReceiveBean
 import com.quansu.heifengwuliu.utils.PopuListUtils
@@ -23,32 +22,51 @@ import com.quansu.heifengwuliu.vmodel.OwnerMoreVModel
 import com.ysnows.base.base.BAdapter
 import java.text.DecimalFormat
 
+
 class CarEnterAdapter(val vm: OwnerMoreVModel) : BAdapter<ReceiveBean, BaseDataBindingHolder<ItemOutcarBinding>>(R.layout.item_outcar) {
 
     var goodsTypeList = ArrayList<SelectData>()
     var numsTypeList = ArrayList<String>()
 
-    var oldnumber=""
-    var oldprice=""
-    var oldtotal=""
+    var oldnumber = ""
+    var oldprice = ""
+    var oldtotal = ""
+    var oldsumtotal = ""
+
+    var oldname = ""
+    var oldphone = ""
+    var oldaddress=""
+    var oldgoods=""
+
+
+
 
-    fun setData( list:ArrayList<SelectData>,unitlist:ArrayList<String>){
-        this.goodsTypeList=list
-        this.numsTypeList=unitlist
+    private var mTextListener: onTextChangeListener? = null
 
+    //设置自定义接口成员变量
+    fun setOnTextChangeListener(onTextChangeListener: onTextChangeListener) {
+        this.mTextListener = onTextChangeListener
     }
+
+    fun setData(list: ArrayList<SelectData>, unitlist: ArrayList<String>) {
+        this.goodsTypeList = list
+        this.numsTypeList = unitlist
+
+    }
+
     override fun convert(holder: BaseDataBindingHolder<ItemOutcarBinding>, item: ReceiveBean) {
 
-        holder.setIsRecyclable(false)
+        //holder.setIsRecyclable(false)
+
         holder.dataBinding?.item = item
-        holder.dataBinding?.vm=vm
-        holder.dataBinding?.position=holder.adapterPosition
+        holder.dataBinding?.vm = vm
+        holder.dataBinding?.position = holder.adapterPosition
 
 
-        if(holder.adapterPosition==0){
-            holder.dataBinding?.llDelete!!.visibility =  View.GONE
-        }else{
-            holder.dataBinding?.llDelete!!.visibility =  View.VISIBLE
+        if (holder.adapterPosition == 0) {
+            holder.dataBinding?.llDelete!!.visibility = View.GONE
+        } else {
+            holder.dataBinding?.llDelete!!.visibility = View.VISIBLE
         }
 
 
@@ -58,7 +76,7 @@ class CarEnterAdapter(val vm: OwnerMoreVModel) : BAdapter<ReceiveBean, BaseDataB
                 override fun onRestuse(time: String?) {
                     if (time != null) {
                         holder.dataBinding?.tvChoseTime!!.text = time
-                        item.time=time
+                        item.time = time
                     }
                 }
             })
@@ -71,16 +89,15 @@ class CarEnterAdapter(val vm: OwnerMoreVModel) : BAdapter<ReceiveBean, BaseDataB
             QMUIDialog.MessageDialogBuilder(context)
                     .setTitle("提示")
                     .setMessage("确定要删除该地址么")
-                    .addAction("取消", QMUIDialogAction.ActionListener(){
-                        dialog, index ->
+                    .addAction("取消", QMUIDialogAction.ActionListener() { dialog, index ->
                         dialog.dismiss()
                     })
-                    .addAction("确定", QMUIDialogAction.ActionListener(){
-                        dialog, index ->
-                        var list=data as ArrayList<ReceiveBean>
+                    .addAction("确定", QMUIDialogAction.ActionListener() { dialog, index ->
+                        var list = data as ArrayList<ReceiveBean>
                         list.removeAt(holder.adapterPosition)
                         notifyItemRemoved(holder.adapterPosition)
-                        RxBus.get().post(ConfigRx.SUM_AGAIN, "")
+
+                        mTextListener!!.onTextChanged(0, "", -1)
                         dialog.dismiss()
                     })
                     .show()
@@ -90,12 +107,11 @@ class CarEnterAdapter(val vm: OwnerMoreVModel) : BAdapter<ReceiveBean, BaseDataB
         holder.dataBinding?.llGoodsType!!.setOnClickListener {
 
             PopuListUtils.showQMUIPopup(context, holder.dataBinding?.tvGoodsType!!, goodsTypeList, object : ChoiceListData {
-                override fun onRestuse(code: String?,name: String?) {
-                    item.goods_type_name=name!!
-                    item.goods_type=code!!
-                    holder.dataBinding?.tvGoodsType!!.text=name
+                override fun onRestuse(code: String?, name: String?) {
+                    item.goods_type_name = name!!
+                    item.goods_type = code!!
+                    holder.dataBinding?.tvGoodsType!!.text = name
 
-                   // notifyItemChanged(holder.adapterPosition)
 
                 }
             })
@@ -106,150 +122,211 @@ class CarEnterAdapter(val vm: OwnerMoreVModel) : BAdapter<ReceiveBean, BaseDataB
             //选择单位
             PopuListUtils.showQMUIPopup(context, holder.dataBinding?.llChoseUnits!!, numsTypeList, object : ChoiceData {
                 override fun onRestuse(name: String?) {
-                    item.nums_type=name!!
-                    holder.dataBinding?.tvChoseUnits!!.text=name
+                    item.nums_type = name!!
+                    holder.dataBinding?.tvChoseUnits!!.text = name
                 }
             })
 
         }
-        holder.dataBinding?.etSingCarNums!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var nums = editable.toString().trim()
-                if (TextUtils.isEmpty(nums)) {
-                    nums = "0"
+
+
+        //----
+        val textWatcher: TextWatcher = object : TextWatcher {
+            override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) {}
+            override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) {}
+            override fun afterTextChanged(s: Editable) {
+
+                if (holder.dataBinding?.etName!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
+                    var name = holder.dataBinding?.etName!!.text.toString().trim()
+                    if (TextUtils.isEmpty(name)) {
+                        name = ""
+                    }
+                    if (!TextUtils.isEmpty(oldname) && oldname == name) {
+                        return
+                    }
+                    oldname = name
+                    mTextListener!!.onTextChanged(holder.adapterPosition, name, 4)
+                    return
                 }
-                if(!TextUtils.isEmpty(oldnumber)&& oldnumber == nums){
+                if (holder.dataBinding?.etPhone!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
+                    var phone = holder.dataBinding?.etPhone!!.text.toString().trim()
+                    if (TextUtils.isEmpty(phone)) {
+                        phone = ""
+                    }
+                    if (!TextUtils.isEmpty(oldphone) && oldphone == phone) {
+                        return
+                    }
+                    oldphone = phone
+                    mTextListener!!.onTextChanged(holder.adapterPosition, phone, 5)
                     return
                 }
-                oldnumber=nums
-                item.nums=nums
-                sumTotal(item,1, nums,
-                        holder.dataBinding?.etSingCarNums!!,holder.dataBinding?.etSingCarPrice!!,holder.dataBinding?.etSingCarTotal!!)
-
-            }
-        })
-        holder.dataBinding?.etSingCarPrice!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var price = editable.toString().trim()
-                if (TextUtils.isEmpty(price)) {
-                    price = "0"
+                if (holder.dataBinding?.etDetailedAddress!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
+                    var address = holder.dataBinding?.etDetailedAddress!!.text.toString().trim()
+                    if (TextUtils.isEmpty(address)) {
+                        address = ""
+                    }
+                    if (!TextUtils.isEmpty(oldaddress) && oldaddress == address) {
+                        return
+                    }
+                    oldaddress = address
+                    mTextListener!!.onTextChanged(holder.adapterPosition, address, 6)
+                    return
                 }
-
-                if(!TextUtils.isEmpty(oldprice)&& oldprice == price){
+                if (holder.dataBinding?.etGoodsName!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
+                    var goods = holder.dataBinding?.etGoodsName!!.text.toString().trim()
+                    if (TextUtils.isEmpty(goods)) {
+                        goods = ""
+                    }
+                    if (!TextUtils.isEmpty(oldgoods) && oldgoods == goods) {
+                        return
+                    }
+                    oldgoods = goods
+                    mTextListener!!.onTextChanged(holder.adapterPosition, goods, 7)
                     return
                 }
-                oldprice=price
-                item.price=price
-                sumTotal(item,2, price, holder.dataBinding?.etSingCarNums!!,holder.dataBinding?.etSingCarPrice!!,holder.dataBinding?.etSingCarTotal!!)
 
 
-            }
-        })
-        holder.dataBinding?.etSingCarTotal!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var total = editable.toString().trim()
-                if (TextUtils.isEmpty(total)) {
-                    total = "0"
-                }
-                if(!TextUtils.isEmpty(oldtotal)&& oldtotal == total){
-                    return
-                }
-                oldtotal=total
-                item.total=total
 
-                RxBus.get().post(ConfigRx.SUM_AGAIN, "")
 
-            }
-        })
+                if (holder.dataBinding?.etSingCarNums!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
+                    var nums = holder.dataBinding?.etSingCarNums!!.text.toString().trim()
+                    if (TextUtils.isEmpty(nums)) {
+                        nums = "0"
+                    }
+                    if (!TextUtils.isEmpty(oldnumber) && oldnumber == nums) {
+                        return
+                    }
+                    oldnumber = nums
 
+                    mTextListener!!.onTextChanged(holder.adapterPosition, nums, 1)
 
+                }
+                if (holder.dataBinding?.etSingCarPrice!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
+                    var price = holder.dataBinding?.etSingCarPrice!!.text.toString().trim()
+                    if (TextUtils.isEmpty(price)) {
+                        price = "0"
+                    }
 
-        holder.dataBinding?.etName!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var name = editable.toString().trim()
-                item.name=name
+                    if (!TextUtils.isEmpty(oldprice) && oldprice == price) {
+                        return
+                    }
+                    oldprice = price
 
-            }
-        })
+                    mTextListener!!.onTextChanged(holder.adapterPosition, oldprice, 2)
 
-        holder.dataBinding?.etPhone!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var mobile = editable.toString().trim()
-                item.mobile=mobile
+                }
+                if (holder.dataBinding?.etSingCarTotal!!.hasFocus()) { //判断当前EditText是否有焦点在
+                    //通过接口回调将数据传递到Activity中
 
-            }
-        })
+                    var total = holder.dataBinding?.etSingCarTotal!!.text.toString().trim()
+                    if (TextUtils.isEmpty(total)) {
+                        total = "0"
+                    }
+                    if (!TextUtils.isEmpty(oldtotal) && oldtotal == total) {
+                        return
+                    }
+                    oldtotal = total
 
-        holder.dataBinding?.etDetailedAddress!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var address = editable.toString().trim()
-                item.address=address
+                    mTextListener!!.onTextChanged(holder.adapterPosition, total, 3)
+                }
 
-            }
-        })
-        holder.dataBinding?.etGoodsName!!.addTextChangedListener(object : TextWatcher {
-            override fun beforeTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun onTextChanged(charSequence: CharSequence, i: Int, i1: Int, i2: Int) {}
-            override fun afterTextChanged(editable: Editable) {
-                var goodsname = editable.toString().trim()
-                item.goods=goodsname
+                sumTotal(holder.dataBinding?.etSingCarNums!!, holder.dataBinding?.etSingCarPrice!!, holder.dataBinding?.etSingCarTotal!!)
 
             }
-        })
+        }
 
+        //设置EditText的焦点监听器判断焦点变化,当有焦点时addTextChangedListener,失去焦点时removeTextChangedListener
+        holder.dataBinding?.etSingCarNums!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etSingCarNums!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etSingCarNums!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etSingCarPrice!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etSingCarPrice!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etSingCarPrice!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etSingCarTotal!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etSingCarTotal!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etSingCarTotal!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etName!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etName!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etName!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etPhone!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etPhone!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etPhone!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etDetailedAddress!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etDetailedAddress!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etDetailedAddress!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etGoodsName!!.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
+            if (hasFocus) {
+                holder.dataBinding?.etGoodsName!!.addTextChangedListener(textWatcher)
+            } else {
+                holder.dataBinding?.etGoodsName!!.removeTextChangedListener(textWatcher)
+            }
+        }
+        holder.dataBinding?.etSingCarNums!!.addTextChangedListener(textWatcher)
+        holder.dataBinding?.etSingCarPrice!!.addTextChangedListener(textWatcher)
+        holder.dataBinding?.etSingCarTotal!!.addTextChangedListener(textWatcher)
+        holder.dataBinding?.etName!!.addTextChangedListener(textWatcher)
+        holder.dataBinding?.etPhone!!.addTextChangedListener(textWatcher)
+        holder.dataBinding?.etDetailedAddress!!.addTextChangedListener(textWatcher)
+        holder.dataBinding?.etGoodsName!!.addTextChangedListener(textWatcher)
 
 
 
     }
 
 
-
     /**
      * type:1单车运量 2单价
      * value:输入的值
      * @return
      */
-    private fun sumTotal(item: ReceiveBean,type: Int, value: String,etNums: EditText,etPrice: EditText,etTotal: EditText) {
+    private fun sumTotal(etNums: EditText, etPrice: EditText, etTotal: EditText) {
         var df = DecimalFormat("0.00")
         var total = "0"
-        if (type == 1) {//数量
-            var price = etPrice.text.toString().trim()
-            if (TextUtils.isEmpty(price)) {
-                price = "0"
-            }
-            total = df.format(value.toDouble() * price.toDouble())
-
-            item.nums=value
-            item.price=price
-            item.total=total
-        } else {//价格
-            var nums = etNums.text.toString().trim()
-            if (TextUtils.isEmpty(nums)) {
-                nums = "0"
-            }
-            var df = DecimalFormat("0.00");
-
-            total = df.format(nums.toDouble() * value.toDouble())
+        var nums = "0"
+        if (!TextUtils.isEmpty(etNums.text.toString().trim())) {
+            nums = etNums.text.toString().trim()
+        }
+        var price = "0"
+        if (!TextUtils.isEmpty(etPrice.text.toString().trim())) {
+            price = etPrice.text.toString().trim()
+        }
+        total = df.format(nums.toDouble() * price.toDouble())
 
-            item.nums=nums
-            item.price=value
-            item.total=total
+        if (!TextUtils.isEmpty(oldsumtotal) && oldsumtotal == total) {
+            return
         }
+        oldsumtotal = total
         etTotal.setText(total)
-        RxBus.get().post(ConfigRx.SUM_AGAIN, "")
-
 
     }
 

+ 3 - 1
app/src/main/java/com/quansu/heifengwuliu/config/ConfigRx.kt

@@ -14,9 +14,11 @@ object ConfigRx {
 
     const val ADD_POSITION = "ADD_POSITION" //选择位置-位置
 
-    const val SUM_AGAIN = "SUM_AGAIN" //计算一装多卸的总和
 
     const val CHOSE_CAR = "CHOSE_CAR" //选择车辆
 
+    const val ADD_ADAIN = "ADD_ADAIN" //再来一旦
+
+
 
 }

+ 29 - 5
app/src/main/java/com/quansu/heifengwuliu/fragment/DeliverGoodsFragment.kt

@@ -6,9 +6,14 @@ import android.view.LayoutInflater
 import android.view.ViewGroup
 import androidx.fragment.app.Fragment
 import androidx.fragment.app.FragmentManager
+import com.google.gson.Gson
+import com.hwangjr.rxbus.annotation.Subscribe
+import com.hwangjr.rxbus.annotation.Tag
 import com.quansu.heifengwuliu.R
 import com.quansu.heifengwuliu.base.MBFragment
+import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.databinding.FragmentDelivergoodsBinding
+import com.quansu.heifengwuliu.model.DataInfoBean
 import com.ysnows.base.base.BRepository
 import com.ysnows.base.base.BViewModel
 
@@ -33,15 +38,23 @@ class DeliverGoodsFragment : MBFragment<BViewModel<BRepository>, FragmentDeliver
         super.listeners()
 
         binding.butSingle.setOnClickListener {
+            clickType(0)
+        }
+        binding.butMore.setOnClickListener {
+            clickType(1)
+        }
+
+
+    }
+
+   private fun clickType(type:Int){
+        if(type==0){
             binding.butSingle.setTextColor(Color.parseColor("#ffffff"))
             binding.butMore.setTextColor(Color.parseColor("#292929"))
             binding.butSingle.setBackgroundResource(R.drawable.bg_chose_on)
             binding.butMore.setBackgroundResource(R.drawable.bg_chose_off)
-
-
             switchContent(0)
-        }
-        binding.butMore.setOnClickListener {
+        }else{
             binding.butSingle.setTextColor(Color.parseColor("#292929"))
             binding.butMore.setTextColor(Color.parseColor("#ffffff"))
             binding.butSingle.setBackgroundResource(R.drawable.bg_chose_off)
@@ -49,10 +62,10 @@ class DeliverGoodsFragment : MBFragment<BViewModel<BRepository>, FragmentDeliver
             switchContent(1)
         }
 
-
     }
 
 
+
     private fun initFragments() {
         val oneFragment = OwnerSingleFragment()
         val twoFragment = OwnerMoreFragment()
@@ -96,4 +109,15 @@ class DeliverGoodsFragment : MBFragment<BViewModel<BRepository>, FragmentDeliver
 
     override val isRxbus: Boolean
         get() = true
+
+
+    @Subscribe(tags = [Tag(ConfigRx.ADD_ADAIN)])
+    fun getAgainDatas(json: String) {
+        //再来一单的数据
+        var order= Gson().fromJson(json, DataInfoBean.OrderBean::class.java)
+        if(order.type==1)  clickType(0) else    clickType(1)
+
+    }
+
+
 }

+ 205 - 85
app/src/main/java/com/quansu/heifengwuliu/fragment/OwnerMoreFragment.kt

@@ -24,6 +24,7 @@ import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.config.MIntentAction
 import com.quansu.heifengwuliu.databinding.FragmentOwnermoreBinding
 import com.quansu.heifengwuliu.inte.ChoiceData
+import com.quansu.heifengwuliu.inte.onTextChangeListener
 import com.quansu.heifengwuliu.model.AddressBean
 import com.quansu.heifengwuliu.model.DataInfoBean
 import com.quansu.heifengwuliu.model.SelectData
@@ -42,17 +43,19 @@ import java.text.DecimalFormat
  *Created by shihuiyun
  *on 2020/9/11
  */
-class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(){
+class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>() {
     //新的
-    var adapter: CarEnterAdapter? =null
-    var  receiveList = ArrayList<ReceiveBean>()
+    var adapter: CarEnterAdapter? = null
+    var receiveList = ArrayList<ReceiveBean>()
+
+    var info_id: String = "0"
 
-    var info_id:String="0"
     //货物类型
     var goodsTypeList = ArrayList<SelectData>()
 
     //货物单位
     var numsTypeList = ArrayList<String>()
+
     //是否购买保险
     var insurance = ArrayList<String>()
 
@@ -70,9 +73,7 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
     var time_out: String = ""
 
     //常用司机
-    var driverList=ArrayList<String>()
-
-
+    var driverList = ArrayList<String>()
 
 
     override fun init(savedInstanceState: Bundle?) {
@@ -125,7 +126,7 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
 
         }
 
-        binding.tvPublish.setOnClickListener{
+        binding.tvPublish.setOnClickListener {
             //提交
             judgeValue()
         }
@@ -140,8 +141,8 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
 
     private fun judgeValue() {
 
-        var type_id=binding.viewHead.type_id
-        if(TextUtils.isEmpty(type_id)){
+        var type_id = binding.viewHead.type_id
+        if (TextUtils.isEmpty(type_id)) {
             toast("请选择车型!")
             return
         }
@@ -167,10 +168,10 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
         var address_out = binding.viewHead.getEtDetailedAddress()!!.text.toString().trim()
         var sendBean = SendBean(lat_out, lng_out, province_out, city_out, area_out, address_out, name_out, mobile_out, time_out, "0")
 
-        var list=adapter!!.data as ArrayList<ReceiveBean>
+        var list = adapter!!.data as ArrayList<ReceiveBean>
 
-        var total:Double=0.00
-        for(item in list){
+        var total: Double = 0.00
+        for (item in list) {
             if (TextUtils.isEmpty(item.province)) {
                 toast("请选择卸货地址!")
                 return
@@ -208,40 +209,39 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
 
         }
 
-        if (is_agree==0) {
+        if (is_agree == 0) {
             toast("请阅读并同意《平台运输协议》")
             return
         }
-        var carnums="1"//默认一辆车
-        if(TextUtils.isEmpty(carnums)){
+        var carnums = "1"//默认一辆车
+        if (TextUtils.isEmpty(carnums)) {
             toast("请输入所需车辆数量")
             return
         }
-        var data=binding.etData.text.toString()
+        var data = binding.etData.text.toString()
 
-        var sendList=ArrayList<SendBean>()
+        var sendList = ArrayList<SendBean>()
         sendList.add(sendBean)
-        var send= Gson().toJson(sendList)
+        var send = Gson().toJson(sendList)
 
-        var receive= Gson().toJson(list)
+        var receive = Gson().toJson(list)
 
-       // var total = binding.etSingCarTotal.text.toString().trim()
+        // var total = binding.etSingCarTotal.text.toString().trim()
 
         var df = DecimalFormat("0.00")
-        var driver=Gson().toJson(driverList)
+        var driver = Gson().toJson(driverList)
 
 
-        vm.setReleaseSource(info_id,type_id,df.format(total),driver,carnums,is_public.toString(),is_insurance.toString(),"2",
-                data,send,receive)
-
+        vm.setReleaseSource(info_id, type_id, df.format(total), driver, carnums, is_public.toString(), is_insurance.toString(), "2",
+                data, send, receive)
 
 
     }
 
-    private fun addList(){
+    private fun addList() {
 
-        var bean=ReceiveBean("","","","","","","","","",
-                "1","","","","","","","","")
+        var bean = ReceiveBean("", "", "", "", "", "", "", "", "",
+                "1", "", "", "", "", "", "", "", "")
         receiveList.add(bean)
         adapter!!.addData(bean)
         toast("添加一条")
@@ -249,10 +249,10 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
     }
 
     private fun initTab(info: DataInfoBean) {
-        binding.viewHead.setHeadData(info,childFragmentManager)
+        binding.viewHead.setHeadData(info, childFragmentManager)
 
         //设置默认装货地址-卸货地址
-        if(null!=info.default_send){
+        if (null != info.default_send) {
             binding.viewHead.getTvCity()!!.text = info.default_send.province.name + info.default_send.city.name + info.default_send.area.name
             binding.viewHead.getEtDetailedAddress()!!.setText(info.default_send.address)
             binding.viewHead.getEtName()!!.setText(info.default_send.name)
@@ -277,7 +277,7 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
         //向右
         binding.viewHead.getImgDown()!!.setOnClickListener {
             toast("222")
-            var selectViewpage =binding.viewHead.getQmViewPager()!!.currentItem
+            var selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
             if (selectViewpage < binding.viewHead.getCats().size - 1) {
                 binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage + 1
             }
@@ -301,17 +301,84 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
         vm.getDataInfo(info_id);
 
     }
-    private fun initAdapter(){
+
+    private fun initAdapter() {
         //默认一个出
-        adapter= CarEnterAdapter(vm)
-        adapter!!.setData(goodsTypeList,numsTypeList)
-        binding.recyclerView.adapter=adapter
-        var bean=ReceiveBean("","","","","","","","","",
-                "1","","","","","","","","")
+        adapter = CarEnterAdapter(vm)
+        adapter!!.setData(goodsTypeList, numsTypeList)
+        binding.recyclerView.adapter = adapter
+        var bean = ReceiveBean("", "", "", "", "", "", "", "", "",
+                "1", "", "", "", "", "", "", "", "")
         receiveList.add(bean)
         adapter!!.addData(bean)
 
+
+        adapter!!.setOnTextChangeListener(object: onTextChangeListener{
+            override fun onTextChanged(pos: Int, str: String?, type: Int) {
+                var list = adapter!!.data as ArrayList<ReceiveBean>
+                var df = DecimalFormat("0.00")
+
+                if(type==4||type==5||type==6||type==7){
+
+                    when (type){
+                        4->list[pos].name=str.toString()
+                        5->list[pos].mobile=str.toString()
+                        6->list[pos].address=str.toString()
+                        7->list[pos].goods=str.toString()
+                        else -> ""
+                    }
+
+                    return
+                }
+
+                if(type==1){//改变的是单车运量
+                    var nums="0"
+                    if(!TextUtils.isEmpty(str)){
+                        nums= str.toString()
+                        list[pos].nums=nums
+                    }
+
+                    var price="0"
+                    if(!TextUtils.isEmpty(list[pos].price)){
+                        price=list[pos].price
+                    }
+                    var  total = df.format(list[pos].nums.toDouble() * price.toDouble())
+                    list[pos].total=total
+
+                }
+                if(type==2) {//改变的是单价
+                    var price="0"
+                    if(!TextUtils.isEmpty(str)){
+                        price= str.toString()
+                        list[pos].price=price
+                    }
+                    var num="0"
+                    if(!TextUtils.isEmpty(list[pos].nums)){
+                        num=list[pos].nums
+                    }
+                    var  total = df.format(num.toDouble() * list[pos].price.toDouble())
+                    list[pos].total=total
+
+                }
+
+                if(type==3) {//改变的是总价
+                    var total="0"
+                    if(!TextUtils.isEmpty(str)){
+                        total= str.toString()
+                    }
+                    list[pos].total=total
+                }
+                setSumAgain()
+
+            }
+
+        })
+
+
+
+
     }
+
     private fun initData() {
 
         insurance.add("是")
@@ -349,9 +416,8 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
     }
 
 
-
     override fun binding(inflater: LayoutInflater, container: ViewGroup?): FragmentOwnermoreBinding {
-       return  FragmentOwnermoreBinding.inflate(layoutInflater)
+        return FragmentOwnermoreBinding.inflate(layoutInflater)
     }
 
     override fun vmClass(): Class<OwnerMoreVModel> {
@@ -377,11 +443,11 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
 
                     binding.viewHead.getTvCity()!!.text = name
                 } else {
-                var list=adapter!!.data as ArrayList<ReceiveBean>
-                    list[vm.position].area=bundle.getString("area_code")
-                    list[vm.position].province=bundle.getString("province_code")
-                    list[vm.position].city=bundle.getString("city_code")
-                    list[vm.position].pca=name
+                    var list = adapter!!.data as ArrayList<ReceiveBean>
+                    list[vm.position].area = bundle.getString("area_code")
+                    list[vm.position].province = bundle.getString("province_code")
+                    list[vm.position].city = bundle.getString("city_code")
+                    list[vm.position].pca = name
                     adapter!!.notifyItemChanged(vm.position)
 
                 }
@@ -408,28 +474,26 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
                     city_out = item.city!!.code.toString()
 
                 } else {
-                    var list=adapter!!.data as ArrayList<ReceiveBean>
-                    list[vm.position].area=item.area!!.code.toString()
-                    list[vm.position].province=item.province!!.code.toString()
-                    list[vm.position].city=item.city!!.code.toString()
-                    list[vm.position].lat=item.lat.toString()
-                    list[vm.position].lng=item.lng.toString()
+                    var list = adapter!!.data as ArrayList<ReceiveBean>
+                    list[vm.position].area = item.area!!.code.toString()
+                    list[vm.position].province = item.province!!.code.toString()
+                    list[vm.position].city = item.city!!.code.toString()
+                    list[vm.position].lat = item.lat.toString()
+                    list[vm.position].lng = item.lng.toString()
 
-                    list[vm.position].address=item.address.toString()
-                    list[vm.position].address=item.address.toString()
-                    list[vm.position].address=item.address.toString()
-                    list[vm.position].address=item.address.toString()
+                    list[vm.position].address = item.address.toString()
+                    list[vm.position].address = item.address.toString()
+                    list[vm.position].address = item.address.toString()
+                    list[vm.position].address = item.address.toString()
 
-                    list[vm.position].pca=item.province!!.name.toString()+item.city!!.name.toString()+item.area!!.name.toString()
+                    list[vm.position].pca = item.province!!.name.toString() + item.city!!.name.toString() + item.area!!.name.toString()
 
-                    list[vm.position].name=item.name.toString()
-                    list[vm.position].mobile=item.mobile.toString()
+                    list[vm.position].name = item.name.toString()
+                    list[vm.position].mobile = item.mobile.toString()
 
                     adapter!!.notifyItemChanged(vm.position)
 
 
-//
-//
                 }
 
             }
@@ -438,15 +502,15 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
 
         }
 
-        if (MIntentAction.REQUEST_CODE_THREE == requestCode && resultCode == Activity.RESULT_OK){
+        if (MIntentAction.REQUEST_CODE_THREE == requestCode && resultCode == Activity.RESULT_OK) {
             //常用司机
             val bundle = data!!.extras
             if (null != bundle) {
                 driverList.clear()
 
-                var  arr=bundle.getSerializable("driver") as ArrayList<String>
+                var arr = bundle.getSerializable("driver") as ArrayList<String>
                 driverList.addAll(arr)
-                binding.tvDriver.text="已指定"+driverList.size+"人"
+                binding.tvDriver.text = "已指定" + driverList.size + "人"
 
             }
 
@@ -457,7 +521,7 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
     }
 
     override val isRxbus: Boolean
-        get() =true
+        get() = true
 
 
     @Subscribe(tags = [Tag(ConfigRx.ADD_POSITION)])
@@ -465,21 +529,20 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
 
         if (vm.type == 2) {
 
-            var list=adapter!!.data as ArrayList<ReceiveBean>
+            var list = adapter!!.data as ArrayList<ReceiveBean>
 
-            Log.e("-shy-", "position= "+vm.position )
+            Log.e("-shy-", "position= " + vm.position)
 
-            list[vm.position].area= bean.areacode
-            list[vm.position].province=bean.areacode.substring(0, 2) + "0000"
-            list[vm.position].city=bean.areacode.substring(0, 4) + "00"
-            list[vm.position].lat=bean.latitude
-            list[vm.position].lng=bean.longitude
-            list[vm.position].address=bean.position
-            list[vm.position].pca=bean.provincename + bean.cityname + bean.areaname
+            list[vm.position].area = bean.areacode
+            list[vm.position].province = bean.areacode.substring(0, 2) + "0000"
+            list[vm.position].city = bean.areacode.substring(0, 4) + "00"
+            list[vm.position].lat = bean.latitude
+            list[vm.position].lng = bean.longitude
+            list[vm.position].address = bean.position
+            list[vm.position].pca = bean.provincename + bean.cityname + bean.areaname
             adapter!!.notifyItemChanged(vm.position)
 
 
-
         } else {
 
             lat_out = bean.latitude
@@ -492,29 +555,86 @@ class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(
         }
     }
 
-
-    @Subscribe(tags = [Tag(ConfigRx.SUM_AGAIN)])
-    fun setSumAgain(type:String) {
-        //重新计算总和
-
+    fun setSumAgain() {
         //重新计算总和
-        var list=adapter!!.data as ArrayList<ReceiveBean>
+        var list = adapter!!.data as ArrayList<ReceiveBean>
         var df = DecimalFormat("0.00");
-        var total:Double = 0.00
-        for(item in list){
-            if(TextUtils.isEmpty(item.total)){
-                item.total="0"
+        var total: Double = 0.00
+        for (item in list) {
+            if (TextUtils.isEmpty(item.total)) {
+                item.total = "0"
             }
-            Log.e("-shy-", "item.total=: "+item.total )
+            Log.e("-shy-", "item.total=: " + item.total)
             total += item.total.toDouble()
 
         }
         binding.tvTotalMoney.text = df.format(total)
 
+    }
+
+    @Subscribe(tags = [Tag(ConfigRx.ADD_ADAIN)])
+    fun getAgainDatas(json: String) {
+        //再来一单的数据
+        var order = Gson().fromJson(json, DataInfoBean.OrderBean::class.java)
+        if (order.type == 2) {
+            //车辆
+            binding.viewHead.setAgain(order.type_info.type_id)
+            //设置默认装货地址-卸货地址
+            if (null != order.send) {
+                binding.viewHead.getTvCity()!!.text = order.send[0].province.name + order.send[0].city.name + order.send[0].area.name
+                binding.viewHead.getEtDetailedAddress()!!.setText(order.send[0].address)
+                binding.viewHead.getEtName()!!.setText(order.send[0].name)
+                binding.viewHead.getEtPhone()!!.setText(order.send[0].mobile)
+                binding.viewHead.getTvChoseTime()!!.text = order.send[0].time
+                lat_out = order.send[0].lat.toString()
+                lng_out = order.send[0].lng.toString()
+                area_out = order.send[0].area.code.toString()
+                province_out = order.send[0].province!!.code.toString()
+                city_out = order.send[0].city!!.code.toString()
+                time_out = order.send[0].time
+            }
+            if (null != order.receive) {
+                receiveList.clear()
+
+                for (item in order.receive) {
+
+                    var pca = item.province.name + item.city.name + item.area.name
+
+                    var bean = ReceiveBean(item.lat, item.lng, item.province.code, item.city.code, item.area.code, item.address, item.name, item.mobile, item.time,
+                            "1", item.goods, item.goods_type.code, item.nums, item.nums_type.name, item.price, item.total, pca, item.goods_type.name)
+                    receiveList.add(bean)
+
+                }
+                adapter!!.setList(receiveList)
+
+            }
+            //总金额
+            binding.tvTotalMoney.setText(order.total)
+
+            //保险,常用司机
 
-        Log.e("-shy-", "list="+Gson().toJson(list))
+            if (order.is_insurance == "0") {
+                vm.insurance.value = "否"
+                is_insurance = 0
+            } else {
+                vm.insurance.value = "是"
+                is_insurance = 1
+            }
+
+            if (order.driver.isNotEmpty()) {
+                binding.tvDriver.text = "已指定" + driverList.size + "人"
+            }
+            //备注
+            binding.etData.setText(order.data)
+            //默认我已经阅读
+            is_agree = 1
+            vm.isAgree.value = is_agree
+            //是否发布到大厅
+            is_public = order.is_public.toInt()
+            vm.isPush.value = is_public
 
 
+        }
     }
 
 

+ 78 - 3
app/src/main/java/com/quansu/heifengwuliu/fragment/OwnerSingleFragment.kt

@@ -10,7 +10,6 @@ import android.view.LayoutInflater
 import android.view.ViewGroup
 import androidx.lifecycle.Observer
 import com.google.gson.Gson
-import com.google.gson.reflect.TypeToken
 import com.hwangjr.rxbus.annotation.Subscribe
 import com.hwangjr.rxbus.annotation.Tag
 import com.quansu.heifengwuliu.activity.AddressActivity
@@ -394,7 +393,6 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
         }
         //向右
         binding.viewHead.getImgDown()!!.setOnClickListener {
-            toast("222")
            var  selectViewpage =binding.viewHead.getQmViewPager()!!.currentItem
             if (selectViewpage < binding.viewHead.getCats().size - 1) {
                 binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage + 1
@@ -551,7 +549,7 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
             if (null != bundle) {
                 driverList.clear()
 
-               var  arr=bundle.getSerializable("driver") as ArrayList<String>
+                var  arr=bundle.getSerializable("driver") as ArrayList<String>
                 driverList.addAll(arr)
                 binding.tvDriver.text="已指定"+driverList.size+"人"
 
@@ -636,6 +634,83 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
         binding.etSingCarNums.setText(weight)
     }
 
+    @Subscribe(tags = [Tag(ConfigRx.ADD_ADAIN)])
+    fun getAgainDatas(json: String) {
+        //再来一单的数据
+        var order= Gson().fromJson(json, DataInfoBean.OrderBean::class.java)
+        if(order.type==1){
+            //车辆
+            binding.viewHead.setAgain(order.type_info.type_id)
+            //设置默认装货地址-卸货地址
+            if(null!=order.send){
+                binding.viewHead.getTvCity()!!.text = order.send[0].province.name + order.send[0].city.name + order.send[0].area.name
+                binding.viewHead.getEtDetailedAddress()!!.setText(order.send[0].address)
+                binding.viewHead.getEtName()!!.setText(order.send[0].name)
+                binding.viewHead.getEtPhone()!!.setText(order.send[0].mobile)
+                binding.viewHead.getTvChoseTime()!!.text = order.send[0].time
+                lat_out = order.send[0].lat.toString()
+                lng_out = order.send[0].lng.toString()
+                area_out = order.send[0].area.code.toString()
+                province_out = order.send[0].province!!.code.toString()
+                city_out = order.send[0].city!!.code.toString()
+                time_out=order.send[0].time
+            }
+            if(null!=order.receive){
+
+                binding.viewEnter.getTvCity()!!.text = order.receive[0].province?.name + order.receive[0].city?.name + order.receive[0].area?.name
+                binding.viewEnter.getEtDetailedAddress()!!.setText(order.receive[0].address)
+                binding.viewEnter.getEtName()!!.setText(order.receive[0].name)
+                binding.viewEnter.getEtPhone()!!.setText(order.receive[0].mobile)
+                binding.viewEnter.getTvChoseTime()!!.text = order.receive[0].time
+                lat_in = order.receive[0].lat.toString()
+                lng_in = order.receive[0].lng.toString()
+                area_in = order.receive[0].area!!.code.toString()
+                province_in = order.receive[0].province!!.code.toString()
+                city_in = order.receive[0].city!!.code.toString()
+                time_in = order.receive[0].time
+
+                //货物信息
+                binding.etGoodsName.setText( order.receive[0].goods)
+                //货物类型
+                goods_type_code=order.receive[0].goods_type.code
+                vm.goodstype.value=order.receive[0].goods_type.name
+                //单车运量
+                binding.etSingCarNums.setText(order.receive[0].nums)
+                vm.unit.value=order.receive[0].nums_type.name
+                //单价
+                binding.etSingCarPrice.setText(order.receive[0].price)
+                //总价
+                binding.etSingCarTotal.setText(order.receive[0].total)
+            }
+            //保险,常用司机
+
+            if(order.is_insurance == "0") {
+                vm.insurance.value = "否"
+                is_insurance = 0
+            }else{
+                vm.insurance.value = "是"
+                is_insurance = 1
+            }
+
+            if(order.driver.isNotEmpty()) {
+                binding.tvDriver.text="已指定"+driverList.size+"人"
+            }
+            //备注
+            binding.etData.setText(order.data)
+            //默认我已经阅读
+            is_agree = 1
+            vm.isAgree.value = is_agree
+            //是否发布到大厅
+            is_public = order.is_public.toInt()
+            vm.isPush.value = is_public
+            //车辆
+            binding.etCarNums.setText(order.nums)
+
+        }
+
+    }
+
+
 
 }
 

+ 9 - 0
app/src/main/java/com/quansu/heifengwuliu/inte/onTextChangeListener.kt

@@ -0,0 +1,9 @@
+package com.quansu.heifengwuliu.inte
+
+/**
+ *Created by shihuiyun
+ *on 2020/9/19
+ */
+interface onTextChangeListener {
+    fun onTextChanged( pos: Int,  str: String?,type:Int)
+}

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

@@ -46,6 +46,7 @@ data class DataInfoBean(var goods_type: List<SelectData>, var nums_type: List<St
                          var uid: String, var price: String,
                          var total: String,
                          var nums: String, var is_public: String,
+                         var driver: List<String>,
                          var is_insurance: String, var type: Int,
                          var data: String, var pay_time: String,
                          var create_time: String, var update_time: String,

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

@@ -34,6 +34,7 @@ class OrderListVModel : BRViewModel<BRRepository>() {
         UiSwitch.bundle(repository().context, SourceDetailsActivity::class.java, Bundle().apply {
             putString("info_id", info_id)
             putInt("type", 1)
+            putInt("again", 1)
         })
 
 

+ 1 - 0
app/src/main/java/com/quansu/heifengwuliu/vmodel/OwnerMoreVModel.kt

@@ -83,6 +83,7 @@ open class OwnerMoreVModel : BViewModel<BRepository>() {
                         UiSwitch.bundle(repository().context, SourceDetailsActivity::class.java, Bundle().apply {
                             putString("info_id", bean.info_id)
                             putInt("type",1)
+                            putInt("again", 0)
                         })
 
                     }

+ 1 - 0
app/src/main/java/com/quansu/heifengwuliu/vmodel/OwnerSingleVModel.kt

@@ -86,6 +86,7 @@ open class OwnerSingleVModel : BViewModel<BRepository>() {
                         UiSwitch.bundle(repository().context, SourceDetailsActivity::class.java, Bundle().apply {
                             putString("info_id", bean.info_id)
                             putInt("type",1)
+                            putInt("again", 0)
                         })
 
                     }

+ 21 - 3
app/src/main/java/com/quansu/heifengwuliu/vmodel/SourceDetailsVModel.kt

@@ -8,6 +8,8 @@ import android.view.LayoutInflater
 import android.widget.FrameLayout
 import android.widget.LinearLayout
 import androidx.lifecycle.MutableLiveData
+import com.google.gson.Gson
+import com.hwangjr.rxbus.RxBus
 import com.qmuiteam.qmui.layout.QMUIFrameLayout
 import com.qmuiteam.qmui.skin.QMUISkinHelper
 import com.qmuiteam.qmui.skin.QMUISkinValueBuilder
@@ -18,6 +20,7 @@ import com.qmuiteam.qmui.widget.popup.QMUIPopups
 import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton
 import com.quansu.heifengwuliu.R
 import com.quansu.heifengwuliu.activity.VehicleListActivity
+import com.quansu.heifengwuliu.config.ConfigRx
 import com.quansu.heifengwuliu.model.DataInfoBean
 import com.quansu.heifengwuliu.utils.net.NetEngine
 import com.quansu.heifengwuliu.view.PasswordView
@@ -32,6 +35,9 @@ open class SourceDetailsVModel : BViewModel<BRepository>() {
 
     //0运单详情(显示运输轨迹按钮,下一步按钮) 1 货源详情(取消发布 再来一单 接单车辆)
     val type: MutableLiveData<Int> = MutableLiveData<Int>()
+    //1:需要复制信息再来一单 0直接关闭就行
+    var again:Int=0
+
 
 
     fun getInfo(info_id: String) {
@@ -50,7 +56,7 @@ open class SourceDetailsVModel : BViewModel<BRepository>() {
     fun getInfoPay(info_id: String,pay_pwd:String) {
         repository().lreq(NetEngine.service.infoGetPay(info_id,pay_pwd))
                 .doOnNext() {
-                    if (it.ok()) {
+                    if (it.ok(true)) {
                         toast(it.msg())
                     }
                 }
@@ -138,8 +144,20 @@ open class SourceDetailsVModel : BViewModel<BRepository>() {
 
     fun anotherOne(){
         //再来一单
-        var con = repository().context as Activity
-        con.finish()
+        if(again==0) {
+            var con = repository().context as Activity
+            con.finish()
+        }else{
+            //发送信息-并且关闭
+
+            var order=info.value!!.order
+            RxBus.get().post(ConfigRx.ADD_ADAIN, Gson().toJson(order))
+
+            var con = repository().context as Activity
+            con.finish()
+
+
+        }
     }
 
     fun goDriverList(){

+ 17 - 0
app/src/main/java/com/quansu/heifengwuliu/widget/ShipmentHeadView.kt

@@ -38,6 +38,7 @@ class ShipmentHeadView(context: Context, attrs: AttributeSet) :BaseLinearLayout(
     private var binding: WidgetShipmentheadBinding? = null
     private var view: BView? = null
     var cats = ArrayList<String>()
+    var info: DataInfoBean? =null
 
     //车型
     var type_id=""
@@ -63,6 +64,7 @@ class ShipmentHeadView(context: Context, attrs: AttributeSet) :BaseLinearLayout(
 
     fun  setHeadData(info: DataInfoBean, fm: FragmentManager){
 
+        this.info=info
         if (null != info.car_type) {
             for (item in info.car_type) {
                 cats.add(item.type_name)
@@ -161,6 +163,21 @@ class ShipmentHeadView(context: Context, attrs: AttributeSet) :BaseLinearLayout(
     }
 
 
+    fun setAgain(type_id:String){
+        //再来一单设置数据
+        this.type_id=type_id
+        for((index,item)in info!!.car_type.withIndex()){
+            if(item.type_id == type_id){
+                binding!!.qmViewPager.currentItem = index
+                return
+            }
+        }
+
+    }
+
+
+
+
     fun getTvCity(): TextView? {
         return binding!!.tvCity
     }

+ 310 - 311
app/src/main/res/layout/activity_sourcedetails.xml

@@ -4,7 +4,9 @@
     xmlns:tools="http://schemas.android.com/tools">
 
     <data>
+
         <import type="android.view.View" />
+
         <variable
             name="vm"
             type="com.quansu.heifengwuliu.vmodel.SourceDetailsVModel" />
@@ -18,406 +20,405 @@
         android:background="@color/color_page_bg"
         android:orientation="vertical">
 
-        <LinearLayout
+        <ScrollView
             android:layout_width="match_parent"
             android:layout_height="0dp"
             android:layout_weight="1"
-            android:orientation="vertical">
-
+            android:scrollbars="none">
 
-            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
+            <LinearLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="@dimen/dp_10"
-                android:layout_marginTop="@dimen/dp_10"
-                android:layout_marginEnd="@dimen/dp_10"
-                android:orientation="vertical"
-                android:padding="@dimen/dp_10"
-                app:qmui_backgroundColor="@color/white"
-                app:qmui_radius="@dimen/dp_10">
-
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
-
-                    <TextView
-
-                        android:layout_width="0dp"
-                        android:layout_height="wrap_content"
-                        android:layout_marginStart="@dimen/dp_10"
-                        android:layout_weight="1"
-                        android:gravity="center"
-                        android:text="@{vm.info.order.send[0].province.name+vm.info.order.send[0].city.name+vm.info.order.send[0].area.name}"
-                        android:textColor="#4D9EEB"
-                        android:textSize="@dimen/sp_15"
-                        tools:text="山东 临沂"></TextView>
+                android:layout_height="match_parent"
+                android:orientation="vertical">
 
-                    <ImageView
-                        android:layout_width="40dp"
-                        android:layout_height="20dp"
-                        android:src="@drawable/ic_arrow"></ImageView>
-
-                    <TextView
-                        android:id="@+id/tv_city_in"
-                        android:layout_width="0dp"
-                        android:layout_height="wrap_content"
-                        android:layout_marginEnd="@dimen/dp_10"
-                        android:layout_weight="1"
-                        android:gravity="center"
-                        android:text="@{vm.info.order.receive[vm.info.order.receive.size()-1].province.name+vm.info.order.receive[vm.info.order.receive.size()-1].city.name+vm.info.order.receive[vm.info.order.receive.size()-1].area.name}"
-                        android:textColor="#BC5B55"
-                        android:textSize="@dimen/sp_15"
-                        tools:text="河北 唐山"></TextView>
 
-
-                </LinearLayout>
-
-
-                <androidx.recyclerview.widget.RecyclerView
-                    android:id="@+id/recycler_view_out"
+                <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
                     android:layout_width="match_parent"
-                    app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
-                    tools:listitem="@layout/item_peopleinfo"
-                    android:layout_height="wrap_content">
-                </androidx.recyclerview.widget.RecyclerView>
-
-
-                <androidx.recyclerview.widget.RecyclerView
-                    android:id="@+id/recycler_view_in"
-                    android:layout_width="match_parent"
-                    app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
-                    tools:listitem="@layout/item_enterinfo"
-                    android:layout_height="wrap_content">
-                </androidx.recyclerview.widget.RecyclerView>
-
-
-            </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
-
-
-
-            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="@dimen/dp_10"
-                android:layout_marginTop="@dimen/dp_10"
-                android:layout_marginEnd="@dimen/dp_10"
-                android:orientation="horizontal"
-                android:padding="@dimen/dp_10"
-                android:gravity="center_vertical"
-                android:visibility="@{vm.type==0?View.VISIBLE :View.GONE}"
-                app:layout_goneMarginTop="@dimen/dp_10"
-                app:qmui_backgroundColor="@color/white"
-                app:qmui_radius="@dimen/dp_10">
-
-
-                <ImageView
-                    android:layout_width="60dp"
-                    android:src="@drawable/ic_phone_enter"
-                    android:layout_height="60dp">
-
-                </ImageView>
-
-                <LinearLayout
-                    android:layout_width="0dp"
-                    android:layout_weight="1"
-                    android:orientation="vertical"
+                    android:layout_height="wrap_content"
                     android:layout_marginStart="@dimen/dp_10"
+                    android:layout_marginTop="@dimen/dp_10"
                     android:layout_marginEnd="@dimen/dp_10"
-                    android:layout_height="match_parent">
+                    android:orientation="vertical"
+                    android:padding="@dimen/dp_10"
+                    app:qmui_backgroundColor="@color/white"
+                    app:qmui_radius="@dimen/dp_10">
+
                     <LinearLayout
                         android:layout_width="match_parent"
-                        android:orientation="horizontal"
-                        android:layout_marginTop="@dimen/dp_6"
-                        android:layout_height="wrap_content">
+                        android:layout_height="wrap_content"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
 
                         <TextView
-                            android:layout_width="wrap_content"
-                            android:textSize="@dimen/sp_15"
-                            android:textColor="@color/text_title"
-                            tools:text="乔治"
-                            android:layout_height="wrap_content">
-                        </TextView>
 
-                        <TextView
                             android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginStart="@dimen/dp_10"
                             android:layout_weight="1"
+                            android:gravity="center"
+                            android:text="@{vm.info.order.send[0].province.name+vm.info.order.send[0].city.name+vm.info.order.send[0].area.name}"
+                            android:textColor="#4D9EEB"
                             android:textSize="@dimen/sp_15"
-                            android:textColor="@color/text_title"
-                            tools:text="18535965350"
-                            android:layout_marginStart="@dimen/dp_10"
-                            android:layout_height="wrap_content">
-                        </TextView>
+                            tools:text="山东 临沂"></TextView>
 
                         <ImageView
-                            android:layout_width="20dp"
-                            android:src="@drawable/ic_collect_off"
-                            android:layout_height="20dp">
-
-                        </ImageView>
+                            android:layout_width="40dp"
+                            android:layout_height="20dp"
+                            android:src="@drawable/ic_arrow"></ImageView>
 
+                        <TextView
+                            android:id="@+id/tv_city_in"
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginEnd="@dimen/dp_10"
+                            android:layout_weight="1"
+                            android:gravity="center"
+                            android:text="@{vm.info.order.receive[vm.info.order.receive.size()-1].province.name+vm.info.order.receive[vm.info.order.receive.size()-1].city.name+vm.info.order.receive[vm.info.order.receive.size()-1].area.name}"
+                            android:textColor="#BC5B55"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="河北 唐山"></TextView>
 
 
                     </LinearLayout>
 
-                    <LinearLayout
+                    <RelativeLayout
                         android:layout_width="match_parent"
-                        android:orientation="horizontal"
-                        android:layout_marginTop="@dimen/dp_4"
                         android:layout_height="wrap_content">
+                    <androidx.recyclerview.widget.RecyclerView
+                        android:id="@+id/recycler_view_out"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
+                        tools:listitem="@layout/item_peopleinfo">
 
-                        <TextView
-                            android:layout_width="wrap_content"
-                            android:textSize="@dimen/sp_15"
-                            android:textColor="@color/text_title"
-                            tools:text="鲁QAA888"
-                            android:layout_height="wrap_content">
-                        </TextView>
-
-                        <TextView
-                            android:layout_width="wrap_content"
-                            android:textSize="@dimen/sp_15"
-                            android:textColor="@color/text_title"
-                            android:layout_marginStart="@dimen/dp_10"
-                            android:layout_marginEnd="@dimen/dp_10"
-                            android:text="/"
-                            android:layout_height="wrap_content">
-                        </TextView>
-
-                        <TextView
-                            android:layout_width="0dp"
-                            android:layout_weight="1"
-                            android:textSize="@dimen/sp_15"
-                            android:textColor="@color/text_title"
-                            tools:text="平板车 13米"
-                            android:layout_marginStart="@dimen/dp_10"
-                            android:layout_height="wrap_content">
-                        </TextView>
-
-
+                    </androidx.recyclerview.widget.RecyclerView>
+                    </RelativeLayout>
 
-                    </LinearLayout>
 
+                    <RelativeLayout
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content">
 
 
-                </LinearLayout>
+                    <androidx.recyclerview.widget.RecyclerView
+                        android:id="@+id/recycler_view_in"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
+                        tools:listitem="@layout/item_enterinfo">
+                    </androidx.recyclerview.widget.RecyclerView>
+                    </RelativeLayout>
 
-                <ImageView
-                    android:layout_width="20dp"
-                    android:src="@drawable/ic_phone_out"
-                    android:layout_height="20dp">
+                </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
-                </ImageView>
 
+                <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_marginTop="@dimen/dp_10"
+                    android:layout_marginEnd="@dimen/dp_10"
+                    android:gravity="center_vertical"
+                    android:orientation="horizontal"
+                    android:padding="@dimen/dp_10"
+                    android:visibility="@{vm.type==0?View.VISIBLE :View.GONE}"
+                    app:layout_goneMarginTop="@dimen/dp_10"
+                    app:qmui_backgroundColor="@color/white"
+                    app:qmui_radius="@dimen/dp_10">
 
 
+                    <ImageView
+                        android:layout_width="60dp"
+                        android:layout_height="60dp"
+                        android:src="@drawable/ic_phone_enter">
 
-            </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
+                    </ImageView>
 
+                    <LinearLayout
+                        android:layout_width="0dp"
+                        android:layout_height="match_parent"
+                        android:layout_marginStart="@dimen/dp_10"
+                        android:layout_marginEnd="@dimen/dp_10"
+                        android:layout_weight="1"
+                        android:orientation="vertical">
+
+                        <LinearLayout
+                            android:layout_width="match_parent"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="@dimen/dp_6"
+                            android:orientation="horizontal">
+
+                            <TextView
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:textColor="@color/text_title"
+                                android:textSize="@dimen/sp_15"
+                                tools:text="乔治"></TextView>
+
+                            <TextView
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_marginStart="@dimen/dp_10"
+                                android:layout_weight="1"
+                                android:textColor="@color/text_title"
+                                android:textSize="@dimen/sp_15"
+                                tools:text="18535965350"></TextView>
+
+                            <ImageView
+                                android:layout_width="20dp"
+                                android:layout_height="20dp"
+                                android:src="@drawable/ic_collect_off">
+
+                            </ImageView>
+
+
+                        </LinearLayout>
+
+                        <LinearLayout
+                            android:layout_width="match_parent"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="@dimen/dp_4"
+                            android:orientation="horizontal">
+
+                            <TextView
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:textColor="@color/text_title"
+                                android:textSize="@dimen/sp_15"
+                                tools:text="鲁QAA888"></TextView>
+
+                            <TextView
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:layout_marginStart="@dimen/dp_10"
+                                android:layout_marginEnd="@dimen/dp_10"
+                                android:text="/"
+                                android:textColor="@color/text_title"
+                                android:textSize="@dimen/sp_15"></TextView>
+
+                            <TextView
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_marginStart="@dimen/dp_10"
+                                android:layout_weight="1"
+                                android:textColor="@color/text_title"
+                                android:textSize="@dimen/sp_15"
+                                tools:text="平板车 13米"></TextView>
+
+
+                        </LinearLayout>
 
 
+                    </LinearLayout>
 
+                    <ImageView
+                        android:layout_width="20dp"
+                        android:layout_height="20dp"
+                        android:src="@drawable/ic_phone_out">
 
+                    </ImageView>
 
 
-            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="@dimen/dp_10"
-                android:layout_marginTop="@dimen/dp_10"
-                android:layout_marginEnd="@dimen/dp_10"
-                android:orientation="vertical"
-                android:padding="@dimen/dp_10"
-                app:layout_goneMarginTop="@dimen/dp_10"
-                app:qmui_backgroundColor="@color/white"
-                app:qmui_radius="@dimen/dp_10">
+                </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
 
-                <LinearLayout
+                <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
                     android:layout_marginTop="@dimen/dp_10"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
-
-                    <TextView
-                        android:layout_width="@dimen/dp_80"
-                        android:layout_height="wrap_content"
-                        android:textColor="@color/text_title1"
-                        android:textSize="@dimen/sp_15"
-                        android:text="运单号:"></TextView>
+                    android:layout_marginEnd="@dimen/dp_10"
+                    android:orientation="vertical"
+                    android:padding="@dimen/dp_10"
+                    app:layout_goneMarginTop="@dimen/dp_10"
+                    app:qmui_backgroundColor="@color/white"
+                    app:qmui_radius="@dimen/dp_10">
 
-                    <TextView
 
-                        android:layout_width="0dp"
+                    <LinearLayout
+                        android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:layout_weight="1"
-                        android:text="@{vm.info.order.info_sn}"
-                        android:textColor="@color/text_title"
-                        android:textSize="@dimen/sp_15"
-                        tools:text="电话:1835399999"></TextView>
+                        android:layout_marginTop="@dimen/dp_10"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
 
+                        <TextView
+                            android:layout_width="@dimen/dp_80"
+                            android:layout_height="wrap_content"
+                            android:text="运单号:"
+                            android:textColor="@color/text_title1"
+                            android:textSize="@dimen/sp_15"></TextView>
 
-                </LinearLayout>
+                        <TextView
 
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginTop="@dimen/dp_10"
-                    android:visibility="@{vm.info.order.type==1?View.VISIBLE :View.GONE}"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_weight="1"
+                            android:text="@{vm.info.order.info_sn}"
+                            android:textColor="@color/text_title"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="电话:1835399999"></TextView>
 
-                    <TextView
-                        android:layout_width="@dimen/dp_80"
-                        android:layout_height="wrap_content"
-                        android:textColor="@color/text_title1"
-                        android:textSize="@dimen/sp_15"
-                        android:text="货物信息:"></TextView>
 
-                    <TextView
+                    </LinearLayout>
 
-                        android:layout_width="0dp"
+                    <LinearLayout
+                        android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:layout_weight="1"
-                        android:text="@{vm.info.order.receive[0].goods+@string/spot+vm.info.order.receive[0].nums+vm.info.order.receive[0].nums_type.name}"
-                        android:textColor="@color/text_title"
-                        android:textSize="@dimen/sp_15"
-                        tools:text="电话:1835399999"></TextView>
+                        android:layout_marginTop="@dimen/dp_10"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal"
+                        android:visibility="@{vm.info.order.type==1?View.VISIBLE :View.GONE}">
 
+                        <TextView
+                            android:layout_width="@dimen/dp_80"
+                            android:layout_height="wrap_content"
+                            android:text="货物信息:"
+                            android:textColor="@color/text_title1"
+                            android:textSize="@dimen/sp_15"></TextView>
 
-                </LinearLayout>
+                        <TextView
 
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginTop="@dimen/dp_10"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_weight="1"
+                            android:text="@{vm.info.order.receive[0].goods+@string/spot+vm.info.order.receive[0].nums+vm.info.order.receive[0].nums_type.name}"
+                            android:textColor="@color/text_title"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="电话:1835399999"></TextView>
 
-                    <TextView
-                        android:layout_width="@dimen/dp_80"
 
-                        android:layout_height="wrap_content"
-                        android:textColor="@color/text_title1"
-                        android:textSize="@dimen/sp_15"
-                        android:text="车型车长:"></TextView>
+                    </LinearLayout>
 
-                    <TextView
-                        android:layout_width="0dp"
+                    <LinearLayout
+                        android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:layout_weight="1"
-                        android:textColor="@color/text_title"
-                        android:textSize="@dimen/sp_15"
-                        android:text="@{vm.info.order.type_info.type_name+@string/spot+vm.info.order.type_info.longx+@string/rice}"
-                        tools:text="电话:1835399999"></TextView>
+                        android:layout_marginTop="@dimen/dp_10"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
 
+                        <TextView
+                            android:layout_width="@dimen/dp_80"
 
-                </LinearLayout>
+                            android:layout_height="wrap_content"
+                            android:text="车型车长:"
+                            android:textColor="@color/text_title1"
+                            android:textSize="@dimen/sp_15"></TextView>
+
+                        <TextView
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_weight="1"
+                            android:text="@{vm.info.order.type_info.type_name+@string/spot+vm.info.order.type_info.longx+@string/rice}"
+                            android:textColor="@color/text_title"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="电话:1835399999"></TextView>
 
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginTop="@dimen/dp_10"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
 
-                    <TextView
-                        android:layout_width="@dimen/dp_80"
+                    </LinearLayout>
 
+                    <LinearLayout
+                        android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:textColor="@color/text_title1"
-                        android:textSize="@dimen/sp_15"
-                        android:text="备注:"></TextView>
+                        android:layout_marginTop="@dimen/dp_10"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
 
-                    <TextView
+                        <TextView
+                            android:layout_width="@dimen/dp_80"
 
-                        android:layout_width="0dp"
-                        android:layout_height="wrap_content"
-                        android:layout_weight="1"
-                        android:text="@{vm.info.order.data}"
-                        android:textColor="@color/text_title"
-                        android:textSize="@dimen/sp_15"
-                        tools:text="电话:1835399999"></TextView>
+                            android:layout_height="wrap_content"
+                            android:text="备注:"
+                            android:textColor="@color/text_title1"
+                            android:textSize="@dimen/sp_15"></TextView>
 
+                        <TextView
 
-                </LinearLayout>
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_weight="1"
+                            android:text="@{vm.info.order.data}"
+                            android:textColor="@color/text_title"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="电话:1835399999"></TextView>
 
-                <LinearLayout
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginTop="@dimen/dp_10"
-                    android:layout_marginBottom="@dimen/dp_5"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
 
-                    <TextView
-                        android:layout_width="@dimen/dp_80"
-                        android:layout_height="wrap_content"
-                        android:textColor="@color/text_title1"
-                        android:textSize="@dimen/sp_15"
-                        android:text="纸质回单:"></TextView>
+                    </LinearLayout>
 
-                    <TextView
-                        android:layout_width="0dp"
+                    <LinearLayout
+                        android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:layout_weight="1"
-                        android:textColor="@color/text_title"
-                        android:textSize="@dimen/sp_15"
-                        tools:text="电话:1835399999"></TextView>
+                        android:layout_marginTop="@dimen/dp_10"
+                        android:layout_marginBottom="@dimen/dp_5"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
 
+                        <TextView
+                            android:layout_width="@dimen/dp_80"
+                            android:layout_height="wrap_content"
+                            android:text="纸质回单:"
+                            android:textColor="@color/text_title1"
+                            android:textSize="@dimen/sp_15"></TextView>
 
-                </LinearLayout>
+                        <TextView
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_weight="1"
+                            android:textColor="@color/text_title"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="电话:1835399999"></TextView>
 
 
-            </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
+                    </LinearLayout>
 
 
-            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="@dimen/dp_10"
-                android:layout_marginTop="@dimen/dp_10"
-                android:layout_marginEnd="@dimen/dp_10"
-                android:orientation="vertical"
-                android:padding="@dimen/dp_10"
-                app:layout_goneMarginTop="@dimen/dp_10"
-                app:qmui_backgroundColor="@color/white"
-                app:qmui_radius="@dimen/dp_10">
+                </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
 
-                <LinearLayout
+                <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
                     android:layout_marginTop="@dimen/dp_10"
-                    android:gravity="center_vertical"
-                    android:orientation="horizontal">
+                    android:layout_marginEnd="@dimen/dp_10"
+                    android:orientation="vertical"
+                    android:padding="@dimen/dp_10"
+                    app:layout_goneMarginTop="@dimen/dp_10"
+                    app:qmui_backgroundColor="@color/white"
+                    app:qmui_radius="@dimen/dp_10">
 
-                    <TextView
-                        android:layout_width="@dimen/dp_80"
-                        android:layout_height="wrap_content"
-                        android:textColor="@color/text_title1"
-                        android:textSize="@dimen/sp_15"
-                        android:text="总运费:"></TextView>
 
-                    <TextView
-                        android:layout_width="0dp"
+                    <LinearLayout
+                        android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:layout_weight="1"
-                        android:gravity="right"
-                        android:textColor="@color/text_title"
-                        android:textSize="@dimen/sp_15"
-                        android:text="@{@string/total_img+vm.info.order.total}"
-                        tools:text="¥30000"></TextView>
+                        android:layout_marginTop="@dimen/dp_10"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
 
+                        <TextView
+                            android:layout_width="@dimen/dp_80"
+                            android:layout_height="wrap_content"
+                            android:text="总运费:"
+                            android:textColor="@color/text_title1"
+                            android:textSize="@dimen/sp_15"></TextView>
 
-                </LinearLayout>
+                        <TextView
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_weight="1"
+                            android:gravity="right"
+                            android:text="@{@string/total_img+vm.info.order.total}"
+                            android:textColor="@color/text_title"
+                            android:textSize="@dimen/sp_15"
+                            tools:text="¥30000"></TextView>
 
-            </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
-        </LinearLayout>
+                    </LinearLayout>
+
+                </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
+            </LinearLayout>
+        </ScrollView>
 
         <LinearLayout
             android:layout_width="match_parent"
@@ -433,8 +434,8 @@
                 android:layout_marginStart="@dimen/dp_10"
                 android:onClick="@{v->vm.setCancelOrder(vm.info.order.info_id)}"
                 android:text="取消发布"
-                android:visibility="@{vm.isShowCancelBut(vm.info.order.info_state)?View.VISIBLE:View.GONE}"
                 android:textColor="@color/text_title"
+                android:visibility="@{vm.isShowCancelBut(vm.info.order.info_state)?View.VISIBLE:View.GONE}"
                 app:qmui_borderColor="@color/color_line"
                 app:qmui_radius="@dimen/dp_4">
 
@@ -445,10 +446,10 @@
                 android:layout_width="120dp"
                 android:layout_height="@dimen/dp_40"
                 android:layout_marginStart="@dimen/dp_15"
-                android:text="再来一单"
-                android:visibility="@{vm.type==1?View.VISIBLE:View.GONE}"
                 android:onClick="@{v->vm.anotherOne()}"
+                android:text="再来一单"
                 android:textColor="@color/text_title"
+                android:visibility="@{vm.type==1?View.VISIBLE:View.GONE}"
                 app:qmui_borderColor="@color/color_line"
                 app:qmui_radius="@dimen/dp_4">
 
@@ -459,10 +460,10 @@
                 android:layout_width="120dp"
                 android:layout_height="@dimen/dp_40"
                 android:layout_marginStart="@dimen/dp_15"
-                android:text="接单车辆"
                 android:onClick="@{v->vm.goDriverList()}"
-                android:visibility="@{vm.isShowReceiveVehicle(vm.info.order.info_state)?View.VISIBLE:View.GONE}"
+                android:text="接单车辆"
                 android:textColor="@color/text_title"
+                android:visibility="@{vm.isShowReceiveVehicle(vm.info.order.info_state)?View.VISIBLE:View.GONE}"
                 app:qmui_borderColor="@color/color_line"
                 app:qmui_radius="@dimen/dp_4">
 
@@ -474,10 +475,10 @@
                 android:layout_width="120dp"
                 android:layout_height="@dimen/dp_40"
                 android:layout_marginStart="@dimen/dp_15"
-                android:text="运输轨迹"
                 android:onClick="@{v->vm.goTrack()}"
-                android:visibility="@{vm.type==0?View.VISIBLE:View.GONE}"
+                android:text="运输轨迹"
                 android:textColor="@color/text_title"
+                android:visibility="@{vm.type==0?View.VISIBLE:View.GONE}"
                 app:qmui_borderColor="@color/color_line"
                 app:qmui_radius="@dimen/dp_4">
 
@@ -489,18 +490,16 @@
                 android:layout_width="120dp"
                 android:layout_height="@dimen/dp_40"
                 android:layout_marginStart="@dimen/dp_15"
-                android:text="下一步"
                 android:onClick="@{v->vm.goStep()}"
-                android:visibility="@{vm.type==0?View.VISIBLE:View.GONE}"
+                android:text="下一步"
                 android:textColor="@color/text_title"
+                android:visibility="@{vm.type==0?View.VISIBLE:View.GONE}"
                 app:qmui_borderColor="@color/color_line"
                 app:qmui_radius="@dimen/dp_4">
 
             </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton>
 
 
-
-
         </LinearLayout>