Quellcode durchsuchen

SN过站 +材料出库 +尾料还仓

shuij vor 4 Jahren
Ursprung
Commit
ab5363c59b

+ 0 - 1
app/src/main/java/com/uas/pda_smart_com/application/PdaApplication.java

@@ -106,7 +106,6 @@ public class PdaApplication extends Application {
         // MobclickAgent.onPageEnd手动埋点即可。此采集模式简化埋点工作,唯一缺点是在Android 4.0以下设备中
         // 统计不到Activity页面数据和各类基础指标(提示:目前Android 4.0以下设备市场占比已经极小)。
         MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.AUTO);
-
     }
 
 

+ 20 - 25
app/src/main/java/com/uas/pda_smart_com/fragment/IOCOutMakeMaterialNewOper.java

@@ -2,12 +2,16 @@ package com.uas.pda_smart_com.fragment;
 
 import android.app.Activity;
 import android.content.Intent;
+import android.graphics.Color;
 import android.graphics.drawable.BitmapDrawable;
 import android.os.Bundle;
 import android.support.v4.app.Fragment;
 import android.text.Editable;
+import android.text.SpannableString;
+import android.text.Spanned;
 import android.text.TextUtils;
 import android.text.TextWatcher;
+import android.text.style.ForegroundColorSpan;
 import android.util.Log;
 import android.view.KeyEvent;
 import android.view.View;
@@ -285,29 +289,39 @@ public class IOCOutMakeMaterialNewOper extends BaseFragment implements View.OnCl
                                 String barcode = JsonUtils.optStringNotNull(barcodeObject, "barcode");//条码号
                                 String qty = JsonUtils.optStringNotNull(barcodeObject, "QTY");//数量
                                 String pn = JsonUtils.optStringNotNull(barcodeObject, "PN");//物料
-                                String materialInfo="条码:"+barcode+",物料:"+pn+",数量:"+qty +"    采集成功";
+                                String materialInfo="条码:"+barcode+",物料:"+pn+",数量:"+qty ;
+                                String successInfo="    采集成功";
+                                String nextInfo="";
+                                String tipInfo="";
                                 //下一采集数据
                                 JSONObject nextObject = dataObject.getJSONObject("next");
                                 if(nextObject!=null){
                                     MaterialInformationBean.DataBean materialInformationBean = JsonTools.parseJsonToBean(nextObject.toString(), MaterialInformationBean.DataBean.class);
                                     if (materialInformationBean != null) {
-                                         materialInfo += "\n"+ "\n"+"下一采集信息:"+"\n"+
-                                                "物料:" + (materialInformationBean.getPD_PRODCODE() == null ? "" : materialInformationBean.getPD_PRODCODE())
+                                         tipInfo="\n"+ "\n"+"下一采集信息:"+"\n";
+                                         nextInfo=tipInfo+"物料:" + (materialInformationBean.getPD_PRODCODE() == null ? "" : materialInformationBean.getPD_PRODCODE())
                                                         + "; 名称规格:" + (materialInformationBean.getPR_DETAIL() == null ? "" : materialInformationBean.getPR_DETAIL())
                                                         + "  " + (materialInformationBean.getPR_SPEC() == null ? "" : materialInformationBean.getPR_SPEC())
                                                         + "; 出库数量:" + (materialInformationBean.getPD_OUTQTY() == null ? "" : materialInformationBean.getPD_OUTQTY())
                                                         + "; 未备料数:" + (materialInformationBean.getPD_RESTQTY() == null ? "" : materialInformationBean.getPD_RESTQTY())
                                                         + "; 已备料数:" + (CommonUtil.doubleFormat(materialInformationBean.getHAVEREADY()))
                                                         + "; 最小包装数:" + (CommonUtil.doubleFormat(materialInformationBean.getPR_ZXBZS()));
+
                                     }
                                 }else{
                                     //已完成备料
                                     String finishno = JsonUtils.optStringNotNull(dataObject, "finishno");//物料
                                     if(!TextUtils.isEmpty(finishno)&&finishno.equals("1")){
-                                        materialInfo ="\n"+"该出库单已经完成备料";
+                                        nextInfo ="\n"+"该出库单已经完成备料";
                                     }
                                 }
