Browse Source

1.一装多卸。

石慧云 4 years ago
parent
commit
64e04c06a7

+ 214 - 1
app/src/main/java/com/quansu/heifengwuliu/adapter/CarEnterAdapter.kt

@@ -1,13 +1,226 @@
 package com.quansu.heifengwuliu.adapter
 
+import android.text.Editable
+import android.text.TextUtils
+import android.text.TextWatcher
+import android.view.View
+import android.widget.EditText
 import com.chad.library.adapter.base.viewholder.BaseDataBindingHolder
+import com.qmuiteam.qmui.widget.dialog.QMUIDialog
+import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction
 import com.quansu.heifengwuliu.R
 import com.quansu.heifengwuliu.databinding.ItemOutcarBinding
+import com.quansu.heifengwuliu.inte.ChoiceData
+import com.quansu.heifengwuliu.inte.ChoiceListData
+import com.quansu.heifengwuliu.model.SelectData
 import com.quansu.heifengwuliu.model.bean.ReceiveBean
+import com.quansu.heifengwuliu.utils.PopuListUtils
+import com.quansu.heifengwuliu.vmodel.OwnerMoreVModel
 import com.ysnows.base.base.BAdapter
+import java.text.DecimalFormat
 
-class CarEnterAdapter : BAdapter<ReceiveBean, BaseDataBindingHolder<ItemOutcarBinding>>(R.layout.item_outcar) {
+class CarEnterAdapter(val vm: OwnerMoreVModel) : BAdapter<ReceiveBean, BaseDataBindingHolder<ItemOutcarBinding>>(R.layout.item_outcar) {
+
+    var goodsTypeList = ArrayList<SelectData>()
+    var numsTypeList = ArrayList<String>()
+
+    fun setData( list:ArrayList<SelectData>,unitlist:ArrayList<String>){
+        this.goodsTypeList=list
+        this.numsTypeList=unitlist
+
+    }
     override fun convert(holder: BaseDataBindingHolder<ItemOutcarBinding>, item: ReceiveBean) {
         holder.dataBinding?.item = item
+        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
+        }
+
+
+        holder.dataBinding?.tvDelete!!.setOnClickListener {
+
+            //删除
+            QMUIDialog.MessageDialogBuilder(context)
+                    .setTitle("提示")
+                    .setMessage("确定要删除该地址么")
+                    .addAction("取消", QMUIDialogAction.ActionListener(){
+                        dialog, index ->
+                        dialog.dismiss()
+                    })
+                    .addAction("确定", QMUIDialogAction.ActionListener(){
+                        dialog, index ->
+                        notifyItemRemoved(holder.adapterPosition)
+                        dialog.dismiss()
+                    })
+                    .show()
+
+
+
+        }
+
+        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 nums = editable.toString().trim()
+                if (TextUtils.isEmpty(nums)) {
+                    nums = "0"
+                }
+              toast(nums)
+            }
+        })
+
+        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!!
+                    notifyItemChanged(holder.adapterPosition)
+
+                }
+            })
+
+        }
+
+        holder.dataBinding?.llChoseUnits!!.setOnClickListener {
+            //选择单位
+            PopuListUtils.showQMUIPopup(context, holder.dataBinding?.llChoseUnits!!, numsTypeList, object : ChoiceData {
+                override fun onRestuse(name: String?) {
+                    item.nums_type=name!!
+                    notifyItemChanged(holder.adapterPosition)
+                }
+            })
+
+        }
+        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"
+                }
+                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"
+                }
+                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"
+                }
+                item.total=total
+            }
+        })
+
+
+
+        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
+
+            }
+        })
+
+        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
+
+            }
+        })
+
+        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
+
+            }
+        })
+        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
+
+            }
+        })
+
+
+
+
+
+
+
+
+
+    }
+
+
+
+    /**
+     * type:1单车运量 2单价
+     * value:输入的值
+     * @return
+     */
+    private fun sumTotal(item: ReceiveBean,type: Int, value: String,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())
+
+            item.nums=nums
+            item.price=value
+            item.total=total
+        }
+        etTotal.setText(total)
+
+
     }
+
+
 }

+ 402 - 7
app/src/main/java/com/quansu/heifengwuliu/fragment/OwnerMoreFragment.kt

@@ -1,50 +1,445 @@
 package com.quansu.heifengwuliu.fragment
 
+import android.app.Activity
+import android.content.Intent
 import android.os.Bundle
+import android.text.TextUtils
 import android.view.LayoutInflater
 import android.view.ViewGroup
+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.activity.AddressActivity
+import com.quansu.heifengwuliu.activity.AreaSelectActivity
 import com.quansu.heifengwuliu.adapter.CarEnterAdapter
 import com.quansu.heifengwuliu.base.MBFragment
+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.ChoiceListData
+import com.quansu.heifengwuliu.model.AddressBean
+import com.quansu.heifengwuliu.model.DataInfoBean
+import com.quansu.heifengwuliu.model.SelectData
 import com.quansu.heifengwuliu.model.bean.ReceiveBean
-import com.quansu.heifengwuliu.vmodel.OwnerSingleVModel
+import com.quansu.heifengwuliu.model.bean.SendBean
+import com.quansu.heifengwuliu.utils.PopuListUtils
+import com.quansu.heifengwuliu.utils.PopupUtils
+import com.quansu.heifengwuliu.vmodel.OwnerMoreVModel
+import com.yanzhenjie.permission.AndPermission
+import com.yanzhenjie.permission.runtime.Permission
+import com.ysnows.base.ccretrofit.CCRetrofit
+import com.ysnows.base.model.PositionBean
+import com.ysnows.base.route.IGaode
+import com.ysnows.base.utils.B
+import com.ysnows.base.utils.UiSwitch
+import java.text.DecimalFormat
 
 /**
  * 一装多卸
  *Created by shihuiyun
  *on 2020/9/11
  */
