Browse Source

真空密封登记开发

RaoMeng 5 years ago
parent
commit
168b531b3b

+ 3 - 3
app/src/main/java/com/uas/uaspda/bean/WHMakeMaterialProduct.java

@@ -4,18 +4,18 @@ package com.uas.uaspda.bean;
  * @note:仓库管理:物料库存核查中物料Bean
  */
 public class WHMakeMaterialProduct {
-    private int BAR_REMAIN;
+    private double BAR_REMAIN;
     private String BAR_PRODCODE;
     private String PR_DETAIL;
     private String PR_SPEC;
     private String BAR_LOCATION;
     private String BAR_WHCODE;
 
-    public int getBAR_REMAIN() {
+    public double getBAR_REMAIN() {
         return BAR_REMAIN;
     }
 
-    public void setBAR_REMAIN(int BAR_REMAIN) {
+    public void setBAR_REMAIN(double BAR_REMAIN) {
         this.BAR_REMAIN = BAR_REMAIN;
     }
 

+ 1 - 0
app/src/main/java/com/uas/uaspda/fragment/MSDManageFragment.java

@@ -40,6 +40,7 @@ public class MSDManageFragment extends BaseFragment {
         mMenuBeanList.add(new CommonMenuBean("出烘烤", R.drawable.ic_msd_out_baking, MSDOutBakingFragment.class));
         mMenuBeanList.add(new CommonMenuBean("入防潮柜", R.drawable.ic_msd_proof_in, MSDMoistureProofInFragment.class));
         mMenuBeanList.add(new CommonMenuBean("出防潮柜", R.drawable.ic_msd_proof_out, MSDMoistureProofOutFragment.class));
+        mMenuBeanList.add(new CommonMenuBean("真空密封登记", R.drawable.ic_msd_vacuum_seal, MSDVacuumSealRegisterFragment.class));
         mCommonMenuAdapter = new CommonMenuAdapter(mMenuBeanList);
         mMenuRecyclerView.setAdapter(mCommonMenuAdapter);
     }

+ 193 - 0
app/src/main/java/com/uas/uaspda/fragment/MSDVacuumSealRegisterFragment.java

@@ -0,0 +1,193 @@
+package com.uas.uaspda.fragment;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.text.Editable;
+import android.text.TextUtils;
+import android.text.TextWatcher;
+import android.view.KeyEvent;
+import android.view.View;
+import android.widget.Button;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.android.volley.Request;
+import com.uas.uaspda.R;
+import com.uas.uaspda.activity.FunctionActivity;
+import com.uas.uaspda.global.GloableParams;
+import com.uas.uaspda.listener.MyEditorActionListener;
+import com.uas.uaspda.util.CameraUtil;
+import com.uas.uaspda.util.CommonUtil;
+import com.uas.uaspda.util.Constants;
+import com.uas.uaspda.util.FastjsonUtil;
+import com.uas.uaspda.util.HttpCallback;
+import com.uas.uaspda.util.HttpParams;
+import com.uas.uaspda.util.LogUtil;
+import com.uas.uaspda.util.VolleyRequest;
+import com.uas.uaspda.view.ClearableEditText;
+import com.uas.uaspda.view.business.MsdRankSelectPop;
+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 2020/8/4
+ * Desc: 真空密封登记
+ */
+public class MSDVacuumSealRegisterFragment extends BaseFragment {
+    private static final int SCAN_BARCODE_CODE = 203;
+
+    private ImageView mScanImageView;
+    private int mFocusId;
+    private ClearableEditText mBarcodeEditText;
+    private Button mConfirmButton;
+    private TextView mResultTextView;
+
+    @Override
+    protected int getLayout() {
+        return R.layout.fragment_msd_vacuum_seal_register;
+    }
+
+    @Override
+    protected void initViews() {
+        ((FunctionActivity) getActivity()).setTitle("真空密封登记");
+
+        ((FunctionActivity) getActivity()).setScanIvVisible(true);
+
+        mScanImageView = (ImageView) mActivity.findViewById(R.id.btn_actionbar_scan_iv);
+        mBarcodeEditText = root.findViewById(R.id.msd_vacuum_seal_barcode_et);
+        mConfirmButton = root.findViewById(R.id.msd_vacuum_seal_confirm_btn);
+        mResultTextView = root.findViewById(R.id.msd_vacuum_seal_result_tv);
+
+        mBarcodeEditText.requestFocus();
+    }
+
+    @Override
+    protected void initEvents() {
+//        mConfirmButton.setOnClickListener(new View.OnClickListener() {
+//            @Override
+//            public void onClick(View v) {
+//                confirmEvent("");
+//            }
+//        });
+
+        mScanImageView.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                if (CameraUtil.hasCamera()) {
+                    if (root.findFocus() != null) {
+                        mFocusId = root.findFocus().getId();
+                        Intent intent = new Intent();
+                        intent.setClass(mActivity, CaptureActivity.class);
+                        startActivityForResult(intent, SCAN_BARCODE_CODE);
+                    }
+                } else {
+                    CommonUtil.toastNoRepeat(mActivity, getString(R.string.no_camera_detected));
+                }
+            }
+        });
+
+        CommonUtil.setEditorActionListener(mBarcodeEditText, new MyEditorActionListener() {
+            @Override
+            public void MyEditorAction(String text, int actionId, KeyEvent event) {
+                if (!TextUtils.isEmpty(text)) {
+                    mResultTextView.setVisibility(View.GONE);
+                    mResultTextView.setText("");
+                    confirmEvent(text);
+                }
+            }
+        });
+    }
+
+    private void confirmEvent(String barcode) {
+        progressDialog.show();
+        if (barcode.endsWith("\n") || barcode.endsWith("\r")) {
+            barcode.replaceAll("\r|\n", "");
+        }
+        VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
+                .url(GloableParams.ADDRESS_MSD_CONFIRMSEALBARCODE)
+                .method(Request.Method.POST)
+                .tag(TAG + "msdregister")
+                .flag(0)
+                .addParam("bar_code", barcode)
+                .build(), new HttpCallback() {
+            @Override
+            public void onSuccess(int flag, Object o) throws Exception {
+                progressDialog.dismiss();
+
+                String result = o.toString();
+                if (FastjsonUtil.validate(result)) {
+                    JSONObject resultObject = JSON.parseObject(result);
+                    JSONObject dataObject = resultObject.getJSONObject("data");
+                    mBarcodeEditText.setText("");
+                    CommonUtil.toastNoRepeat(mActivity, "确认登记成功");
+                    if (dataObject != null) {
+                        mResultTextView.setVisibility(View.VISIBLE);
+
+                        mResultTextView.setText("确认登记成功" +
+                                "\n条码:" + FastjsonUtil.getText(dataObject, "MB_BARCODE") +
+                                "\n物料:" + FastjsonUtil.getText(dataObject, "MB_PRODCODE") +
+                                "\n名称:" + FastjsonUtil.getText(dataObject, "PR_DETAIL") +
+                                "\n规格:" + FastjsonUtil.getText(dataObject, "PR_SPEC") +
+                                "\n湿敏等级:" + FastjsonUtil.getText(dataObject, "MB_MSDLEVEL") +
+                                "\n车间寿命:" + FastjsonUtil.getText(dataObject, "MB_FLOORLIFE") +
+                                "\n暴露时长:" + FastjsonUtil.getText(dataObject, "MB_EXPOSURETIME")
+                        );
+                    }
+                }
+            }
+
+            @Override
+            public void onFail(int flag, String failStr) throws Exception {
+                progressDialog.dismiss();
+                CommonUtil.toastNoRepeat(mActivity, failStr);
+                mResultTextView.setVisibility(View.VISIBLE);
+                mResultTextView.setText(failStr);
+            }
+        });
+    }
+
+    @Override
+    protected void initDatas() {
+
+    }
+
+    @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());
+                confirmEvent(result);
+            }
+        }
+    }
+
+
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        return false;
+    }
+
+    @Override
+    public boolean onFragmentBackPressed() {
+        return false;
+    }
+
+    @Override
+    public void onDestroyView() {
+        super.onDestroyView();
+        ((FunctionActivity) getActivity()).setScanIvVisible(false);
+    }
+}

