Selaa lähdekoodia

根据文档修改,增加批量出库功能, 修改电亮空库位料架清空逻辑,根据文档增加批量出库功能,修改查看BOM表格,单位用量为小数类型, 规格左对齐, 修改默认登录IP, 工序采集增加发起首件功能,PDF页增加异常警报功能

songw 1 vuosi sitten
vanhempi
commit
2f94a5882a

+ 2 - 3
app/src/main/java/com/uas/uas_mes_stw/bean/InductionBean.java

@@ -10,6 +10,8 @@ class InductionBean {
     private String BAR_CODE;
     private String BAR_REMAIN;
 
+    private boolean isCheck = false;
+
     public boolean isCheck() {
         return isCheck;
     }
@@ -18,9 +20,6 @@ class InductionBean {
         isCheck = check;
     }
 
-    private boolean isCheck;
-
-
     public String getBAR_ID() {
         return BAR_ID;
     }

+ 46 - 33
app/src/main/java/com/uas/uas_mes_stw/fragment/BatchOutboundFra.java

@@ -60,7 +60,6 @@ class BatchOutboundFra extends BaseFragment {
     private TextView tv_pi_inoutno;
     private TextView tv_query;
     private TextView tv_result;
-    private TextView tv_search_result;
     private TextView tv_liaohao_value, tv_daicaiji_value, tv_name_valeu, tv_spc_value,
             tv_barcoed_value, tv_barcoed_number_value, tv_yigugxuangeshu, tv_yigouxuanshuliang;
     private ClearableEditText cet_barcode;
@@ -82,7 +81,11 @@ class BatchOutboundFra extends BaseFragment {
     private SelectAdapter myAdapter;
     private ArrayList<InductionBean> mFeededList;
     private ArrayList<InductionBean> mRecordList;
-    private String barIds = "";
+    private String barIds = ""; //条码号
+    private String pi_id;       //出库单
+    private String pd_whcode;
+    private String pi_class;
+    private String whichpage;
 
     @Override
     protected int getLayout() {
@@ -99,7 +102,6 @@ class BatchOutboundFra extends BaseFragment {
         tv_query = root.findViewById(R.id.tv_query);
 
         tv_result = root.findViewById(R.id.tv_result);
-        tv_search_result = root.findViewById(R.id.tv_search_result);
 
         tv_liaohao_value = root.findViewById(R.id.tv_liaohao_value);
         tv_daicaiji_value = root.findViewById(R.id.tv_daicaiji_value);
@@ -139,11 +141,13 @@ class BatchOutboundFra extends BaseFragment {
         bt_queren_chuku.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                if (!TextUtils.isEmpty(tv_daicaiji_value.getText().toString())) {
-                    CommonUtil.toastNoRepeat(getActivity(),"待采集数不能为空");
+                if (TextUtils.isEmpty(tv_daicaiji_value.getText().toString().trim())) {
+                    CommonUtil.toastNoRepeat(getActivity(),"待采集数量不能为空");
+                    return;
                 }
-                if (Integer.parseInt(tv_daicaiji_value.getText().toString()) != Integer.parseInt(tv_yigouxuanshuliang.getText().toString().trim())) {
-                    CommonUtil.toastNoRepeat(getActivity(),"条码数量不等于待采集数");
+                if (Double.parseDouble(tv_daicaiji_value.getText().toString()) != Double.parseDouble(tv_yigouxuanshuliang.getText().toString().trim())) {
+                    CommonUtil.toastNoRepeat(getActivity(),"已勾选数量不等于待采集数量");
+                    return;
                 }
                 initQuerenChuku();
             }
@@ -154,22 +158,31 @@ class BatchOutboundFra extends BaseFragment {
             public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                 try {
                     if (buttonView.isPressed()) {   //只有当用户主动点击时才处理选中状态变化
+                        double number = 0.0;
+                        mRecordList.clear();
                         if (isChecked) {
                             if (mFeededList.size() > 0) {
                                 barIds = "";
                                 for (int i = 0; i < mFeededList.size(); i++) {
                                     mFeededList.get(i).setCheck(true);
                                     barIds += mFeededList.get(i).getBAR_ID() + ",";
+                                    number += Double.parseDouble(mFeededList.get(i).getBAR_REMAIN());
+                                    mRecordList.add(mFeededList.get(i));
                                 }
                             }
+                            tv_yigugxuangeshu.setText(String.valueOf(mFeededList.size()));
                         } else {
                             if (mFeededList.size() > 0) {
                                 barIds = "";
+                                number = 0.0;
                                 for (int i = 0; i < mFeededList.size(); i++) {
                                     mFeededList.get(i).setCheck(false);
                                 }
                             }
+                            tv_yigugxuangeshu.setText("0");
                         }
+
+                        tv_yigouxuanshuliang.setText(String.valueOf(number));
                         setAdapter(mFeededList);
                         myAdapter.notifyDataSetChanged();
                     }
@@ -188,7 +201,7 @@ class BatchOutboundFra extends BaseFragment {
         VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
                 .url(GloableParams.ADDRESS_COFIRM_BATCH_OUT)
                 .method(Request.Method.POST)
-                .addParam("piid", pi_inoutno)
+                .addParam("piid", pi_id)
                 .addParam("prodcode", pd_prodcode)
                 .addParam("barids", barIds.length() > 1 ? barIds.substring(0, barIds.length() - 1) : barIds)
                 .build(), new HttpCallback() {
@@ -199,7 +212,6 @@ class BatchOutboundFra extends BaseFragment {
                 tv_result.setTextColor(getResources().getColor(R.color.blue));
                 ll_query_data.setVisibility(View.GONE);
                 rl_quanxuan.setVisibility(View.GONE);
-                tv_search_result.setVisibility(View.GONE);
                 cet_barcode.setText("");
                 try {
                     JSONObject jsonObject = new JSONObject(o.toString());
@@ -221,7 +233,6 @@ class BatchOutboundFra extends BaseFragment {
                 CommonUtil.toastNoRepeat(mActivity, failStr);
                 ll_query_data.setVisibility(View.GONE);
                 rl_quanxuan.setVisibility(View.GONE);
-                tv_search_result.setVisibility(View.GONE);
                 cet_barcode.setText("");
                 tv_result.setVisibility(View.VISIBLE);
                 tv_result.setTextColor(getResources().getColor(R.color.red));
@@ -237,7 +248,7 @@ class BatchOutboundFra extends BaseFragment {
         VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
                 .url(GloableParams.ADDRESS_GET_OUT_CPPROD)
                 .method(Request.Method.GET)
-                .addParam("id", pi_inoutno)
+                .addParam("id", pi_id)
                 .build(), new HttpCallback() {
             @Override
             public void onSuccess(int flag, Object o) throws Exception {
@@ -248,7 +259,6 @@ class BatchOutboundFra extends BaseFragment {
                     if (success) {
                         ll_query_data.setVisibility(View.GONE);
                         rl_quanxuan.setVisibility(View.GONE);
-                        tv_search_result.setVisibility(View.GONE);
                         JSONArray dataArray = jsonObject.getJSONArray("data");
                         if (dataArray == null) {
                             CommonUtil.toastNoRepeat(mActivity, "未搜索到匹配数据");
@@ -265,11 +275,9 @@ class BatchOutboundFra extends BaseFragment {
             public void onFail(int flag, String failStr) throws Exception {
                 progressDialog.dismiss();
                 CommonUtil.toastNoRepeat(mActivity, failStr);
-
                 ll_query_data.setVisibility(View.GONE);
                 rl_quanxuan.setVisibility(View.GONE);
-                tv_search_result.setVisibility(View.GONE);
-
+                tv_result.setVisibility(View.VISIBLE);
                 tv_result.setTextColor(getResources().getColor(R.color.red));
                 tv_result.setText(failStr);
             }
@@ -429,7 +437,7 @@ class BatchOutboundFra extends BaseFragment {
         VolleyRequest.getInstance().stringRequest(new HttpParams.Builder()
                 .url(GloableParams.ADDRESS_GET_BARBY_CPPROD)
                 .method(Request.Method.GET)
-                .addParam("id", pi_inoutno)
+                .addParam("id", pi_id)
                 .addParam("prodcode", pd_prodcode)
                 .build(), new HttpCallback() {
             @Override
@@ -441,7 +449,7 @@ class BatchOutboundFra extends BaseFragment {
                     if (success) {
                         ll_query_data.setVisibility(View.VISIBLE);
                         rl_quanxuan.setVisibility(View.VISIBLE);
-                        tv_search_result.setVisibility(View.VISIBLE);
+                        tv_result.setVisibility(View.GONE);
 
                         JSONObject data = jsonObject.getJSONObject("data");
 
@@ -460,14 +468,13 @@ class BatchOutboundFra extends BaseFragment {
                         tv_barcoed_value.setText("" + V_COUNT);
                         tv_barcoed_number_value.setText("" + V_REMAIN);
 
-                        tv_yigugxuangeshu.setText("" + 0);
-                        tv_yigouxuanshuliang.setText("" + 0);
+                        tv_yigugxuangeshu.setText("0");
+                        tv_yigouxuanshuliang.setText("0");
 
                         JSONArray dataArray = data.getJSONArray("barlist");
                         if (dataArray != null && dataArray.length() > 0) {
+                            clearListData();
                             rl_quanxuan.setVisibility(View.VISIBLE);
-                            mFeededList.clear();
-                            barIds = "";
                             for (int i = 0; i < dataArray.length(); i++) {
                                 JSONObject jsonObject1 = dataArray.getJSONObject(i);
                                 InductionBean inductionBean = new InductionBean();
@@ -492,11 +499,9 @@ class BatchOutboundFra extends BaseFragment {
             public void onFail(int flag, String failStr) throws Exception {
                 progressDialog.dismiss();
                 CommonUtil.toastNoRepeat(mActivity, failStr);
-
                 ll_query_data.setVisibility(View.GONE);
                 rl_quanxuan.setVisibility(View.GONE);
-                tv_search_result.setVisibility(View.GONE);
-
+                tv_result.setVisibility(View.VISIBLE);
                 tv_result.setTextColor(getResources().getColor(R.color.red));
                 tv_result.setText(failStr);
             }
@@ -516,7 +521,12 @@ class BatchOutboundFra extends BaseFragment {
     protected void initDatas() {
         Bundle bundle = getArguments();
         if (bundle != null) {
+            pi_id = bundle.getString("pi_id");
             pi_inoutno = bundle.getString("pi_inoutno");
+            pd_whcode = bundle.getString("pd_whcode");
+            //出库单
+            pi_class = bundle.getString("pi_class");
+            whichpage = bundle.getString("whichpage");
         }
         tv_pi_inoutno.setText(pi_inoutno);
 
@@ -647,12 +657,12 @@ class BatchOutboundFra extends BaseFragment {
         @Override
         public void onBindViewHolder(final RecyclerView.ViewHolder holder, @SuppressLint("RecyclerView") int i) {
             //设置条目状态
-            ((SmartShelvestFragment.SelectAdapter.ListItemViewHolder) holder).tv_date1.setText("条码:" + mList.get(i).getBAR_CODE());
-            ((SmartShelvestFragment.SelectAdapter.ListItemViewHolder) holder).tv_date2.setText("数量:" + mList.get(i).getBAR_REMAIN());
+            ((SelectAdapter.ListItemViewHolder) holder).tv_date1.setText("条码:" + mList.get(i).getBAR_CODE());
+            ((SelectAdapter.ListItemViewHolder) holder).tv_date2.setText("数量:" + mList.get(i).getBAR_REMAIN());
 
-            ((SmartShelvestFragment.SelectAdapter.ListItemViewHolder) holder).cb_danxuan.setChecked(mList.get(i).isCheck());
+            ((SelectAdapter.ListItemViewHolder) holder).cb_danxuan.setChecked(mList.get(i).isCheck());
 
-            ((SmartShelvestFragment.SelectAdapter.ListItemViewHolder) holder).cb_danxuan.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+            ((SelectAdapter.ListItemViewHolder) holder).cb_danxuan.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                 @Override
                 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                     try {
@@ -688,13 +698,12 @@ class BatchOutboundFra extends BaseFragment {
                             }
 
                             //添加记录统计
-                            long bar_remain = 0;
+                            double bar_remain = 0.0;
                             for (int i1 = 0; i1 < mRecordList.size(); i1++) {
-                                bar_remain = Long.parseLong(mList.get(i1).getBAR_REMAIN());
-                                bar_remain += bar_remain;
+                                bar_remain += Double.parseDouble(mRecordList.get(i1).getBAR_REMAIN());
                             }
-                            tv_yigugxuangeshu.setText("" + mRecordList.size());
-                            tv_yigouxuanshuliang.setText("" + bar_remain);
+                            tv_yigugxuangeshu.setText(String.valueOf(mRecordList.size()));
+                            tv_yigouxuanshuliang.setText(String.valueOf(bar_remain));
                         }
                     } catch (Exception e) {
                         e.printStackTrace();
@@ -734,8 +743,12 @@ class BatchOutboundFra extends BaseFragment {
 
     private void clearListData() {
         rl_quanxuan.setVisibility(View.GONE);
+        cb_quanxuan.setChecked(false);
         mFeededList.clear();
+        mRecordList.clear();
         barIds = "";
+        tv_yigugxuangeshu.setText("0");
+        tv_yigouxuanshuliang.setText("0");
         myAdapter.notifyDataSetChanged();
     }
 

+ 1 - 0
app/src/main/java/com/uas/uas_mes_stw/fragment/IOCOutMakeMaterialOper.java

@@ -3084,6 +3084,7 @@ public class IOCOutMakeMaterialOper extends BaseFragment implements View.OnClick
         bundle.putString("pi_id", pi_id);
         bundle.putString("pi_inoutno", pi_inoutno);
         bundle.putString("pd_whcode", pd_whcode);
+        bundle.putString("pi_class", pi_class);    //出库单
         bundle.putString("whichpage", "materialout");
         bundle.putBoolean("isMultiple", isMultiple);
         if (mCollectModel == 1) {

+ 3 - 0
app/src/main/java/com/uas/uas_mes_stw/fragment/SmartShelvestFragment.java

@@ -285,6 +285,7 @@ public class SmartShelvestFragment extends BaseFragment {
                                 list.add(unshelvedMaterialsBean);
                             }
                             closeMenuPopupWindow();
+
                             Fragment mFragment = new UnshelvedMaterialsFra();
                             Bundle bundle = new Bundle();
                             bundle.putString(Constants.FLAG.FLAG_INNO, INNO);
@@ -384,7 +385,9 @@ public class SmartShelvestFragment extends BaseFragment {
                     }
                     JSONArray othersArr = dataObject.getJSONArray("OTHERS");
                     if (othersArr != null && othersArr.size() > 0) {
+
                         rl_quanxuan.setVisibility(View.VISIBLE);
+                        cb_quanxuan.setChecked(false);
                         mFeededList.clear();
                         barIds = "";
                         for (int i = 0; i < othersArr.size(); i++) {

+ 31 - 23
app/src/main/res/layout/fra_batch_outbound.xml

@@ -102,16 +102,6 @@
                 tools:text="boxResultboxResultboxResultboxResult"
                 tools:visibility="visible"/>
 
-            <TextView
-                android:visibility="gone"
-                android:id="@+id/tv_search_result"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginTop="10dp"
-                android:background="@drawable/shape_msg_block"
-                tools:text="物料:PD_PRODCODE, 名称规格:"
-                tools:visibility="visible"
-                />
 
             <android.support.v4.widget.NestedScrollView
                 android:layout_width="match_parent"
@@ -155,17 +145,19 @@
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.5"
+                            android:layout_weight="3.0"
                             android:gravity="start"
                             android:text="待采集数量:"
+                            android:textStyle="bold"
                             android:textSize="14sp"/>
 
                         <TextView
                             android:id="@+id/tv_daicaiji_value"
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.5"
+                            android:layout_weight="2.0"
                             android:gravity="start"
+                            android:textStyle="bold"
                             android:textSize="14sp"/>
                     </LinearLayout>
 
@@ -179,9 +171,11 @@
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="1.5"
+                            android:layout_weight="0.6"
                             android:gravity="start"
                             android:text="名称:"
+                            android:maxLines="1"
+                            android:ellipsize="end"
                             android:textSize="14sp"/>
 
                         <TextView
@@ -193,10 +187,19 @@
                             android:singleLine="true"
                             android:textSize="14sp"/>
 
+                    </LinearLayout>
+
+                    <LinearLayout
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:layout_marginTop="2dp"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal">
+
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="1.5"
+                            android:layout_weight="0.6"
                             android:gravity="start"
                             android:text="规格:"
                             android:textSize="14sp"/>
@@ -207,7 +210,10 @@
                             android:layout_height="wrap_content"
                             android:layout_weight="3.5"
                             android:gravity="start"
+                            android:maxLines="1"
+                            android:ellipsize="end"
                             android:textSize="14sp"/>
+
                     </LinearLayout>
 
                     <LinearLayout
@@ -220,7 +226,7 @@
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.0"
+                            android:layout_weight="2.5"
                             android:gravity="start"
                             android:text="条码个数:"
                             android:textSize="14sp"/>
@@ -229,7 +235,7 @@
                             android:id="@+id/tv_barcoed_value"
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="3.0"
+                            android:layout_weight="2.5"
                             android:gravity="start"
                             android:singleLine="true"
                             android:textSize="14sp"/>
@@ -237,7 +243,7 @@
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.0"
+                            android:layout_weight="2.5"
                             android:gravity="start"
                             android:text="条码数量:"
                             android:textSize="14sp"/>
@@ -246,7 +252,7 @@
                             android:id="@+id/tv_barcoed_number_value"
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="3.0"
+                            android:layout_weight="2.5"
                             android:gravity="start"
                             android:textSize="14sp"/>
                     </LinearLayout>
@@ -261,7 +267,7 @@
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.5"
+                            android:layout_weight="3"
                             android:gravity="start"
                             android:text="已勾选个数:"
                             android:textSize="14sp"/>
@@ -270,7 +276,7 @@
                             android:id="@+id/tv_yigugxuangeshu"
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.5"
+                            android:layout_weight="2.0"
                             android:gravity="start"
                             android:singleLine="true"
                             android:textSize="14sp"/>
@@ -278,17 +284,19 @@
                         <TextView
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.5"
+                            android:layout_weight="3.0"
                             android:gravity="start"
                             android:text="已勾选数量:"
+                            android:textStyle="bold"
                             android:textSize="14sp"/>
 
                         <TextView
                             android:id="@+id/tv_yigouxuanshuliang"
                             android:layout_width="0dp"
                             android:layout_height="wrap_content"
-                            android:layout_weight="2.5"
+                            android:layout_weight="2.0"
                             android:gravity="start"
+                            android:textStyle="bold"
                             android:textSize="14sp"/>
                     </LinearLayout>
 
@@ -310,7 +318,6 @@
 
                         <android.support.v7.widget.RecyclerView
                             android:layout_below="@+id/cb_quanxuan"
-                            android:layout_above="@+id/bt_queren_chuku"
                             android:layout_marginTop="2dp"
                             android:id="@+id/rv_data"
                             android:layout_width="match_parent"
@@ -318,6 +325,7 @@
                             />
 
                         <Button
+                            android:layout_below="@+id/rv_data"
                             android:layout_alignParentBottom="true"
                             android:id="@+id/bt_queren_chuku"
                             style="@style/ButtonStyle"

+ 1 - 0
app/src/main/res/layout/pop_storage_recharge_menu.xml

@@ -28,6 +28,7 @@
         android:textSize="@dimen/app_text_size_body_2" />
 
     <Button
+        android:visibility="gone"
         android:id="@+id/bt_unshelved_materials"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"

+ 2 - 2
build.gradle

@@ -54,8 +54,8 @@ ext {
             targetSdkVersion : 28,
             compileSdkVersion: 28,
             buildToolsVersion: "28.0.3",
-            versionCode      : 32,
-            versionName      : "v1.2.4"
+            versionCode      : 34,
+            versionName      : "v1.2.6"
     ]
 
     depsVersion = [