-class OwnerMoreFragment : MBFragment<OwnerSingleVModel, FragmentOwnermoreBinding>(){
+class OwnerMoreFragment : MBFragment<OwnerMoreVModel, FragmentOwnermoreBinding>(){
     //新的
     var adapter: CarEnterAdapter? =null
     var  receiveList = ArrayList<ReceiveBean>()
 
+    var info_id:String="0"
+    //货物类型
+    var goodsTypeList = ArrayList<SelectData>()
+
+    //货物单位
+    var numsTypeList = ArrayList<String>()
+    //是否购买保险
+    var insurance = ArrayList<String>()
+
+    //协议相关
+    var is_agree = 1//默认 已阅读运输协议
+    var is_public = 1//默认 发布到货源大厅
+    var is_insurance = 0//默认  不够买保险
+
+    //出
+    var lat_out: String = ""
+    var lng_out: String = ""
+    var province_out: String = ""
+    var city_out: String = ""
+    var area_out: String = ""
+    var time_out: String = ""
+
+
+
+
     override fun init(savedInstanceState: Bundle?) {
         super.init(savedInstanceState)
+        vm.initData(this)
+        getData()
+        vm.info.observe(this, Observer {
+            //观察
+            goodsTypeList.addAll(it.goods_type)
+
+            numsTypeList.addAll(it.nums_type)
+
+            initTab(it)
+            initAdapter()
+
+        })
         initData()
     }
 
-    private fun initData() {
+
+    override fun listeners() {
+        super.listeners()
+        binding.llOperation.setOnClickListener {
+            //添加
+            addList()
+        }
+
+        binding.llIsInsurance.setOnClickListener {
+
+            PopuListUtils.showQMUIPopup(context(), binding.tvIsInsurance, insurance, object : ChoiceData {
+                override fun onRestuse(name: String?) {
+                    vm.insurance.value = name
+                    is_insurance = if (name.equals("是")) 1 else 0
+
+                }
+            })
+        }
+
+        binding.llAgree.setOnClickListener {
+
+            is_agree = if (is_agree == 1) 0 else 1
+            vm.isAgree.value = is_agree
+        }
+        binding.llPublic.setOnClickListener {
+
+            is_public = if (is_public == 1) 0 else 1
+            vm.isPush.value = is_public
+
+        }
+
+        binding.tvPublish.setOnClickListener{
+            //提交
+            judgeValue()
+        }
+
+
+    }
+
+    private fun judgeValue() {
+        if (TextUtils.isEmpty(province_out)) {
+            toast("请选择装货地址!")
+            return
+
+        }
+        var name_out = binding.viewHead.getEtName()!!.text.toString().trim()
+        if (TextUtils.isEmpty(name_out)) {
+            toast("请输入发货人!")
+            return
+        }
+        var mobile_out = binding.viewHead.getEtPhone()!!.text.toString().trim()
+        if (TextUtils.isEmpty(mobile_out)) {
+            toast("请输入发货人电话!")
+            return
+        }
+        if (TextUtils.isEmpty(time_out)) {
+            toast("请输入装货时间")
+            return
+        }
+        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 total:Double=0.00
+        for(item in list){
+            if (TextUtils.isEmpty(item.province)) {
+                toast("请选择卸货地址!")
+                return
+            }
+            if (TextUtils.isEmpty(item.name)) {
+                toast("请输入卸货人!")
+                return
+            }
+            if (TextUtils.isEmpty(item.mobile)) {
+                toast("请输入卸货人电话!")
+                return
+            }
+            if (TextUtils.isEmpty(item.time)) {
+                toast("请输入卸货时间")
+                return
+            }
+            if (TextUtils.isEmpty(item.goods)) {
+                toast("请输入货物名称")
+                return
+            }
+            if (TextUtils.isEmpty(item.goods_type)) {
+                toast("请选择货物类型")
+                return
+            }
+            if (TextUtils.isEmpty(item.nums)) {
+                toast("请输入单车运量数量")
+                return
+            }
+            if (TextUtils.isEmpty(item.nums_type)) {
+                toast("请选择单车运量单位")
+                return
+            }
+
+            total += item.total.toDouble()
+
+        }
+
+        if (is_agree==0) {
+            toast("请阅读并同意《平台运输协议》")
+            return
+        }
+        var carnums=binding.etCarNums.text.toString()
+        if(TextUtils.isEmpty(carnums)){
+            toast("请输入所需车辆数量")
+            return
+        }
+        var data=binding.etData.text.toString()
+
+        var sendList=ArrayList<SendBean>()
+        sendList.add(sendBean)
+        var send= Gson().toJson(sendList)
+
+        var receive= Gson().toJson(list)
+
+       // var total = binding.etSingCarTotal.text.toString().trim()
+
+        var df = DecimalFormat("0.00")
+
+        vm.setReleaseSource(info_id,df.format(total),"",carnums,is_public.toString(),is_insurance.toString(),"2",
+                data,send,receive)
+
+
+
+    }
+
+    private fun addList(){
+
+        var bean=ReceiveBean("","","","","","","","","",
+                "1","","","","","","","","")
+        receiveList.add(bean)
+        adapter!!.addData(bean)
+    }
+
+    private fun initTab(info: DataInfoBean) {
+        binding.viewHead.setHeadData(info,childFragmentManager)
+        binding.viewHead.getImgNext()!!.setOnClickListener {
+
+
+            var selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
+
+            if (selectViewpage < binding.viewHead.getCats().size - 1) {
+                binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage + 1
+            }
+
+        }
+        //向右
+        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
+            }
+
+
+        }
+
+        //向左
+        binding.viewHead.getImgUp()!!.setOnClickListener {
+            var selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
+
+            if (selectViewpage < binding.viewHead.getCats().size - 1 && selectViewpage > 0) {
+                binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage - 1
+            }
+        }
+
+    }
+
+    private fun getData() {
+        //获取信息
+        vm.getDataInfo(info_id);
+
+    }
+    private fun initAdapter(){
         //默认一个出
-        adapter= CarEnterAdapter()
+        adapter= CarEnterAdapter(vm)
+        adapter!!.setData(goodsTypeList,numsTypeList)
         binding.recyclerView.adapter=adapter
         var bean=ReceiveBean("","","","","","","","","",
-                "1","","","","","","")
+                "1","","","","","","","","")
         receiveList.add(bean)
         adapter!!.addData(bean)
+
     }