-                                mMaterialInforTextView.setText(materialInfo);
+                                SpannableString spannableString=new SpannableString(materialInfo+successInfo+nextInfo);
+                                ForegroundColorSpan colorSpan = new ForegroundColorSpan(Color.parseColor("#000000"));
+                                spannableString.setSpan(colorSpan,materialInfo.length(),(materialInfo+successInfo+tipInfo).length(),Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+                                mMaterialInforTextView.setText(spannableString);
+                                etBarCode.setText("");
+                                etBarCode.requestFocus();
+                                edit_num.setText("");
                             }
 
                         } catch (Exception e) {
@@ -332,6 +346,7 @@ public class IOCOutMakeMaterialNewOper extends BaseFragment implements View.OnCl
         mStringRequest.setRetryPolicy(new DefaultRetryPolicy(10 * 1000, 0, 1f));
         mStringRequest.setTag(TAG + "confirmBarOut");
         PdaApplication.mRequestQueue.add(mStringRequest);
+
     }
 
     /**
@@ -451,26 +466,6 @@ public class IOCOutMakeMaterialNewOper extends BaseFragment implements View.OnCl
                         clickToFragment(new MaterialOutRevocationStockFragment());
                     }
                 });
-
-                stockModifyBtn.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        closeListPopupWindow();
-                        ((FunctionActivity) getActivity()).setMoreBtnVisible(false);
-//                        ((FunctionActivity) getActivity()).setScanIvVisible(false);
-                        clickToFragment(new ModifyQuantityOutFragment());
-                    }
-                });
-
-                stockSpecialBtn.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        closeListPopupWindow();
-                        ((FunctionActivity) getActivity()).setMoreBtnVisible(false);
-//                        ((FunctionActivity) getActivity()).setScanIvVisible(false);
-                        clickToFragment(new SpecialMaterialOutFragment());
-                    }
-                });
                 listPopupWindow = new PopupWindow(materialOutMoreView, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
                 listPopupWindow.setBackgroundDrawable(new BitmapDrawable());
                 listPopupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {

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

@@ -90,6 +90,12 @@ public class IndexWareHouseContentFragment extends BaseFragment implements Adapt
             }
         } else {//非车间
             switch (gridName) {
+                //尾料还仓
+                case GloableParams.GRIDNAME_TAILING_BACK:
+                    fragment = new SCTailingBackFragment();
+                    getFragmentManager().beginTransaction().addToBackStack(null)
+                            .replace(R.id.container_function_fragment, fragment).commit();
+                    break;
                 //货物核查
                 case GloableParams.GRIDNAME_GOOD_SEARCH:
                     fragment = new WHCheckContentFragment();

+ 15 - 3
app/src/main/java/com/uas/pda_smart_com/fragment/MaterialOutRevocationStockFragment.java

@@ -2,8 +2,12 @@ package com.uas.pda_smart_com.fragment;
 
 import android.app.Activity;
 import android.content.Intent;
+import android.graphics.Color;
 import android.os.Bundle;
+import android.text.SpannableString;
+import android.text.Spanned;
 import android.text.TextUtils;
+import android.text.style.ForegroundColorSpan;
 import android.view.KeyEvent;
 import android.view.View;
 import android.view.inputmethod.EditorInfo;
@@ -62,6 +66,7 @@ public class MaterialOutRevocationStockFragment extends BaseFragment {
 
     @Override
     protected void initViews() {
+        ((FunctionActivity) getActivity()).setScanIvVisible(true);
         mInoutnoTextView = (TextView) root.findViewById(R.id.material_out_revocation_stock_inoutno);
         mWhcodeTextView = (TextView) root.findViewById(R.id.material_out_revocation_stock_whcode);
         mTypeTextView = (TextView) root.findViewById(R.id.material_out_revocation_stock_type);
@@ -256,13 +261,21 @@ public class MaterialOutRevocationStockFragment extends BaseFragment {
                                     String barcode = JsonUtils.optStringNotNull(dataObject, "barcode");//条码号
                                     String qty = JsonUtils.optStringNotNull(dataObject, "QTY");//数量
                                     String pn = JsonUtils.optStringNotNull(dataObject, "PN");//物料号
-                                    String tipInfo="条码号:"+barcode+",物料:"+pn+",数量:"+qty +"     撤销备料成功";
-                                    mResultTextView.setText(tipInfo);
+                                    String tipInfo="条码号:"+barcode+",物料:"+pn+",数量:"+qty ;
+                                    String successInfo="     撤销备料成功";
+                                    SpannableString spannableString=new SpannableString(tipInfo+successInfo);
+                                    ForegroundColorSpan colorSpan = new ForegroundColorSpan(Color.parseColor("#000000"));
+                                    spannableString.setSpan(colorSpan,tipInfo.length(),(tipInfo+successInfo).length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+                                    mResultTextView.setText(spannableString);
+                                    mBarcodeEditText.setText("");
                                 }
                             } catch (Exception e) {
                                 e.printStackTrace();
                             }
                             CommonUtil.toastNoRepeat(mActivity, "撤销备料成功");
+
+
+
                         }
                     }
                 },
@@ -271,7 +284,6 @@ public class MaterialOutRevocationStockFragment extends BaseFragment {
                     public void onErrorResponse(VolleyError volleyError) {
                         progressDialog.dismiss();
                         String errorToast = CommonUtil.showErrorToast(volleyError, true);
-                        mBarcodeEditText.setText(null);
                         mBarcodeEditText.requestFocus();
                         mResultTextView.setVisibility(View.VISIBLE);
                         mResultTextView.setText(errorToast);

+ 230 - 170
app/src/main/java/com/uas/pda_smart_com/fragment/SCTailingBackFragment.java

@@ -1,121 +1,192 @@
 package com.uas.pda_smart_com.fragment;
 
 
-import android.content.Context;
-import android.util.Log;
+import android.app.Activity;
+import android.content.Intent;
+import android.os.Build;
+import android.os.Handler;
+import android.os.Message;
+import android.support.annotation.RequiresApi;
+import android.text.Editable;
+import android.text.TextUtils;
+import android.text.TextWatcher;
 import android.view.KeyEvent;
 import android.view.View;
-import android.view.inputmethod.InputMethodManager;
+import android.view.inputmethod.EditorInfo;
 import android.widget.Button;
-import android.widget.EditText;
+import android.widget.ImageView;
 import android.widget.TextView;
 
+import com.android.volley.AuthFailureError;
+import com.android.volley.DefaultRetryPolicy;
+import com.android.volley.Request;
+import com.android.volley.Response;
+import com.android.volley.VolleyError;
+import com.android.volley.toolbox.StringRequest;
 import com.uas.pda_smart_com.R;
+import com.uas.pda_smart_com.activity.FunctionActivity;
+import com.uas.pda_smart_com.application.PdaApplication;
 import com.uas.pda_smart_com.global.GloableParams;
 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.JsonUtils;
 import com.uas.pda_smart_com.view.ClearableEditText;
+import com.uuzuche.lib_zxing.activity.CaptureActivity;
+import com.uuzuche.lib_zxing.activity.CodeUtils;
 
 import org.json.JSONException;
 import org.json.JSONObject;
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.util.Map;
+
 /**
  * @note:尾料还仓
  */
