Browse Source

- 库存列表;

Gizmo 5 years ago
parent
commit
39c5066bde
17 changed files with 1116 additions and 31894 deletions
  1. 0 31658
      app/build/generated/not_namespaced_r_class_sources/debug/processDebugResources/r/com/warewms/gizmo/ware_wms_kml/R.java
  2. 137 222
      app/build/intermediates/blame/res/debug/multi-v2/values.json
  3. 2 2
      app/build/intermediates/incremental/packageDebug/tmp/debug/file-input-save-data.txt
  4. BIN
      app/build/intermediates/res/merged/debug/layout_cell_location_detail.xml.flat
  5. BIN
      app/build/intermediates/res/merged/debug/values_values.arsc.flat
  6. 12 0
      app/src/main/AndroidManifest.xml
  7. 1 1
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/network/UrlDefine.java
  8. 153 0
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/InventoryInActivity.java
  9. 137 0
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/InventoryStatusListActivity.java
  10. 11 0
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/LocationSelectionActivity.java
  11. 6 5
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/MainActivity.java
  12. 13 6
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/ReceiveGoodsDetailActivity.java
  13. 78 0
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/adapter/LocationStatusListAdapter.java
  14. 6 0
      app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/fragment/InventoryInFragment.java
  15. 412 0
      app/src/main/res/layout/activity_inventory_in.xml
  16. 69 0
      app/src/main/res/layout/activity_inventory_status_list.xml
  17. 79 0
      app/src/main/res/layout/cell_location_status_detail.xml

File diff suppressed because it is too large
+ 0 - 31658
app/build/generated/not_namespaced_r_class_sources/debug/processDebugResources/r/com/warewms/gizmo/ware_wms_kml/R.java


File diff suppressed because it is too large
+ 137 - 222
app/build/intermediates/blame/res/debug/multi-v2/values.json


+ 2 - 2
app/build/intermediates/incremental/packageDebug/tmp/debug/file-input-save-data.txt

@@ -1,7 +1,7 @@
 #Internal package file, do not edit.
-#Thu Nov 21 19:39:00 CST 2019
+#Wed Mar 18 22:47:58 CST 2020
 0.baseType=DIRECTORY
-0.base=/Users/gizmo/StudioProjects/WARE_WMS_KML/app/build/intermediates/transforms/dexMerger/debug/0
+0.base=/Users/gizmo/StudioProjects/WAREWMS-GZLT-PDA/app/build/intermediates/transforms/dexMerger/debug/0
 0.path=classes.dex
 0.set=DEX
 count=1

BIN
app/build/intermediates/res/merged/debug/layout_cell_location_detail.xml.flat


BIN
app/build/intermediates/res/merged/debug/values_values.arsc.flat


+ 12 - 0
app/src/main/AndroidManifest.xml

@@ -453,6 +453,18 @@
             android:windowSoftInputMode="stateAlwaysHidden">
         </activity>
 
+        <activity
+            android:name="com.warewms.gizmo.ware_wms_gzlt.ui.activity.InventoryInActivity"
+            android:screenOrientation="portrait"
+            android:windowSoftInputMode="stateAlwaysHidden">
+        </activity>
+
+        <activity
+            android:name="com.warewms.gizmo.ware_wms_gzlt.ui.activity.InventoryStatusListActivity"
+            android:screenOrientation="portrait"
+            android:windowSoftInputMode="stateAlwaysHidden">
+        </activity>
+
     </application>
 
 </manifest>

+ 1 - 1
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/network/UrlDefine.java

