瀏覽代碼

修复多个闹钟闪退问题

ccc 4 月之前
父節點
當前提交
92d4cfe0e1

+ 1 - 1
BaseLibrary/src/main/java/com/hboxs/base_library/constant/Global.java

@@ -20,7 +20,7 @@ public abstract class Global {
      * 1:
      * 2:国外线上
      */
-    public static final int isVersions = 1;
+    public static final int isVersions = 2;
 
     /**
      * 用来初始化这个Global的类,不然会很卡。

+ 4 - 0
BaseLibrary/src/main/java/com/hboxs/base_library/util/DrawableSelectorUtils.java

@@ -358,6 +358,10 @@ public class DrawableSelectorUtils {
         } else if ("0000".equals(logo)) {//删除logo
             width = R.dimen.dp_60;
             height = R.dimen.dp_24;
+        }else if ("7764".equals(logo)){
+            logoF = R.drawable.logo_jamma;//美国代理
+            width = R.dimen.dp_65;
+            height = R.dimen.dp_30;
         }
         ViewGroup.LayoutParams layoutParams = view.getLayoutParams();
         layoutParams.width = UiUtil.getDimensionPixelRes(width);

二進制
BaseLibrary/src/main/res/drawable/logo_jamma.png


+ 11 - 12
app/src/main/java/com/bgy/autosale/payutil/MQService.java

@@ -251,19 +251,18 @@ public class MQService extends Service implements SendCallback,Callback<Result>
             case "dosugar":
                 //远程制作棉花糖
 //                CommunicationHelper.getInstance().sendControl(IceCreamDeviceConstants.ORDER_OPERATE_CLEAN, this);
-//                EventBus.getDefault().post(new ApiMessageEvent("dosugar", baseBean.getKind_data()));
-                LinkedList<MakeIceCreamBean> iceCreamOrders = new LinkedList<>();
-                MakeIceCreamBean detail = new MakeIceCreamBean();
                 String strData = baseBean.getKind_data();
+//                LinkedList<MakeIceCreamBean> iceCreamOrders = new LinkedList<>();
+//                MakeIceCreamBean detail = new MakeIceCreamBean();
                 String[] stringArray = strData.replaceAll("[\\[\\] ]", "").split(",");
-                detail.makeCodes= Arrays.stream(stringArray)
-                        .mapToInt(Integer::parseInt)
-                        .toArray();
-                iceCreamOrders.add(detail);
-                Log.d(TAG, "getMessage: dosugar"+iceCreamOrders);
-                CommunicationHelper.getInstance().setMakingIceCreams(iceCreamOrders);
-                CommunicationHelper.getInstance().setDishStatusListener(this, isManualMake ? IceCreamDeviceConstants.ORDER_MAKE_ORDER : -1);
-
+                EventBus.getDefault().post(new ApiMessageEvent("makeicecream", stringArray));
+//                detail.makeCodes= Arrays.stream(stringArray)
+//                        .mapToInt(Integer::parseInt)
+//                        .toArray();
+//                iceCreamOrders.add(detail);
+//                Log.d(TAG, "getMessage: dosugar"+iceCreamOrders);
+//                CommunicationHelper.getInstance().setMakingIceCreams(iceCreamOrders);
+//                CommunicationHelper.getInstance().setDishStatusListener(this, isManualMake ? IceCreamDeviceConstants.ORDER_MAKE_ORDER : -1);
                 break;
             case "alarmClock":
                 //远程星期调节闹钟
@@ -1286,7 +1285,7 @@ public class MQService extends Service implements SendCallback,Callback<Result>
                 || "5769".equals(s) || "6894".equals(s) || "8123".equals(s) || "5217".equals(s) || "6431".equals(s)
                 || "7777".equals(s) || "8080".equals(s) || "6702".equals(s) || "7772".equals(s) || "7761".equals(s)
                 || "7773".equals(s) || "7774".equals(s) || "7786".equals(s) || "7775".equals(s)|| "7754".equals(s)
-                ||"0000".equals(s)) {
+                ||"0000".equals(s)|| "7764".equals(s)) {
             Hawk.put("logo", s);
             Hawk.get("logo", "7777");
         }

+ 0 - 1
app/src/main/java/com/bgy/autosale/payutil/MdbCreditCardDialog.java

@@ -21,7 +21,6 @@ import com.bgy.autosale.R;
 import com.bgy.autosale.entitys.MakeIceCreamBean;
 import com.bgy.autosale.helpers.CommunicationHelper;
 import com.bgy.autosale.helpers.OrderHelper;
-import com.bgy.autosale.ui.consumer.PaySuccessFragment;
 import com.bgy.autosale.ui.widget.InfoView;
 import com.example.offpay.event.WmdbIctMessageEvent;
 import com.example.offpay.nayax.CreditCardMessage;

+ 67 - 6
app/src/main/java/com/bgy/autosale/ui/MainActivity.java

@@ -1,6 +1,9 @@
 package com.bgy.autosale.ui;
 
+import static com.hboxs.base_library.util.ToastUtil.showToast;
+
 import android.Manifest;
+import android.app.Activity;
 import android.content.Context;
 import android.content.Intent;
 import android.content.pm.PackageManager;
@@ -9,6 +12,9 @@ import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
 import android.support.v4.app.ActivityCompat;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentTransaction;
 import android.text.TextUtils;
 import android.util.Log;
 import android.view.View;
@@ -18,8 +24,11 @@ import android.widget.TextView;
 
 import com.bgy.autosale.App;
 import com.bgy.autosale.Constant;
+import com.bgy.autosale.IceCreamDeviceConstants;
 import com.bgy.autosale.R;
 import com.bgy.autosale.entitys.ContactBean;
+import com.bgy.autosale.entitys.MakeIceCreamBean;
+import com.bgy.autosale.entitys.Result;
 import com.bgy.autosale.helpers.CleanScheduleHelper;
 import com.bgy.autosale.helpers.CommunicationHelper;
 import com.bgy.autosale.helpers.ErrorViewHelper;
@@ -27,11 +36,14 @@ import com.bgy.autosale.helpers.NetTimeClock;
 import com.bgy.autosale.helpers.ResourceDownloadHelper;
 import com.bgy.autosale.helpers.SQLiteHelper;
 import com.bgy.autosale.helpers.UISoundHelper;
+import com.bgy.autosale.interfaces.Callback;
+import com.bgy.autosale.interfaces.SendCallback;
 import com.bgy.autosale.payutil.GeTuiUtil;
 import com.bgy.autosale.payutil.MyIntentService;
 import com.bgy.autosale.ui.base.BaseFragment;
 import com.bgy.autosale.ui.base.BaseScanGunActivity;
 import com.bgy.autosale.ui.consumer.MainFragment;
+import com.bgy.autosale.ui.consumer.PaySuccessFragment;
 import com.bgy.autosale.ui.consumer.ServiceFragment;
 import com.bgy.autosale.ui.operator.AuthNumberActivity;
 import com.bgy.autosale.ui.operator.LockActivity;
@@ -59,12 +71,16 @@ import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
 
 import java.io.File;
+import java.lang.reflect.Field;
+import java.util.Arrays;
+import java.util.LinkedList;
 import java.util.Locale;
 
+import io.reactivex.android.schedulers.AndroidSchedulers;
 import io.reactivex.disposables.Disposable;
 import top.keepempty.sph.library.SerialPortHelper;
 
-public class MainActivity extends BaseScanGunActivity {
+public class MainActivity extends BaseScanGunActivity  implements SendCallback, Callback<Result> {
 
     private final String TAG = "MainActivity";
     public static MainActivity instance;
@@ -243,15 +259,35 @@ public class MainActivity extends BaseScanGunActivity {
     public void event(ApiMessageEvent messageEvent) {
         // 进行刷新操作
         switch (messageEvent.getName()) {
-            case "updateUI":
-//                Intent intent = getIntent();
-//                finish();
-//                startActivity(intent);
+            case "makeicecream":
+                LinkedList<MakeIceCreamBean> iceCreamOrders = new LinkedList<>();
+                MakeIceCreamBean detail = new MakeIceCreamBean();
+                String[] strData = (String[]) messageEvent.getData();
+                detail.makeCodes= Arrays.stream(strData)
+                        .mapToInt(Integer::parseInt)
+                        .toArray();
+                iceCreamOrders.add(detail);
+                Log.d(TAG, "getMessage: dosugar"+iceCreamOrders);
+//                CommunicationHelper.getInstance().setMakingIceCreams(iceCreamOrders);
+//                CommunicationHelper.getInstance().setDishStatusListener(this, isManualMake ? IceCreamDeviceConstants.ORDER_MAKE_ORDER : -1);
+                make();
                 break;
         }
-
+    }
+    private boolean isManualMake = false;
+    private boolean isManualMode() {
+        return App.app.payChannel != Constant.PAY_FREE;
     }
 
+    private void make(){
+        FragmentManager fragmentManager = getSupportFragmentManager();
+//        Fragment fragment = PaySuccessFragment.getFragment(CommunicationHelper.getInstance().getMakingIceCreams().size(), isManualMode());
+        Fragment fragment = PaySuccessFragment.getFragment(1, isManualMode());
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        transaction.replace(R.id.main_fragment, fragment);
+        transaction.addToBackStack("main");
+        transaction.commit();
+    }
     @Override
     protected void onDestroy() {
         super.onDestroy();
@@ -450,4 +486,29 @@ public class MainActivity extends BaseScanGunActivity {
         }, 5000);
         //1.开始通信
     }
+
+    @Override
+    public void onResult(Result result) {
+        AndroidSchedulers.mainThread().scheduleDirect(new Runnable() {
+            @Override
+            public void run() {
+                Log.d(TAG, "AndroidSchedulers run1: "+result);
+                Log.d(TAG, "AndroidSchedulers run2: "+result.code);
+                Log.d(TAG, "AndroidSchedulers run3: "+result.message);
+                Log.d(TAG, "AndroidSchedulers run4: "+result.data);
+                switch (result.code) {
+                }
+            }
+        });
+    }
+
+    @Override
+    public void callBack(boolean ok, int[] result) {
+        AndroidSchedulers.mainThread().scheduleDirect(new Runnable() {
+            @Override
+            public void run() {
+                showToast(ok ? App.app.getString(R.string.setting_plc_send_success) : App.app.getString(R.string.setting_plc_send_fail));
+            }
+        });
+    }
 }

+ 6 - 0
app/src/main/java/com/bgy/autosale/ui/adapters/AlarmClockAdapter.java

@@ -77,6 +77,12 @@ public class AlarmClockAdapter extends RecyclerView.Adapter<AlarmClockAdapter.Vi
 
             }
         });
+        viewHolder.itemView.post(new Runnable() {
+            @Override
+            public void run() {
+                notifyItemChanged(0);
+            }
+        });
     }
 
     public AlarmClockAdapter(List<AlarmClockBean> datas) {

+ 43 - 25
app/src/main/java/com/bgy/autosale/ui/consumer/IceCreamFragment.java

@@ -28,6 +28,7 @@ import android.text.style.ForegroundColorSpan;
 import android.text.style.RelativeSizeSpan;
 import android.util.Log;
 import android.util.TypedValue;
+import android.view.MotionEvent;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewStub;
@@ -37,6 +38,7 @@ import android.view.animation.AnimationUtils;
 import android.view.animation.OvershootInterpolator;
 import android.view.inputmethod.InputMethodManager;
 import android.widget.EditText;
+import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
@@ -116,6 +118,7 @@ import com.hboxs.base_library.util.LanguageUtil;
 import com.hboxs.base_library.util.LogUtil;
 import com.hboxs.base_library.util.LogUtils;
 import com.hboxs.base_library.util.PreventSpeedClickUtil;
+import com.hboxs.base_library.util.ReturnTomainScreenUtil;
 import com.hboxs.base_library.util.SharedPreferencesUtils;
 import com.hboxs.base_library.util.UiUtil;
 import com.orhanobut.hawk.Hawk;
@@ -230,8 +233,9 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
     private MdbCreditCardDialog mMdbCreditCardDialog;
     private ScanDialog scanDialog;
 
-    private int ADVERTISING_TIME1 = Hawk.get(Name.ADVERTISING_TIME1, 90);//自动模式
-    private int ADVERTISING_TIME2 = Hawk.get(Name.ADVERTISING_TIME2, 60);//手动模式
+    private FrameLayout flbuy;
+    private int ADVERTISING_TIME1 = Hawk.get(Name.ADVERTISING_TIME1, 140);//自动模式
+    private int ADVERTISING_TIME2 = Hawk.get(Name.ADVERTISING_TIME2, 140);//手动模式
 
     public static IceCreamFragment getFragment(String manualReason) {
         Bundle bundle = new Bundle();
@@ -250,13 +254,25 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
         return R.layout.fragment_ice_cream;
     }
 
-    @SuppressLint("SetTextI18n")
+    @SuppressLint({"SetTextI18n", "ClickableViewAccessibility"})
     @Override
     public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
         super.onViewCreated(view, savedInstanceState);
         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
             getActivity().getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_LTR);
         }
+
+        flbuy = view.findViewById(R.id.fl_buy);
+        flbuy.setOnTouchListener(new View.OnTouchListener() {
+            @Override
+            public boolean onTouch(View view, MotionEvent motionEvent) {
+                if (motionEvent.getAction() == MotionEvent.ACTION_UP) {
+                    resetFinishDelay();
+                }
+                return false;
+            }
+        });
+
         RelativeLayout rlSelectLanguage = view.findViewById(R.id.rl_select_language);
         if (Hawk.get(Name.LANGUAGE_SHOW, false)) {
             rlSelectLanguage.setVisibility(View.VISIBLE);
@@ -592,7 +608,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
         if (!mClickHelper.canClick()) {
             return;
         }
-        resetFinishDelay();
+//        resetFinishDelay();
         int id = v.getId();
         if (id == R.id.dishes_shop_cart_clear) {
             showClearDialog();
@@ -619,7 +635,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                     }
                     Log.d(TAG, "onClick:orderHelper 商品名字:" + orderHelper.getOrderList().get(i).selectTag + " 单个商品价格:" + totalSum + "  数量:" + orderHelper.getOrderList().get(i).buyCount);
                 }
-                Log.d(TAG, "onClick:priceList "+priceList);
+                Log.d(TAG, "onClick:priceList " + priceList);
             }
             showLoading();
             if (App.app.payChannel == Constant.PAY_FREE || manualReason != null) {
@@ -743,10 +759,10 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                     ToastUtil.getInstance().showText(UiUtil.getStringRes(R.string.only_one_code));
                     return; // 直接返回,不继续执行
                 } else {
-                    if (PreventSpeedClickUtil.isFastClick()){
+                    if (PreventSpeedClickUtil.isFastClick()) {
                         Log.d(TAG, "PreventSpeedClickUtil:1 ");
                         getDiscountCodeOverseas(arrayCode[shoppingNumber], id);
-                    }else {
+                    } else {
                         Log.d(TAG, "PreventSpeedClickUtil:2 ");
                     }
                 }
@@ -764,7 +780,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
     private void showDialogCreditCard() {
         Log.d(TAG, "showDialogCreditCard: ");
         LogUtils.logWrite("弹出刷卡对话框");
-        removeFinish();
+//        removeFinish();
         mCreditCardDialog = new CreditCardDialog(getContext(), getActivity());
         Log.d(TAG, "showDialogCreditCard: " + coin);
         mCreditCardDialog.setListener(new DialogClickListener() {
@@ -795,7 +811,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                     case 132://失败
                         break;
                     case 1000:
-                        resetFinishDelay();
+//                        resetFinishDelay();
                         break;
                 }
             }
@@ -822,7 +838,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                 public void run() {
                     checkManualMode();
                 }
-            },4*60*1000);
+            }, 4 * 60 * 1000);
         } else {
             checkManualMode();
         }
@@ -920,7 +936,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
             AppCompatImageView effectView = sauceEffectViews[selectCount];
             effectView.setImageBitmap(null);
         }
-        Log.d(TAG, "selectSauce:1 "+selectCount);
+        Log.d(TAG, "selectSauce:1 " + selectCount);
         initIceCream();
     }
 
@@ -1375,7 +1391,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
             if (!mClickHelper.canClick()) {
                 return;
             }
-            resetFinishDelay();
+//            resetFinishDelay();
             DishesBean dishesBean = (DishesBean) v.getTag();
 
             int position = adapter.indexOf(dishesBean);
@@ -1409,7 +1425,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
 //            return;
 //        }
         UISoundHelper.getInstance().playSelectFlavor(false);
-        removeFinish();
+//        removeFinish();
 
         if (getFragmentManager() != null) {
             Fragment f = null;
@@ -1581,11 +1597,11 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
             case Name.MDBRS232://mdb威佛上电了
                 break;
             case Name.CURRENCYCHANGES://入钞了
-                tvMoney.setText(haveMoney + (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue())+Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
+                tvMoney.setText(haveMoney + (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue()) + Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
                 Log.d(TAG, "event: " + Global.hascoin.doubleValue());
                 if (payMixDialog != null && payMixDialog.isShowing()) {
                     if (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() >= pri) {
-                        tvMoney.setText(haveMoney + (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() - pri)+Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
+                        tvMoney.setText(haveMoney + (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() - pri) + Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
                         remainMoney = Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() - pri;
                         payPaperSuccess(); // 收钞完成
                         EventBus.getDefault().post(new ApiMessageEvent("cashsale",
@@ -1651,7 +1667,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
 
 
     private void showPayMixDialog() {
-        removeFinish();
+//        removeFinish();
         if (payMixDialog == null) {
             payMixDialog = new PayMixDialog(getContext(), getActivity());
         }
@@ -1677,7 +1693,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                         }
                         break;
                     case 1000:
-                        resetFinishDelay();
+//                        resetFinishDelay();
                         Log.d(TAG, "dismiss: 1000");
                         break;
                 }
@@ -1686,7 +1702,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
         payMixDialog.show();
         dismissLoading();
         if (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() >= pri) {
-            tvMoney.setText(haveMoney + (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() - pri)+Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
+            tvMoney.setText(haveMoney + (Global.hasmoney.doubleValue() + Global.hascoin.doubleValue() - pri) + Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
             payPaperSuccess(); // 收钞完成
             EventBus.getDefault().post(new ApiMessageEvent("cashsale", ByteUtils.decimal2fitHex((long) (coin * 100), 4) + ";" + ByteUtils.decimal2fitHex((long) 1, 4)));
         } else {
@@ -1736,7 +1752,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
             ToastUtil.getInstance().showText("金额异常");
             return;
         }
-        removeFinish();
+//        removeFinish();
         if (mMdbCreditCardDialog == null) {
             mMdbCreditCardDialog = new MdbCreditCardDialog(getContext());
             mMdbCreditCardDialog.setCanTouchOutsideDismiss(false);
@@ -1801,7 +1817,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                         }, 3000);
                         break;
                     case 1000:
-                        resetFinishDelay();
+//                        resetFinishDelay();
                         break;
                 }
             }
@@ -1836,6 +1852,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
     private List<Double> getPriceList;
 
     // 进入手动制作的界面
+    @SuppressLint("ClickableViewAccessibility")
     private void manualMake() {
         Log.d(TAG, "manualMake orderHelper: " + orderHelper.getOrderList().toString());
         if (arrayCode != null) {
@@ -1904,7 +1921,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
             shoppingTrolleyDialogChoosePay.dismiss();
         }
         if (getFragmentManager() != null) {
-
+            flbuy.setOnTouchListener(null);
             removeFinish();
             LinkedList<MakeIceCreamBean> iceCreamOrders = OrderHelper.getInstance().generateMakingIceCream();
             Log.d(TAG, "manualMake: MakeIceCreamBean" + iceCreamOrders);
@@ -1956,7 +1973,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
 
     public void carsPay(String productNameMap) {
         showLoading();
-        removeFinish();
+//        removeFinish();
         Log.d(TAG, "carsPay: " + productNameMap);
         RequestBody body = RequestBody.create(MediaType.parse("application/json;charset=utf-8"), productNameMap);
         String url = "tOrder/iceCreamCarsPay?clientId=" + Heartbeat.deviceId;
@@ -2020,7 +2037,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
 
     private void getCodeSuccess(String rd_Pic, String sn) {
         LogUtil.d(TAG, "getCodeSuccess: " + rd_Pic);
-        resetFinishDelay();
+//        resetFinishDelay();
         showDialogScan(rd_Pic, sn);
     }
 
@@ -2035,7 +2052,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
                     Global.makeStatus = Name.Idle;
                     BaseConstant.CANCEL_POLL = false;
                     Log.d(TAG, "showDialogScan: 关闭了重新计时");
-                    startFinishDelay();
+//                    startFinishDelay();
                     break;
                 case 130:
 //                                closeLoading();
@@ -2057,7 +2074,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
 
                     break;
                 case 1000:
-                    resetFinishDelay();
+//                    resetFinishDelay();
                     break;
             }
 
@@ -2272,6 +2289,7 @@ public class IceCreamFragment extends BaseAutoExitFragment implements View.OnCli
         }, 1000);
     }
 
+
     int number = 0;
 
     private String localOrderSn = UUID.randomUUID().toString().replace("-", "");

+ 58 - 18
app/src/main/java/com/bgy/autosale/ui/operator/LocalAlarmClockActivity.java

@@ -1,13 +1,17 @@
 package com.bgy.autosale.ui.operator;
 
+import android.app.Dialog;
 import android.os.Build;
 import android.os.Bundle;
+import android.os.Handler;
 import android.support.annotation.Nullable;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.format.DateFormat;
 import android.util.Log;
 import android.view.View;
+import android.view.Window;
+import android.view.WindowManager;
 import android.widget.RadioButton;
 import android.widget.TextView;
 
@@ -25,11 +29,14 @@ import com.hboxs.base_library.constant.Global;
 import com.hboxs.base_library.constant.Name;
 import com.hboxs.base_library.dialog.NormalDialog;
 import com.hboxs.base_library.util.AlarmManagerUtil;
+import com.hboxs.base_library.util.DrawableSelectorUtils;
 import com.hboxs.base_library.util.LogUtils;
 import com.hboxs.base_library.util.SharedPreferencesUtils;
 import com.hboxs.base_library.util.ToastUtil;
 import com.hboxs.base_library.util.UiUtil;
 import com.orhanobut.hawk.Hawk;
+import com.zyao89.view.zloading.ZLoadingDialog;
+import com.zyao89.view.zloading.Z_TYPE;
 
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -80,6 +87,7 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
         rvAlarmClock = findViewById(R.id.rv_alarm_clock);
         initView();
         initData();
+        hideSystemUI();
     }
 
     @Override
@@ -92,8 +100,7 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
         } else if (id == R.id.rb_remote_alarmclock) {
             isEdited(R.id.rb_remote_alarmclock);
         } else if (id == R.id.btn_clock_add) {
-            Log.d(TAG, "onClick: btnClockAdd");
-            if (alarmClockBeans.size() > 9) {
+            if (alarmClockBeans.size() > 8) {
                 ToastUtil.showToast("您好,闹钟个数只限9个");
                 return;
             }
@@ -104,19 +111,6 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
 
 
     private void initView() {
-//        binding.btnClockAdd.setOnClickListener(new View.OnClickListener() {
-//            @Override
-//            public void onClick(View view) {
-//                Log.d(TAG, "onClick: btnClockAdd");
-//                if (alarmClockBeans.size()>9) {
-//                    ToastUtil.showToast("您好,闹钟个数只限9个");
-//                    return;
-//                }
-//                Log.d(TAG, "onClick: btnClockAdd1");
-//                showCheckDialog(1);
-//            }
-//        });
-//        setAlarmClock(); 进来就重新设置一次闹钟,实际没有必要。
         alarmclockType = Hawk.get(Name.ALARMCLOCK_TYPE, true);
         if (alarmclockType) {
             rbLocalAlarmclock.setChecked(true);
@@ -148,6 +142,7 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
                         showCheckDialog(2);
                         break;
                     case 3:
+                        showLoading();
                         AlarmClockBean remove = alarmClockBeans.remove(position);
                         alarmClockAdapter.setDatas(alarmClockBeans);
                         alarmClockAdapter.notifyDataSetChanged();
@@ -167,7 +162,6 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
                 AlarmClockBean alarmClockBean = alarmClockBeans.get(position);
                 alarmClockBean.setStatus(falg);
                 alarmClockAdapter.setDatas(alarmClockBeans);
-                alarmClockAdapter.notifyDataSetChanged();
                 Hawk.put(Name.LOCAL_ALARM_CLOCK, alarmClockBeans);
                 if (falg == false) {
                     //关闭指定的闹钟。说明需要关闭指定的闹钟
@@ -209,14 +203,14 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
                         alarmClockBean.setId(alarmClockBeans.size() + "");
                         alarmClockBeans.add(alarmClockBean);
                         alarmClockAdapter.setDatas(alarmClockBeans);
-                        alarmClockAdapter.notifyDataSetChanged();
+//                        alarmClockAdapter.notifyDataSetChanged();
                         clockDialog.dismiss();
                         Hawk.put(Name.LOCAL_ALARM_CLOCK, alarmClockBeans);
                         break;
                     case 2:
                         alarmClockBeans.set(currentPosition, alarmClockBean);
                         alarmClockAdapter.setDatas(alarmClockBeans);
-                        alarmClockAdapter.notifyDataSetChanged();
+//                        alarmClockAdapter.notifyDataSetChanged();
                         clockDialog.dismiss();
                         Hawk.put(Name.LOCAL_ALARM_CLOCK, alarmClockBeans);
                         break;
@@ -461,10 +455,56 @@ public class LocalAlarmClockActivity extends BaseScanGunActivity implements View
         });
     }
 
+    private ZLoadingDialog loadingDialog;
+
+    private void showLoading() {
+        if (loadingDialog == null) {
+            loadingDialog = new ZLoadingDialog(LocalAlarmClockActivity.this);
+        }
+        loadingDialog.setLoadingBuilder(Z_TYPE.DOUBLE_CIRCLE)//设置类型
+                .setLoadingColor(DrawableSelectorUtils.getColorByAttrId(LocalAlarmClockActivity.this, R.attr.text_color))//颜色
+                .setHintText("Loading...")
+                .show();
+        Dialog dialog = this.loadingDialog.create();
+        dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
+        dialog.show();
+        dialog.setCanceledOnTouchOutside(false);
+        dialog.setCancelable(false);
+        dismissLoading();
+    }
+
+    private void dismissLoading() {
+        // 延迟1秒后关闭弹窗
+        new Handler().postDelayed(new Runnable() {
+            @Override
+            public void run() {
+                if (loadingDialog != null && loadingDialog.isShowing()) {
+                    loadingDialog.dismiss();
+                }
+            }
+        }, 2000);
+    }
 
     @Override
     protected void onDestroy() {
         super.onDestroy();
         stopTimeDown();
     }
+
+    private void hideSystemUI() {
+        // 隐藏状态栏和导航栏
+        getWindow().getDecorView().setSystemUiVisibility(
+                View.SYSTEM_UI_FLAG_FULLSCREEN // 隐藏状态栏
+                        | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // 隐藏导航栏
+                        | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY // 使得用户可以通过手势重新显示系统UI
+        );
+    }
+
+    @Override
+    public void onWindowFocusChanged(boolean hasFocus) {
+        super.onWindowFocusChanged(hasFocus);
+        if (hasFocus) {
+            hideSystemUI(); // 保持全屏
+        }
+    }
 }

+ 2 - 2
app/src/main/java/com/bgy/autosale/ui/operator/TimeSettingActivity.java

@@ -48,13 +48,13 @@ public class TimeSettingActivity extends BaseScanGunActivity implements View.OnC
 
         //自动返回待机页面时间
         etAutomaticBackTime1 =findViewById(R.id.et_automatic_back_time1);
-        etAutomaticBackTime1.setText(String.valueOf(Hawk.get(Name.ADVERTISING_TIME1,90)));
+        etAutomaticBackTime1.setText(String.valueOf(Hawk.get(Name.ADVERTISING_TIME1,140)));
         etAutomaticBackTime1.setInputType(InputType.TYPE_CLASS_NUMBER);
         findViewById(R.id.automatic_back_time_save1).setOnClickListener(this);
 
         //手动返回待机页面时间
         etAutomaticBackTime2 =findViewById(R.id.et_automatic_back_time2);
-        etAutomaticBackTime2.setText(String.valueOf(Hawk.get(Name.ADVERTISING_TIME2,60)));
+        etAutomaticBackTime2.setText(String.valueOf(Hawk.get(Name.ADVERTISING_TIME2,140)));
         etAutomaticBackTime2.setInputType(InputType.TYPE_CLASS_NUMBER);
         findViewById(R.id.automatic_back_time_save2).setOnClickListener(this);
     }

+ 1 - 1
app/src/main/java/com/bgy/autosale/ui/operator/fragments/SwitchFragment.java

@@ -445,7 +445,7 @@ public class SwitchFragment extends BaseFragment implements RadioGroup.OnChecked
             String s = etChanglog.getText().toString();
             if ("1".equals(s) ||"7772".equals(s)||"7770".equals(s)||"7777".equals(s)||"7761".equals(s)
                     ||"7773".equals(s)||"7774".equals(s)||"7786".equals(s)||"7775".equals(s)||"7754".equals(s)
-            ||"0000".equals(s)) {
+            ||"0000".equals(s)|| "7764".equals(s)) {
                 Hawk.put("logo", s);
                 Hawk.get("logo", "7777");
                 ToastUtil.showToast(UiUtil.getStringRes(R.string.xgwc));

+ 1 - 1
config.gradle

@@ -5,7 +5,7 @@ ext {
             "minSdkVersion"                : 21,
             "targetSdkVersion"             : 28,
             "versionCode"                  : 110,
-            "versionName"                  : "1.0.56.3",//版本号修改
+            "versionName"                  : "1.0.57",//版本号修改
 
             "androidSupport"               : "28.0.0",
             "constraint-layout"            : "1.1.3",

二進制
jniLibs/arm64-v8a/libSerialPortJni.so


二進制
jniLibs/x86/libSerialPortJni.so


二進制
jniLibs/x86_64/libSerialPortJni.so


+ 1 - 0
module_offpay/src/main/java/com/example/offpay/service/OfflinePayService.java

@@ -487,6 +487,7 @@ public class OfflinePayService extends Service {
                     int isSleep = (int) SharedPreferencesUtils.getParam("sleep", -1);
                     if (isSleep != 0) {
                         WeaverUtil.billValidatorSetUp();
+                        Log.d(TAG, "sendSerialPort run: 31");
                     }
                     setupNumber++;
                 }