Эх сурвалжийг харах

修改盘点作业功能基于极测WMS, 出库采集页菜单栏增加了条码拆分按钮跳转至分拆批次,入库采集采集条码/二维码, 添加条码号取值,修改下一备料与条码Enter接口数据展示, 打印机高度调整为305.

songw 10 сар өмнө
parent
commit
9b57f19650

+ 1 - 1
app/build.gradle

@@ -41,7 +41,7 @@ android {
             if (outputFile != null && outputFile.name.endsWith('.apk')) {
                 if (variant.buildType.name.equals('release')) {
                     def releaseInfo = getVersionName()
-                    fileName = "凯尔高WMS_NEW_RELEASE_${releaseInfo}.apk"
+                    fileName = "凯WMS_NEW_RELEASE_${releaseInfo}.apk"
 
                 } else if (variant.buildType.name.equals('debug')) {
                     def debugInfo = getVersionName()

+ 80 - 0
app/src/main/java/com/uas/keg_wms_new/bean/InventoryCollctBean.java

@@ -0,0 +1,80 @@
+package com.uas.keg_wms_new.bean;
+
+public
+        /**
+         * Created by sw on 2024-12-03
+         */
+class InventoryCollctBean {
+
+    //ST_WHCODE 仓库
+    //STD_PRODCODE 料号
+    // PR_DETAIL 名称
+    // BAR_LOCATION 储位
+    //STD_BATCHQTY 账面库存
+    // STD_ACTQTY 实盘库存
+    //PR_SPEC 规格
+
+    private String ST_WHCODE;
+    private String STD_PRODCODE;
+    private String PR_DETAIL;
+    private String BAR_LOCATION;
+    private double STD_BATCHQTY;
+    private double STD_ACTQTY;
+    private String PR_SPEC;
+
+    public String getST_WHCODE() {
+        return ST_WHCODE;
+    }
+
+    public void setST_WHCODE(String ST_WHCODE) {
+        this.ST_WHCODE = ST_WHCODE;
+    }
+
+    public String getSTD_PRODCODE() {
+        return STD_PRODCODE;
+    }
+
+    public void setSTD_PRODCODE(String STD_PRODCODE) {
+        this.STD_PRODCODE = STD_PRODCODE;
+    }
+
+    public String getPR_DETAIL() {
+        return PR_DETAIL;
+    }
+
+    public void setPR_DETAIL(String PR_DETAIL) {
+        this.PR_DETAIL = PR_DETAIL;
+    }
+
+    public String getBAR_LOCATION() {
+        return BAR_LOCATION;
+    }
+
+    public void setBAR_LOCATION(String BAR_LOCATION) {
+        this.BAR_LOCATION = BAR_LOCATION;
+    }
+
+    public double getSTD_BATCHQTY() {
+        return STD_BATCHQTY;
+    }
+
+    public void setSTD_BATCHQTY(double STD_BATCHQTY) {
+        this.STD_BATCHQTY = STD_BATCHQTY;
+    }
+
+    public double getSTD_ACTQTY() {
+        return STD_ACTQTY;
+    }
+
+    public void setSTD_ACTQTY(double STD_ACTQTY) {
+        this.STD_ACTQTY = STD_ACTQTY;
+    }
+
+    public String getPR_SPEC() {
+        return PR_SPEC;
+    }
+
+    public void setPR_SPEC(String PR_SPEC) {
+        this.PR_SPEC = PR_SPEC;
+    }
+}

+ 138 - 0
app/src/main/java/com/uas/keg_wms_new/bean/NextMaterial.java

@@ -0,0 +1,138 @@
+package com.uas.keg_wms_new.bean;
+
+public
+        /**
+         * Created by sw on 2025-01-13
+         */
+class NextMaterial {
+
+    private boolean success;
+    private DataBean data;
+
+    public boolean isSuccess() {
+        return success;
+    }
+
+    public void setSuccess(boolean success) {
+        this.success = success;
+    }
+
+    public DataBean getData() {
+        return data;
+    }
+
+    public void setData(DataBean data) {
+        this.data = data;
+    }
+
+    public static class DataBean {
+        private int PD_PDNO;
+        private String PD_PRODCODE;
+        private String PD_WHCODE;
+        private String PR_DETAIL;
+        private String PR_SPEC;
+        private int PD_OUTQTY;
+        private int PD_RESTQTY;
+        private int PR_ZXBZS;
+        private int PDAQTY;
+        private double BAR_REMAIN;
+        private String DC;
+        private String BAR_LOCATION;
+
+        public int getPD_PDNO() {
+            return PD_PDNO;
+        }
+
+        public void setPD_PDNO(int PD_PDNO) {
+            this.PD_PDNO = PD_PDNO;
+        }
+
+        public String getPD_PRODCODE() {
+            return PD_PRODCODE;
+        }
+
+        public void setPD_PRODCODE(String PD_PRODCODE) {
+            this.PD_PRODCODE = PD_PRODCODE;
+        }
+
+        public String getPD_WHCODE() {
+            return PD_WHCODE;
+        }
+
+        public void setPD_WHCODE(String PD_WHCODE) {
+            this.PD_WHCODE = PD_WHCODE;
+        }
+
+        public String getPR_DETAIL() {
+            return PR_DETAIL;
+        }
+
+        public void setPR_DETAIL(String PR_DETAIL) {
+            this.PR_DETAIL = PR_DETAIL;
+        }
+
+        public String getPR_SPEC() {
+            return PR_SPEC;
+        }
+
+        public void setPR_SPEC(String PR_SPEC) {
+            this.PR_SPEC = PR_SPEC;
+        }
+
+        public int getPD_OUTQTY() {
+            return PD_OUTQTY;
+        }
+
+        public void setPD_OUTQTY(int PD_OUTQTY) {
+            this.PD_OUTQTY = PD_OUTQTY;
+        }
+
+        public int getPD_RESTQTY() {
+            return PD_RESTQTY;
+        }
+
+        public void setPD_RESTQTY(int PD_RESTQTY) {
+            this.PD_RESTQTY = PD_RESTQTY;
+        }
+
+        public int getPR_ZXBZS() {
+            return PR_ZXBZS;
+        }
+
+        public void setPR_ZXBZS(int PR_ZXBZS) {
+            this.PR_ZXBZS = PR_ZXBZS;
+        }
+
+        public int getPDAQTY() {
+            return PDAQTY;
+        }
+
+        public void setPDAQTY(int PDAQTY) {
+            this.PDAQTY = PDAQTY;
+        }
+
+        public double getBAR_REMAIN() {
+            return BAR_REMAIN;
+        }
+
+        public void setBAR_REMAIN(double BAR_REMAIN) {
+            this.BAR_REMAIN = BAR_REMAIN;
+        }
+
+        public String getDC() {
+            return DC;
+        }
+
+        public void setDC(String DC) {
+            this.DC = DC;
+        }
+
+        public String getBAR_LOCATION() {
+            return BAR_LOCATION;
+        }
+
+        public void setBAR_LOCATION(String BAR_LOCATION) {
+            this.BAR_LOCATION = BAR_LOCATION;
+        }
+    }
+}

+ 78 - 0
app/src/main/java/com/uas/keg_wms_new/bean/WHBreakingBatchBreakingBtnClickEventNew.java

@@ -0,0 +1,78 @@
+package com.uas.keg_wms_new.bean;
+
+import java.util.List;
+
+/**
+ * Created by Administrator on 2016/3/11.
+ * 分拆批次页
+ */
+public class WHBreakingBatchBreakingBtnClickEventNew {
+    /**
+     * success : true
+     * data : [{"BAR_REMAIN":11,"BAR_CODE":"XX","BAR_ID":12}]
+     */
+
+    private boolean success;
+    private List<DataBean> data;
+
+    public boolean isSuccess() {
+        return success;
+    }
+
+    public void setSuccess(boolean success) {
+        this.success = success;
+    }
+
+    public List<DataBean> getData() {
+        return data;
+    }
+
+    public void setData(List<DataBean> data) {
+        this.data = data;
+    }
+
+    public static class DataBean {
+        /**
+         * BAR_REMAIN : 11
+         * BAR_CODE : XX
+         * BAR_ID : 12
+         */
+
+        private String BAR_REMAIN;
+        private String BAR_CODE;
+        private int BAR_ID;
+
+        public String getBAR_REMAIN() {
+            return BAR_REMAIN;
+        }
+
+        public void setBAR_REMAIN(String BAR_REMAIN) {
+            this.BAR_REMAIN = BAR_REMAIN;
+        }
+
+        public String getBAR_CODE() {
+            return BAR_CODE;
+        }
+
+        public void setBAR_CODE(String BAR_CODE) {
+            this.BAR_CODE = BAR_CODE;
+        }
+
+        public int getBAR_ID() {
+            return BAR_ID;
+        }
+
+        public void setBAR_ID(int BAR_ID) {
+            this.BAR_ID = BAR_ID;
+        }
+    }
+
+
+
+   /* public List<Message> message;
+    public class Message{
+            public String bar_code;
+            public String bar_remain;
+            public String bar_id;
+    }*/
+}

+ 52 - 29
app/src/main/java/com/uas/keg_wms_new/fragment/IOCOutMakeMaterialOper.java

@@ -58,6 +58,7 @@ import com.uas.keg_wms_new.bean.ErrorMsg;
 import com.uas.keg_wms_new.bean.IOCOutMakeMaterialOperMsd;
 import com.uas.keg_wms_new.bean.IOCOutmakeMaterialSplitBean;
 import com.uas.keg_wms_new.bean.MaterialInformationBean;
+import com.uas.keg_wms_new.bean.NextMaterial;
 import com.uas.keg_wms_new.bean.SubmitNotParam;
 import com.uas.keg_wms_new.bean.WHBreakingBatchBreakingBtnClickEvent;
 import com.uas.keg_wms_new.database.DBManager;
@@ -110,8 +111,6 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
     private static final int SPLIT_BARCODE_FAIL = 105;
     private static final int FLAG_CONFIRM_POST = 0x05;
 
-
-
     private ImageView mScanImageView;
 
     private JsonObjectRequest jsonRequest;
@@ -571,7 +570,6 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
 
     @Override
     protected void initEvents() {
-
         btnActionbarRight.setOnClickListener(this);
         etBarCode.addTextChangedListener(watcher);
         mCollectTypeRadioGroup.setOnCheckedChangeListener(this);
@@ -649,7 +647,8 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                     String dc = dataData.getString("DC");
                     mCollectResultTextView.setVisibility(View.VISIBLE);
                     mCollectResultTextView.setText(log.toString());
-                    mMaterialInforTextView.setText("物料:"+bar_prodcode
+                    mMaterialInforTextView.setText(
+                            "物料:"+bar_prodcode
                             +"名称:"+pr_detail
                             +"规格:"+pr_spec
                             +"未备料数:"+pd_restqty
@@ -839,20 +838,27 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                     public void onResponse(String s) {
                         progressDialog.dismiss();
                         Log.i("materialinfo", s);
-                        MaterialInformationBean materialInformationBean = JsonTools.parseJsonToBean(s, MaterialInformationBean.class);
-                        if (materialInformationBean != null && materialInformationBean.getData() != null) {
+//                        MaterialInformationBean materialInformationBean = JsonTools.parseJsonToBean(s, MaterialInformationBean.class);
+                        NextMaterial material = JsonTools.parseJsonToBean(s, NextMaterial.class);
+                        if (material != null && material.getData() != null) {
                             String materialInfo =
-                                    "型号:" + (materialInformationBean.getData().getPR_ORISPECCODE() == null ? "" : materialInformationBean.getData().getPR_ORISPECCODE())
-                                            + "物料:" + (materialInformationBean.getData().getPD_PRODCODE() == null ? "" : materialInformationBean.getData().getPD_PRODCODE())
-                                            + "; 名称规格:" + (materialInformationBean.getData().getPR_DETAIL() == null ? "" : materialInformationBean.getData().getPR_DETAIL())
-                                            + "  " + (materialInformationBean.getData().getPR_SPEC() == null ? "" : materialInformationBean.getData().getPR_SPEC())
-                                            + "; 未备料数:" + (materialInformationBean.getData().getPD_RESTQTY() == null ? "" : materialInformationBean.getData().getPD_RESTQTY())
-                                            + "; 批数量:" + (CommonUtil.doubleFormat(materialInformationBean.getData().getBAR_REMAIN()))
-                                            + "; 仓位:" + (materialInformationBean.getData().getBAR_LOCATION() == null ? "" : materialInformationBean.getData().getBAR_LOCATION())
-                                            + "; DC:" + (materialInformationBean.getData().getDC() == null ? "" : materialInformationBean.getData().getDC());
-                            if (materialInformationBean.getData().getPD_BATCHCODE() != null) {
-                                materialInfo = materialInfo + "; 批号:" + materialInformationBean.getData().getPD_BATCHCODE();
-                            }
+//                                    "型号:" + (materialInformationBean.getData().getPR_ORISPECCODE() == null ? "" : materialInformationBean.getData().getPR_ORISPECCODE())
+//                                            + "物料:" + (materialInformationBean.getData().getPD_PRODCODE() == null ? "" : materialInformationBean.getData().getPD_PRODCODE())
+//                                            + "; 名称规格:" + (materialInformationBean.getData().getPR_DETAIL() == null ? "" : materialInformationBean.getData().getPR_DETAIL())
+//                                            + "  " + (materialInformationBean.getData().getPR_SPEC() == null ? "" : materialInformationBean.getData().getPR_SPEC())
+//                                            + "; 未备料数:" + (materialInformationBean.getData().getPD_RESTQTY() == null ? "" : materialInformationBean.getData().getPD_RESTQTY())
+//                                            + "; 批数量:" + (CommonUtil.doubleFormat(materialInformationBean.getData().getBAR_REMAIN()))
+//                                            + "; 仓位:" + (materialInformationBean.getData().getBAR_LOCATION() == null ? "" : materialInformationBean.getData().getBAR_LOCATION())
+//                                            + "; DC:" + (materialInformationBean.getData().getDC() == null ? "" : materialInformationBean.getData().getDC());
+                                    "料号: " + (TextUtils.isEmpty(material.getData().getPD_PRODCODE())?"":material.getData().getPD_PRODCODE()) + "\r\n" +
+                                    "数量: " + (TextUtils.isEmpty(String.valueOf(material.getData().getPD_OUTQTY()))?"":material.getData().getPD_OUTQTY()) + "\r\n" +
+                                    "已备数: " + (TextUtils.isEmpty(String.valueOf(material.getData().getPDAQTY()))?"":material.getData().getPDAQTY()) + "\r\n" +
+                                    "未备数: " + (TextUtils.isEmpty(String.valueOf(material.getData().getPD_RESTQTY()))?"":material.getData().getPD_RESTQTY()) + "\r\n" +
+                                    "库位,数量: " + (TextUtils.isEmpty(material.getData().getBAR_LOCATION())?"":material.getData().getBAR_LOCATION());
+
+//                            if (materialInformationBean.getData().getPD_BATCHCODE() != null) {
+//                                materialInfo = materialInfo + "; 批号:" + materialInformationBean.getData().getPD_BATCHCODE();
+//                            }
                             if (mMaterialInforTextView != null)
                                 mMaterialInforTextView.setText(materialInfo);
                         } else {
@@ -1107,19 +1113,25 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                         Object next = jsonObject.getJSONObject("data").get("next");
                         if (next != null && !"null".equals(next.toString())) {
                             JSONObject nextObject = jsonObject.getJSONObject("data").getJSONObject("next");
-                            MaterialInformationBean.DataBean materialInformationBean = JsonTools.parseJsonToBean(nextObject.toString(), MaterialInformationBean.DataBean.class);
-                            if (materialInformationBean != null) {
+//                            MaterialInformationBean.DataBean materialInformationBean = JsonTools.parseJsonToBean(nextObject.toString(), MaterialInformationBean.DataBean.class);
+                            if (nextObject != null) {
                                 String materialInfo =
-                                        "型号:" + (materialInformationBean.getPR_ORISPECCODE() == null ? "" : materialInformationBean.getPR_ORISPECCODE())
-                                                + "物料:" + (materialInformationBean.getPD_PRODCODE() == null ? "" : materialInformationBean.getPD_PRODCODE())
-                                                + "; 名称规格:" + (materialInformationBean.getPR_DETAIL() == null ? "" : materialInformationBean.getPR_DETAIL())
-                                                + "  " + (materialInformationBean.getPR_SPEC() == null ? "" : materialInformationBean.getPR_SPEC())
-                                                + "; 未备料数:" + (materialInformationBean.getPD_RESTQTY() == null ? "" : materialInformationBean.getPD_RESTQTY())
-                                                + "; 批数量:" + (CommonUtil.doubleFormat(materialInformationBean.getBAR_REMAIN()))
-                                                + "; 仓位:" + (materialInformationBean.getBAR_LOCATION() == null ? "" : materialInformationBean.getBAR_LOCATION());
-                                if (materialInformationBean.getPD_BATCHCODE() != null) {
-                                    materialInfo = materialInfo + "; 批号:" + materialInformationBean.getPD_BATCHCODE();
-                                }
+//                                        "型号:" + (materialInformationBean.getPR_ORISPECCODE() == null ? "" : materialInformationBean.getPR_ORISPECCODE())
+//                                                + "物料:" + (materialInformationBean.getPD_PRODCODE() == null ? "" : materialInformationBean.getPD_PRODCODE())
+//                                                + "; 名称规格:" + (materialInformationBean.getPR_DETAIL() == null ? "" : materialInformationBean.getPR_DETAIL())
+//                                                + "  " + (materialInformationBean.getPR_SPEC() == null ? "" : materialInformationBean.getPR_SPEC())
+//                                                + "; 未备料数:" + (materialInformationBean.getPD_RESTQTY() == null ? "" : materialInformationBean.getPD_RESTQTY())
+//                                                + "; 批数量:" + (CommonUtil.doubleFormat(materialInformationBean.getBAR_REMAIN()))
+//                                                + "; 仓位:" + (materialInformationBean.getBAR_LOCATION() == null ? "" : materialInformationBean.getBAR_LOCATION());
+                                        "料号: " + (TextUtils.isEmpty(nextObject.getString("PD_PRODCODE"))?"":nextObject.getString("PD_PRODCODE")) + "\r\n" +
+                                                "数量: " + (TextUtils.isEmpty(nextObject.getString("PD_OUTQTY"))?"":nextObject.getString("PD_OUTQTY")) + "\r\n" +
+                                                "已备数: " + (TextUtils.isEmpty(nextObject.getString("PDAQTY"))?"":nextObject.getString("PDAQTY")) + "\r\n" +
+                                                "未备数: " + (TextUtils.isEmpty(nextObject.getString("PD_RESTQTY"))?"":nextObject.getString("PD_RESTQTY")) + "\r\n" +
+                                                "库位,数量: " + (TextUtils.isEmpty(nextObject.getString("BAR_LOCATION"))?"":nextObject.getString("BAR_LOCATION"));
+
+//                                if (materialInformationBean.getPD_BATCHCODE() != null) {
+//                                    materialInfo = materialInfo + "; 批号:" + materialInformationBean.getPD_BATCHCODE();
+//                                }
                                 mMaterialInforTextView.setText(materialInfo);
                             }
                         } else {
@@ -1362,6 +1374,7 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                 Button stockSpecialBtn = (Button) materialOutMoreView.findViewById(R.id.pop_material_out_menu_5);
                 Button passBillBtn = (Button) materialOutMoreView.findViewById(R.id.pop_material_out_menu_6);
                 Button stockDataSummary = (Button) materialOutMoreView.findViewById(R.id.pop_material_out_menu_7);
+                Button pop_material_out_menu_8 = (Button) materialOutMoreView.findViewById(R.id.pop_material_out_menu_8);
 
                 stockTaskBtn.setOnClickListener(new View.OnClickListener() {
                     @Override
@@ -1453,6 +1466,16 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                     }
                 });
 
+                pop_material_out_menu_8.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        closeListPopupWindow();
+                        //((FunctionActivity) getActivity()).setMoreBtnVisible(false);
+
+                        FragmentUtils.switchFragment(IOCOutMakeMaterialOper.this, new WHBreakingBatchFragment());
+                    }
+                });
+
                 listPopupWindow = new PopupWindow(materialOutMoreView, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
                 listPopupWindow.setBackgroundDrawable(new BitmapDrawable());
                 listPopupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {

+ 6 - 6
app/src/main/java/com/uas/keg_wms_new/fragment/IndexWareHouseContentFragment.java

@@ -123,12 +123,12 @@ public class IndexWareHouseContentFragment extends BaseFragment implements Adapt
                     getFragmentManager().beginTransaction().addToBackStack(null)
                             .replace(R.id.container_function_fragment, fragment).commit();
                     break;
-//                //盘点作业
-//                case GloableParams.GRIDNAME_WORK_INVENTORY:
-//                    fragment = new InventoryBillFragment();
-//                    getFragmentManager().beginTransaction().addToBackStack(null)
-//                            .replace(R.id.container_function_fragment, fragment).commit();
-//                    break;
+                //盘点作业
+                case GloableParams.GRIDNAME_WORK_INVENTORY:
+                    fragment = new InventoryBillFragment();
+                    getFragmentManager().beginTransaction().addToBackStack(null)
+                            .replace(R.id.container_function_fragment, fragment).commit();
+                    break;
                 case GloableParams.MENU_STORAGE_BARCODE_INFO_COLLECT:
                     mFragment = new BarcodeInfoCollectFragment();
                     break;

+ 2 - 1
app/src/main/java/com/uas/keg_wms_new/fragment/InventoryBillFragment.java

@@ -387,7 +387,8 @@ public class InventoryBillFragment extends BaseFragment {
         String pi_inoutno = mBillList.get(i).getPI_INOUTNO();
         long pi_id = mBillList.get(i).getPI_ID();
         String pi_class = mBillList.get(i).getPI_CLASS();
-        InventoryCollectFragment collectFragment = new InventoryCollectFragment();
+//        InventoryCollectFragment collectFragment = new InventoryCollectFragment();
+        InventoryCollectFragment2 collectFragment = new InventoryCollectFragment2();
 
         Bundle bundle = new Bundle();
         bundle.putString("pi_inoutno", pi_inoutno);

+ 837 - 0
app/src/main/java/com/uas/keg_wms_new/fragment/InventoryCollectFragment2.java

@@ -0,0 +1,837 @@
+package com.uas.keg_wms_new.fragment;
+
+import android.app.Activity;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.graphics.drawable.BitmapDrawable;
+import android.os.Bundle;
+import android.support.v4.app.Fragment;
+import android.support.v7.app.AlertDialog;
+import android.text.TextUtils;
+import android.view.Gravity;
+import android.view.KeyEvent;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.inputmethod.EditorInfo;
+import android.widget.ArrayAdapter;
+import android.widget.Button;
+import android.widget.CheckBox;
+import android.widget.CompoundButton;
+import android.widget.EditText;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+import android.widget.PopupWindow;
+import android.widget.TextView;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.android.volley.Request;
+import com.android.volley.toolbox.StringRequest;
+import com.bin.david.form.core.SmartTable;
+import com.bin.david.form.data.column.Column;
+import com.bin.david.form.data.format.IFormat;
+import com.bin.david.form.data.table.TableData;
+import com.uas.keg_wms_new.R;
+import com.uas.keg_wms_new.activity.FunctionActivity;
+import com.uas.keg_wms_new.bean.InventoryCollctBean;
+import com.uas.keg_wms_new.bean.WHBreakingBatchBreakingBtnClickEventNew;
+import com.uas.keg_wms_new.global.GloableParams;
+import com.uas.keg_wms_new.listener.MyEditorActionListener;
+import com.uas.keg_wms_new.tools.SharedPreUtil;
+import com.uas.keg_wms_new.util.CameraUtil;
+import com.uas.keg_wms_new.util.CommonUtil;
+import com.uas.keg_wms_new.util.Constants;
+import com.uas.keg_wms_new.util.FastjsonUtil;
+import com.uas.keg_wms_new.util.FragmentUtils;
+import com.uas.keg_wms_new.util.HttpCallback;
+import com.uas.keg_wms_new.util.HttpParams;
+import com.uas.keg_wms_new.util.PrintUtils;
+import com.uas.keg_wms_new.util.StringUtil;
+import com.uas.keg_wms_new.util.VolleyRequest;
+import com.uas.keg_wms_new.util.VollyRequest;
+import com.uas.keg_wms_new.view.ClearableEditText;
+import com.uuzuche.lib_zxing.activity.CaptureActivity;
+import com.uuzuche.lib_zxing.activity.CodeUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by RaoMeng on 2019/3/23
+ * Desc: 盘点采集页面
+ */
+public class InventoryCollectFragment2 extends BaseFragment implements View.OnClickListener {
+    private static final int SCAN_BARCODE_CODE = 101;
+    private ClearableEditText mTagEditText, mBarcodeEditText;
+    private ImageView mScanImageView;
+    private TextView mResultTextView, mNumTextView, mClassTextView,tvPiInoutno;
+    private Button mMoreButton;
+    private PopupWindow mMenuPopupWindow;
+    private String pi_inoutno, pi_id, pi_class;
+    private CheckBox cb_caiji;
+    private boolean isChecked=false;
+    private Button btn_oneprint, bt_inventory_barcode_printing;
+
+    private SmartTable mSmartTable;
+    private Column<String> ST_WHCODE, STD_PRODCODE, PR_DETAIL, BAR_LOCATION, PR_SPEC;
+    private Column<Double> STD_BATCHQTY, STD_ACTQTY;
+    private TableData<InventoryCollctBean> mTableData;
+    private List<InventoryCollctBean> mStockTaskMultipleBeans;
+    private CheckBox mCheckBox;
+    private String bar_remain;
+    private AlertDialog alertDialog;
+
+    private List<WHBreakingBatchBreakingBtnClickEventNew.DataBean> messages = new ArrayList<>();
+    private PopupWindow splitPop;
+    private boolean isConnected = false;
+    private String mOldAddress = "";
+    private int mPrintDpi = 203;
+    private boolean isPrinting = false;
+
+    @Override
+    protected int getLayout() {
+        return R.layout.fragment_inventory_collect2;
+    }
+
+    @Override
+    protected void initViews() {
+        ((FunctionActivity) getActivity()).setTitle("盘点作业");
+        ((FunctionActivity) getActivity()).setMoreBtnVisible(true);
+
+        mMoreButton = mActivity.findViewById(R.id.btn_actionbar_more);
+        mTagEditText = root.findViewById(R.id.inventory_collect_tag_et);
+        mBarcodeEditText = root.findViewById(R.id.inventory_collect_barcode_et);
+        mScanImageView = root.findViewById(R.id.inventory_collect_scan_iv);
+        mResultTextView = root.findViewById(R.id.inventory_collect_result_tv);
+        mNumTextView = root.findViewById(R.id.inventory_collect_num_tv);
+        mClassTextView = root.findViewById(R.id.inventory_collect_class_tv);
+        cb_caiji=root.findViewById(R.id.cb_caiji);
+        tvPiInoutno=root.findViewById(R.id.tv_pi_inoutno);
+        bt_inventory_barcode_printing = root.findViewById(R.id.bt_inventory_barcode_printing);
+
+        mBarcodeEditText.requestFocus();
+
+        mCheckBox = root.findViewById(R.id.stock_data_summary_cb);
+        mSmartTable = root.findViewById(R.id.st_data);
+        CommonUtil.getDefaultTable(mActivity, mSmartTable);
+        ST_WHCODE = new Column<String>("仓库", "ST_WHCODE");
+        STD_PRODCODE = new Column<String>("料号", "STD_PRODCODE");
+        PR_DETAIL = new Column<String>("名称", "PR_DETAIL");
+        BAR_LOCATION = new Column<String>("储位", "BAR_LOCATION");
+        STD_BATCHQTY = new Column<Double>("账面库存", "STD_BATCHQTY", new IFormat<Double>() {
+            @Override
+            public String format(Double aDouble) {
+                return CommonUtil.doubleFormat(aDouble);
+            }
+        });
+        STD_ACTQTY = new Column<Double>("实盘库存", "STD_ACTQTY", new IFormat<Double>() {
+            @Override
+            public String format(Double aDouble) {
+                return CommonUtil.doubleFormat(aDouble);
+            }
+        });
+        PR_SPEC = new Column<String>("规格", "PR_SPEC");
+
+        isConnected = (SharedPreUtil.getInt(mActivity, "printConnect", 0) == 1);
+        mOldAddress = SharedPreUtil.getString(mActivity, "printAddress", "");
+        mPrintDpi = SharedPreUtil.getInt(mActivity, "printDpi", 203);
+    }
+
+    @Override
+    protected void initEvents() {
+        mMoreButton.setOnClickListener(this);
+        mScanImageView.setOnClickListener(this);
+        cb_caiji.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+            @Override
+            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+                InventoryCollectFragment2.this.isChecked=isChecked;
+            }
+        });
+//        mTagEditText.setOnFocusChangeListener(new View.OnFocusChangeListen) {
+//            @Override
+//            public void onFocusChange(View v, boolean hasFocus) {
+//                if (!hasFocus) {
+//                    String tag = mTagEditText.getText().toString().trim();
+//                    SharedPreUtil.saveString(mActivity, Constants.FLAG.INVENTORY_DC_TIME_CACHE, tag);
+//                }
+//            }
+//        });
+//
+//        CommonUtil.setEditorActionListener(mTagEditText, new MyEditorActionListener() {
+//            @Override
+//            public void MyEditorAction(String text, int actionId, KeyEvent event) {
+//                SharedPreUtil.saveString(mActivity, Constants.FLAG.INVENTORY_DC_TIME_CACHE, text);
+//            }
+//        });
+
+        CommonUtil.setEditorActionListener(mBarcodeEditText, new MyEditorActionListener() {
+            @Override
+            public void MyEditorAction(String text, int actionId, KeyEvent event) {
+//                String deadLine = mTagEditText.getText().toString().trim();
+                String barcode = mBarcodeEditText.getText().toString().trim();
+
+//                if (TextUtils.isEmpty(deadLine)) {
+//                    CommonUtil.toastNoRepeat(mActivity, "请输入临界校验日期");
+//                    return;
+//                }
+
+                if (TextUtils.isEmpty(barcode)) {
+                    CommonUtil.toastNoRepeat(mActivity, "请采集条码");
+                    return;
+                }
+                progressDialog.show();
+                if (isChecked) {
+                    VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
+                            .url(GloableParams.ADDRESS_BARSTOCK_GETBARCODEINFO)
+                            .method(Request.Method.GET)
+                            .tag(TAG + "getbarcodeinfo")
+                            .flag(0)
+                            .addParam("inoutno", pi_inoutno)
+                            //.addParam("deadline", deadLine)
+                            .addParam("barcode", barcode)
+                            .addParam("iscancel", isChecked + "")
+                            .build(), new HttpCallback() {
+                        @Override
+                        public void onSuccess(int flag, Object o) throws Exception {
+                            try {
+                                mBarcodeEditText.setText("");
+                                String result = o.toString();
+                                JSONObject resultObject = JSON.parseObject(result);
+                                JSONObject dataObject = resultObject.getJSONObject("data");
+                                if (dataObject != null) {
+                                    String type = FastjsonUtil.getText(dataObject, "BI_TYPE");
+                                    String prompt = "采集成功!";
+                                    if (!"超期".equals(type)) {
+                                        mResultTextView.setTextColor(mActivity.getResources().getColor(R.color.black));
+                                        prompt = "采集成功!";
+                                    } else {
+                                        mResultTextView.setTextColor(mActivity.getResources().getColor(R.color.red));
+                                        prompt = "采集成功!已超期";
+                                    }
+                                    mResultTextView.setVisibility(View.VISIBLE);
+                                    mResultTextView.setText(prompt
+                                            + "\n物料:" + FastjsonUtil.getText(dataObject, "BI_PRODCODE")
+                                            //                                        + "\n品牌:" + FastjsonUtil.getText(dataObject, "BI_BRAND")
+                                            //                                        + "\nLOTNO:" + FastjsonUtil.getText(dataObject, "BI_LOTNO")
+                                            //                                        + "\nDC:" + FastjsonUtil.getText(dataObject, "BI_DATECODE")
+                                            + "\n型号:" + FastjsonUtil.getText(dataObject, "PR_ORISPECCODE")
+                                            + "\n条码号:" + FastjsonUtil.getText(dataObject, "BI_BARCODE")
+                                            + "\n数量:" + FastjsonUtil.getText(dataObject, "BI_INQTY")
+                                    );
+                                }
+                            } catch (Exception e) {
+                                e.printStackTrace();
+                            }
+                        }
+
+                        @Override
+                        public void onFail(int flag, String failStr) throws Exception {
+                            mBarcodeEditText.setText("");
+                            progressDialog.dismiss();
+                            CommonUtil.toastNoRepeat(mActivity, failStr);
+                            mResultTextView.setVisibility(View.VISIBLE);
+                            mResultTextView.setText(failStr);
+                        }
+                    });
+                } else {
+                    VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
+                            .url(GloableParams.ADDRESS_GET_BARCODE_DATA)
+                            .method(Request.Method.GET)
+                            .tag(TAG + "getbarcodeinfo")
+                            .flag(0)
+                            .addParam("barcode", barcode)
+//                            .addParam("code", pi_inoutno)
+                            .build(), new HttpCallback() {
+                        @Override
+                        public void onSuccess(int flag, Object o) throws Exception {
+                            progressDialog.dismiss();
+                            bar_remain = "";
+                            try {
+                                String result = o.toString();
+                                JSONObject resultObject = JSON.parseObject(result);
+                                JSONObject dataObject = resultObject.getJSONObject("data");
+                                if (dataObject != null) {
+                                    bar_remain = FastjsonUtil.getText(dataObject, "BAR_REMAIN");
+                                }
+
+                                View dialogView = View.inflate(getActivity(), R.layout.dialog_confirm_quantity, null);
+                                final EditText modifyEditText = dialogView.findViewById(R.id.recharge_modify_et);
+
+//                                TextView tv_uninventoried_quantity = dialogView.findViewById(R.id.tv_uninventoried_quantity);
+//                                TextView tv_material_no = dialogView.findViewById(R.id.tv_material_no);
+//                                TextView tv_material_name = dialogView.findViewById(R.id.tv_material_name);
+//                                TextView tv_material_specification = dialogView.findViewById(R.id.tv_material_specification);
+//
+//                                tv_uninventoried_quantity.setText(FastjsonUtil.getText(dataObject, "UNQTY"));
+//                                tv_material_no.setText(FastjsonUtil.getText(dataObject, "BAR_PRODCODE"));
+//                                tv_material_name.setText(FastjsonUtil.getText(dataObject, "PR_DETAIL"));
+//                                tv_material_specification.setText(FastjsonUtil.getText(dataObject, "PR_SPEC"));
+
+                                alertDialog = new AlertDialog.Builder(getActivity()).setTitle("确认数量")
+                                        .setView(dialogView)
+                                        .setNegativeButton(R.string.cancel, null)
+                                        .setPositiveButton(R.string.confirm, new DialogInterface.OnClickListener() {
+                                            @Override
+                                            public void onClick(DialogInterface dialog, int which) {
+                                                if (StringUtil.isEmpty(modifyEditText.getText().toString().trim())) {
+                                                    CommonUtil.toastNoRepeat(getActivity(), "请输入条码数量");
+                                                    return;
+                                                }
+                                                double quantity = -1;
+                                                try {
+                                                    quantity = Double.parseDouble(modifyEditText.getText().toString().trim());
+                                                } catch (Exception e) {
+                                                    CommonUtil.toastNoRepeat(getActivity(), "请输入正确的数字");
+                                                    return;
+                                                }
+                                                if (quantity < 0) {
+                                                    CommonUtil.toastNoRepeat(getActivity(), "数量不能小于0");
+                                                    return;
+                                                }
+                                                VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
+                                                        .url(GloableParams.ADDRESS_BARSTOCK_GETBARCODEINFO)
+                                                        .method(Request.Method.GET)
+                                                        .tag(TAG + "getbarcodeinfo")
+                                                        .flag(0)
+                                                        .addParam("inoutno", pi_inoutno)
+                                                        //.addParam("deadline", deadLine)
+                                                        .addParam("barcode", barcode)
+                                                        .addParam("iscancel", isChecked + "")
+                                                        .addParam("bar_remain", modifyEditText.getText().toString().trim())
+                                                        .build(), new HttpCallback() {
+                                                    @Override
+                                                    public void onSuccess(int flag, Object o) throws Exception {
+                                                        alertDialog.dismiss();
+                                                        try {
+                                                            mBarcodeEditText.setText("");
+                                                            String result = o.toString();
+                                                            JSONObject resultObject = JSON.parseObject(result);
+                                                            JSONObject dataObject = resultObject.getJSONObject("data");
+                                                            if (dataObject != null) {
+                                                                String type = FastjsonUtil.getText(dataObject, "BI_TYPE");
+                                                                String prompt = "采集成功!";
+                                                                if (!"超期".equals(type)) {
+                                                                    mResultTextView.setTextColor(mActivity.getResources().getColor(R.color.black));
+                                                                    prompt = "采集成功!";
+                                                                } else {
+                                                                    mResultTextView.setTextColor(mActivity.getResources().getColor(R.color.red));
+                                                                    prompt = "采集成功!已超期";
+                                                                }
+
+                                                                mResultTextView.setVisibility(View.VISIBLE);
+                                                                mResultTextView.setText(prompt
+                                                                        + "\n物料:" + FastjsonUtil.getText(dataObject, "BI_PRODCODE")
+                                                                        //                                        + "\n品牌:" + FastjsonUtil.getText(dataObject, "BI_BRAND")
+                                                                        //                                        + "\nLOTNO:" + FastjsonUtil.getText(dataObject, "BI_LOTNO")
+                                                                        //                                        + "\nDC:" + FastjsonUtil.getText(dataObject, "BI_DATECODE")
+                                                                        + "\n型号:" + FastjsonUtil.getText(dataObject, "PR_ORISPECCODE")
+                                                                        + "\n条码号:" + FastjsonUtil.getText(dataObject, "BI_BARCODE")
+                                                                        + "\n数量:" + FastjsonUtil.getText(dataObject, "BI_INQTY")
+                                                                );
+                                                            }
+                                                        } catch (Exception e) {
+                                                            e.printStackTrace();
+                                                        }
+                                                    }
+
+                                                    @Override
+                                                    public void onFail(int flag, String failStr) throws Exception {
+                                                        alertDialog.dismiss();
+                                                        mBarcodeEditText.setText("");
+                                                        progressDialog.dismiss();
+                                                        CommonUtil.toastNoRepeat(mActivity, failStr);
+                                                        mResultTextView.setVisibility(View.VISIBLE);
+                                                        mResultTextView.setText(failStr);
+                                                    }
+                                                });
+                                            }
+                                        }).create();
+                                modifyEditText.setText(bar_remain);
+                                modifyEditText.setSelection(modifyEditText.getText().length());
+//                                alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(new View.OnClickListener() {
+//                                    @Override
+//                                    public void onClick(View view) {
+//
+//                                    }
+//                                });
+
+                                // 禁用屏幕外点击
+                                alertDialog.setCancelable(false);
+                                alertDialog.setCanceledOnTouchOutside(false);
+                                alertDialog.show();
+                            } catch (Exception e) {
+                                e.printStackTrace();
+                            }
+                        }
+
+                        @Override
+                        public void onFail(int flag, String failStr) throws Exception {
+                            mBarcodeEditText.setText("");
+                            progressDialog.dismiss();
+                            CommonUtil.toastNoRepeat(mActivity, failStr);
+                            mResultTextView.setVisibility(View.VISIBLE);
+                            mResultTextView.setText(failStr);
+                        }
+                    });
+
+                }
+
+            }
+        });
+
+        mCheckBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+            @Override
+            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+                getDataList();
+            }
+        });
+
+        bt_inventory_barcode_printing.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                getWhcode();
+            }
+        });
+    }
+
+    private void getWhcode() {
+        View mPopView = View.inflate(mActivity, R.layout.pop_inventory_barcode_dialog, null);
+        ClearableEditText cet_barcode = (ClearableEditText) mPopView.findViewById(R.id.cet_barcode);
+        Button bt_ok = (Button) mPopView.findViewById(R.id.bt_ok);
+        AlertDialog mWarehouseDialog = new AlertDialog.Builder(mActivity)
+                .setView(mPopView)
+                .create();
+        mWarehouseDialog.show();
+
+        cet_barcode.setOnEditorActionListener(new TextView.OnEditorActionListener() {
+            @Override
+            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+                if (actionId == EditorInfo.IME_ACTION_SEND
+                        || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
+                    if (!TextUtils.isEmpty(cet_barcode.getText().toString().trim())) {
+                        getInvertoryBarcode(cet_barcode.getText().toString().trim());
+                    }
+                    return true;
+                }
+                return false;
+            }
+        });
+
+        bt_ok.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                mWarehouseDialog.cancel();
+                getInvertoryBarcode(cet_barcode.getText().toString().trim());
+            }
+        });
+    }
+
+    private StringRequest mStringRequest;
+    private void getInvertoryBarcode(String barcode) {
+        progressDialog.show();
+        VollyRequest.getInstance().stringRequest(mStringRequest,
+                new HttpParams.Builder()
+                        .url(GloableParams.ADDRESS_GET_INVENTORY_BARCODE_DATA)
+                        .method(Request.Method.GET)
+                        .tag(TAG + "getInvertoryBarcode")
+                        .addParam("code", barcode)
+                        .flag(0)
+                        .build(), new HttpCallback() {
+                    @Override
+                    public void onSuccess(int flag, Object o) throws Exception {
+                        progressDialog.dismiss();
+                        Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(), "success");
+                        JSONObject data = FastjsonUtil.getJSONObject(o.toString(), "data");
+                        //                        com.alibaba.fastjson.JSONArray dataArray = FastjsonUtil.getJSONArray(data.toString(), "data");
+                        if (isSuccess) {
+                            try {
+                                com.alibaba.fastjson.JSONArray listArray = new com.alibaba.fastjson.JSONArray();
+                                String data1 = data.getString("data");
+                                listArray.add(JSON.parseObject(data1));
+                                initBreakPopupWindow(listArray);
+                            }catch (Exception e) {
+                                e.printStackTrace();
+                            }
+                        }
+                    }
+
+                    @Override
+                    public void onFail(int flag, String failStr) throws Exception {
+                        progressDialog.dismiss();
+                        CommonUtil.toastNoRepeat(mActivity, failStr);
+                    }
+                });
+    }
+
+    protected void initBreakPopupWindow(com.alibaba.fastjson.JSONArray listArray) {
+        messages.clear();
+        for (int i = 0; i < listArray.size(); i++) {
+            try {
+                JSONObject barcodeObject = listArray.getJSONObject(i);
+                if (barcodeObject != null) {
+                    WHBreakingBatchBreakingBtnClickEventNew.DataBean dataBean = new WHBreakingBatchBreakingBtnClickEventNew.DataBean();
+                    dataBean.setBAR_CODE(barcodeObject.getString("BAR_CODE"));
+                    dataBean.setBAR_REMAIN(barcodeObject.getString("BAR_REMAIN"));//RESTQTY
+                    messages.add(dataBean);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+
+        View popView = LayoutInflater.from(getActivity()).inflate(R.layout.popupwindow_whbreaking_batch, null);
+        ListView listView = (ListView) popView.findViewById(R.id.list_view);
+        Button btnPrintf = (Button) popView.findViewById(R.id.btn_print);
+        Button btnPrintfSet = (Button) popView.findViewById(R.id.btn_print_setting);
+        Button btnClose = (Button) popView.findViewById(R.id.btn_close);
+        Button btnBack = (Button) popView.findViewById(R.id.btn_back);
+
+        btnBack.setVisibility(View.GONE);
+        btnClose.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                closeSplitPopupWindow();
+            }
+        });
+        btnPrintf.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                if (isConnected) {
+                    progressDialog.show();
+                    printEvent(listArray);
+                } else {
+                    closeSplitPopupWindow();
+                    BlueToothPrintFragment blueToothPrintFragment = new BlueToothPrintFragment();
+
+                    Bundle bundle = new Bundle();
+                    bundle.putString(Constants.KEY.BARCODE_PRINT_ARRAY, listArray.toString());
+                    blueToothPrintFragment.setArguments(bundle);
+                    FragmentUtils.switchFragment(InventoryCollectFragment2.this, blueToothPrintFragment);
+                }
+            }
+        });
+
+        btnPrintfSet.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                closeSplitPopupWindow();
+                BlueToothPrintFragment blueToothPrintFragment = new BlueToothPrintFragment();
+
+                Bundle bundle = new Bundle();
+                bundle.putString(Constants.KEY.BARCODE_PRINT_ARRAY, listArray.toString());
+                blueToothPrintFragment.setArguments(bundle);
+                FragmentUtils.switchFragment(InventoryCollectFragment2.this, blueToothPrintFragment);
+            }
+        });
+
+        MyAdapter adapter = new MyAdapter(getActivity(), R.layout.item_list_whbreakingbatchfragment, messages);
+        listView.setAdapter(adapter);
+        //当只有一条数据的时候可以加上
+        /*
+        if (messages.size()>1){
+            btnBack.setVisibility(View.GONE);
+        }*/
+        // PopupWindow实例化,参数的意思是 view,长(不包括状态栏),高(不包括状态栏),是否聚焦
+        splitPop = new PopupWindow(popView, LinearLayout.LayoutParams.WRAP_CONTENT,
+                LinearLayout.LayoutParams.WRAP_CONTENT, true);
+        splitPop.setAnimationStyle(R.style.MenuAnimationFade);
+        splitPop.setBackgroundDrawable(new BitmapDrawable());
+        // 弹出窗口显示内容视图,默认以锚定视图的左下角为起点,这里为点击按钮
+        splitPop.showAtLocation(getActivity().getWindow().getDecorView(), Gravity.CENTER, 0, 0);
+        splitPop.setOnDismissListener(new PopupWindow.OnDismissListener() {
+            @Override
+            public void onDismiss() {
+                closeSplitPopupWindow();
+                //                confirmEvent();
+            }
+        });
+        CommonUtil.setBackgroundAlpha(mActivity, 0.5f);
+    }
+
+    private void closeSplitPopupWindow() {
+        if (splitPop != null) {
+            splitPop.dismiss();
+            splitPop = null;
+            CommonUtil.setBackgroundAlpha(mActivity, 1f);
+        }
+    }
+
+    private void printEvent(com.alibaba.fastjson.JSONArray printArray) {
+        if (isPrinting) {
+            CommonUtil.toastNoRepeat(mActivity, "正在打印中,请勿重复操作");
+            return;
+        }
+        isPrinting = true;
+        if (printArray != null && printArray.size() > 0) {
+            boolean isFail = false;
+            for (int i = 0; i < printArray.size(); i++) {
+                try {
+                    JSONObject printObject = printArray.getJSONObject(i);
+                    int printResult = PrintUtils.printBar(mActivity, printObject.toString(), mPrintDpi, null);
+                    if (printResult <= 0) {
+                        isFail = true;
+                    }
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+            }
+            closeSplitPopupWindow();
+            progressDialog.dismiss();
+            if (isFail) {
+                isConnected = false;
+                SharedPreUtil.saveInt(mActivity, "printConnect", 0);
+                CommonUtil.toastNoRepeat(mActivity, "打印失败,请重新连接打印机");
+
+                BlueToothPrintFragment blueToothPrintFragment = new BlueToothPrintFragment();
+
+                Bundle bundle = new Bundle();
+                bundle.putString(Constants.KEY.BARCODE_PRINT_ARRAY, printArray.toString());
+                blueToothPrintFragment.setArguments(bundle);
+                FragmentUtils.switchFragment(InventoryCollectFragment2.this, blueToothPrintFragment);
+            } else {
+                CommonUtil.toastNoRepeat(mActivity, "打印成功");
+            }
+        } else {
+            CommonUtil.toastNoRepeat(mActivity, "打印失败,条码数据为空");
+        }
+        isPrinting = false;
+    }
+
+    @Override
+    protected void initDatas() {
+        Bundle bundle = getArguments();
+        if (bundle != null) {
+            pi_inoutno = bundle.getString("pi_inoutno");
+            pi_id = bundle.getString("pi_id");
+            pi_class = bundle.getString("pi_class");
+
+            mNumTextView.setText(pi_inoutno);
+            mClassTextView.setText(pi_class);
+        }
+
+//        String deadLine = SharedPreUtil.getString(mActivity, Constants.FLAG.INVENTORY_DC_TIME_CACHE, "");
+//        if (!TextUtils.isEmpty(deadLine)) {
+//            mTagEditText.setText(deadLine);
+//            mBarcodeEditText.requestFocus();
+//        } else {
+//            mTagEditText.requestFocus();
+//        }
+
+        if (pi_inoutno != null) {
+            tvPiInoutno.setText(pi_inoutno);
+        }
+
+        mStockTaskMultipleBeans = new ArrayList<>();
+        setTableData(mStockTaskMultipleBeans);
+        getDataList();
+    }
+
+    private void getDataList() {
+        progressDialog.show();
+        mStockTaskMultipleBeans.clear();
+        VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
+                .url(GloableParams.ADDRESS_GET_PRE_MATERIAL_LIST)
+                .method(Request.Method.POST)
+                .addParam("code", pi_id)
+                .addParam("showall", mCheckBox.isChecked() ? "-1" : "0")
+                .build(), new HttpCallback() {
+            @Override
+            public void onSuccess(int flag, Object o) throws Exception {
+                progressDialog.dismiss();
+                try {
+                    String result = o.toString();
+                    JSONObject resultObject = JSON.parseObject(result);
+                    com.alibaba.fastjson.JSONArray dataArray = resultObject.getJSONArray("data");
+                    if (dataArray != null && dataArray.size() > 0) {
+                        for (int i = 0; i < dataArray.size(); i++) {
+                            JSONObject dataObject = dataArray.getJSONObject(i);
+                            if (dataObject != null) {
+                                //物料编号pr_code,物料名称pr_detail,出库数量pd_outqty,已采集数量pd_pdaqty,'
+                                //	仓库pd_whcode,仓位V_PW_WHCODE,实物库存V_PW_ONHAND,
+                                //	条码库存V_BA_REMAIN,型号PR_ORISPECCODE
+                                InventoryCollctBean inventoryCollctBean = new InventoryCollctBean();
+                                inventoryCollctBean.setST_WHCODE(FastjsonUtil.getText(dataObject, "ST_WHCODE"));
+                                inventoryCollctBean.setSTD_PRODCODE(FastjsonUtil.getText(dataObject, "STD_PRODCODE"));
+                                inventoryCollctBean.setPR_DETAIL(FastjsonUtil.getText(dataObject, "PR_DETAIL"));
+                                inventoryCollctBean.setBAR_LOCATION(FastjsonUtil.getText(dataObject, "BAR_LOCATION"));
+                                inventoryCollctBean.setSTD_BATCHQTY(FastjsonUtil.getDouble(dataObject, "STD_BATCHQTY"));
+                                inventoryCollctBean.setSTD_ACTQTY(FastjsonUtil.getDouble(dataObject, "STD_ACTQTY"));
+                                inventoryCollctBean.setPR_SPEC(FastjsonUtil.getText(dataObject, "PR_SPEC"));
+                                mStockTaskMultipleBeans.add(inventoryCollctBean);
+                            }
+                        }
+                    }
+                    setTableData(mStockTaskMultipleBeans);
+                } catch (Exception e) {
+                    setTableData(mStockTaskMultipleBeans);
+                    e.printStackTrace();
+                }
+            }
+
+            @Override
+            public void onFail(int flag, String failStr) throws Exception {
+                setTableData(mStockTaskMultipleBeans);
+                progressDialog.dismiss();
+                CommonUtil.toastNoRepeat(mActivity, failStr);
+            }
+        });
+    }
+
+    private void setTableData(List<InventoryCollctBean> filterTableData) {
+        mTableData = new TableData<InventoryCollctBean>("出库单列表", filterTableData,
+                ST_WHCODE, STD_PRODCODE, PR_DETAIL, BAR_LOCATION, STD_BATCHQTY, STD_ACTQTY, PR_SPEC);
+        mSmartTable.setTableData(mTableData);
+        mSmartTable.postDelayed(new Runnable() {
+            @Override
+            public void run() {
+                mSmartTable.postInvalidate();
+            }
+        }, 100);
+    }
+
+    @Override
+    public void onClick(View v) {
+        switch (v.getId()) {
+            case R.id.btn_actionbar_more:
+                showMoreMenu();
+                break;
+            case R.id.pop_inventory_collect_menu_1:
+                closeMenuPopupWindow();
+                Fragment fragment = new InventoryDetailListFragment();
+                Bundle bundle = new Bundle();
+                bundle.putString("pi_inoutno", pi_inoutno);
+                bundle.putString("piid", pi_id);
+                fragment.setArguments(bundle);
+                FragmentUtils.switchFragment(this, fragment);
+                break;
+            case R.id.pop_inventory_collect_menu_2:
+                closeMenuPopupWindow();
+                fragment = new InventorySummaryListFragment();
+                bundle = new Bundle();
+                bundle.putString("pi_inoutno", pi_inoutno);
+                bundle.putString("piid", pi_id);
+                fragment.setArguments(bundle);
+                FragmentUtils.switchFragment(this, fragment);
+                break;
+            case R.id.inventory_collect_scan_iv:
+                if (CameraUtil.hasCamera()) {
+                    if (root.findFocus() != null) {
+                        Intent intent = new Intent();
+                        intent.setClass(mActivity, CaptureActivity.class);
+                        startActivityForResult(intent, SCAN_BARCODE_CODE);
+                    }
+                } else {
+                    CommonUtil.toastNoRepeat(mActivity, getString(R.string.no_camera_detected));
+                }
+                break;
+        }
+    }
+
+
+    /**
+     * 展示扩展菜单
+     */
+    private void showMoreMenu() {
+        View view = View.inflate(getActivity(), R.layout.pop_inventory_collect_menu, null);
+        Button detailBtn = (Button) view.findViewById(R.id.pop_inventory_collect_menu_1);
+        Button summaryBtn = (Button) view.findViewById(R.id.pop_inventory_collect_menu_2);
+
+        detailBtn.setOnClickListener(this);
+        summaryBtn.setOnClickListener(this);
+        detailBtn.setVisibility(View.GONE);
+
+        mMenuPopupWindow = new PopupWindow(view, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
+        mMenuPopupWindow.setBackgroundDrawable(new BitmapDrawable());
+        mMenuPopupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
+            @Override
+            public void onDismiss() {
+                closeMenuPopupWindow();
+            }
+        });
+        CommonUtil.setBackgroundAlpha(getActivity(), 0.5f);
+        mMenuPopupWindow.showAsDropDown(mMoreButton);
+    }
+
+    private void closeMenuPopupWindow() {
+        if (mMenuPopupWindow != null) {
+            mMenuPopupWindow.dismiss();
+            CommonUtil.setBackgroundAlpha(mActivity, 1f);
+        }
+    }
+
+    @Override
+    public void onHiddenChanged(boolean hidden) {
+        super.onHiddenChanged(hidden);
+        if (!hidden) {
+            ((FunctionActivity) getActivity()).setTitle("盘点作业");
+            ((FunctionActivity) getActivity()).setMoreBtnVisible(true);
+            mBarcodeEditText.requestFocus();
+
+            isConnected = (SharedPreUtil.getInt(mActivity, "printConnect", 0) == 1);
+            mOldAddress = SharedPreUtil.getString(mActivity, "printAddress", "");
+            mPrintDpi = SharedPreUtil.getInt(mActivity, "printDpi", 203);
+        } else {
+            ((FunctionActivity) getActivity()).setMoreBtnVisible(false);
+        }
+    }
+
+    @Override
+    public void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        if (resultCode != Activity.RESULT_OK) {
+            return;
+        }
+        if (requestCode == SCAN_BARCODE_CODE && data != null) {
+            if (data.getExtras() != null) {
+                String result = data.getExtras().getString(CodeUtils.RESULT_STRING);
+                mBarcodeEditText.setText(result);
+                mBarcodeEditText.setSelection(result.length());
+            }
+        }
+    }
+
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        return false;
+    }
+
+    @Override
+    public boolean onFragmentBackPressed() {
+        return false;
+    }
+
+    @Override
+    public void onDestroyView() {
+        super.onDestroyView();
+        ((FunctionActivity) getActivity()).setMoreBtnVisible(false);
+    }
+
+    private class MyAdapter extends ArrayAdapter<WHBreakingBatchBreakingBtnClickEventNew.DataBean> {
+        private int resourceId;
+
+        public MyAdapter(Context context, int resource, List<WHBreakingBatchBreakingBtnClickEventNew.DataBean> objects) {
+            super(context, resource, objects);
+            resourceId = resource;
+        }
+
+        @Override
+        public View getView(int position, View convertView, ViewGroup parent) {
+            //WHBreakingBatchBreakingBtnClickEventNew.Message target = getItem(position);
+            WHBreakingBatchBreakingBtnClickEventNew.DataBean person = getItem(position);
+            convertView = LayoutInflater.from(getContext()).inflate(resourceId,
+                    null);
+            TextView tv_bar_code = (TextView) convertView.findViewById(R.id.tv_bar_code);
+            TextView tv_bar_remain = (TextView) convertView.findViewById(R.id.tv_bar_remain);
+            // tv_bar_code.setText(target.bar_code);
+            // tv_bar_remain.setText(target.bar_remain);
+            tv_bar_code.setText(person.getBAR_CODE());
+            tv_bar_remain.setText(person.getBAR_REMAIN());
+            return convertView;
+        }
+
+    }
+
+}