@@ -2,7 +2,7 @@ package com.warewms.gizmo.ware_wms_gzlt.network;
 
 public interface UrlDefine {
 
-    String IP_ADDRESS = "192.168.1.41:8089";
+    String IP_ADDRESS = "192.168.1.40:8089";
 //    String IP_ADDRESS = "192.168.20.2:8089";
 
     String WEBSOCKET_URL = "ws://" + IP_ADDRESS + "/warewms/websocket/123";//websocket测试地址

+ 153 - 0
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/InventoryInActivity.java

@@ -0,0 +1,153 @@
+package com.warewms.gizmo.ware_wms_gzlt.ui.activity;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.LinearLayout;
+
+import androidx.annotation.Nullable;
+
+import com.blankj.utilcode.util.ToastUtils;
+import com.warewms.gizmo.ware_wms_gzlt.R;
+import com.warewms.gizmo.ware_wms_gzlt.entity.BaseResponse;
+import com.warewms.gizmo.ware_wms_gzlt.entity.bean.BarcodeData;
+import com.warewms.gizmo.ware_wms_gzlt.entity.response.LocationModel;
+import com.warewms.gizmo.ware_wms_gzlt.event.Event;
+import com.warewms.gizmo.ware_wms_gzlt.network.Api;
+import com.warewms.gizmo.ware_wms_gzlt.network.BaseObserver;
+import com.warewms.gizmo.ware_wms_gzlt.network.RetrofitHelper;
+import com.warewms.gizmo.ware_wms_gzlt.network.RxUtil;
+import com.warewms.gizmo.ware_wms_gzlt.ui.base.BaseToolbarActivity;
+import com.warewms.gizmo.ware_wms_gzlt.util.BarcodeSingleton;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import butterknife.BindView;
+
+public class InventoryInActivity extends BaseToolbarActivity {
+
+    @BindView(R.id.et_transit_loc)
+    EditText etTransitLoc;
+    @BindView(R.id.btn_transit_loc)
+    Button btnTransitLoc;
+    @BindView(R.id.et_goods_code)
+    EditText etGoodsCode;
+    @BindView(R.id.layout_scroll_view)
+    LinearLayout layoutScrollView;
+    @BindView(R.id.btn_submit)
+    Button btnSubmit;
+
+    @Override
+    public String getToolBarTitle() {
+        return "库存录入";
+    }
+
+    @Override
+    public int getEventCode() {
+        return BarcodeSingleton.EVENT_CODE_FIRST;
+    }
+
+    @Override
+    protected void onScanReceive(BarcodeData barcodeData, EditText editText) {
+
+        editText.setText(barcodeData.getData());
+    }
+
+    @Override
+    protected void onEventProcess(Event event) {
+
+    }
+
+    @Override
+    protected int getContentView() {
+        return R.layout.activity_inventory_in;
+    }
+
+    @Override
+    protected void initView() {
+
+        setGestureOnLayout(layoutScrollView);
+
+        etTransitLoc.requestFocus();
+
+        btnSubmit.setOnClickListener(v -> {
+
+            if (judgeCompleteness()) {
+
+                submit();
+            }
+        });
+
+
+        //库位选择
+        btnTransitLoc.setOnClickListener(l -> {
+
+            Bundle bundle = new Bundle();
+            bundle.putString(LocationSelectionActivity.PARAM_KEY_SELECT_TYPE, "2");
+            sendIntentForResult(LocationSelectionActivity.class, LocationSelectionActivity.PARAM_RESULT_CODE_CHOSE, bundle);
+        });
+    }
+
+    @Override
+    protected void initData() {
+
+    }
+
+    /**
+     * 判断当前页面是否可提交
+     *
+     * @return 是否可提交
+     */
+    private boolean judgeCompleteness() {
+
+        if (etTransitLoc.length() == 0) {
+
+            ToastUtils.showShort("请输入库存货位");
+            etTransitLoc.requestFocus();
+            return false;
+        } else if (etGoodsCode.length() == 0) {
+
+            ToastUtils.showShort("请输入物料");
+            return false;
+        }
+        return true;
+    }
+
+    private void submit() {
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("locationId", etTransitLoc.getText().toString());
+        map.put("material", etGoodsCode.getText().toString());
+        Map<String, Object> param = new HashMap<>();
+        param.put("details", map);
+
+        RetrofitHelper.create(Api.class)
+                .docAsnAdd(RetrofitHelper.appendCommonParam(param, this))
+                .compose(RxUtil.observableToMain())
+                .as(RxUtil.bindLifecycle(this))
+                .subscribe(new BaseObserver<Object>(getLoadingDialog()) {
+
+                    @Override
+                    public void onSuccess(BaseResponse<Object> response) {
+
+                        ToastUtils.showShort(response.getMsg());
+                        finish();
+                    }
+                });
+    }
+
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+
+//        assert data != null;
+        if (resultCode == LocationSelectionActivity.PARAM_RESULT_CODE_CHOSE) {
+
+            LocationModel locationModel = data.getParcelableExtra(LocationListActivity.BLOCK_LOCATION_MODEL);
+            etTransitLoc.setText(locationModel.getLocationNo());
+            etGoodsCode.requestFocus();
+        }
+    }
+}

+ 137 - 0
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/InventoryStatusListActivity.java

