Browse Source

出库采集增加打印按钮

ChengJH 6 months ago
parent
commit
af60d9f5a2

+ 37 - 26
app/src/main/java/com/uas/pda_smart_com/fragment/IOCOutMakeMaterialOper.java

@@ -67,6 +67,7 @@ import com.uas.pda_smart_com.tools.VolleyUtil;
 import com.uas.pda_smart_com.util.CameraUtil;
 import com.uas.pda_smart_com.util.CommonUtil;
 import com.uas.pda_smart_com.util.Constants;
+import com.uas.pda_smart_com.util.FastjsonUtil;
 import com.uas.pda_smart_com.util.FileUtils;
 import com.uas.pda_smart_com.util.FragmentUtils;
 import com.uas.pda_smart_com.util.HttpCallback;
@@ -252,7 +253,7 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                                     }
 
                                     //弹出拆分结果弹框
-                                    initBreakPopupWindow(listArray);
+//                                    initBreakPopupWindow(listArray);
                                 }
 
                                 mCollectResultTextView.setText(barcodeResult);
@@ -417,7 +418,7 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
     private TextView mMaterialInforTextView;
     private TextView mCollectResultTextView;
     private Button btn_oneprint;
-    private JSONArray listArray;
+    private com.alibaba.fastjson.JSONArray listArray;
 
     @Override
     protected int getLayout() {
@@ -577,7 +578,7 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
             public void onClick(View v) {
 
 
-                if (listArray != null && listArray.length() > 0) {
+                if (listArray != null && listArray.size() > 0) {
                     printEvent(listArray);
                 }else {
                     CommonUtil.toastNoRepeat(mActivity, "数据为空");
@@ -1606,7 +1607,9 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                         mCollectResultTextView.setVisibility(View.VISIBLE);
                         mCollectResultTextView.setTextColor(getResources().getColor(R.color.green));
                         mCollectResultTextView.setText(null);
-                        listArray = dataObject.optJSONArray("nolist");
+//                        listArray = dataObject.optJSONArray("nolist");
+                         listArray = FastjsonUtil.getJSONArray(dataObject.toString(), "nolist");
+                         Log.e("listArraydata",listArray.toString());
                         if (mCollectType.equals("byBarcode") || mCollectType.equals("byBatchcode")) {
                             String barcodeResult = "采集成功;" + JsonUtils.optStringNotNull(dataObject, "finishno")
                                     + "\n条码:" + JsonUtils.optStringNotNull(messageObject, "BAR_CODE")
@@ -1617,13 +1620,16 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                                     + "  " + JsonUtils.optStringNotNull(messageObject, "PR_SPEC")
                                     + ";仓位:" + JsonUtils.optStringNotNull(messageObject, "BAR_LOCATION");
 
-                            if (listArray != null && listArray.length() > 0) {
-                                for (int i = 0; i < listArray.length(); i++) {
-                                    JSONObject listObject = listArray.optJSONObject(i);
+                            if (listArray != null && listArray.size() > 0) {
+                                for (int i = 0; i < listArray.size(); i++) {
+                                    com.alibaba.fastjson.JSONObject listObject = listArray.getJSONObject(i);
+                                    //JsonUtils.optStringNotNull(listObject, "PI_INOUTNO")
+                                    //JsonUtils.optStringNotNull(listObject, "BAR_CODE")
+                                    //CommonUtil.doubleFormat(JsonUtils.optDoubleNotNull(listObject, "RESTQTY"));
                                     barcodeResult = barcodeResult
-                                            + "\n单号:" + JsonUtils.optStringNotNull(listObject, "PI_INOUTNO")
-                                            + ";条码号:" + JsonUtils.optStringNotNull(listObject, "BAR_CODE")
-                                            + ";数量:" + CommonUtil.doubleFormat(JsonUtils.optDoubleNotNull(listObject, "RESTQTY"));
+                                            + "\n单号:" + listObject.getString("PI_INOUTNO")
+                                            + ";条码号:" + listObject.getString("BAR_CODE")
+                                            + ";数量:" + listObject.getString("RESTQTY");
                                 }
 
                                 //弹出拆分结果弹框
@@ -1663,13 +1669,16 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
                                     + "  " + JsonUtils.optStringNotNull(messageObject, "PR_SPEC");
 
 
-                            if (listArray != null && listArray.length() > 0) {
-                                for (int i = 0; i < listArray.length(); i++) {
-                                    JSONObject listObject = listArray.optJSONObject(i);
+                            if (listArray != null && listArray.size() > 0) {
+                                for (int i = 0; i < listArray.size(); i++) {
+                                    com.alibaba.fastjson.JSONObject listObject = listArray.getJSONObject(i);
+//                                    + "\n单号:" + JsonUtils.optStringNotNull(listObject, "PI_INOUTNO")
+//                                            + ";条码号:" + JsonUtils.optStringNotNull(listObject, "BAR_CODE")
+//                                            + ";数量:" + CommonUtil.doubleFormat(JsonUtils.optDoubleNotNull(listObject, "BAR_REMAIN"));
                                     boxResult = boxResult
-                                            + "\n单号:" + JsonUtils.optStringNotNull(listObject, "PI_INOUTNO")
-                                            + ";条码号:" + JsonUtils.optStringNotNull(listObject, "BAR_CODE")
-                                            + ";数量:" + CommonUtil.doubleFormat(JsonUtils.optDoubleNotNull(listObject, "BAR_REMAIN"));
+                                            + "\n单号:" + listObject.getString("PI_INOUTNO")
+                                            + ";条码号:" + listObject.getString("BAR_CODE")
+                                            + ";数量:" + listObject.getDouble("BAR_REMAIN");
                                 }
                             }
 
@@ -1995,21 +2004,23 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
         PdaApplication.mRequestQueue.add(stringRequest);*/
     }
 
-    protected void initBreakPopupWindow(JSONArray listArray) {
+    protected void initBreakPopupWindow(com.alibaba.fastjson.JSONArray listArray) {
         messages.clear();
-        for (int i = 0; i < listArray.length(); i++) {
+        for (int i = 0; i < listArray.size(); i++) {
             try {
-                JSONObject barcodeObject = listArray.getJSONObject(i);
+                com.alibaba.fastjson.JSONObject barcodeObject = listArray.getJSONObject(i);
 
                 if (barcodeObject != null) {
                     WHBreakingBatchBreakingBtnClickEvent.DataBean dataBean = new WHBreakingBatchBreakingBtnClickEvent.DataBean();
 
-                    dataBean.setBAR_CODE(JsonUtils.optStringNotNull(barcodeObject, "BAR_CODE"));
-                    dataBean.setBAR_REMAIN(JsonUtils.optStringNotNull(barcodeObject, "BAR_REMAIN"));//RESTQTY
+//                    dataBean.setBAR_CODE(JsonUtils.optStringNotNull(barcodeObject, "BAR_CODE"));
+//                    dataBean.setBAR_REMAIN(JsonUtils.optStringNotNull(barcodeObject, "BAR_REMAIN"));//RESTQTY
+                    dataBean.setBAR_CODE(barcodeObject.getString("BAR_CODE"));
+                    dataBean.setBAR_REMAIN(barcodeObject.getString("BAR_REMAIN"));//RESTQTY
 
                     messages.add(dataBean);
                 }
-            } catch (JSONException e) {
+            } catch (Exception e) {
                 e.printStackTrace();
             }
         }
@@ -2083,17 +2094,17 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
         CommonUtil.setBackgroundAlpha(mActivity, 0.5f);
     }
 
-    private void printEvent(JSONArray printArray) {
+    private void printEvent(com.alibaba.fastjson.JSONArray printArray) {
         if (isPrinting) {
             CommonUtil.toastNoRepeat(mActivity, "正在打印中,请勿重复操作");
             return;
         }
         isPrinting = true;
-        if (printArray != null && printArray.length() > 0) {
+        if (printArray != null && printArray.size() > 0) {
             boolean isFail = false;
-            for (int i = 0; i < printArray.length(); i++) {
+            for (int i = 0; i < printArray.size(); i++) {
                 try {
-                    JSONObject printObject = printArray.getJSONObject(i);
+                    com.alibaba.fastjson.JSONObject printObject = printArray.getJSONObject(i);
                     int printResult = PrintUtils.printBar(mActivity, printObject.toString(), mPrintDpi, null);
                     if (printResult <= 0) {
                         isFail = true;