<?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>
        <import type="android.view.View" />
        <import type="com.lukouguoji.module_base.ui.weight.search.layout.SearchLayoutType" />

        <variable
            name="viewModel"
            type="com.lukouguoji.gjj.viewModel.IntImpQueryViewModel" />
    </data>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/color_f2"
        android:orientation="vertical">

        <!-- 标题栏（始终在最上层，不被遮挡） -->
        <include layout="@layout/title_tool_bar" />

        <!-- 内容区域（FrameLayout 包裹，筛选面板和遮罩只在此区域内） -->
        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1">

            <!-- 原有内容 -->
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical">

                <!-- 搜索区域 -->
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginHorizontal="10dp"
                    android:layout_marginTop="10dp"
                    android:gravity="center_vertical"
                    android:orientation="horizontal">

                    <!-- 航班日期起 -->
                    <com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        hint='@{"请选择开始日期"}'
                        icon="@{@drawable/img_date}"
                        type="@{SearchLayoutType.DATE}"
                        value="@={viewModel.flightDateStart}" />

                    <!-- 航班日期止 -->
                    <com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        hint='@{"请选择结束日期"}'
                        icon="@{@drawable/img_date}"
                        type="@{SearchLayoutType.DATE}"
                        value="@={viewModel.flightDateEnd}" />

                    <!-- 代理人 -->
                    <com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        hint='@{"请选择代理"}'
                        list="@{viewModel.agentList}"
                        type="@{SearchLayoutType.SPINNER}"
                        value="@={viewModel.agentId}" />

                    <!-- 出库状态 -->
                    <com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        hint='@{"请选择出库状态"}'
                        list="@{viewModel.outStatusList}"
                        type="@{SearchLayoutType.SPINNER}"
                        value="@={viewModel.outStatus}" />

                    <!-- 运单号 -->
                    <com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        hint='@{"请输入运单号"}'
                        icon="@{@drawable/img_scan}"
                        setOnIconClickListener="@{()-> viewModel.waybillScanClick()}"
                        type="@{SearchLayoutType.INPUT}"
                        value="@={viewModel.waybillNo}"
                        autoQueryEnabled="@{true}"
                        autoQueryUrl="@{`/IntImpSearch/queryWbNoList`}"
                        autoQueryParamKey="@{`wbNo`}"
                        autoQueryMinLength="@{4}"
                        autoQueryMaxLength="@{8}"
                        autoQueryTitle="@{`选择运单号`}" />

                    <!-- 搜索和筛选按钮 -->
                    <LinearLayout
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        android:gravity="center_vertical|start"
                        android:orientation="horizontal"
                        android:paddingHorizontal="24dp">

                        <ImageView
                            android:layout_width="36dp"
                            android:layout_height="36dp"
                            android:onClick="@{()-> viewModel.searchClick()}"
                            android:padding="2dp"
                            android:src="@drawable/img_search" />

                        <FrameLayout
                            android:layout_width="36dp"
                            android:layout_height="36dp"
                            android:layout_marginLeft="16dp">

                            <ImageView
                                android:layout_width="match_parent"
                                android:layout_height="match_parent"
                                android:onClick="@{()-> viewModel.filterClick()}"
                                android:padding="5dp"
                                android:src="@drawable/img_filter" />

                            <View
                                android:layout_width="8dp"
                                android:layout_height="8dp"
                                android:layout_gravity="top|end"
                                android:background="@drawable/bg_red_dot"
                                android:visibility="@{viewModel.hasFilter ? View.VISIBLE : View.GONE}" />

                        </FrameLayout>

                    </LinearLayout>

                </LinearLayout>

                <!-- 列表区域 -->
                <com.scwang.smart.refresh.layout.SmartRefreshLayout
                    android:id="@+id/srl"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1">

                    <androidx.recyclerview.widget.RecyclerView
                        android:id="@+id/rv"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        itemLayoutId="@{viewModel.itemLayoutId}"
                        viewHolder="@{viewModel.itemViewHolder}"
                        app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
                        tools:listitem="@layout/item_int_imp_query" />

                </com.scwang.smart.refresh.layout.SmartRefreshLayout>

                <!-- 底部统计信息 -->
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:background="@color/white"
                    android:gravity="center_vertical"
                    android:paddingHorizontal="15dp">

                    <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:gravity="center_vertical"
                        android:orientation="horizontal">

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text='@{`合计：` + viewModel.totalCount + `票`}'
                            android:textColor="@color/bottom_tool_tips_text_color"
                            android:textSize="16sp"
                            android:textStyle="bold"
                            tools:text="合计：3票" />

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="20dp"
                            android:text='@{`总件数：` + viewModel.totalPc}'
                            android:textColor="@color/bottom_tool_tips_text_color"
                            android:textSize="16sp"
                            android:textStyle="bold"
                            tools:text="总件数：100" />

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="20dp"
                            android:text='@{`总重量：` + viewModel.totalWeight}'
                            android:textColor="@color/bottom_tool_tips_text_color"
                            android:textSize="16sp"
                            android:textStyle="bold"
                            tools:text="总重量：100" />

                    </LinearLayout>

                </LinearLayout>

            </LinearLayout>

            <!-- 遮罩层（只覆盖内容区域） -->
            <View
                android:id="@+id/filter_overlay"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="#80000000"
                android:clickable="true"
                android:focusable="true"
                android:onClick="@{()-> viewModel.closeFilter()}"
                android:visibility="gone" />

            <!-- 筛选面板（从右侧滑入，只在内容区域内） -->
            <include
                android:id="@+id/filter_panel"
                layout="@layout/layout_int_imp_query_filter"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_gravity="end"
                android:visibility="gone"
                app:viewModel="@{viewModel}" />

        </FrameLayout>

    </LinearLayout>
</layout>