@@ -0,0 +1,137 @@
+package com.warewms.gizmo.ware_wms_gzlt.ui.activity;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.widget.EditText;
+
+import androidx.recyclerview.widget.LinearLayoutManager;
+
+import com.jcodecraeer.xrecyclerview.XRecyclerView;
+import com.warewms.gizmo.ware_wms_gzlt.R;
+import com.warewms.gizmo.ware_wms_gzlt.entity.BaseResponse;
+import com.warewms.gizmo.ware_wms_gzlt.entity.bean.BarcodeData;
+import com.warewms.gizmo.ware_wms_gzlt.entity.response.LocationModel;
+import com.warewms.gizmo.ware_wms_gzlt.event.Event;
+import com.warewms.gizmo.ware_wms_gzlt.network.Api;
+import com.warewms.gizmo.ware_wms_gzlt.network.BaseObserver;
+import com.warewms.gizmo.ware_wms_gzlt.network.RetrofitHelper;
+import com.warewms.gizmo.ware_wms_gzlt.network.RxUtil;
+import com.warewms.gizmo.ware_wms_gzlt.ui.adapter.LocationListAdapter;
+import com.warewms.gizmo.ware_wms_gzlt.ui.adapter.LocationStatusListAdapter;
+import com.warewms.gizmo.ware_wms_gzlt.ui.base.BaseToolbarActivity;
+import com.warewms.gizmo.ware_wms_gzlt.util.BarcodeSingleton;
+import com.warewms.gizmo.ware_wms_gzlt.util.Util;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+
+public class InventoryStatusListActivity extends BaseToolbarActivity {
+
+    @BindView(R.id.recycler_view)
+    XRecyclerView recyclerView;
+
+    int currentPage = 1;
+    LocationStatusListAdapter adapter;
+    List<LocationModel> locationModelList = new ArrayList<>();
+
+    @Override
+    public String getToolBarTitle() {
+        return "库存列表";
+    }
+
+    @Override
+    public int getEventCode() {
+        return BarcodeSingleton.EVENT_CODE_DEFAULT;
+    }
+
+    @Override
+    protected void onScanReceive(BarcodeData barcodeData, EditText editText) {
+
+    }
+
+    @Override
+    protected void onEventProcess(Event event) {
+
+    }
+
+    @Override
+    protected int getContentView() {
+        return R.layout.activity_inventory_status_list;
+    }
+
+    @Override
+    protected void initView() {
+
+        recyclerView.setLayoutManager(new LinearLayoutManager(this));
+        adapter = new LocationStatusListAdapter(this, locationModelList);
+        recyclerView.setAdapter(adapter);
+        recyclerView.setLoadingListener(new XRecyclerView.LoadingListener() {
+            @Override
+            public void onRefresh() {
+                currentPage = 1;
+                httpList(true);
+            }
+
+            @Override
+            public void onLoadMore() {
+                currentPage++;
+                httpList(false);
+            }
+        });
+    }
+
+    @Override
+    protected void initData() {
+
+        httpList(true);
+    }
+
+    private void httpList(boolean isRefresh) {
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("currentPage", currentPage);
+
+        RetrofitHelper.create(Api.class)
+                .locationList(RetrofitHelper.appendCommonParam(map, this))
+                .compose(RxUtil.observableToMain())
+                .as(RxUtil.bindLifecycle(this))
+                .subscribe(new BaseObserver<List<LocationModel>>(getLoadingDialog()) {
+
+                    @Override
+                    public void onSuccess(BaseResponse<List<LocationModel>> response) {
+
+                        recyclerView.refreshComplete();
+                        recyclerView.loadMoreComplete();
+
+                        if (isRefresh) {
+
+                            locationModelList.clear();
+                        } else {
+
+                            if (Util.isEmptyArry(response.getData())) {
+
+                                currentPage--;
+                                recyclerView.setNoMore(true);
+                            }
+                        }
+
+                        locationModelList.addAll(response.getData());
+                        adapter.notifyDataSetChanged();
+                    }
+
+                    @Override
+                    public void error(String msg) {
+                        super.error(msg);
+
+                        recyclerView.refreshComplete();
+                        recyclerView.loadMoreComplete();
+                        if (!isRefresh) currentPage--;
+                    }
+                });
+    }
+}

+ 11 - 0
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/LocationSelectionActivity.java