-public class SCTailingBackFragment extends BaseFragment implements View.OnClickListener, VolleyUtil.VolleyFinishListener {
-    ClearableEditText etBarcode,etRemainqty,etLocation;
-    TextView tvProcode;
-    TextView tvTitle,tvContent;
+public class SCTailingBackFragment extends BaseFragment {
+    private ImageView mScanImageView;
+    private ClearableEditText et_bar_code;
+    private TextView tv_liao_num;
+    private  ClearableEditText edit_num;
+    private Button btn_confirm;
+    private TextView tv_msg;
+    private static final int SCAN_BARCODE_CODE = 201;
+    private int mFocusId;
+    private StringRequest mStringRequest;
+    private String currentBarcode;
     int requestType = -1;
-    int rightColor,errorColor;
-    private Button btnOk;
-
     @Override
     protected int getLayout() {
         return R.layout.fragment_scmake_tailback;
     }
 
+    @RequiresApi(api = Build.VERSION_CODES.CUPCAKE)
     @Override
     protected void initViews() {
-        //->采集信息
-        etBarcode = (ClearableEditText) root.findViewById(R.id.et_barcode_tailback_scmake);
-        etRemainqty = (ClearableEditText) root.findViewById(R.id.et_remainqty_tailback_scmake);
-        etLocation = (ClearableEditText) root.findViewById(R.id.et_location_tailback_scmake);
-        tvProcode = (TextView) root.findViewById(R.id.tv_procode_tailback_scmake);
-        btnOk = (Button) root.findViewById(R.id.btn_collect_tailback);
-        //->提示信息
-        tvTitle = (TextView) root.findViewById(R.id.tv_innernotice_msgtitle_scmake);
-        tvContent = (TextView) root.findViewById(R.id.tv_innernotice_1_scmake);
-
-        //接口回调
-        VolleyUtil.getVolleyUtil().setOnVolleyFinishListener(this);
+        ((FunctionActivity) getActivity()).setScanIvVisible(true);
+        mScanImageView = (ImageView) mActivity.findViewById(R.id.btn_actionbar_scan_iv);
+        et_bar_code=root.findViewById(R.id.et_bar_code);
+        tv_liao_num=root.findViewById(R.id.tv_liao_num);
+        edit_num=root.findViewById(R.id.edit_num);
+        btn_confirm=root.findViewById(R.id.btn_confirm);
+        tv_msg=root.findViewById(R.id.tv_msg);
+        et_bar_code.requestFocus();
+        VolleyUtil.setVolleyHandler(new Handler(new Handler.Callback() {
+            @Override
+            public boolean handleMessage(Message msg) {
+                progressDialog.dismiss();
+                switch (msg.what) {
+                    //连接成功
+                    case VolleyUtil.SUCCESS_SUCCESS:
+                        try {
+                            JSONObject resultJson = new JSONObject(msg.obj.toString());
+                            boolean isOk=resultJson.optBoolean("success");
+                            if(isOk){
+                                tv_msg.setVisibility(View.VISIBLE);
+                                tv_msg.setText("还仓成功");
+                                et_bar_code.setText("");
+                                tv_liao_num.setText("");
+                                edit_num.setText("");
+                            }else{
+                                tv_msg.setVisibility(View.VISIBLE);
+                                tv_msg.setText("还仓失败");
+                            }
+
+                        } catch (JSONException e) {
+                            e.printStackTrace();
+                        }
+                        break;
+                    case VolleyUtil.FAILED_FAILED:
+                        tv_msg.setVisibility(View.VISIBLE);
+                        tv_msg.setText("还仓失败");
+                        break;
+                }
+                return false;
+            }
+        }));
     }
 
+    @RequiresApi(api = Build.VERSION_CODES.CUPCAKE)
     @Override
     protected void initEvents() {
-        etBarcode.setOnKeyListener(new View.OnKeyListener() {
+        et_bar_code.addTextChangedListener(new TextWatcher() {
             @Override
-            public boolean onKey(View v, int keyCode, KeyEvent event) {
-                if(keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_UP){
-                    disposeBarcodeEnter();
-                    return true;
+            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
+
+            }
+
+            @Override
+            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
+
+            }
+
+            @Override
+            public void afterTextChanged(Editable editable) {
+                if (editable.length() == 0) {
+                    btn_confirm.setEnabled(false);
+                } else {
+                    btn_confirm.setEnabled(true);
                 }
-                return false;
             }
         });
-        /*etBarcode.setOnFocusChangeListener(new View.OnFocusChangeListener() {
+
+        et_bar_code.setOnEditorActionListener(new TextView.OnEditorActionListener() {
             @Override
-            public void onFocusChange(View view, boolean b) {
-                if (TextUtils.isEmpty(etBarcode.getText())) {
-                    disposeBarcodeEnter();
+            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+                if (actionId == EditorInfo.IME_ACTION_SEND
+                        || actionId == EditorInfo.IME_ACTION_DONE
+                        || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
+                       confirmEvent();
+                    return true;
                 }
-
+                return false;
             }
-        });*/
-        btnOk.setOnClickListener(this);
-    }
+        });
 
-    @Override
-    protected void initDatas() {
-        //->Actionbar
-        ((TextView) (getActivity().findViewById(R.id.tv_actionbar_withback))).setText(R.string.title_tailback_smt);
-        rightColor = getResources().getColor(R.color.green);
-        errorColor = getResources().getColor(R.color.text_error);
-        editTextGetFocus(etBarcode);
-    }
+        btn_confirm.setOnClickListener(v -> {
+            confirmBarOut();
+        });
+        mScanImageView.setOnClickListener(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));
+            }
 
