فهرست منبع

入库采集,型号扫描,品牌可编辑

RaoMeng 6 سال پیش
والد
کامیت
ce98fed95b

BIN
.idea/caches/build_file_checksums.ser


+ 17 - 12
app/src/main/java/com/uas/keg_storage/fragment/JLTStorageInBarcodeFragment.java

@@ -67,13 +67,14 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
     private String DIALOG_DATE = "DialogDate";
     private static final int REQUEST_DATE = 11;
     private static final int SCAN_BARCODE_CODE = 101;
+    private static final int SCAN_MODEL_CODE = 102;
     private Button mMoreButton, mSaveButton, mNextButton;
     private PopupWindow mMenuPopupWindow;
     private View mMenuView;
-    private TextView mBoxTextView, mBrandEditText, mPanEditText;
-    private ImageView mCalendarImageView, mScanImageView, mEnclosureFitlerIv;
+    private TextView mBoxTextView, mPanEditText;
+    private ImageView mCalendarImageView, mScanImageView, mEnclosureFitlerIv, mModelScanIv;
     private ClearableEditText mDateEditText, mBarcodeEditText, mModelEditText, mQuantityEditText,
-            mLotEditText, mPoEditText, mEnclosureEditText, mMpqEditText;
+            mLotEditText, mPoEditText, mEnclosureEditText, mMpqEditText, mBrandEditText;
     private CheckBox mPoCheckBox;
     private String mBoxNum, mPiInoutno, mPiid, mPiClass, mRealBoxNum, mDatecodebyparse;
     private JLTBarcodeParseBean mBarcodeParseBean;
@@ -105,6 +106,7 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
 
         mMoreButton = (Button) getActivity().findViewById(R.id.btn_actionbar_more);
         mCalendarImageView = root.findViewById(R.id.jlt_storage_in_barcode_date_iv);
+        mModelScanIv = root.findViewById(R.id.jlt_storage_in_barcode_model_scan_iv);
         mDateEditText = root.findViewById(R.id.jlt_storage_in_barcode_date_et);
         mBoxTextView = root.findViewById(R.id.jlt_storage_in_barcode_box_tv);
         mScanImageView = root.findViewById(R.id.jlt_storage_in_barcode_scan_iv);
@@ -145,6 +147,7 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
         mMoreButton.setOnClickListener(this);
         mCalendarImageView.setOnClickListener(this);
         mScanImageView.setOnClickListener(this);
+        mModelScanIv.setOnClickListener(this);
         mSaveButton.setOnClickListener(this);
         mNextButton.setOnClickListener(this);
         mEnclosureEditText.setOnClickListener(this);
@@ -504,15 +507,10 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
                 dialog.show(fragmentManager, DIALOG_DATE);
                 break;
             case R.id.jlt_storage_in_barcode_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));
-                }
+                CommonUtil.scanBarcode(mActivity, JLTStorageInBarcodeFragment.this, SCAN_BARCODE_CODE);
+                break;
+            case R.id.jlt_storage_in_barcode_model_scan_iv:
+                CommonUtil.scanBarcode(mActivity, JLTStorageInBarcodeFragment.this, SCAN_MODEL_CODE);
                 break;
             case R.id.jlt_storage_in_barcode_save_btn:
                 saveBarcode(false, true);
@@ -713,6 +711,13 @@ public class JLTStorageInBarcodeFragment extends BaseFragment implements View.On
                 mBarcodeEditText.setSelection(result.length());
             }
         }