@@ -36,6 +36,9 @@ public class LocationSelectionActivity extends BaseToolbarActivity {
     LocationListAdapter adapter;
     List<LocationModel> locationModelList = new ArrayList<>();
 
+    // 1 - 入库上架   2 - 库存新增
+    public final static String PARAM_KEY_SELECT_TYPE = "param_key_select_type";
+
     public final static int PARAM_RESULT_CODE_CHOSE = 10001;//回传code
     public final static String BLOCK_LOCATION_MODEL = "block_location_model";//回传的库位实体
 
@@ -103,6 +106,14 @@ public class LocationSelectionActivity extends BaseToolbarActivity {
 
         Map<String, Object> map = new HashMap<>();
         map.put("currentPage", currentPage);
+        String type = getIntent().getStringExtra(PARAM_KEY_SELECT_TYPE);
+        if (null != type && type.equals("1")) {// 入库上架
+
+            map.put("zoneId", "123");
+        }
+//        else { //2 - 库存新增
+//
+//        }
 
         RetrofitHelper.create(Api.class)
                 .locationList(RetrofitHelper.appendCommonParam(map, this))

+ 6 - 5
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/MainActivity.java

@@ -127,11 +127,12 @@ public class MainActivity extends BaseActivity {
         setSupportActionBar(toolBar);
         tvBarTitle.setText("仓库区管理");
 
-//        toolBar.setNavigationIcon(R.drawable.ic_toolbar_exchange);
-//        toolBar.setNavigationOnClickListener(v -> {
-//
-//            showShopChoice();
-//        });
+        toolBar.setNavigationIcon(R.drawable.ic_inventory_search);
+        toolBar.setNavigationOnClickListener(v -> {
+
+            Intent intent = new Intent(MainActivity.this, InventoryStatusListActivity.class);
+            startActivity(intent);
+        });
 
         //初始化扫码
         BarcodeSingleton.getInstance().init(this);

+ 13 - 6
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/activity/ReceiveGoodsDetailActivity.java

@@ -13,6 +13,8 @@
 package com.warewms.gizmo.ware_wms_gzlt.ui.activity;
 
 import android.content.Intent;
+import android.location.Location;
+import android.os.Bundle;
 import android.widget.Button;
 import android.widget.EditText;
 import android.widget.LinearLayout;
@@ -96,7 +98,9 @@ public class ReceiveGoodsDetailActivity extends BaseToolbarActivity {
         //库位选择
         btnTransitLoc.setOnClickListener(l -> {
 
-            sendIntentForResult(LocationSelectionActivity.class, LocationSelectionActivity.PARAM_RESULT_CODE_CHOSE);
+            Bundle bundle = new Bundle();
+            bundle.putString(LocationSelectionActivity.PARAM_KEY_SELECT_TYPE, "1");
+            sendIntentForResult(LocationSelectionActivity.class, LocationSelectionActivity.PARAM_RESULT_CODE_CHOSE, bundle);
         });
     }
 
@@ -133,7 +137,7 @@ public class ReceiveGoodsDetailActivity extends BaseToolbarActivity {
     private void submit() {
 
         Map<String, Object> map = new HashMap<>();
-        map.put("transitionLocation", etTransitLoc.getText().toString());
+        map.put("locationId", etTransitLoc.getText().toString());
         map.put("material", etGoodsCode.getText().toString());
         Map<String, Object> param = new HashMap<>();
         param.put("details", map);
@@ -157,9 +161,12 @@ public class ReceiveGoodsDetailActivity extends BaseToolbarActivity {
     protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
 
-        assert data != null;
-        LocationModel locationModel = data.getParcelableExtra(LocationListActivity.BLOCK_LOCATION_MODEL);
-        etTransitLoc.setText(locationModel.getLocationNo());
-        etGoodsCode.requestFocus();
+//        assert data != null;
+        if (resultCode == LocationSelectionActivity.PARAM_RESULT_CODE_CHOSE) {
+
+            LocationModel locationModel = data.getParcelableExtra(LocationListActivity.BLOCK_LOCATION_MODEL);
+            etTransitLoc.setText(locationModel.getLocationNo());
+            etGoodsCode.requestFocus();
+        }
     }
 }

+ 78 - 0
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/adapter/LocationStatusListAdapter.java

@@ -0,0 +1,78 @@
+package com.warewms.gizmo.ware_wms_gzlt.ui.adapter;
+
+import android.content.Context;
+import android.view.View;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+
+import com.warewms.gizmo.ware_wms_gzlt.R;
+import com.warewms.gizmo.ware_wms_gzlt.entity.response.LocationModel;
+import com.warewms.gizmo.ware_wms_gzlt.ui.base.BaseAdapter;
+import com.warewms.gizmo.ware_wms_gzlt.ui.base.BaseViewHolder;
+
+import java.util.List;
+
+import butterknife.BindView;
+
+public class LocationStatusListAdapter extends BaseAdapter<LocationModel, LocationStatusListAdapter.ViewHolder> {
+
+    public LocationStatusListAdapter(Context context, List<LocationModel> list) {
+        super(context, list);
+    }
+
+    @Override
+    public int getItemView() {
+        return R.layout.cell_location_status_detail;
+    }
+
+    @Override
+    protected LocationStatusListAdapter.ViewHolder getViewHolder(View itemView) {
+        return new LocationStatusListAdapter.ViewHolder(itemView);
+    }
+
+    @Override
+    public void onBindViewHolder(@NonNull LocationStatusListAdapter.ViewHolder holder, int position) {
+
+        super.onBindViewHolder(holder, position);
+        holder.tvLocation.setText(mList.get(position).getLocationNo());
+        holder.tvZone.setText(mList.get(position).getZoneName());
+//        switch (mList.get(position).getStockStatus()) {
+//            case "00":
+//                holder.tvStatus.setText("空闲");
+//                break;
+//            case "10":
+//                holder.tvStatus.setText("占用");
+//                break;
+//            case "20":
+//                holder.tvStatus.setText("完成");
+//                break;
+//            case "80":
+//                holder.tvStatus.setText("封存");
+//                break;
+//            case "90":
+//                holder.tvStatus.setText("合格");
+//                break;
+//            case "99":
+//                holder.tvStatus.setText("不合格");
+//                break;
+//        }
+        holder.tvEmptyStatus.setText(mList.get(position).getIsEmpty().equals("Y") ? "空" : "占用");
+    }
+
+    static class ViewHolder extends BaseViewHolder {
+
+        @BindView(R.id.tv_location)
+        TextView tvLocation;
+        @BindView(R.id.tv_zone)
+        TextView tvZone;
+//        @BindView(R.id.tv_status)
+//        TextView tvStatus;
+        @BindView(R.id.tv_empty_status)
+        TextView tvEmptyStatus;
+
+        public ViewHolder(View itemView) {
+            super(itemView);
+        }
+    }
+}

+ 6 - 0
app/src/main/java/com/warewms/gizmo/ware_wms_gzlt/ui/fragment/InventoryInFragment.java

@@ -33,6 +33,7 @@ import com.warewms.gizmo.ware_wms_gzlt.entity.bean.HomeMenuItem;
 import com.warewms.gizmo.ware_wms_gzlt.entity.response.AppMenuModel;
 import com.warewms.gizmo.ware_wms_gzlt.entity.response.LoginResp;
 import com.warewms.gizmo.ware_wms_gzlt.event.Event;
+import com.warewms.gizmo.ware_wms_gzlt.ui.activity.InventoryInActivity;
 import com.warewms.gizmo.ware_wms_gzlt.ui.activity.OrderPickingAllocationActivity;
 import com.warewms.gizmo.ware_wms_gzlt.ui.activity.OrderPickingTaskActivity;
 import com.warewms.gizmo.ware_wms_gzlt.ui.activity.ReceiveGoodsActivity;
@@ -121,6 +122,10 @@ public class InventoryInFragment extends BaseFragment {
                     alertDialog4.show();
                 }
                 break;
+                case "库存录入" : {
+                    sendIntent(InventoryInActivity.class);
+                }
+                break;
             }
         });
     }