-    @Override
-    public void onDestroy() {
-        hideKeyboard(etLocation);
-        VolleyUtil.distoryVolley();
-        super.onDestroy();
+        });
     }
 
-    //条码采集框回车事件
-    private void disposeBarcodeEnter(){
-        String bar_code = etBarcode.getText().toString().trim();
-        if(bar_code.equals("") || bar_code == null){
-            etBarcode.setWarnIconVisible();
+    /***
+     * 确定按钮触发
+     */
+    private void confirmBarOut(){
+        currentBarcode = et_bar_code.getText().toString().trim();
+        String  inputNum=edit_num.getText().toString().trim();
+        int qty;
+        try {
+            qty= Integer.parseInt(inputNum);
+        }catch (Exception e){
+            qty=0;
+        }
+        if(TextUtils.isEmpty(currentBarcode)){
+            CommonUtil.toastNoRepeat(mActivity,"请采集条码");
+            return;
+        }
+        if(qty<=0){
+            CommonUtil.toastNoRepeat(mActivity,"预计剩余数量必须大于0");
             return;
         }
-        //请求服务器获取信息
-        requestType = VolleyUtil.FRAGMENT_SCMAKE_DETAIL_TAILBACK;
-        showLoadingView();
-        VolleyUtil.getVolleyUtil().requestTailBack(getActivity(), GloableParams.ADDRESS_TAILBACK_DETAIL_APPLY, VolleyUtil.METHOD_GET,
-                requestType, bar_code);
-    }
-    //确认按钮点击事件
-    String bar_code;
-    private void disposeOnclice(){
-        bar_code = etBarcode.getText().toString().trim();
-        String bar_prodcode = tvProcode.getText().toString().trim();
-        String bar_fremain = etRemainqty.getText().toString().trim();
-        String bar_location = etLocation.getText().toString().trim();
         JSONObject paramJson = new JSONObject();
         try {
-            paramJson.put("bar_code",bar_code);
-            paramJson.put("bar_prodcode",bar_prodcode);
-            paramJson.put("bar_fremain",bar_fremain);
-            paramJson.put("bar_location",bar_location);
+            paramJson.put("bar_code",currentBarcode);
+            paramJson.put("bar_fremain",qty+"");
         } catch (JSONException e) {
             e.printStackTrace();
         }
@@ -123,56 +194,105 @@ public class SCTailingBackFragment extends BaseFragment implements View.OnClickL
         showLoadingView();
         VolleyUtil.getVolleyUtil().requestJsonObject(getActivity(), GloableParams.ADDRESS_TAILBACK_OK_APPLY, VolleyUtil.METHOD_POST,
                 requestType, paramJson);
-    }
 
+    }
 
-    //Volley失败
-    private void disposeVolleyFailed(Object msg){
-        String title = getString(R.string.notice_tailback_failed);
-        String content = (String) msg;
-        setNotice(title,content,errorColor);
+    private void confirmEvent() {
+         currentBarcode = et_bar_code.getText().toString().trim();
+        if (TextUtils.isEmpty(currentBarcode)) {
+            CommonUtil.toastNoRepeat(getActivity(), "请采集条码");
+        }else {
+            if (CommonUtil.isNetWorkConnected(getActivity())) {
+                barcodeEnterEvent();
+            } else {
+                CommonUtil.toastNoRepeat(getActivity(), getResources().getString(R.string.str_net_not_connect));
+            }
+        }
     }
 
-    //Volley获取详细信息
-    private void disposeDetailSuccess(Object msg){
-        tvTitle.setText("");
-        tvContent.setText("");
-        String result = (String) msg;
-        String bar_prodcode, bar_fremain,bar_location;
+    /**
+     * 解析条码
+     */
+    private void barcodeEnterEvent() {
+        String url = null;
         try {
-            JSONObject resultJson = new JSONObject(result);
-            JSONObject msgJson = resultJson.getJSONObject("message");
-            bar_prodcode = msgJson.getString("bar_prodcode");
-            bar_fremain = msgJson.getString("bar_forcastremain");
-            bar_location = msgJson.getString("bar_location");
-            etLocation.setText(bar_location);
-            etRemainqty.setText(bar_fremain);
-            tvProcode.setText(bar_prodcode);
-            editTextGetFocus(etRemainqty);
-        } catch (JSONException e) {
+            url = GloableParams.ADDRESS_OUT_PARSE_BARCODE_DEAl + "?barcode=" + URLEncoder.encode(currentBarcode, "utf-8")+"&pi_id=0";
+        } catch (UnsupportedEncodingException e) {
             e.printStackTrace();
         }
+        progressDialog.show();
+        PdaApplication.mRequestQueue.cancelAll(TAG + "parseBarcode");
+        mStringRequest = new StringRequest(Request.Method.GET, url,
+                new Response.Listener<String>() {
+                    @Override
+                    public void onResponse(String s) {
+                        progressDialog.dismiss();
+                        try {
+                            JSONObject resultJsonObject = new JSONObject(s);
+                            boolean isSuccess=resultJsonObject.getBoolean("success");
+                            if(isSuccess){
+                                JSONObject dataObject = resultJsonObject.getJSONObject("data");
+                                String barcode = JsonUtils.optStringNotNull(dataObject, "barcode");//条码号
+                                String qty = JsonUtils.optStringNotNull(dataObject, "QTY");
+                                String pn = JsonUtils.optStringNotNull(dataObject, "PN");
+                                String mpn = JsonUtils.optStringNotNull(dataObject, "MPN");
+                                String lot = JsonUtils.optStringNotNull(dataObject, "LOT");
+                                String id = JsonUtils.optStringNotNull(dataObject, "ID");
+                                tv_liao_num.setText(pn);//料号
+                                //edit_num.setText(qty);//剩余数量
+
+                            }
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                        }
+                    }
+                },
+                new Response.ErrorListener() {
+                    @Override
+                    public void onErrorResponse(VolleyError volleyError) {
+                        progressDialog.dismiss();
+                        tv_msg.setText(CommonUtil.showErrorToast(volleyError));
+
+                    }
+                }) {
+            @Override
+            public Map<String, String> getHeaders() throws AuthFailureError {
+                return VolleyUtil.getVolleyUtil().setCookies();
+            }
+        };
+        mStringRequest.setRetryPolicy(new DefaultRetryPolicy(10 * 1000, 0, 1f));
+        mStringRequest.setTag(TAG + "parseBarcode");
+        PdaApplication.mRequestQueue.add(mStringRequest);
+
     }
-    //Volley响应成功函数
-    private void disposeVolleySuccess(Object msg){
-        switch (requestType){
-            case VolleyUtil.FRAGMENT_SCMAKE_DETAIL_TAILBACK:
-                disposeDetailSuccess(msg);
-                break;
-            case VolleyUtil.FRAGMENT_SCMAKE_OK_TAILBACK:
-                disposeTailbackSuccess(msg);
-                break;
+    @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);
+                if (mFocusId == R.id.et_bar_code) {
+                    et_bar_code.setText(result);
+                    et_bar_code.setSelection(result.length());
+                }
+            }
+        }
+    }
+
+    @Override
+    protected void initDatas() {
+        ((TextView) (getActivity().findViewById(R.id.tv_actionbar_withback))).setText(R.string.title_tailback_smt);
     }
 
-    //还仓成功
-    private void disposeTailbackSuccess(Object msg){
-        String title = getString(R.string.notice_tailback_success);
-        String content = getString(R.string.content_tailback_success);
-        content = content.replaceAll("replace",bar_code);
-        setNotice(title,content,rightColor);
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+        ((FunctionActivity) getActivity()).setScanIvVisible(false);
     }
-    /*=============================公用方法===================================*/
+
     /**
      * 显示loadingView
      */
@@ -181,69 +301,9 @@ public class SCTailingBackFragment extends BaseFragment implements View.OnClickL
             progressDialog.show();
         }
     }