+ 3 - 4
app/src/main/java/com/uas/keg_wms_new/fragment/JLTStorageInBarcodeFragment.java

@@ -966,7 +966,6 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
                         CommonUtil.toastNoRepeat(mActivity, "归属入库单:"
                                 + FastjsonUtil.getText(dataObject, "INOUTNO")
                                 + "成功");
-
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
@@ -979,8 +978,6 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
                 jlt_edit_qty.setText("");
 //                resetState();
                 mBarcodeEditText.requestFocus();
-
-
             }
 
 
@@ -1098,8 +1095,10 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
                         String qty = FastjsonUtil.getText(dataObject, "QTY");
                         prodcode = FastjsonUtil.getText(dataObject, "PRODCODE");
                         String lc = FastjsonUtil.getText(dataObject, "LC");
-                        mLotEditText.setText(lc);
+                        String BARCODE = FastjsonUtil.getText(dataObject, "BARCODE");
+                        jlt_storage_in_barcode_et.setText(BARCODE);
 
+                        mLotEditText.setText(lc);
                         jlt_edit_lotno.setText(lotno);
                         jlt_edit_dataecode.setText(datecode);
                         jlt_edit_dc.setText(dc);

+ 17 - 3
app/src/main/java/com/uas/keg_wms_new/global/GloableParams.java