@@ -175,6 +180,7 @@ public class InventoryInFragment extends BaseFragment {
         if (isAddMaterial) itemList.add(new HomeMenuItem("拣货区叫料", R.drawable.ic_call_material));
         if (isAddReturn) itemList.add(new HomeMenuItem("拣货区退料", R.drawable.ic_picking_return_material));
         if (isAddPick) itemList.add(new HomeMenuItem("分拣配货", R.drawable.ic_pick_material));
+        itemList.add(new HomeMenuItem("库存录入", R.drawable.ic_stock_receive));
         collectionAdapter.notifyDataSetChanged();
     }
 

+ 412 - 0
app/src/main/res/layout/activity_inventory_in.xml

@@ -0,0 +1,412 @@
+<?xml version="1.0" encoding="utf-8"?><!--
+  ~ *************************************************************
+  ~ FileName:activity_receive_goods_detail.xml  Module:app  Project:Ware_WMS_Android
+  ~ CurrentModifyDate:2019年04月25日 16:45:00
+  ~ LastModifyDate:2019年04月25日 16:45:00
+  ~ Editor:Gizmo
+  ~ Copyright (c) 2019
+  ~ *************************************************************
+  ~ Description:
+  ~ *************************************************************
+  -->
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:focusable="true"
+    android:focusableInTouchMode="true"
+    android:orientation="vertical">
+
+    <include layout="@layout/layout_toolbar" />
+
+
+    <LinearLayout
+        android:id="@+id/layout_scroll_view"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"
+        android:orientation="vertical">
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/layout_cell_height"
+            android:background="@color/white"
+            android:orientation="horizontal"
+            android:paddingStart="@dimen/gap"
+            android:paddingLeft="@dimen/gap"
+            android:paddingRight="@dimen/gap">
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="match_parent"
+                android:gravity="center"
+                android:text="库存库位:"
+                android:textSize="@dimen/common" />
+
+            <EditText
+                android:id="@+id/et_transit_loc"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_marginEnd="@dimen/gap"
+                android:layout_weight="1"
+                android:hint="请输入库存货位"
+                android:inputType="text"
+                android:textSize="@dimen/common" />
+
+            <Button
+                android:id="@+id/btn_transit_loc"
+                android:layout_width="70dp"
+                android:layout_height="35dp"
+                android:background="@drawable/shape_corner_surround"
+                android:text="选择"
+                android:textColor="@color/main_color" />
+
+        </LinearLayout>
+
+        <include layout="@layout/view_line_horizontal" />
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/layout_cell_height"
+            android:background="@color/white"
+            android:orientation="horizontal"
+            android:paddingStart="@dimen/gap"
+            android:paddingLeft="@dimen/gap"
+            android:paddingRight="@dimen/gap">
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="match_parent"
+                android:gravity="center"
+                android:text="物料:"
+                android:textSize="@dimen/common" />
+
+            <EditText
+                android:id="@+id/et_goods_code"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_marginEnd="@dimen/gap"
+                android:layout_weight="1"
+                android:hint="请输入物料"
+                android:inputType="text"
+                android:textSize="@dimen/common" />
+
+            <!--            <Button-->
+            <!--                android:id="@+id/btn_to_loc"-->
+            <!--                android:layout_width="70dp"-->
+            <!--                android:layout_height="35dp"-->
+            <!--                android:background="@drawable/shape_corner_surround"-->
+            <!--                android:text="选择"-->
+            <!--                android:textColor="@color/main_color" />-->
+
+        </LinearLayout>
+
+        <include layout="@layout/view_line_horizontal" />
+
+        <!--            <LinearLayout-->
+        <!--                android:layout_width="match_parent"-->
+        <!--                android:layout_height="@dimen/layout_cell_height"-->
+        <!--                android:orientation="horizontal"-->
+        <!--                android:background="@color/white"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap">-->
+
+        <!--                <TextView-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:text="@string/str_material"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:gravity="center"/>-->
+
+        <!--                <AutoCompleteTextView-->
+        <!--                    android:id="@+id/et_material"-->
+        <!--                    android:layout_width="match_parent"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:layout_marginEnd="@dimen/gap"-->
+        <!--                    android:hint="@string/str_material_hint"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:inputType="text"/>-->
+
+        <!--            </LinearLayout>-->
+
+        <!--            <include layout="@layout/view_line_horizontal"/>-->
+
+        <!--            <LinearLayout-->
+        <!--                android:layout_width="match_parent"-->
+        <!--                android:layout_height="@dimen/layout_cell_height"-->
+        <!--                android:orientation="horizontal"-->
+        <!--                android:background="@color/white"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap">-->
+
+        <!--                <TextView-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:text="@string/str_material_pcs"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:gravity="center"/>-->
+
+        <!--                <EditText-->
+        <!--                    android:id="@+id/et_material_pcs"-->
+        <!--                    android:layout_width="match_parent"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:layout_marginEnd="@dimen/gap"-->
+        <!--                    android:hint="@string/str_material_pcs_hint"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:inputType="number"/>-->
+
+        <!--            </LinearLayout>-->
+
+        <!--            <include layout="@layout/view_line_horizontal"/>-->
+
+        <!--            <LinearLayout-->
+        <!--                android:layout_width="match_parent"-->
+        <!--                android:layout_height="@dimen/layout_cell_height"-->
+        <!--                android:orientation="horizontal"-->
+        <!--                android:background="@color/white"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap">-->
+
+        <!--                <TextView-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:text="@string/str_lot_no"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:gravity="center"/>-->
+
+        <!--                <EditText-->
+        <!--                    android:id="@+id/et_lot_no"-->
+        <!--                    android:layout_width="match_parent"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:layout_marginEnd="@dimen/gap"-->
+        <!--                    android:hint="@string/str_lot_no_hint"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:inputType="text"/>-->
+
+        <!--            </LinearLayout>-->
+
+        <!--            <include layout="@layout/view_line_horizontal"/>-->
+
+        <!--            <LinearLayout-->
+        <!--                android:layout_width="match_parent"-->
+        <!--                android:layout_height="@dimen/layout_cell_height"-->
+        <!--                android:orientation="horizontal"-->
+        <!--                android:background="@color/white"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap">-->
+
+        <!--                <TextView-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:text="@string/str_version_code"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:gravity="center"/>-->
+
+        <!--                <EditText-->
+        <!--                    android:id="@+id/et_version_code"-->
+        <!--                    android:layout_width="match_parent"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:layout_marginEnd="@dimen/gap"-->
+        <!--                    android:hint="@string/str_version_code_hint"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:inputType="text"/>-->
+
+        <!--            </LinearLayout>-->
+
+        <!--            <include layout="@layout/view_line_horizontal"/>-->
+
+        <!--        <LinearLayout-->
+        <!--            android:id="@+id/tap_in_stock_area"-->
+        <!--            android:layout_width="match_parent"-->
+        <!--            android:layout_height="wrap_content"-->
+        <!--            android:background="@color/white"-->
+        <!--            android:gravity="center_vertical"-->
+        <!--            android:orientation="horizontal"-->
+        <!--            android:paddingStart="@dimen/gap"-->
+        <!--            android:paddingTop="@dimen/gap"-->
+        <!--            android:paddingEnd="@dimen/gap"-->
+        <!--            android:paddingBottom="@dimen/gap">-->
+
+        <!--            <TextView-->
+        <!--                android:layout_width="0dp"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:layout_weight="1"-->
+        <!--                android:text="入库区域(*):"-->
+        <!--                android:textSize="@dimen/common" />-->
+
+        <!--            <TextView-->
+        <!--                android:id="@+id/tv_in_stock_area"-->
+        <!--                android:layout_width="wrap_content"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap"-->
+        <!--                android:text="请选择"-->
+        <!--                android:textSize="@dimen/common" />-->
+
+        <!--            <ImageView-->
+        <!--                android:layout_width="wrap_content"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:src="@drawable/ic_right_arrow" />-->
+
+        <!--        </LinearLayout>-->
+
+        <!--        <include layout="@layout/view_line_horizontal" />-->
+
+        <!--        <LinearLayout-->
+        <!--            android:id="@+id/tap_material_height_level"-->
+        <!--            android:layout_width="match_parent"-->
+        <!--            android:layout_height="wrap_content"-->
+        <!--            android:background="@color/white"-->
+        <!--            android:gravity="center_vertical"-->
+        <!--            android:orientation="horizontal"-->
+        <!--            android:paddingStart="@dimen/gap"-->
+        <!--            android:paddingTop="@dimen/gap"-->
+        <!--            android:paddingEnd="@dimen/gap"-->
+        <!--            android:paddingBottom="@dimen/gap">-->
+
+        <!--            <TextView-->
+        <!--                android:layout_width="0dp"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:layout_weight="1"-->
+        <!--                android:text="@string/str_material_height_level"-->
+        <!--                android:textSize="@dimen/common" />-->
+
+        <!--            <TextView-->
+        <!--                android:id="@+id/tv_materil_height_level"-->
+        <!--                android:layout_width="wrap_content"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap"-->
+        <!--                android:text="3档_高于890"-->
+        <!--                android:textSize="@dimen/common" />-->
+
+        <!--            <ImageView-->
+        <!--                android:layout_width="wrap_content"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:src="@drawable/ic_right_arrow" />-->
+
+        <!--        </LinearLayout>-->
+
+        <!--        <include layout="@layout/view_line_horizontal" />-->
+
+        <!--            <LinearLayout-->
+        <!--                android:layout_width="match_parent"-->
+        <!--                android:layout_height="@dimen/layout_cell_height"-->
+        <!--                android:orientation="horizontal"-->
+        <!--                android:background="@color/white"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingLeft="@dimen/gap"-->
+        <!--                android:paddingRight="@dimen/gap">-->
+
+        <!--                <TextView-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="match_parent"-->
+        <!--                    android:text="入库日期:"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:gravity="center"/>-->
+
+        <!--                <Button-->
+        <!--                    android:id="@+id/btn_in_date"-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="wrap_content"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:gravity="center"-->
+        <!--                    android:background="@color/white"-->
+        <!--                    android:enabled="false"-->
+        <!--                    android:text="0000-00-00"-->
+        <!--                    android:textColor="@color/gray_text"/>-->
+
+        <!--            </LinearLayout>-->
+
+        <!--            <include layout="@layout/view_line_horizontal"/>-->
+
+        <!--            <LinearLayout-->
+        <!--                android:id="@+id/tap_status_change"-->
+        <!--                android:layout_width="match_parent"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:orientation="horizontal"-->
+        <!--                android:gravity="center_vertical"-->
+        <!--                android:paddingStart="@dimen/gap"-->
+        <!--                android:paddingEnd="@dimen/gap"-->
+        <!--                android:paddingTop="@dimen/gap"-->
+        <!--                android:paddingBottom="@dimen/gap"-->
+        <!--                android:background="@color/white">-->
+
+        <!--                <TextView-->
+        <!--                    android:layout_width="0dp"-->
+        <!--                    android:layout_weight="1"-->
+        <!--                    android:layout_height="wrap_content"-->
+        <!--                    android:text="@string/str_inventory_status"-->
+        <!--                    android:textSize="@dimen/common"/>-->
+
+        <!--                <TextView-->
+        <!--                    android:id="@+id/tv_inventory_status"-->
+        <!--                    android:layout_width="wrap_content"-->
+        <!--                    android:layout_height="wrap_content"-->
+        <!--                    android:text="合格"-->
+        <!--                    android:textColor="@color/gray_text"-->
+        <!--                    android:textSize="@dimen/common"-->
+        <!--                    android:paddingRight="@dimen/gap"-->
+        <!--                    android:paddingLeft="@dimen/gap"-->
+        <!--                    android:paddingStart="@dimen/gap"/>-->
+
+        <!--&lt;!&ndash;                <ImageView&ndash;&gt;-->
+        <!--&lt;!&ndash;                    android:layout_width="wrap_content"&ndash;&gt;-->
+        <!--&lt;!&ndash;                    android:layout_height="wrap_content"&ndash;&gt;-->
+        <!--&lt;!&ndash;                    android:src="@drawable/ic_right_arrow" />&ndash;&gt;-->
+
+        <!--            </LinearLayout>-->
+
+        <!--            <include layout="@layout/view_line_horizontal"/>-->
+
+    </LinearLayout>
+
+    <!--    <com.jcodecraeer.xrecyclerview.XRecyclerView-->
+    <!--        android:id="@+id/recycler_view"-->
+    <!--        android:layout_width="match_parent"-->
+    <!--        android:layout_height="0dp"-->
+    <!--        android:layout_weight="1">-->
+
+    <!--    </com.jcodecraeer.xrecyclerview.XRecyclerView>-->
+
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <!--        <Button-->
+        <!--            android:id="@+id/btn_new_material"-->
+        <!--            android:layout_width="0dp"-->
+        <!--            android:layout_height="@dimen/btn_height"-->
+        <!--            android:layout_marginStart="@dimen/gap"-->
+        <!--            android:layout_marginEnd="@dimen/gap"-->
+        <!--            android:layout_marginBottom="@dimen/gap"-->
+        <!--            android:layout_weight="1"-->
+        <!--            android:background="@drawable/shape_corner_surround"-->
+        <!--            android:text="新增物料"-->
+        <!--            android:textColor="@color/main_color"-->
+        <!--            android:textSize="@dimen/action" />-->
+
+        <Button
+            android:id="@+id/btn_submit"
+            android:layout_width="0dp"
+            android:layout_height="@dimen/btn_height"
+            android:layout_marginStart="@dimen/gap"
+            android:layout_marginEnd="@dimen/gap"
+            android:layout_marginBottom="@dimen/gap"
+            android:layout_weight="1"
+            android:background="@drawable/shape_corner_filled"
+            android:text="@string/general_string_submit"
+            android:textColor="@color/white"
+            android:textSize="@dimen/action" />
+
+    </LinearLayout>
+
+</LinearLayout>