+ 4 - 0
app/src/main/java/com/uas/uaspda/global/GloableParams.java

@@ -214,6 +214,7 @@ public class GloableParams {
     public static String ADDRESS_INMATERIAL_SAVEBARACCEPTCODE;
     public static String ADDRESS_SMT_BINDFEEDERBARCODE;
     public static String ADDRESS_SMT_GETFEEDERBARCODE;
+    public static String ADDRESS_MSD_CONFIRMSEALBARCODE;
 
 
     //连接服务器请求地址
@@ -586,6 +587,8 @@ public class GloableParams {
     private static String ADDRESSTAIL_CONFIRM_ENTERBOX = "/api/pda/msd/confirmEnterBox.action";
     //出防潮柜
     private static String ADDRESSTAIL_CONFIRM_OUTBOX = "/api/pda/msd/confirmOutBox.action";
+    //真空密封登记
+    private static String ADDRESSTAIL_MSD_CONFIRMSEALBARCODE = "/api/pda/msd/confirmSealBarcode.action";
 
     /**
      * 设置页面
@@ -949,5 +952,6 @@ public class GloableParams {
         GloableParams.ADDRESS_INMATERIAL_SAVEBARACCEPTCODE = uriHead + GloableParams.ADDRESSTAIL_INMATERIAL_SAVEBARACCEPTCODE;
         GloableParams.ADDRESS_SMT_BINDFEEDERBARCODE = uriHead + GloableParams.ADDRESSTAIL_SMT_BINDFEEDERBARCODE;
         GloableParams.ADDRESS_SMT_GETFEEDERBARCODE = uriHead + GloableParams.ADDRESSTAIL_SMT_GETFEEDERBARCODE;
+        GloableParams.ADDRESS_MSD_CONFIRMSEALBARCODE = uriHead + GloableParams.ADDRESSTAIL_MSD_CONFIRMSEALBARCODE;
     }
 }

+ 1 - 1
app/src/main/java/com/uas/uaspda/tools/VolleyUtil.java

@@ -334,7 +334,7 @@ public class VolleyUtil {
         getVolleyUtil();
         context = pContext;
         requestType = pRequestType;
-        pUrl = pUrl + "?pr_code" + pProcode + "&location=" + pWhcode;
+        pUrl = pUrl + "?pr_code=" + pProcode + "&wh_code=" + pWhcode + "&location=" + pWhcode;
         Log.e("VOLLEYURL", pUrl);
         stringRequest = new StringRequest(Request.Method.GET, pUrl, stringListener, errorListener) {
             @Override

BIN
app/src/main/res/drawable-hdpi/ic_msd_vacuum_seal.png


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


BIN
app/src/main/res/drawable-xxhdpi/ic_msd_vacuum_seal.png


+ 49 - 0
app/src/main/res/layout/fragment_msd_vacuum_seal_register.xml

@@ -0,0 +1,49 @@
+<?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="@dimen/root_layout_padding">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal">
+
+        <TextView
+            style="@style/inputItemCaption"
+            android:text="条码" />
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:padding="4dp"
+            android:text="*"
+            android:textColor="@color/red" />
+
+        <com.uas.uaspda.view.ClearableEditText
+            android:id="@+id/msd_vacuum_seal_barcode_et"
+            style="@style/inputItemValue"
+            android:hint="请采集条码" />
+    </LinearLayout>
+
+    <Button
+        android:id="@+id/msd_vacuum_seal_confirm_btn"
+        style="@style/ButtonStyle"
+        android:layout_marginTop="12dp"
+        android:enabled="false"
+        android:text="确认登记"
+        android:visibility="gone" />
+
+    <TextView
+        android:id="@+id/msd_vacuum_seal_result_tv"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_margin="10dp"
+        android:background="@drawable/shape_msg_block"
+        android:padding="10dp"
+        android:visibility="gone"
+        tools:text="采集成功,条码:786528238;数量:2;料号:209837;名称规格:瓶子" />
+
+</LinearLayout>