+    private fun initData() {
+
+        insurance.add("是")
+        insurance.add("否")
+
+        binding.viewHead.getLlChoseMap()!!.setOnClickListener {
+            //地图选点
+            vm.type = 1
+            vm.goChoseMap()
+        }
+
+        binding.viewHead.getLlChoseAddress()!!.setOnClickListener {
+            //地址薄 1
+            vm.type = 1
+            UiSwitch.bundleRes(this, AddressActivity::class.java,
+                    B.with().putString("type", "1").ok(), MIntentAction.REQUEST_CODE_ONE)
+        }
+
+        binding.viewHead.getTvCity()!!.setOnClickListener {
+            vm.type = 1
+            UiSwitch.singleRes(this, AreaSelectActivity::class.java,
+                    MIntentAction.REQUEST_CODE_TWO)
+        }
+        //装货时间
+        binding.viewHead.getTvChoseTime()!!.setOnClickListener {
+            PopupUtils.setChoseTime(context, binding.viewHead.getTvChoseTime(), object : ChoiceData {
+                override fun onRestuse(time: String?) {
+                    if (time != null) {
+                        time_out = time
+                    }
+                }
+            })
+        }
+
+    }
+
 
 
     override fun binding(inflater: LayoutInflater, container: ViewGroup?): FragmentOwnermoreBinding {
        return  FragmentOwnermoreBinding.inflate(layoutInflater)
     }
 
-    override fun vmClass(): Class<OwnerSingleVModel> {
-        return OwnerSingleVModel::class.java
+    override fun vmClass(): Class<OwnerMoreVModel> {
+        return OwnerMoreVModel::class.java
     }
 
 
     override fun title(): String? {
         return null
     }
+
+    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
+        super.onActivityResult(requestCode, resultCode, data)
+        if (MIntentAction.REQUEST_CODE_TWO === requestCode && resultCode == Activity.RESULT_OK) {
+            val bundle = data!!.extras
+            if (null != bundle) {
+                var name = bundle.getString("name")
+                if (vm.type == 1) {
+
+                    area_out = bundle.getString("area_code")
+                    province_out = bundle.getString("province_code")
+                    city_out = bundle.getString("city_code")
+
+                    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].name=name
+
+                    list[vm.position].pca=name
+
+
+                    adapter!!.notifyItemChanged(vm.position)
+                }
+
+            }
+            return
+
+        }
+
+        if (MIntentAction.REQUEST_CODE_ONE == requestCode && resultCode == Activity.RESULT_OK) {
+            val bundle = data!!.extras
+            if (null != bundle) {
+                var item = bundle.getSerializable("item") as AddressBean
+                //todo
+                if (vm.type == 1) {
+                    binding.viewHead.getTvCity()!!.text = item.province?.name + item.city?.name + item.area?.name
+                    binding.viewHead.getEtDetailedAddress()!!.setText(item.address)
+                    binding.viewHead.getTvChoseTime()!!.text = item.create_time
+                    binding.viewHead.getEtName()!!.setText(item.name)
+                    binding.viewHead.getEtPhone()!!.setText(item.mobile)
+                    lat_out = item.lat.toString()
+                    lng_out = item.lng.toString()
+                    area_out = item.area!!.code.toString()
+                    province_out = item.province!!.code.toString()
+                    city_out = item.city!!.code.toString()
+                    time_out = item.create_time.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()
+                    list[vm.position].time=item.create_time.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].name=item.name.toString()
+                    list[vm.position].mobile=item.mobile.toString()
+
+                    adapter!!.notifyItemChanged(vm.position)
+
+
+
+
+//
+//
+                }
+
+            }
+
+            return
+
+        }
+
+    }
+
+
+    @Subscribe(tags = [Tag(ConfigRx.ADD_POSITION)])
+    fun getPosition(bean: PositionBean) {
+
+        if (vm.type == 2) {
+
+            var list=adapter!!.data as ArrayList<ReceiveBean>
+            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
+            lng_out = bean.longitude
+            area_out = bean.areacode
+            province_out = bean.areacode.substring(0, 2) + "0000"
+            city_out = bean.areacode.substring(0, 4) + "00"
+            binding.viewHead.getEtDetailedAddress()!!.setText(bean.position)
+            binding.viewHead.getTvCity()!!.text = bean.provincename + bean.cityname + bean.areaname
+        }
+
+
+    }
 }

+ 20 - 26
app/src/main/java/com/quansu/heifengwuliu/fragment/OwnerSingleFragment.kt

@@ -22,6 +22,7 @@ import com.quansu.heifengwuliu.inte.ChoiceData
 import com.quansu.heifengwuliu.inte.ChoiceListData
 import com.quansu.heifengwuliu.model.AddressBean
 import com.quansu.heifengwuliu.model.DataInfoBean
+import com.quansu.heifengwuliu.model.SelectData
 import com.quansu.heifengwuliu.model.bean.ReceiveBean
 import com.quansu.heifengwuliu.model.bean.SendBean
 import com.quansu.heifengwuliu.utils.PopuListUtils