+ 69 - 0
app/src/main/res/layout/activity_inventory_status_list.xml

@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical">
+
+    <include layout="@layout/layout_toolbar" />
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal"
+        android:gravity="center_vertical"
+        android:paddingTop="@dimen/gap"
+        android:paddingStart="@dimen/gap"
+        android:paddingEnd="@dimen/gap"
+        android:paddingBottom="@dimen/gap">
+
+        <LinearLayout
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:orientation="vertical"
+            android:gravity="center">
+            <TextView
+                android:layout_width="85dp"
+                android:layout_height="wrap_content"
+                android:gravity="center"
+                android:text="库位"
+                android:textSize="@dimen/little"/>
+        </LinearLayout>
+
+        <LinearLayout
+            android:layout_width="0dp"
+            android:layout_weight="1"
+            android:layout_height="wrap_content"
+            android:orientation="vertical"
+            android:gravity="center">
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="区域"
+                android:textSize="@dimen/little"/>
+        </LinearLayout>
+
+        <LinearLayout
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:orientation="vertical"
+            android:gravity="center">
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="库存状态"
+                android:textSize="@dimen/little" />
+        </LinearLayout>
+
+    </LinearLayout>
+
+    <include layout="@layout/view_line_horizontal"/>
+
+    <com.jcodecraeer.xrecyclerview.XRecyclerView
+        android:id="@+id/recycler_view"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
+
+    </com.jcodecraeer.xrecyclerview.XRecyclerView>
+
+</LinearLayout>