+        if (requestCode == SCAN_MODEL_CODE && data != null) {
+            if (data.getExtras() != null) {
+                String result = data.getExtras().getString(CodeUtils.RESULT_STRING);
+                mModelEditText.setText(result);
+                mModelEditText.setSelection(result.length());
+            }
+        }
     }
 
     /**

+ 39 - 0
app/src/main/java/com/uas/keg_storage/util/CommonUtil.java

@@ -2,6 +2,7 @@ package com.uas.keg_storage.util;
 
 import android.app.Activity;
 import android.content.Context;
+import android.content.Intent;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 import android.net.ConnectivityManager;
@@ -10,6 +11,7 @@ import android.os.AsyncTask;
 import android.os.Build;
 import android.os.Handler;
 import android.os.Vibrator;
+import android.support.v4.app.Fragment;
 import android.text.Editable;
 import android.text.SpannableString;
 import android.text.Spanned;
@@ -46,6 +48,8 @@ import com.uas.keg_storage.listener.MyEditorActionListener;
 import com.uas.keg_storage.tools.DataSourceManager;
 import com.uas.keg_storage.tools.SharedPreUtil;
 import com.uas.keg_storage.view.ConfirmDialog;
+import com.uuzuche.lib_zxing.activity.CaptureActivity;
+import com.uuzuche.lib_zxing.activity.CodeUtils;
 
 import org.json.JSONArray;
 import org.json.JSONException;
@@ -923,4 +927,39 @@ public class CommonUtil {
         double eps = 1e-10;  // 精度范围
         return obj - Math.floor(obj) < eps;
     }
+
+
+    /**
+     * 开启扫描
+     *
+     * @param context
+     * @param fragment
+     * @param requestCode
+     * @return
+     */
+    public static boolean scanBarcode(Context context, Fragment fragment, int requestCode) {
+        if (CameraUtil.hasCamera()) {
+            Intent intent = new Intent();
+            intent.setClass(context, CaptureActivity.class);
+            fragment.startActivityForResult(intent, requestCode);
+            return true;
+        } else {
+            CommonUtil.toastNoRepeat(context, context.getString(R.string.no_camera_detected));
+            return false;
+        }
+    }
+
+    /**
+     * 获取扫描结果
+     *
+     * @param data
+     * @return
+     */
+    public static String getScanResult(Intent data) {
+        String result = "";
+        if (data != null && data.getExtras() != null) {
+            result = data.getExtras().getString(CodeUtils.RESULT_STRING);
+        }
+        return result;
+    }
 }

+ 16 - 5
app/src/main/res/layout/fragment_jlt_storage_in_barcode.xml

@@ -84,6 +84,16 @@
                     android:layout_width="0dp"
                     android:layout_weight="1"
                     android:hint="请采集型号" />
+
+                <ImageView
+                    android:id="@+id/jlt_storage_in_barcode_model_scan_iv"
+                    android:layout_width="wrap_content"
+                    android:layout_height="match_parent"
+                    android:layout_gravity="center"
+                    android:paddingRight="10dp"
+                    android:background="@color/white"
+                    android:clickable="false"
+                    android:src="@drawable/ic_edittext_scan" />
             </LinearLayout>
 
             <LinearLayout
@@ -200,9 +210,9 @@
                         android:textColor="@color/body_text_1"
                         android:textSize="16sp" />
 
-                    <TextView
+                    <com.uas.keg_storage.view.ClearableEditText
                         android:id="@+id/jlt_storage_in_barcode_brand_et"
-                        style="@style/EditTextUnableStyle"
+                        style="@style/EditTextStyle"
                         android:layout_width="0dp"
                         android:layout_weight="1" />
                 </LinearLayout>
@@ -278,10 +288,10 @@
             </LinearLayout>
 
             <LinearLayout
-                android:visibility="gone"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:layout_marginTop="4dp">
+                android:layout_marginTop="4dp"
+                android:visibility="gone">
 
                 <TextView
                     style="@style/tl_tv_style"
@@ -322,7 +332,8 @@
             android:layout_margin="12dp"
             android:layout_weight="1"
             android:text="保存并下一箱"
-            android:visibility="gone"/>
+            android:visibility="gone" />
+
         <Button
             android:id="@+id/jlt_storage_in_barcode_save_btn"
             style="@style/ButtonStyle"