@@ -44,9 +45,7 @@ import java.text.DecimalFormat
 class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBinding>() {
     private var type = 1// 1:/装货 2卸货
 
-    private var selectViewpage = 0
-    var goodsTypeList = ArrayList<String>()
-    var goodsTypeCode = ArrayList<String>()
+    var goodsTypeList = ArrayList<SelectData>()
 
     var numsTypeList = ArrayList<String>()
 
@@ -83,10 +82,8 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
 
         vm.info.observe(this, Observer {
             //观察
-            for(item in it.goods_type){
-                goodsTypeList.add(item.name)
-                goodsTypeCode.add(item.code)
-            }
+            goodsTypeList.addAll(it.goods_type)
+
             numsTypeList.addAll(it.nums_type)
             initTab(it)
 
@@ -111,8 +108,8 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
 
         binding.llChoseUnits.setOnClickListener {
 
-            PopuListUtils.showQMUIPopup(context(), binding.llChoseUnits, numsTypeList,null, object : ChoiceListData {
-                override fun onRestuse(code: String?,name: String?) {
+            PopuListUtils.showQMUIPopup(context(), binding.llChoseUnits, numsTypeList, object : ChoiceData {
+                override fun onRestuse(name: String?) {
                     vm.unit.value = name
                 }
             })
@@ -121,19 +118,19 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
 
         binding.llGoodsType.setOnClickListener {
 
-            PopuListUtils.showQMUIPopup(context(), binding.llGoodsType, goodsTypeList,goodsTypeCode, object : ChoiceListData {
-                override fun onRestuse(code: String?,name: String?) {
-                    goods_type_code=code!!
-                    vm.goodstype.value = name
+            PopuListUtils.showQMUIPopup(context(), binding.llGoodsType, goodsTypeList, object : ChoiceListData {
+            override fun onRestuse(code: String?,name: String?) {
+                goods_type_code=code!!
+                vm.goodstype.value = name
 
-                }
-            })
+            }
+        })
         }
 
         binding.llIsInsurance.setOnClickListener {
 
-            PopuListUtils.showQMUIPopup(context(), binding.tvIsInsurance, insurance,null, object : ChoiceListData {
-                override fun onRestuse(code: String?,name: String?) {
+            PopuListUtils.showQMUIPopup(context(), binding.tvIsInsurance, insurance, object : ChoiceData {
+                override fun onRestuse(name: String?) {
                     vm.insurance.value = name
                     is_insurance = if (name.equals("是")) 1 else 0
 
@@ -241,7 +238,7 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
         var goods_name=binding.etGoodsName.text.toString().trim()
 
         if (TextUtils.isEmpty(goods_name)) {
-            toast("请输入货物类型")
+            toast("请输入货物名称")
             return
         }
 
@@ -266,14 +263,11 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
             toast("请输入总金额")
             return
         }
-        if (TextUtils.isEmpty(time_in)) {
-            toast("请输入卸货时间")
-            return
-        }
+
         var address_in = binding.viewEnter.getEtDetailedAddress()!!.text.toString().trim()
 
         var receiveBean = ReceiveBean(lat_in, lng_in, province_in, city_in, area_in, address_in, name_in, mobile_in, time_in, "1",
-                goods_name, goods_type_code, nums, vm.unit.value.toString(), price, total
+                goods_name, goods_type_code, nums, vm.unit.value.toString(), price, total,"",""
         )
 
         if (is_agree==0) {
@@ -346,7 +340,7 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
         binding.viewHead.getImgNext()!!.setOnClickListener {
 
 
-            selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
+            var selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
 
             if (selectViewpage < binding.viewHead.getCats().size - 1) {
                 binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage + 1
@@ -356,7 +350,7 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
         //向右
         binding.viewHead.getImgDown()!!.setOnClickListener {
             toast("222")
-            selectViewpage =binding.viewHead.getQmViewPager()!!.currentItem
+           var  selectViewpage =binding.viewHead.getQmViewPager()!!.currentItem
             if (selectViewpage < binding.viewHead.getCats().size - 1) {
                 binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage + 1
             }
@@ -366,7 +360,7 @@ class OwnerSingleFragment : MBFragment<OwnerSingleVModel, FragmentOwnersingleBin
 
         //向左
         binding.viewHead.getImgUp()!!.setOnClickListener {
-            selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
+           var  selectViewpage = binding.viewHead.getQmViewPager()!!.currentItem
 
             if (selectViewpage < binding.viewHead.getCats().size - 1 && selectViewpage > 0) {
                 binding.viewHead.getQmViewPager()!!.currentItem = selectViewpage - 1

+ 2 - 3
app/src/main/java/com/quansu/heifengwuliu/model/DataInfoBean.kt

@@ -7,13 +7,12 @@ import com.ysnows.base.inter.IModel
  *on 2020/9/14
  * 订单状态 info_state:10->待支付  20->待接单  30->进行中 40-> 已完成  100->已取消
  */
-data class DataInfoBean(var goods_type: List<GoodsTypeBean>, var nums_type: List<String>,
+data class DataInfoBean(var goods_type: List<SelectData>, var nums_type: List<String>,
                         var car_type: List<CarTypeBean>, var order: OrderBean) : IModel {
 
 
-    data class GoodsTypeBean(var code: String, var name: String): IModel{
 
-    }
+
 
     data class CarTypeBean(var type_id: String, var type_name: String,
                            var type_icon: String, var type_img: String) : IModel {

+ 11 - 0
app/src/main/java/com/quansu/heifengwuliu/model/SelectData.kt

@@ -0,0 +1,11 @@
+package com.quansu.heifengwuliu.model
+
+import com.ysnows.base.inter.IModel
+
+/**
+ *Created by shihuiyun
+ *on 2020/9/15
+ */
+data class SelectData(var code:String,var name:String): IModel {
+
+}

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

@@ -1,13 +1,18 @@
 package com.quansu.heifengwuliu.model.bean
 
+import com.ysnows.base.inter.IModel
+
 /**
  * 发布货源
  *Created by shihuiyun
  *on 2020/9/14
+ * pca:省+市+区
+ * goods_type_name:货物类型的名字
  */
 data class ReceiveBean (var lat: String, var lng: String, var province: String, var city:String,
                         var area:String, var address:String, var name:String, var mobile:String,
                         var time:String,var type:String,
                         var goods:String,var goods_type:String,var nums:String,
-                        var nums_type:String,var price:String,var total:String){
+                        var nums_type:String,var price:String,var total:String,
+                        var pca:String,var goods_type_name:String): IModel {
 }

+ 37 - 13
app/src/main/java/com/quansu/heifengwuliu/utils/PopuListUtils.kt

@@ -11,31 +11,25 @@ import com.qmuiteam.qmui.widget.popup.QMUIPopups
 import com.quansu.heifengwuliu.R
 import com.quansu.heifengwuliu.inte.ChoiceData
 import com.quansu.heifengwuliu.inte.ChoiceListData
+import com.quansu.heifengwuliu.model.SelectData
 
 /**
  *Created by shihuiyun
  *on 2020/9/14
  */
-object PopuListUtils{
+object PopuListUtils {
 
 
-
-    fun showQMUIPopup(context:Context, view: View, data: ArrayList<String>, code: ArrayList<String>?, choseData: ChoiceListData){
-        var mNormalPopup: QMUIPopup? =null
-        val adapter: ArrayAdapter<*> = ArrayAdapter<Any?>(context,  R.layout.simple_list_item, data as List<String>)
+    fun showQMUIPopup(context: Context, view: View, data: ArrayList<String>, choseData: ChoiceData) {
+        var mNormalPopup: QMUIPopup? = null
+        val adapter: ArrayAdapter<*> = ArrayAdapter<Any?>(context, R.layout.simple_list_item, data as List<String>)
         val onItemClickListener = AdapterView.OnItemClickListener { adapterView, view, i, l ->
 
-            if(null!=choseData) {
-                if(null!=code) {
-                    choseData.onRestuse(code[i],data[i])
-                }else{
-                    choseData.onRestuse("",data[i])
-                }
-            }
+            choseData?.onRestuse(data[i])
 
             mNormalPopup?.dismiss()
         }
-        mNormalPopup= QMUIPopups.listPopup(context,
+        mNormalPopup = QMUIPopups.listPopup(context,
                 QMUIDisplayHelper.dp2px(context, 250),
                 QMUIDisplayHelper.dp2px(context, 300),
                 adapter,
@@ -52,5 +46,35 @@ object PopuListUtils{
     }
 
 
+    fun showQMUIPopup(context: Context, view: View, list: ArrayList<SelectData>, choseData: ChoiceListData) {
+        var mNormalPopup: QMUIPopup? = null
+
+        var data = ArrayList<String>()
+        for (item in list) {
+            data.add(item.name)
+        }
+        val adapter: ArrayAdapter<*> = ArrayAdapter<Any?>(context, R.layout.simple_list_item, data as List<String>)
+        val onItemClickListener = AdapterView.OnItemClickListener { adapterView, view, i, l ->
+
+            choseData?.onRestuse(list[i].code, list[i].name)
+
+            mNormalPopup?.dismiss()
+        }
+        mNormalPopup = QMUIPopups.listPopup(context,
+                QMUIDisplayHelper.dp2px(context, 250),
+                QMUIDisplayHelper.dp2px(context, 300),
+                adapter,
+                onItemClickListener)
+                .animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER)
+                .preferredDirection(QMUIPopup.DIRECTION_TOP)
+                .shadow(true)
+                .offsetYIfTop(QMUIDisplayHelper.dp2px(context, 5))
+                .skinManager(QMUISkinManager.defaultInstance(context))
+                .onDismiss {
+
+                }
+                .show(view)
+    }
+
 
 }

+ 25 - 0
app/src/main/java/com/quansu/heifengwuliu/utils/PopupUtils.java

@@ -46,4 +46,29 @@ public class PopupUtils {
         timePickerView.setDate(Calendar.getInstance());
         timePickerView.show();
     }
+
+    public static void setChoseTime(Context context,ChoiceData choiceData) {
+        Calendar startDate = Calendar.getInstance();
+        startDate.set(1980, 0, 23);
+
+        Calendar endDate = Calendar.getInstance();
+
+        TimePickerView timePickerView = new TimePickerBuilder(context, new OnTimeSelectListener() {
+            @Override
+            public void onTimeSelect(Date date, View v) {
+
+                if(null!=choiceData){
+                    choiceData.onRestuse(TimeUtil.getTime(date));
+                }
+
+            }
+        }).setRangDate(startDate, endDate)
+                .setDate(endDate)
+                .setType(new boolean[]{true, true, true, false, false, false})
+                .build();
+
+        timePickerView.setDate(Calendar.getInstance());
+        timePickerView.show();
+    }
+
 }

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

@@ -0,0 +1,158 @@
+package com.quansu.heifengwuliu.vmodel
+
+import android.os.Bundle
+import android.widget.TextView
+import androidx.lifecycle.MutableLiveData
+import com.quansu.heifengwuliu.activity.AddressActivity
+import com.quansu.heifengwuliu.activity.AreaSelectActivity
+import com.quansu.heifengwuliu.activity.SourceDetailsActivity
+import com.quansu.heifengwuliu.config.MIntentAction
+import com.quansu.heifengwuliu.fragment.OwnerMoreFragment
+import com.quansu.heifengwuliu.inte.ChoiceData
+import com.quansu.heifengwuliu.model.DataInfoBean
+import com.quansu.heifengwuliu.model.InfoEditBean
+import com.quansu.heifengwuliu.utils.PopupUtils
+import com.quansu.heifengwuliu.utils.net.NetEngine
+import com.yanzhenjie.permission.AndPermission
+import com.yanzhenjie.permission.runtime.Permission
+import com.ysnows.base.base.BRepository
+import com.ysnows.base.base.BViewModel
+import com.ysnows.base.ccretrofit.CCRetrofit
+import com.ysnows.base.route.IGaode
+import com.ysnows.base.utils.B
+import com.ysnows.base.utils.UiSwitch
+
+
+open class OwnerMoreVModel : BViewModel<BRepository>() {
+
+    var unit: MutableLiveData<String> = MutableLiveData()
+
+    var insurance: MutableLiveData<String> = MutableLiveData()
+
+    var isPush: MutableLiveData<Int> = MutableLiveData(isPushValue)
+    var isAgree: MutableLiveData<Int> = MutableLiveData(isPushValue)
+
+    val info: MutableLiveData<DataInfoBean> = MutableLiveData<DataInfoBean>()
+
+    //1:/装货地址 2卸货地址
+    var type = 1
+    var fragment : OwnerMoreFragment? =null
+    var position=0
+
+
+
+    fun initData(ss : OwnerMoreFragment){
+        this.fragment=ss
+    }
+
+    companion object {
+
+        const val isPushValue = 1
+
+    }
+
+
+    fun getDataInfo(info_id:String){
+
+        repository().lreq(NetEngine.service.infoGet(info_id))
+                .doOnNext() {
+                    if (it.ok()) {
+                        info.value=it.data() as DataInfoBean
+                    }
+                }
+                .subscribe()
+
+
+    }
+
+
+
+    fun setReleaseSource(info_id:String,total:String,driver:String,
+                         nums:String,is_public:String,is_insurance:String,
+                         type:String,data:String,send:String,receive:String
+    ){
+        //todo:发布货源
+
+        repository().lreq(NetEngine.service.infoEdit(info_id,total,driver,nums,is_public,is_insurance,type,
+        data,send,receive))
+                .doOnNext() {
+                    if (it.ok()) {
+                        var  bean=it.data() as InfoEditBean
+                        UiSwitch.bundle(repository().context, SourceDetailsActivity::class.java, Bundle().apply {
+                            putString("info_id", bean.info_id)
+                            putString("type","1")
+                        })
+
+                    }
+                }
+                .subscribe()
+
+    }
+    //卸货列表的操作
+
+
+
+    fun choseCity(position:Int){
+        //选择城市
+        this.position=position
+        type=2
+        UiSwitch.singleRes(fragment , AreaSelectActivity::class.java,
+                MIntentAction.REQUEST_CODE_TWO)
+
+    }
+    fun chosePeoPle(position:Int){
+        //地址薄
+        this.position=position
+        type=2
+        UiSwitch.bundleRes(fragment, AddressActivity::class.java,
+                B.with().putString("type", "2").ok(), MIntentAction.REQUEST_CODE_ONE)
+
+    }
+
+    fun choseMap(position:Int){
+        this.position=position
+        type=2
+        goChoseMap()
+
+
+    }
+
+    fun choseTime(position:Int){
+        this.position=position
+        PopupUtils.setChoseTime(repository().context, object : ChoiceData {
+            override fun onRestuse(time: String?) {
+                if (time != null) {
+                   //todo:
+                }
+            }
+        })
+
+    }
+
+
+
+
+    fun goChoseMap(){
+        AndPermission.with(repository().context)
+                .runtime()
+                .permission(Permission.ACCESS_COARSE_LOCATION,
+                        Permission.ACCESS_FINE_LOCATION,
+                        Permission.WRITE_EXTERNAL_STORAGE,
+                        Permission.READ_EXTERNAL_STORAGE,
+                        Permission.READ_PHONE_STATE
+                )
+                .onGranted { data ->
+                    CCRetrofit.instance()
+                            .with(repository().context)
+                            .create(IGaode::class.java)
+                            .selectLocation()
+                            .subscribe()
+
+                }
+                .start()
+
+    }
+
+
+
+}

+ 53 - 2
app/src/main/res/layout/fragment_ownermore.xml

@@ -6,7 +6,7 @@
 
         <variable
             name="vm"
-            type="com.quansu.heifengwuliu.vmodel.OwnerSingleVModel" />
+            type="com.quansu.heifengwuliu.vmodel.OwnerMoreVModel" />
 
     </data>
 
@@ -60,7 +60,6 @@
                 </TextView>
 
                 <ImageView
-
                     android:layout_width="22dp"
                     android:layout_height="22dp"
                     android:layout_marginLeft="8dp"
@@ -73,15 +72,66 @@
 
             </LinearLayout>
 
+            <RelativeLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content">
+
+
             <androidx.recyclerview.widget.RecyclerView
                 android:id="@+id/recycler_view"
                 android:layout_width="match_parent"
                 app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
                 tools:listitem="@layout/item_outcar"
+                android:visibility="visible"
+                android:nestedScrollingEnabled="false"
                 android:layout_height="wrap_content">
             </androidx.recyclerview.widget.RecyclerView>
+            </RelativeLayout>
+
+            <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/dp_12"
+                android:layout_marginTop="@dimen/dp_10"
+                android:layout_marginEnd="@dimen/dp_12"
+                android:orientation="vertical"
+                android:paddingStart="@dimen/dp_10"
+                android:paddingTop="@dimen/dp_10"
+                android:paddingEnd="@dimen/dp_12"
+                android:paddingBottom="@dimen/dp_10"
+                app:qmui_borderColor="#BFBFBF"
+                app:qmui_borderWidth="@dimen/dp_1"
+                app:qmui_radius="@dimen/dp_2">
+
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="40dp"
+                    android:gravity="center"
+                    android:orientation="horizontal">
+
+                    <TextView
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:text="总金额"
+                        android:textColor="#101010"
+                        android:textSize="@dimen/sp_16">
 
+                    </TextView>
 
+                    <TextView
+                       android:id="@+id/tv_total_money"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:layout_marginStart="@dimen/dp_10"
+                        android:gravity="center_vertical|right"
+                        android:textColor="#101010"
+                        android:textColorHint="#BBBBBB"
+                        android:textSize="@dimen/sp_15"></TextView>
+
+
+                </LinearLayout>
+
+            </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
 
             <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
@@ -116,6 +166,7 @@
                     </TextView>
 
                     <TextView
+                        android:id="@+id/tv_is_insurance"
                         android:layout_width="0dp"
                         android:layout_height="wrap_content"
                         android:layout_marginStart="@dimen/dp_10"

+ 440 - 4
app/src/main/res/layout/item_outcar.xml

@@ -5,17 +5,453 @@
     <data >
 
         <variable
+            name="vm"
+            type="com.quansu.heifengwuliu.vmodel.OwnerMoreVModel" />
+
+        <variable
             name="item"
             type="com.quansu.heifengwuliu.model.bean.ReceiveBean" />
 
+        <variable
+            name="position"
+            type="Integer" />
+
     </data >
 
-    <com.quansu.heifengwuliu.widget.AddressItemEnterView
-        android:id="@+id/view_enter"
+    <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
+        android:layout_height="wrap_content"
+        android:focusable="true"
+        xmlns:tools="http://schemas.android.com/tools"
+        android:focusableInTouchMode="true"
+        android:orientation="vertical">
+
+        <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/dp_12"
+            android:layout_marginTop="@dimen/dp_10"
+            android:layout_marginEnd="@dimen/dp_12"
+            android:orientation="vertical"
+            android:paddingStart="@dimen/dp_10"
+            android:paddingTop="@dimen/dp_10"
+            android:paddingEnd="@dimen/dp_12"
+            android:paddingBottom="@dimen/dp_10"
+            app:qmui_borderColor="#BFBFBF"
+            app:qmui_borderWidth="@dimen/dp_1"
+            app:qmui_radius="@dimen/dp_2">
+
+            <LinearLayout
+                android:id="@+id/ll_delete"
+                android:layout_width="match_parent"
+                android:gravity="right|center"
+                android:visibility="gone"
+                tools:visibility="visible"
+                android:layout_height="40dp">
+
+                <TextView
+                    android:id="@+id/tv_delete"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:gravity="right"
+                    android:minWidth="45dp"
+                    android:text="删除"
+                    android:textColor="#4070FF"
+                    android:textSize="14sp">
+
+                </TextView>
+
+            </LinearLayout>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:gravity="center_vertical"
+                android:orientation="horizontal">
+
+
+                <com.qmuiteam.qmui.widget.QMUIRadiusImageView
+                    android:id="@+id/img"
+                    android:layout_width="25dp"
+                    android:layout_height="25dp"
+                    android:src="@drawable/ic_math"
+                    app:qmui_is_circle="true" />
+
+
+                <TextView
+                    android:id="@+id/tv_city"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_weight="1"
+                    android:hint="请选择省市区"
+                    android:text="@{item.pca}"
+                    android:onClick="@{v->vm.choseCity(position)}"
+                    android:textColor="#101010"
+                    android:textSize="@dimen/sp_16"></TextView>
+
+                <LinearLayout
+                    android:id="@+id/ll_chose_address"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:onClick="@{v->vm.chosePeoPle(position)}"
+                    android:gravity="center_vertical">
+
+                    <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="#5E5C5C"
+                        android:textSize="@dimen/sp_15"></TextView>
+
+                    <ImageView
+                        style="@style/mine_arrow_right"
+                        android:src="@drawable/mine_right" />
+                </LinearLayout>
+            </LinearLayout>
+
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/dp_10"
+                android:gravity="center_vertical"
+                android:orientation="horizontal">
+
+
+                <EditText
+                    android:id="@+id/et_detailed_address"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="35dp"
+                    android:layout_weight="1"
+                    android:background="@null"
+                    android:text="@{item.address}"
+                    android:hint="请输入详细地址"
+                    android:textColor="#101010"
+                    android:textColorHint="#BBBBBB"
+                    android:textSize="@dimen/sp_15"></EditText>
+
+                <LinearLayout
+                    android:id="@+id/ll_chose_map"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:onClick="@{v->vm.choseMap(position)}"
+                    android:gravity="center_vertical">
+
+                    <TextView
+                        android:layout_width="wrap_content"
+                        android:layout_height="match_parent"
+                        android:layout_marginStart="@dimen/dp_10"
+                        android:layout_marginEnd="@dimen/dp_10"
+                        android:text="地图选点"
+                        android:textColor="#5E5C5C"
+                        android:textSize="@dimen/sp_15"></TextView>
+
+                    <ImageView
+                        android:layout_width="20dp"
+                        android:layout_height="20dp"
+                        android:src="@drawable/map_address" />
+
+                </LinearLayout>
+
+            </LinearLayout>
+
+
+            <TextView
+                android:id="@+id/tv_chose_time"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="35dp"
+                android:layout_marginTop="@dimen/dp_10"
+                android:text="@{item.time}"
+                android:onClick="@{v->vm.choseTime(position)}"
+                android:hint="点击选择卸货时间"
+                android:textColor="#5E5C5C"
+                android:textSize="@dimen/sp_15"></TextView>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/dp_10"
+                android:layout_marginBottom="@dimen/dp_10"
+                android:gravity="center_vertical"
+                android:orientation="horizontal">
+
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="35dp"
+                    android:layout_marginEnd="@dimen/dp_10"
+                    android:src="@drawable/ic_math" />
+
+                <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
+                    android:layout_width="0dp"
+                    android:layout_height="35dp"
+                    android:layout_weight="1"
+                    android:padding="@dimen/dp_2"
+                    app:qmui_borderColor="#BFBFBF"
+                    app:qmui_borderWidth="@dimen/dp_1"
+                    app:qmui_radius="@dimen/dp_2">
+
+                    <EditText
+                        android:id="@+id/et_name"
+                        android:layout_width="match_parent"
+                        android:layout_height="match_parent"
+                        android:background="@null"
+                        android:hint="姓名"
+                        android:text="@{item.name}"
+                        android:textColor="#101010"
+                        android:textColorHint="#BBBBBB"
+                        android:textSize="@dimen/sp_15">
+
+                    </EditText>
+
+                </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="@dimen/dp_15"
+                    android:layout_marginEnd="@dimen/dp_10"
+                    android:src="@drawable/ic_math" />
+
+                <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
+                    android:layout_width="0dp"
+                    android:layout_height="35dp"
+                    android:layout_weight="1"
+                    android:padding="@dimen/dp_2"
+                    app:qmui_borderColor="#BFBFBF"
+                    app:qmui_borderWidth="@dimen/dp_1"
+                    app:qmui_radius="@dimen/dp_2">
+
+                    <EditText
+                        android:id="@+id/et_phone"
+                        android:layout_width="match_parent"
+                        android:layout_height="match_parent"
+                        android:background="@null"
+                        android:hint="电话"
+                        android:textColor="#101010"
+                        android:text="@{item.mobile}"
+                        android:textColorHint="#BBBBBB"
+                        android:textSize="@dimen/sp_15">
+
+                    </EditText>
+
+                </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
+
+
+            </LinearLayout>
+
+
+
+
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="40dp"
+                android:gravity="center"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="货物名称"
+                    android:textColor="#101010"
+                    android:textSize="@dimen/sp_16">
+
+                </TextView>
+
+                <EditText
+                    android:id="@+id/et_goods_name"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_weight="1"
+                    android:text="@{item.goods}"
+                    android:background="@null"
+                    android:gravity="center_vertical|right"
+                    android:hint="请输入货物名"
+                    android:textColor="#101010"
+                    android:textColorHint="#BBBBBB"
+                    android:textSize="@dimen/sp_15"></EditText>
+
+
+            </LinearLayout>
+
+            <LinearLayout
+                android:id="@+id/ll_goods_type"
+                android:layout_width="match_parent"
+                android:layout_height="40dp"
+                android:gravity="center"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="货物类型"
+                    android:textColor="#101010"
+                    android:textSize="@dimen/sp_16">
+
+                </TextView>
+
+                <TextView
+                    android:id="@+id/tv_goods_type"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_marginEnd="@dimen/dp_10"
+                    android:text="@{item.goods_type_name}"
+                    android:layout_weight="1"
+                    android:gravity="center_vertical|right"
+                    android:hint="请选择货物类型"
+                    android:textColor="#101010"
+                    android:textColorHint="#BBBBBB"
+                    android:textSize="@dimen/sp_15"></TextView>
+
+
+
+                <ImageView
+                    style="@style/mine_arrow_right"
+                    android:src="@drawable/mine_right" />
+
+
+            </LinearLayout>
+
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="40dp"
+                android:gravity="center"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="单车运量"
+                    android:textColor="#101010"
+                    android:textSize="@dimen/sp_16">
+
+                </TextView>
+
+                <EditText
+                    android:id="@+id/et_sing_car_nums"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_weight="1"
+                    android:background="@null"
+                    android:gravity="center_vertical|right"
+                    android:inputType="number|numberDecimal"
+                    android:hint="请输入单车运输数量"
+                    android:text="@{item.nums}"
+                    android:textColor="#101010"
+                    android:textColorHint="#BBBBBB"
+                    android:textSize="@dimen/sp_15"></EditText>
+
+                <LinearLayout
+                    android:id="@+id/ll_chose_units"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:gravity="center_vertical"
+                    android:orientation="horizontal">
+
+
+                    <TextView
+                        android:id="@+id/tv_chose_units"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_marginStart="@dimen/dp_10"
+                        android:layout_marginEnd="@dimen/dp_10"
+                        android:hint="请选择单位"
+                        android:text="@{item.nums_type}"
+                        android:gravity="right"
+                        android:textColor="#101010"
+                        android:textColorHint="#BBBBBB"
+                        android:textSize="@dimen/sp_15"></TextView>
+
+                    <ImageView
+                        style="@style/mine_arrow_right"
+                        android:src="@drawable/mine_right" />
+                </LinearLayout>
+
+            </LinearLayout>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="40dp"
+                android:gravity="center"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="单价"
+                    android:textColor="#101010"
+                    android:textSize="@dimen/sp_16">
+
+                </TextView>
+
+                <EditText
+                    android:id="@+id/et_sing_car_price"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_weight="1"
+                    android:background="@null"
+                    android:text="@{item.price}"
+                    android:gravity="center_vertical|right"
+                    android:hint="请输入单价"
+                    android:textColor="#101010"
+                    android:textColorHint="#BBBBBB"
+                    android:textSize="@dimen/sp_15"></EditText>
+
+
+            </LinearLayout>
+
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="40dp"
+                android:gravity="center"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="总金额"
+                    android:textColor="#101010"
+                    android:textSize="@dimen/sp_16">
+
+                </TextView>
+
+                <EditText
+                    android:id="@+id/et_sing_car_total"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/dp_10"
+                    android:layout_weight="1"
+                    android:background="@null"
+                    android:gravity="center_vertical|right"
+                    android:hint="请输入总金额"
+                    android:text="@{item.total}"
+                    android:textColor="#101010"
+                    android:textColorHint="#BBBBBB"
+                    android:textSize="@dimen/sp_15"></EditText>
+
+
+            </LinearLayout>
+
+
+
+
+
+        </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
-    </com.quansu.heifengwuliu.widget.AddressItemEnterView>
 
+    </LinearLayout>
 
 </layout >

+ 1 - 1
app/src/main/res/layout/widget_enteritem.xml

@@ -126,7 +126,7 @@
                 android:layout_height="wrap_content"
                 android:layout_marginStart="35dp"
                 android:layout_marginTop="@dimen/dp_10"
-                android:hint="点击选择货时间"
+                android:hint="点击选择货时间"
                 android:textColor="#5E5C5C"
                 android:textSize="@dimen/sp_15"></TextView>