+ 79 - 0
app/src/main/res/layout/cell_location_status_detail.xml

@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@color/white">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal"
+        android:gravity="center_vertical"
+        android:paddingTop="@dimen/gap_top_bottom"
+        android:paddingStart="@dimen/gap_top_bottom"
+        android:paddingEnd="@dimen/gap_top_bottom"
+        android:paddingBottom="@dimen/gap_top_bottom">
+
+        <LinearLayout
+            android:layout_width="0dp"
+            android:layout_weight="1"
+            android:layout_height="wrap_content"
+            android:orientation="vertical"
+            android:gravity="center">
+            <TextView
+                android:id="@+id/tv_location"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:gravity="center"
+                android:text="库位"
+                android:lines="1"
+                android:textSize="@dimen/little"/>
+        </LinearLayout>
+
+        <LinearLayout
+            android:layout_width="0dp"
+            android:layout_weight="1"
+            android:layout_height="wrap_content"
+            android:orientation="vertical"
+            android:gravity="center">
+            <TextView
+                android:id="@+id/tv_zone"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="库区"
+                android:textSize="@dimen/little"/>
+        </LinearLayout>
+
+        <!--        <LinearLayout-->
+        <!--            android:layout_width="0dp"-->
+        <!--            android:layout_weight="1"-->
+        <!--            android:layout_height="wrap_content"-->
+        <!--            android:orientation="vertical"-->
+        <!--            android:gravity="center">-->
+        <!--            <TextView-->
+        <!--                android:id="@+id/tv_status"-->
+        <!--                android:layout_width="wrap_content"-->
+        <!--                android:layout_height="wrap_content"-->
+        <!--                android:text="库位状态"-->
+        <!--                android:textSize="@dimen/little" />-->
+        <!--        </LinearLayout>-->
+
+                <LinearLayout
+                    android:layout_width="0dp"
+                    android:layout_weight="1"
+                    android:layout_height="wrap_content"
+                    android:orientation="vertical"
+                    android:gravity="center">
+                    <TextView
+                        android:id="@+id/tv_empty_status"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:text="占用状态"
+                        android:textSize="@dimen/little" />
+                </LinearLayout>
+
+    </LinearLayout>
+
+    <include layout="@layout/view_line_horizontal"/>
+</LinearLayout>