-    /**
-     * 获取输入框焦点
-     */
-    private void editTextGetFocus(EditText editText) {
-        editText.setFocusable(true);
-        editText.setFocusableInTouchMode(true);
-        editText.setEnabled(true);
-        editText.setClickable(true);
-        editText.requestFocus();
-    }
-
-    /**
-     * 键盘
-     */
-    InputMethodManager inputManager;
-    private void hideKeyboard(final EditText view) {
-        inputManager = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
-        //获取键盘管理对象
-        inputManager.hideSoftInputFromWindow(view.getWindowToken(), 0);
-    }
-    /**
-     * 设置提示信息*/
-    private void setNotice(String title, String content, int pid){
-        tvTitle.setText(title);
-        tvTitle.setTextColor(pid);
-        tvContent.setText(content);
-        etLocation.setText("");
-        etBarcode.setText("");
-        etRemainqty.setText("");
-        tvProcode.setText("");
-        editTextGetFocus(etBarcode);
-    }
-
-    @Override
-    public void onClick(View v) {
-        disposeOnclice();
-    }
-
-    @Override
-    public void onVolleyFinish(int isSuccess, Object result) {
-        Log.e("Error!!!","error1");
-        switch (isSuccess){
-            case VolleyUtil.SUCCESS_SUCCESS:
-                disposeVolleySuccess(result);
-                break;
-            case VolleyUtil.FAILED_FAILED:
-                Log.e("Error!!!","error2");
-                disposeVolleyFailed(result);
-                break;
-        }
-        progressDialog.dismiss();
-    }
 
     @Override
     public boolean onKeyDown(int keyCode, KeyEvent event) {
-        if(keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
-            if (progressDialog!=null && progressDialog.isShowing()) {
-                //网络请求操作不可撤回
-//                loadingView.dismiss();
-//                VolleyUtil.distoryVolley();
-                return true;
-            }
-        }
         return false;
     }
 