@@ -292,6 +292,11 @@ public class GloableParams {
     public static String ADDRESS_GET_BAR_FIND;    // 找料/条码号长按
     public static String ADDRESS_GET_BAR_FIND_CANCEL;    // 找料/灭灯
 
+    public static String ADDRESS_GET_BARCODE_DATA;
+    public static String ADDRESS_GET_PRE_MATERIAL_LIST;
+    public static String ADDRESS_GET_INVENTORY_BARCODE_DATA;     //库存条码打印
+
+
     //连接服务器请求地址
     private static final String ADDRESSTAIL_CONNECT_SERVER = "/api/pda/getAllMasters.action";
     //登录页面请求地址
@@ -817,8 +822,11 @@ public class GloableParams {
     //灭灯
     private static final String ADDRESSAIL_GET_BAR_FIND_CANCEL = "/api/pda/transfer/getBarFindCancel.action";
 
-
-
+    //修改数量弹窗
+    private static final String ADDRESSTAIL_GET_BARCODE_DATA = "/api/pda/outMaterial/getBarcodeData.action";
+    private static final String ADDRESSTAIL_GET_PRE_MATERIAL_LIST = "/api/pda/outMaterial/getStockMaterialList.action";
+    //库存条码打印
+    private static final String ADDRESSTAIL_GET_INVENTORY_BARCODE_DATA = "/api/pda/batch/getBarcodeData.action";
 
     /**
      *智能上架(扫码)
@@ -889,7 +897,7 @@ public class GloableParams {
             GRIDNAME_BATCH_OPRATION,
 //            GRIDNAME_STORAGE_TRANSFER,
             GRIDNAME_MODIFY_QUANTITY,
-//            GRIDNAME_WORK_INVENTORY,
+            GRIDNAME_WORK_INVENTORY,
             MENU_STORAGE_BARCODE_INFO_COLLECT,
 //            GRIDNAME_BOM_CHECK,
 //            MENU_STORAGE_STOCK_INFO_COLLECT
@@ -903,6 +911,7 @@ public class GloableParams {
             R.drawable.storage_bach_operation,
 //            R.drawable.storage_transfer,
             R.drawable.storage_work_inventory,
+            R.drawable.pandianzuoye,
             R.drawable.ic_modify_quantity,
 //            R.drawable.storage_msd_manager,
 //            R.drawable.storage_transfer
@@ -1316,5 +1325,10 @@ public class GloableParams {
         GloableParams.ADDRESS_GET_BAR_FIND = uriHead + GloableParams.ADDRESSAIL_GET_BAR_FIND;
         GloableParams.ADDRESS_GET_BAR_FIND_CANCEL = uriHead + GloableParams.ADDRESSAIL_GET_BAR_FIND_CANCEL;
 
+
+        GloableParams.ADDRESS_GET_BARCODE_DATA = uriHead + GloableParams.ADDRESSTAIL_GET_BARCODE_DATA;
+        GloableParams.ADDRESS_GET_PRE_MATERIAL_LIST = uriHead + GloableParams.ADDRESSTAIL_GET_PRE_MATERIAL_LIST;
+        GloableParams.ADDRESS_GET_INVENTORY_BARCODE_DATA = uriHead + GloableParams.ADDRESSTAIL_GET_INVENTORY_BARCODE_DATA;
+
     }
 }

BIN
app/src/main/res/drawable-xhdpi/pandianzuoye.png


+ 131 - 0
app/src/main/res/layout/dialog_confirm_quantity.xml

@@ -0,0 +1,131 @@
+<?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="wrap_content"
+    android:orientation="vertical"
+    android:paddingLeft="24dp"
+    android:paddingTop="14dp"
+    android:paddingRight="24dp"
+    android:paddingBottom="14dp">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:textSize="13sp"
+            android:text="条码数量:"/>
+
+        <EditText
+            android:id="@+id/recharge_modify_et"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="5dp"
+            android:background="@drawable/bg_line_edittext"
+            android:inputType="numberDecimal"
+            android:padding="10dp" />
+
+    </LinearLayout>
+<!--
+    <LinearLayout
+        android:layout_marginTop="10dp"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="未盘点数量:"
+            android:textSize="13sp"
+             />
+
+        <TextView
+            android:id="@+id/tv_uninventoried_quantity"
+            android:layout_marginStart="5dp"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text=""
+            android:textSize="13sp"
+            />
+
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_marginTop="10dp"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="物料编号:"
+            android:textSize="13sp"
+            />
+
+        <TextView
+            android:id="@+id/tv_material_no"
+            android:layout_marginStart="5dp"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text=""
+            android:textSize="13sp"
+            />
+
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_marginTop="10dp"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="物料名称:"
+            android:textSize="13sp"
+            />
+
+        <TextView
+            android:id="@+id/tv_material_name"
+            android:layout_marginStart="5dp"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text=""
+            android:textSize="13sp"
+            />
+
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_marginTop="10dp"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal"
+        android:layout_marginBottom="10dp"
+        >
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="物料规格:"
+            android:textSize="13sp"
+            />
+
+        <TextView
+            android:id="@+id/tv_material_specification"
+            android:layout_marginStart="5dp"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text=""
+            android:textSize="13sp"
+            />
+
+    </LinearLayout>-->
+
+</LinearLayout>

+ 162 - 0
app/src/main/res/layout/fragment_inventory_collect2.xml

@@ -0,0 +1,162 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:padding="16dp">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content">
+
+        <TextView
+            android:id="@+id/inventory_collect_num_tv"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_weight="1"
+            android:textColor="#333333"
+            tools:text="YSl2340898080" />
+
+        <TextView
+            android:id="@+id/inventory_collect_class_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:textColor="#333333"
+            tools:text="库存盘点单" />
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="6dp"
+        android:orientation="horizontal"
+        android:visibility="gone">
+
+        <TextView
+            style="@style/inputItemCaption"
+            android:text="低于" />
+
+        <com.uas.keg_wms_new.view.ClearableEditText
+            android:id="@+id/inventory_collect_tag_et"
+            style="@style/inputItemValue"
+            android:hint="请输入" />
+
+        <TextView
+            style="@style/inputItemCaption"
+            android:paddingLeft="10dp"
+            android:paddingRight="10dp"
+            android:text="DC的物料不记录" />
+    </LinearLayout>
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:gravity="center_vertical"
+        >
+
+        <CheckBox
+            android:layout_marginStart="15dp"
+            android:id="@+id/cb_caiji"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"/>
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:textColor="#333333"
+            android:textSize="14sp"
+            android:text="取消采集"/>
+
+        <RelativeLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            >
+
+            <Button
+                android:layout_alignParentEnd="true"
+                android:id="@+id/bt_inventory_barcode_printing"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="@string/Inventory_barcode_printing"
+                />
+
+        </RelativeLayout>
+
+
+
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="6dp"
+        android:orientation="horizontal">
+
+        <TextView
+            style="@style/inputItemCaption"
+            android:text="条码" />
+
+        <com.uas.keg_wms_new.view.ClearableEditText
+            android:id="@+id/inventory_collect_barcode_et"
+            style="@style/inputItemValue"
+            android:hint="请采集条码" />
+
+        <ImageView
+            android:id="@+id/inventory_collect_scan_iv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginRight="10dp"
+            android:background="@color/white"
+            android:clickable="false"
+            android:src="@drawable/ic_edittext_scan" />
+    </LinearLayout>
+
+    <TextView
+        android:id="@+id/inventory_collect_result_tv"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="@dimen/spacing_big"
+        android:background="@drawable/shape_msg_block"
+        android:padding="10dp"
+        android:textColor="@color/text_normal"
+        android:visibility="gone"
+        tools:text="采集成功,条码:786528238;数量:2;料号:209837;名称规格:瓶子" />
+
+    <LinearLayout
+        android:layout_marginTop="10dp"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="单号:"
+            android:textColor="@color/body_text_1"
+            android:textSize="14sp" />
+
+        <TextView
+            android:id="@+id/tv_pi_inoutno"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_weight="1"
+            android:textColor="@color/body_text_1"
+            android:textSize="14sp"
+            tools:text="YS1506002" />
+
+        <CheckBox
+            android:id="@+id/stock_data_summary_cb"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:checked="true"
+            android:text="未完成" />
+
+    </LinearLayout>
+
+    <com.bin.david.form.core.SmartTable
+        android:id="@+id/st_data"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent" />
+
+</LinearLayout>

+ 45 - 0
app/src/main/res/layout/pop_inventory_barcode_dialog.xml

@@ -0,0 +1,45 @@
+<?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="wrap_content"
+    android:layout_margin="10dp"
+    android:orientation="vertical"
+    android:padding="10dp"
+    >
+
+    <TextView
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/string_barcode"
+        android:textSize="16sp"
+        android:layout_marginBottom="10dp"
+        />
+
+    <com.uas.keg_wms_new.view.ClearableEditText
+        android:id="@+id/cet_barcode"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:padding="10dp"
+        android:background="@drawable/bg_line_edittext"
+        android:focusable="true"
+        android:selectAllOnFocus="true"
+        android:hint="@string/Please_enter_barcode"
+        android:imeOptions="actionSend"
+        android:textColor="@color/black"
+        android:textSize="14sp"
+        />
+
+    <Button
+        android:layout_marginTop="10dp"
+        android:id="@+id/bt_ok"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="@color/button_normal"
+        android:paddingTop="@dimen/space_top_8"
+        android:paddingBottom="@dimen/space_bottom_8"
+        android:text="确定"
+        android:textSize="14sp"
+        />
+
+</LinearLayout>

+ 10 - 0
app/src/main/res/layout/pop_material_out_menu.xml

@@ -77,4 +77,14 @@
         android:background="@color/transparent"
         android:text="单据过账"
         android:textSize="@dimen/app_text_size_body_2" />
+
+    <Button
+        android:id="@+id/pop_material_out_menu_8"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginLeft="10dp"
+        android:layout_marginRight="10dp"
+        android:background="@color/transparent"
+        android:text="条码拆分"
+        android:textSize="@dimen/app_text_size_body_2" />
 </LinearLayout>

+ 2 - 0
app/src/main/res/values/strings.xml

@@ -455,6 +455,8 @@
     <string name="turn_off_the_lights">关灯</string>
 
 
+    <string name="Inventory_barcode_printing">库存条码打印</string>
+    <string name="Please_enter_barcode">请输入条码</string>
 
 
 

+ 2 - 2
build.gradle

@@ -54,8 +54,8 @@ ext {
             targetSdkVersion : 28,
             compileSdkVersion: 28,
             buildToolsVersion: "28.0.3",
-            versionCode      : 17,
-            versionName      : "v1.1.6"
+            versionCode      : 20,
+            versionName      : "v1.1.9"
     ]
 
     depsVersion = [