石慧云 4 роки тому
батько
коміт
9033b29a5c

+ 2 - 3
app/src/main/java/com/quansu/heifengwuliu/activity/InvoiceActivity.kt

@@ -17,7 +17,6 @@ import io.reactivex.Observable
 
 class InvoiceActivity : MBRActivity<InvoiceVModel, InvoiceAdapter, ActivityInvoiceBinding>() {
 
-    var k:String=""
 
     override fun initView(view: View?) {
         super.initView(view)
@@ -55,11 +54,11 @@ class InvoiceActivity : MBRActivity<InvoiceVModel, InvoiceAdapter, ActivityInvoi
 
 
     override fun initAdapter(): InvoiceAdapter {
-        return InvoiceAdapter()
+        return InvoiceAdapter(vm)
     }
 
     override fun api(): Observable<out IResponse<*>> {
-        return NetEngine.service.myDriver(k, vm?.repository()?.autoPage()!!)
+        return NetEngine.service.invoiceList( vm?.repository()?.autoPage()!!)
     }
 
     override fun title(): String? {

+ 5 - 6
app/src/main/java/com/quansu/heifengwuliu/adapter/InvoiceAdapter.kt

@@ -4,15 +4,14 @@ import com.chad.library.adapter.base.viewholder.BaseDataBindingHolder
 import com.quansu.heifengwuliu.R
 import com.quansu.heifengwuliu.databinding.ItemInvoiceBinding
 import com.quansu.heifengwuliu.model.DriverBean
+import com.quansu.heifengwuliu.model.Invoice
+import com.quansu.heifengwuliu.vmodel.InvoiceVModel
 import com.ysnows.base.base.BAdapter
 
-class InvoiceAdapter() : BAdapter<DriverBean, BaseDataBindingHolder<ItemInvoiceBinding>>(R.layout.item_invoice) {
-    override fun convert(holder: BaseDataBindingHolder<ItemInvoiceBinding>, item: DriverBean) {
+class InvoiceAdapter(val vm: InvoiceVModel) : BAdapter<Invoice, BaseDataBindingHolder<ItemInvoiceBinding>>(R.layout.item_invoice) {
+    override fun convert(holder: BaseDataBindingHolder<ItemInvoiceBinding>, item: Invoice) {
+        holder.dataBinding?.vm = vm
         holder.dataBinding?.item = item
 
-        holder.dataBinding?.imgCheck!!.setOnClickListener {
-            if(item.checked==0) item.checked=1 else item.checked=0
-            notifyItemChanged(holder.adapterPosition)
-        }
     }
 }

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

@@ -5,10 +5,14 @@ import com.ysnows.base.inter.IModel
 /**
  *Created by shihuiyun
  *on 2020/9/18
+ * invoice_id:获取发票抬头的 id
+ * in_id:发票列表的id
+ * state:1:开票中 2通过(已邮寄) 3系统拒绝  9取消
  */
 class Invoice(var invoice_id:String,var uid:String,var company:String,
               var sn:String,var addr:String,var tel:String,
               var bank:String,var number:String,var create_time:String,
-              var update_time:String,var delete_time:String
+              var update_time:String,var delete_time:String,var in_id:String,
+              var state:Int,var money:String
 ) : IModel {
 }

+ 9 - 0
app/src/main/java/com/quansu/heifengwuliu/utils/net/ApiService.kt

@@ -334,4 +334,13 @@ interface ApiService {
 
 
 
+    /**
+     * 发票列表
+     * @return
+     */
+    @GET("api/invoice/invoiceList")
+    fun invoiceList(@Query("p") p: Int): Observable<Response<ArrayList<Invoice>>>
+
+
+
 }

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

@@ -1,30 +1,22 @@
 package com.quansu.heifengwuliu.vmodel
 
-import android.app.Activity
-import android.content.Intent
-import com.quansu.heifengwuliu.utils.net.NetEngine
 import com.ysnows.base.base.BRRepository
 import com.ysnows.base.base.BRViewModel
 
 class InvoiceVModel : BRViewModel<BRRepository>() {
 
 
-    fun setSaveDriver(arr:String){
-        //添加司机
-
-        repository()
-                .lreq(NetEngine.service.setDriver(arr))
-                .doOnNext {
-                    if (it.ok(true)) {
-                        val intent = Intent()
-                        var con = repository().context as Activity
-                        con.setResult(Activity.RESULT_OK, intent)
-                        con.finish()
-                    }
-                }
-                .subscribe()
-    }
+    //state:1:开票中 2通过(已邮寄) 3系统拒绝  9取消
+    fun getInvoiceStatus(state:Int):String{
+        return when (state){
+            1-> "开票中"
+            2-> "发票已邮寄"
+            3-> "系统拒绝"
+            9-> "已取消申请"
+            else-> ""
+        }
 
+    }
 
 
 

+ 59 - 66
app/src/main/res/layout/item_invoice.xml

@@ -1,109 +1,102 @@
 <?xml version="1.0" encoding="utf-8"?>
 <layout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools" >
 
     <data >
 
         <variable
+            name="vm"
+            type="com.quansu.heifengwuliu.vmodel.InvoiceVModel" />
+        <variable
             name="item"
-            type="com.quansu.heifengwuliu.model.DriverBean" />
+            type="com.quansu.heifengwuliu.model.Invoice" />
 
     </data >
 
-    <RelativeLayout
+    <LinearLayout
         android:id="@+id/rl_todo"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:orientation="horizontal"
-        xmlns:app="http://schemas.android.com/apk/res-auto"
-        android:paddingLeft="@dimen/dp_10"
-        android:background="#ffffff"
-        android:paddingTop="@dimen/dp_20"
-        android:paddingBottom="@dimen/dp_20"
+        android:orientation="vertical"
+        android:layout_marginEnd="@dimen/dp_12"
+        android:layout_marginStart="@dimen/dp_12"
         android:layout_marginBottom="@dimen/dp_10"
-        android:paddingRight="@dimen/dp_10" >
-
-
-        <ImageView
-            android:id="@+id/img_check"
-            android:layout_width="40dp"
-            android:layout_height="40dp"
-            android:padding="10dp"
-            android:layout_centerVertical="true"
-            android:src="@{item.checked==0?@drawable/select_off:@drawable/select_on}"
-            >
-
-        </ImageView>
-
-<!--        <ImageView-->
-<!--            android:id="@+id/img_check"-->
-<!--            android:layout_width="15dp"-->
-<!--            android:layout_height="15dp"-->
-<!--            android:layout_centerVertical="true"-->
-<!--            android:src="@{item.checked==0?@drawable/select_off:@drawable/select_on}"-->
-<!--             />-->
-
-        <ImageView
-            android:id="@+id/img_icon"
-            android:layout_width="50dp"
-            android:layout_height="50dp"
-            android:layout_centerVertical="true"
-            android:layout_toEndOf="@id/img_check"
-            android:padding="@dimen/dp_13"
-            android:background="@mipmap/ic_launcher"
-            app:url="@{item.avatar}"
-             />
-
-        <LinearLayout
+         >
+
+        <com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout
             android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_centerVertical="true"
-            android:layout_marginStart="@dimen/dp_8"
-            android:layout_toEndOf="@id/img_icon"
-            android:orientation="vertical" >
+            app:qmui_radius="@dimen/dp_4"
+            app:qmui_borderColor="#BBBBBB"
+            app:qmui_borderWidth="@dimen/dp_1"
+            android:padding="@dimen/dp_10"
+            android:orientation="vertical"
+            android:layout_height="wrap_content">
 
             <LinearLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="horizontal" >
+                android:orientation="horizontal"
+                android:layout_height="wrap_content">
+
 
                 <TextView
-                    android:id="@+id/tv_name"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_weight="1"
                     android:ellipsize="end"
                     android:maxLines="1"
-                    android:text="@{item.name}"
-                    android:textColor="@{item.checked==1?@color/text_hint:@color/text_black}"
+                    android:text="@{item.company}"
                     android:textSize="@dimen/sp_16"
+                    android:textColor="@color/text_title"
                     tools:text="@string/app_name" />
 
                 <TextView
-                    android:id="@+id/tv_phone"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:ellipsize="end"
                     android:maxLines="1"
-                    android:text="@{item.mobile}"
-                    android:textColor="@{item.checked==1?@color/text_hint:@color/text_black}"
+                    android:text="@{vm.getInvoiceStatus(item.state)}"
+                    android:textColor="#67ACEE"
                     android:textSize="@dimen/sp_16"
                     tools:text="@string/app_name" />
 
-            </LinearLayout >
+            </LinearLayout>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:orientation="horizontal"
+                android:layout_marginTop="@dimen/dp_10"
+                android:layout_height="wrap_content">
+
+
+                <TextView
+
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="1"
+                    android:ellipsize="end"
+                    android:maxLines="1"
+                    android:text="@{@string/total_img+item.money}"
+                    android:textColor="#BC5B55"
+                    android:textSize="@dimen/sp_16"
+                    tools:text="@string/app_name" />
+
+                <TextView
+
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:ellipsize="end"
+                    android:maxLines="1"
+                    android:textColor="@color/text_title"
+                    android:text="@{item.create_time}"
+                    android:textSize="@dimen/sp_12"
+                    tools:text="@string/app_name" />
 
-            <TextView
-                android:id="@+id/tv_desc"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginTop="@dimen/dp_2"
-                android:text="@{item.number+item.car_cate}"
+            </LinearLayout>
 
-                android:textColor="@{item.checked==1?@color/text_hint:@color/text_black}"
-                tools:text="@string/app_name" />
 
-        </LinearLayout >
+        </com.qmuiteam.qmui.widget.roundwidget.QMUIRoundLinearLayout>
 
 
-    </RelativeLayout >
+    </LinearLayout >
 </layout >