+ 2 - 2
app/src/main/java/com/uas/pda_smart_com/fragment/SNGuoZhanFragment.java

@@ -270,10 +270,10 @@ public class SNGuoZhanFragment extends BaseFragment  {
             @Override
             public void onErrorResponse(VolleyError error) {
                 progressDialog.dismiss();
-                CommonUtil.showErrorToast(error);
-                reset();
+                String errorMsg= CommonUtil.showErrorToast(error);
                 et_sn.setText("");
                 et_sn.requestFocus();
+                tv_msg.setText(errorMsg);
             }
         }) {
             @Override

+ 4 - 3
app/src/main/java/com/uas/pda_smart_com/global/GloableParams.java

@@ -416,7 +416,7 @@ public class GloableParams {
     //尾料还仓:获取详细信息
     private static final String ADDRESSTAIL_TAILBACK_DETAIL_APPLY = "/api/pda/getForcastRemain.action";
     //尾料还仓:确认还仓
-    private static final String ADDRESSTAIL_TAILBACK_OK_APPLY = "/api/pda/tailingBack.action";
+    private static final String ADDRESSTAIL_TAILBACK_OK_APPLY = "/api/pda/tailingBack/tailingBack.action";
 
     //仓库管理:物料库存查询
     private static final String ADDRESSTAIL_WH_PRODUCT = "/api/pda/check/makeMaterialCheck.action";
@@ -689,6 +689,7 @@ public class GloableParams {
     public static int[] worlhouseGridImgs = {R.drawable.ic_job_stock, R.drawable.ic_early_warning, R.drawable.ic_realtime_monitor};
     //    public static int[] worlhouseGridImgs = {R.drawable.workhousemenu_smt_add};
     //INDEX:仓库管理Index
+    public static final String GRIDNAME_TAILING_BACK = "尾料还仓";
     public static final String GRIDNAME_GOOD_SEARCH = "货物核查";
     public static final String GRIDNAME_BATCH_OPRATION = "拆批合批";
     public static final String GRIDNAME_STORAGE_TRANSFER = "储位转移";
@@ -696,9 +697,9 @@ public class GloableParams {
     public static final String GRIDNAME_WORK_INVENTORY = "盘点作业";
     public static final String GRIDNAME_MODIFY_QUANTITY = "条码数量修改";
 
-    public static final String[] storageGridNames = {GRIDNAME_GOOD_SEARCH, GRIDNAME_BATCH_OPRATION,
+    public static final String[] storageGridNames = {GRIDNAME_TAILING_BACK,GRIDNAME_GOOD_SEARCH, GRIDNAME_BATCH_OPRATION,
             GRIDNAME_STORAGE_TRANSFER, GRIDNAME_MODIFY_QUANTITY, GRIDNAME_WORK_INVENTORY};
-    public static final int[] storageGridImgs = {R.drawable.storage_good_search,
+    public static final int[] storageGridImgs = {R.drawable.ic_storage_finish_in,R.drawable.storage_good_search,
             R.drawable.storage_bach_operation, R.drawable.storage_transfer,
             R.drawable.storage_work_inventory,
             R.drawable.ic_modify_quantity};

+ 67 - 82
app/src/main/res/layout/fragment_scmake_tailback.xml

@@ -1,100 +1,85 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--SMT上料子模块采集区域:上料-->
+<?xml version="1.0" encoding="utf-8"?><!--SMT上料子模块采集区域:上料-->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="wrap_content">
-    <RelativeLayout
-        android:id="@+id/rl_innernotice_smtchildin"
+    <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="match_parent">
-        <!--上部:信息采集框-->
-        <TableLayout
-            android:id="@+id/ll_innernotice_smtchildin"
-            style="@style/CardWhiteStyle_wrapheight"
-            android:layout_centerInParent="false"
-            android:layout_marginBottom="0dp"
-            android:layout_marginTop="0dp"
-            android:padding="@dimen/space_left_8"
-            android:stretchColumns="1">
-            <!--条码-->
-            <TableRow android:gravity="center_horizontal">
+        android:layout_height="match_parent"
+        android:orientation="vertical"
+        android:padding="16dp">
 
-                <TextView
-                    style="@style/Table_li_left"
-                    android:text="@string/text_barcode_tailback" />
-
-                <com.uas.pda_smart_com.view.ClearableEditText
-                    android:id="@+id/et_barcode_tailback_scmake"
-                    style="@style/Table_li_right"
-                    android:background="@drawable/bg_edittext_line"
-                    android:hint="@string/hint_barcode_tailback" />
-            </TableRow>
-
-            <!--料号-->
-            <TableRow android:gravity="center_horizontal">
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            >
 
-                <TextView
-                    style="@style/Table_li_left"
-                    android:text="@string/text_procode_tailback" />
+            <com.uas.pda_smart_com.view.ClearableEditText
+                android:id="@+id/et_bar_code"
+                style="@style/EditTextStyle"
+                android:focusable="true"
+                android:focusableInTouchMode="true"
+                android:hint="@string/please_collect_barcode"
+                android:textColor="@color/black" />
+        </LinearLayout>
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="30dp"
+            android:layout_marginTop="5dp"
+            android:gravity="center_vertical">
 
-                <TextView
-                    android:id="@+id/tv_procode_tailback_scmake"
-                    style="@style/Table_li_right" />
-            </TableRow>
-            <!--剩余数量-->
-            <TableRow android:gravity="center_horizontal">
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginRight="4dp"
+                android:text="料号:"
+                android:textColor="@color/body_text_1"/>
+            <TextView
+                android:id="@+id/tv_liao_num"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                tools:text="metship123dsafsafafaffdsafaf"
+                android:textColor="@color/body_text_1"/>
 
-                <TextView
-                    style="@style/Table_li_left"
-                    android:text="@string/text_remainqty_tailback" />
 
-                <com.uas.pda_smart_com.view.ClearableEditText
-                    android:id="@+id/et_remainqty_tailback_scmake"
-                    style="@style/Table_li_right"
-                    android:background="@drawable/bg_edittext_line"
-                    android:hint="@string/hint_remainqty_tailback" />
-            </TableRow>
-            <!--归还储位-->
-            <TableRow android:gravity="center_horizontal">
+        </LinearLayout>
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="5dp">
 
-                <TextView
-                    style="@style/Table_li_left"
-                    android:text="@string/text_location_tailback" />
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginRight="10dp"
+                android:text="预计剩余:"
+                android:textColor="@color/body_text_1"/>
 
-                <com.uas.pda_smart_com.view.ClearableEditText
-                    android:id="@+id/et_location_tailback_scmake"
-                    style="@style/Table_li_right"
-                    android:background="@drawable/bg_edittext_line"
-                    android:hint="@string/hint_location_tailback" />
-            </TableRow>
-        </TableLayout>
+            <com.uas.pda_smart_com.view.ClearableEditText
+                android:id="@+id/edit_num"
+                style="@style/EditTextStyle"
+                android:hint="请输入预计剩余数"
+                android:inputType="number"
+                android:textColor="@color/black" />
 
-        <!--确认按钮-->
+        </LinearLayout>
         <Button
-            android:id="@+id/btn_collect_tailback"
+            android:id="@+id/btn_confirm"
             style="@style/ButtonStyle"
-            android:layout_below="@id/ll_innernotice_smtchildin"
-            android:text="@string/btn_ok_smtchild" />
-
-        <!--下部:提示TEXTView+显示TextView-->
-        <LinearLayout
-            style="@style/CardWhiteSytle_fillheight"
+            android:enabled="false"
+            android:text="@string/confirm"
+            android:layout_marginTop="10dp"
+            android:visibility="visible" />
+        <TextView
+            android:id="@+id/tv_msg"
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:layout_below="@id/btn_collect_tailback">
-
-            <TextView
-                style="@style/CardTitleStyle"
-                android:layout_marginBottom="5dp"
-                android:layout_marginTop="5dp"
-                android:text="@string/text_search_collect_fragment_scmake" />
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@dimen/spacing_big"
+            android:background="@drawable/shape_msg_block"
+            android:padding="10dp"
+            android:visibility="gone"
+            tools:text="物料:PD_PRODCODE, 名称规格:PR_DETAIL || PR_SPEC未备料数: PD_RESTQTY,最小包装数:PR_ZXBZS,仓位:BAR_LOCATION,有PD_BATCHCODE 则显示批号:PD_BATCHCODE" />
 
-            <ScrollView
-                style="@style/CardTextblockStyle"
-                android:layout_height="match_parent">
 
-                <include layout="@layout/innermsg_collect_scmake" />
-            </ScrollView>
-        </LinearLayout>
-    </RelativeLayout>
+    </LinearLayout>
 </ScrollView>

+ 3 - 3
app/src/main/res/layout/item_list_stock_already_list_new.xml

@@ -64,14 +64,14 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="物料名称:" />
+                android:text="名称:" />
 
             <TextView
                 android:id="@+id/stock_already_list_detail"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_weight="0.8"
-                tools:text="20" />
+                tools:text="Chip Cap" />
 
 
 
@@ -86,7 +86,7 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="物料规格:" />
+                android:text="规格:" />
 
             <TextView
                 android:id="@+id/tv_pr_spec"

+ 7 - 7
app/src/main/res/layout/item_stock_task_list.xml

@@ -24,7 +24,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:textStyle="bold"
-                android:text="号:" />
+                android:text="料号:" />
             <TextView
                 android:id="@+id/tv_pr_code"
                 android:layout_width="wrap_content"
@@ -43,7 +43,7 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="物料名称:" />
+                android:text="名称:" />
 
             <TextView
                 android:id="@+id/tv_pr_name"
@@ -62,7 +62,7 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="物料规格:" />
+                android:text="规格:" />
 
             <TextView
                 android:id="@+id/tv_pr_spec"
@@ -86,7 +86,7 @@
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:text="出库数:" />
+                    android:text="出库数:" />
 
                 <TextView
                     android:id="@+id/tv_pr_out_num"
@@ -106,7 +106,7 @@
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:text="未备:" />
+                    android:text="未备数:" />
 
                 <TextView
                     android:id="@+id/tv_pr_no_remain"
@@ -133,7 +133,7 @@
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:text="已备:" />
+                    android:text="已备数:" />
 
                 <TextView
                     android:id="@+id/tv_pr_has_remain"
@@ -153,7 +153,7 @@
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:text="最小包装数:" />
+                    android:text="最小包:" />
 
                 <TextView
                     android:id="@+id/tv_pr_min_num"