ccc преди 6 месеца
родител
ревизия
98d1003d7a
променени са 34 файла, в които са добавени 193 реда и са изтрити 43 реда
  1. 10 0
      .idea/deploymentTargetSelector.xml
  2. 2 3
      .idea/gradle.xml
  3. 10 0
      .idea/migrations.xml
  4. 3 3
      .idea/misc.xml
  5. 17 0
      .idea/runConfigurations.xml
  6. 0 1
      .idea/vcs.xml
  7. 1 1
      BaseLibrary/src/main/java/com/hboxs/base_library/constant/Global.java
  8. 1 0
      BaseLibrary/src/main/java/com/hboxs/base_library/constant/Name.java
  9. 3 3
      BaseLibrary/src/main/res/values-hy/strings.xml
  10. 1 0
      BaseLibrary/src/main/res/values/strings.xml
  11. 5 1
      app/src/main/java/com/bgy/autosale/RemoteSupportService.java
  12. 6 0
      app/src/main/java/com/bgy/autosale/entitys/MakeIceCreamBean.java
  13. 3 1
      app/src/main/java/com/bgy/autosale/helpers/OrderHelper.java
  14. 3 1
      app/src/main/java/com/bgy/autosale/helpers/UISoundHelper.java
  15. 26 2
      app/src/main/java/com/bgy/autosale/payutil/MQService.java
  16. 2 0
      app/src/main/java/com/bgy/autosale/payutil/PayMixDialog.java
  17. 1 1
      app/src/main/java/com/bgy/autosale/ui/MainActivity.java
  18. 3 3
      app/src/main/java/com/bgy/autosale/ui/consumer/IceCreamFragment.java
  19. 2 0
      app/src/main/java/com/bgy/autosale/ui/consumer/PaySuccessFragment.java
  20. 18 0
      app/src/main/java/com/bgy/autosale/ui/operator/SwitchSettingActivity.java
  21. 5 0
      app/src/main/java/com/bgy/autosale/ui/operator/fragments/PriceFragment.java
  22. 42 0
      app/src/main/res/layout/activity_system_switch_setting.xml
  23. 1 1
      app/src/main/res/layout/fragment_ice_cream.xml
  24. 1 0
      app/src/main/res/layout/item_price.xml
  25. 1 1
      app/src/main/res/values-de/strings.xml
  26. 3 3
      app/src/main/res/values-fr/strings.xml
  27. 9 9
      app/src/main/res/values-hy/strings.xml
  28. 9 5
      build.gradle
  29. 2 2
      config.gradle
  30. 3 2
      gradle/wrapper/gradle-wrapper.properties
  31. BIN
      jniLibs/arm64-v8a/libSerialPortJni.so
  32. BIN
      jniLibs/armeabi-v7a/libSerialPortJni.so
  33. BIN
      jniLibs/x86/libSerialPortJni.so
  34. BIN
      jniLibs/x86_64/libSerialPortJni.so

+ 10 - 0
.idea/deploymentTargetSelector.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="deploymentTargetSelector">
+    <selectionStates>
+      <SelectionState runConfigName="app">
+        <option name="selectionMode" value="DROPDOWN" />
+      </SelectionState>
+    </selectionStates>
+  </component>
+</project>

+ 2 - 3
.idea/gradle.xml

@@ -4,10 +4,8 @@
   <component name="GradleSettings">
     <option name="linkedExternalProjectsSettings">
       <GradleProjectSettings>
-        <option name="testRunner" value="GRADLE" />
-        <option name="distributionType" value="DEFAULT_WRAPPED" />
         <option name="externalProjectPath" value="$PROJECT_DIR$" />
-        <option name="gradleJvm" value="1.8" />
+        <option name="gradleJvm" value="corretto-1.8" />
         <option name="modules">
           <set>
             <option value="$PROJECT_DIR$" />
@@ -18,6 +16,7 @@
             <option value="$PROJECT_DIR$/zloadingview" />
           </set>
         </option>
+        <option name="resolveExternalAnnotations" value="false" />
       </GradleProjectSettings>
     </option>
   </component>

+ 10 - 0
.idea/migrations.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectMigrations">
+    <option name="MigrateToGradleLocalJavaHome">
+      <set>
+        <option value="$PROJECT_DIR$" />
+      </set>
+    </option>
+  </component>
+</project>

+ 3 - 3
.idea/misc.xml

@@ -1,4 +1,3 @@
-<?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="DesignSurface">
     <option name="filePathToZoomLevelMap">
@@ -49,9 +48,10 @@
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/dialog_select_icon.xml" value="0.24947916666666667" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/dialog_shopping_trolley_choose_pay.xml" value="0.4" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/dialog_update.xml" value="0.24947916666666667" />
+        <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_clean_config.xml" value="0.24947916666666667" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_clean_finish.xml" value="0.24947916666666667" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_clean_schedule.xml" value="0.24947916666666667" />
-        <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_common.xml" value="0.1358695652173913" />
+        <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_common.xml" value="0.2" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_ice_cream.xml" value="0.2" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_lock.xml" value="0.176" />
         <entry key="..\:/Users/Desktop/iceCream-QX/icecream-lite-main/app/src/main/res/layout/fragment_log.xml" value="0.24947916666666667" />
@@ -77,7 +77,7 @@
       </map>
     </option>
   </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="Android Studio default JDK" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="corretto-1.8" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/build/classes" />
   </component>
   <component name="ProjectType">

+ 17 - 0
.idea/runConfigurations.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="RunConfigurationProducerService">
+    <option name="ignoredProducers">
+      <set>
+        <option value="com.intellij.execution.junit.AbstractAllInDirectoryConfigurationProducer" />
+        <option value="com.intellij.execution.junit.AllInPackageConfigurationProducer" />
+        <option value="com.intellij.execution.junit.PatternConfigurationProducer" />
+        <option value="com.intellij.execution.junit.TestInClassConfigurationProducer" />
+        <option value="com.intellij.execution.junit.UniqueIdConfigurationProducer" />
+        <option value="com.intellij.execution.junit.testDiscovery.JUnitTestDiscoveryConfigurationProducer" />
+        <option value="org.jetbrains.kotlin.idea.junit.KotlinJUnitRunConfigurationProducer" />
+        <option value="org.jetbrains.kotlin.idea.junit.KotlinPatternConfigurationProducer" />
+      </set>
+    </option>
+  </component>
+</project>

+ 0 - 1
.idea/vcs.xml

@@ -2,6 +2,5 @@
 <project version="4">
   <component name="VcsDirectoryMappings">
     <mapping directory="$PROJECT_DIR$" vcs="Git" />
-    <mapping directory="$PROJECT_DIR$/icecream-lite-main" vcs="Git" />
   </component>
 </project>

+ 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 = 2;
+    public static final int isVersions = 1;
 
     /**
      * 用来初始化这个Global的类,不然会很卡。

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

@@ -350,6 +350,7 @@ public interface Name {
     String ADVERTISING_TIME2 = "ADVERTISING_TIME2";//回到广告页面的时间
 
     String IC_TEXT = "IC_TEXT";//冰淇淋杯子上的文本设置
+    String VOICE_MEAL_PICKUP_PROMPTS = "VOICE_MEAL_PICKUP_PROMPTS";//语音取餐提示
 
 }
 

+ 3 - 3
BaseLibrary/src/main/res/values-hy/strings.xml

@@ -503,7 +503,7 @@
     <string name="open_operate">Միացնելուց հետո սկսեք օգտագործել</string>
     <string name="coin_enough">Խնդրում ենք ունենալ բավականաչափ </string>
     <string name="coin_enough1">գումար. սարքը չի վերադարձնում մանրը:</string>
-    <string name="coin_success">Մետաղադրամների համալրում</string>
+    <string name="coin_success">Վճարումը կատարվեց</string>
     <string name="choose_time">Խնդրում ենք մուտքագրել ժամանակը</string>
 
     <string name="year_input">Խնդրում ենք մուտքագրել տարին</string>
@@ -524,7 +524,7 @@
 
     <string name="make_fielad1">Չհաջողվեց պատրաստե</string>
     <string name="stick_error"> Ձողը ճիշտ տեղադրված չէ։ Откройте ,Դուռը բացեք և նորից տեղադրեք ձողը։</string>
-    <string name="current_time1">Ընթացիկ ժամանակը:</string>
+    <string name="current_time1">ՍՀ:</string>
     <string name="equipment_no">Ապրանքի համարը :</string>
     <string name="dont_coin1">Թղթադրամ մի գցեք սխալներից խուսափելու համար։</string>
 
@@ -1037,7 +1037,7 @@
     <string name="pro_sold_out">վաճառվել է</string>
     <string name="humidify_start">խոնավացնել սկիզբը</string>
     <string name="circulating_fan_start">շրջանառվող օդափոխիչի մեկնարկ</string>
-    <string name="amount_invested">Ներդրված գումարը</string>
+    <string name="amount_invested">Մուտքագրված գումար</string>
     <string name="switching_model">անջատող մոդել</string>
     <string name="switching_model_message">Խնդրում ենք հաստատել մեքենայի ներկայիս մոդելը\n հակառակ դեպքում դա կազդի հեռակառավարման վրա:</string>
     <string name="first_parameter">Առաջին պարամետրը</string>

+ 1 - 0
BaseLibrary/src/main/res/values/strings.xml

@@ -1190,5 +1190,6 @@
     <string name="promo_code_duplication">优惠码输入重复,单个商品只能使用一个优惠码</string>
     <string name="only_one_code">每杯只能使用一次优惠码</string>
     <string name="more_code">如果有多个优惠码,使用符号"#"进行分隔</string>
+    <string name="voice_meal_pickup_prompts">取餐语音提示</string>
 
 </resources>

+ 5 - 1
app/src/main/java/com/bgy/autosale/RemoteSupportService.java

@@ -256,6 +256,7 @@ public class RemoteSupportService extends Service implements SendCallback {
 //                updateEqeStatus((Integer) messageEvent.getData());
                 break;
             case "eliminate":
+                reasonKey="";
                 HashMap<String, String> params = new HashMap<>();
                 params.put("clientId", Heartbeat.deviceId);
                 addSubscriptionNew(NoPayOrderStringApi.api.eliminateClean(params),String.class,
@@ -1169,6 +1170,7 @@ public class RemoteSupportService extends Service implements SendCallback {
 
         Log.d(TAG, "RemoteSupportServiceonDestroy: ");
     }
+    private static String reasonKey = "";
 
     public void setError1(int key, String reason,String level) {
         long date = System.currentTimeMillis();
@@ -1186,7 +1188,9 @@ public class RemoteSupportService extends Service implements SendCallback {
         Log.d(TAG, "setError2报警: "+json);
         RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), json);
         //上传到服务器
-        upError(body, 0);
+        if (!reasonKey.equals(reason)) {
+            upError(body, 0);
+        }
     }
 
     private void upError(RequestBody body, int alarmErrorNumber) {

+ 6 - 0
app/src/main/java/com/bgy/autosale/entitys/MakeIceCreamBean.java

@@ -35,6 +35,12 @@ public class MakeIceCreamBean {
         this.productId = productId;
         amount = 0;
     }
+    public MakeIceCreamBean() {
+        this.orderId = orderId;
+        this.orderDetailId = orderDetailId;
+        this.productId = productId;
+        amount = 0;
+    }
 
     @Override
     public String toString() {

+ 3 - 1
app/src/main/java/com/bgy/autosale/helpers/OrderHelper.java

@@ -244,7 +244,6 @@ public class OrderHelper {
 
                 detail.makeCodes[1] = generateMakingIceCreamCode(sauceSpecs, iceCreamName);
                 detail.makeCodes[2] = generateMakingIceCreamCode(kernelSpecs, iceCreamName);
-
                 int nameLength = iceCreamName.length();
                 if (nameLength == 0) {
 //                    detail.iceCreamName = App.app.getString(R.string.flavor_original);
@@ -255,6 +254,9 @@ public class OrderHelper {
                     detail.iceCreamName = iceCreamName.toString();
                 }
                 iceCreamOrders.add(detail);
+                Log.d(TAG, "generateMakingIceCream:1 "+detail.makeCodes[1]);
+                Log.d(TAG, "generateMakingIceCream:2 "+detail.makeCodes[2]);
+
             }
         }
         return iceCreamOrders;

+ 3 - 1
app/src/main/java/com/bgy/autosale/helpers/UISoundHelper.java

@@ -301,7 +301,9 @@ public class UISoundHelper implements Handler.Callback, MediaPlayer.OnPreparedLi
     }
 
     private void play(int scene) {
-        playVoice(sceneVoices.get(scene), false);
+        if (Hawk.get(Name.VOICE_MEAL_PICKUP_PROMPTS,true)) {
+            playVoice(sceneVoices.get(scene), false);
+        }
     }
 
     private void setVolume(MediaPlayer mediaPlayer, float left, float right) {

+ 26 - 2
app/src/main/java/com/bgy/autosale/payutil/MQService.java

@@ -3,6 +3,7 @@ package com.bgy.autosale.payutil;
 import static com.hboxs.base_library.base.BaseApplication.getContext;
 import static com.hboxs.base_library.util.ToastUtil.showToast;
 
+import android.annotation.SuppressLint;
 import android.app.Service;
 import android.content.BroadcastReceiver;
 import android.content.Context;
@@ -12,10 +13,14 @@ import android.media.AudioManager;
 import android.net.ConnectivityManager;
 import android.net.NetworkInfo;
 import android.net.wifi.WifiManager;
+import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
 import android.os.Message;
+import android.support.annotation.RequiresApi;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentTransaction;
 import android.util.Log;
 
 
@@ -25,8 +30,10 @@ import com.bgy.autosale.Constant;
 import com.bgy.autosale.IceCreamDeviceConstants;
 import com.bgy.autosale.R;
 import com.bgy.autosale.RemoteSupportService;
+import com.bgy.autosale.entitys.MakeIceCreamBean;
 import com.bgy.autosale.helpers.CommunicationHelper;
 import com.bgy.autosale.interfaces.SendCallback;
+import com.bgy.autosale.ui.consumer.PaySuccessFragment;
 import com.bgy.autosale.ui.operator.LockActivity;
 import com.bgy.autosale.ui.MainActivity;
 import com.bgy.autosale.ui.operator.fragments.ControlFragment;
@@ -79,8 +86,10 @@ import java.net.HttpURLConnection;
 import java.net.URL;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 
@@ -123,6 +132,7 @@ public class MQService extends Service implements SendCallback {
     private boolean isManualMake = false;
 
 
+    @SuppressLint("NewApi")
     private void getMessage(Message msg) {
 
         String message = msg.getData().getString("msg");
@@ -234,12 +244,22 @@ public class MQService extends Service implements SendCallback {
 //                if (IceCreamErrorUtils.getInstance().getErrorMessage()!=null){
 //                    EventBus.getDefault().post(new ApiMessageEvent(Name.WARNING_ALARM,IceCreamErrorUtils.getInstance().getErrorMessage()));
 //                }
-//                eliminateApi(gson, baseBean, kind);
+                eliminateApi(gson, baseBean, kind);
                 break;
             case "dosugar":
                 //远程制作棉花糖
-                CommunicationHelper.getInstance().sendControl(IceCreamDeviceConstants.ORDER_OPERATE_CLEAN, this);
+//                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();
+                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);
                 break;
             case "alarmClock":
                 //远程星期调节闹钟
@@ -366,6 +386,10 @@ public class MQService extends Service implements SendCallback {
         }
     }
 
+    private boolean isManualMode() {
+        return App.app.payChannel != Constant.PAY_FREE;
+    }
+
     public void getProductPrice() {
         HashMap<String, String> params = new HashMap<>();
         params.put("clientId", Heartbeat.deviceId);

+ 2 - 0
app/src/main/java/com/bgy/autosale/payutil/PayMixDialog.java

@@ -356,6 +356,8 @@ public class PayMixDialog extends BaseDialogNoDatabinding implements View.OnClic
     public void setNameAndPrice(String name, String price) {
         this.price=price;
         tvNum.setText(CustomDecimalFormat.getDecimalFormat().format(Double.valueOf(price)));
+        tvMei.setText(Hawk.get(Name.UNIT_OF_CURRENCY_TIME, ""));
+
     }
         /**
          * 设置价格和名字

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

@@ -120,7 +120,7 @@ public class MainActivity extends BaseScanGunActivity {
             App.app.payChannel = SPUtils.getInstance(App.app).getInt(Constant.PAY_CHANNEL, Constant.PAY_FREE);
             App.app.runMode = SPUtils.getInstance(App.app).getInt(Constant.RUN_MODE, Constant.RUN_OFFLINE);
             App.app.specMultipleChoices = SPUtils.getInstance(App.app).getBoolean(ServiceFragment.SHARED_PREFERENCE_FLAVOR_MULTIPLE, true);
-            App.app.currencySymbol = "";
+            App.app.currencySymbol = Hawk.get(Name.UNIT_OF_CURRENCY_TIME,"");
         }
 
         super.onCreate(savedInstanceState);

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

@@ -1581,11 +1581,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()));
+                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));
+                        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",
@@ -1686,7 +1686,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));
+            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 {

+ 2 - 0
app/src/main/java/com/bgy/autosale/ui/consumer/PaySuccessFragment.java

@@ -26,6 +26,8 @@ import com.bgy.autosale.ui.base.BaseScanGunActivity;
 import com.bgy.autosale.ui.widget.CircularProgressView;
 import com.bgy.autosale.utils.IceCreamErrorUtils;
 import com.bgy.autosale.utils.PlcLog;
+import com.hboxs.base_library.constant.Name;
+import com.orhanobut.hawk.Hawk;
 
 import io.reactivex.android.schedulers.AndroidSchedulers;
 

+ 18 - 0
app/src/main/java/com/bgy/autosale/ui/operator/SwitchSettingActivity.java

@@ -27,6 +27,7 @@ public class SwitchSettingActivity extends BaseScanGunActivity implements View.O
     RadioButton rbLanguageYes, rbLanguageNo;
     RadioButton rbCoinCashResetYes, rbCoinCashResetNo;
     RadioButton rbPromotionCodeYes, rbPromotionCodeNo;
+    RadioButton rbVoiceYes, rbVoiceNo;
     Spinner spLanguage2;
     private ArrayAdapter<String> language2ArrayAdapter;
 
@@ -110,6 +111,19 @@ public class SwitchSettingActivity extends BaseScanGunActivity implements View.O
             rbPromotionCodeNo.setChecked(true);
         }
 
+        RadioGroup rgVoice = findViewById(R.id.rg_voice);
+        rgVoice.setOnCheckedChangeListener(this);
+
+        rbVoiceYes = findViewById(R.id.rb_voice_yes);
+        rbVoiceNo = findViewById(R.id.rb_voice_no);
+
+        Boolean voiceMealPickupPrompts = Hawk.get(Name.VOICE_MEAL_PICKUP_PROMPTS, false);
+        if (voiceMealPickupPrompts) {
+            rbVoiceYes.setChecked(true);
+        } else {
+            rbVoiceNo.setChecked(true);
+        }
+
     }
 
     @Override
@@ -130,6 +144,10 @@ public class SwitchSettingActivity extends BaseScanGunActivity implements View.O
             Hawk.put(Name.PROMOTION_CODE, true);
         } else if (checkedId == R.id.rb_promotion_code_no) {
             Hawk.put(Name.PROMOTION_CODE, false);
+        } else if (checkedId == R.id.rb_voice_yes) {
+            Hawk.put(Name.VOICE_MEAL_PICKUP_PROMPTS, true);
+        } else if (checkedId == R.id.rb_voice_no) {
+            Hawk.put(Name.VOICE_MEAL_PICKUP_PROMPTS, false);
         }
 
     }

+ 5 - 0
app/src/main/java/com/bgy/autosale/ui/operator/fragments/PriceFragment.java

@@ -447,6 +447,9 @@ public class PriceFragment extends BaseFragment implements View.OnClickListener
             String price = util.getString(priceBean.priceKey, "0.01");
             viewHolder1.priceView.setText(price);
             viewHolder1.iconFrameView.setTag(priceBean);
+            if (Global.isVersions!=1){
+                viewHolder1.tvItemUnit.setText(Hawk.get(Name.UNIT_OF_CURRENCY_TIME,""));
+            }
             String icon = util.getString(priceBean.iconKey, null);
             if (icon == null) {
                 Glide.with(viewHolder1.iconView).load(priceBean.defaultIcon).into(viewHolder1.iconView);
@@ -520,6 +523,7 @@ public class PriceFragment extends BaseFragment implements View.OnClickListener
         AppCompatEditText nameView;
         AppCompatEditText priceView;
         ViewGroup switchView;
+        TextView tvItemUnit;
 
         ViewHolder(@NonNull View view, View.OnClickListener clickListener,
                    View.OnFocusChangeListener nameListener,
@@ -535,6 +539,7 @@ public class PriceFragment extends BaseFragment implements View.OnClickListener
             priceView.setOnFocusChangeListener(priceListener);
             switchView = view.findViewById(R.id.item_switch);
             switchView.setOnClickListener(clickListener);
+            tvItemUnit = view.findViewById(R.id.tv_item_unit);
 
         }
     }

+ 42 - 0
app/src/main/res/layout/activity_system_switch_setting.xml

@@ -224,6 +224,48 @@
                     android:textSize="@dimen/sp_8" />
             </RadioGroup>
         </LinearLayout>
+        <LinearLayout
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:orientation="vertical"
+            tools:ignore="MissingConstraints">
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_margin="@dimen/dp_8"
+                android:text="@string/voice_meal_pickup_prompts"
+                android:textColor="#333"
+                android:textSize="@dimen/sp_14"
+                android:textStyle="bold" />
+
+            <RadioGroup
+                android:id="@+id/rg_voice"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <RadioButton
+                    android:id="@+id/rb_voice_yes"
+                    android:layout_width="@dimen/dp_60"
+                    android:layout_height="@dimen/dp_26"
+                    android:gravity="center"
+                    android:text="@string/setting_switch_on"
+                    android:textColor="#576478"
+                    android:textSize="@dimen/sp_8" />
+
+                <RadioButton
+                    android:id="@+id/rb_voice_no"
+                    android:layout_width="@dimen/dp_60"
+                    android:layout_height="@dimen/dp_26"
+                    android:layout_marginLeft="@dimen/dp_20"
+                    android:gravity="center"
+                    android:text="@string/setting_switch_off"
+                    android:textColor="#576478"
+                    android:textSize="@dimen/sp_8" />
+            </RadioGroup>
+        </LinearLayout>
 
     </LinearLayout>
 

+ 1 - 1
app/src/main/res/layout/fragment_ice_cream.xml

@@ -397,7 +397,7 @@
             android:id="@+id/rl_money_show"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:visibility="gone"
+            android:visibility="visible"
             android:layout_gravity="bottom"
             android:layout_marginBottom="@dimen/dp_25"
             android:layout_marginLeft="@dimen/dp_20">

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

@@ -47,6 +47,7 @@
         android:textStyle="bold"/>
 
     <TextView
+        android:id="@+id/tv_item_unit"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:textColor="#333"

+ 1 - 1
app/src/main/res/values-de/strings.xml

@@ -78,7 +78,7 @@
     <string name="mango">Mango</string>
     <string name="chocolates">Schokolade</string>
     <string name="oreo">Oreo</string>
-    <string name="flavor_invalid">Zurückgezogen</string>
+    <string name="flavor_invalid">Ausverkauft</string>
     <string name="flavor_stock_empty">Ausverkauft</string>
     <string name="spec_stock_empty">Der %s ist nicht vorrätig</string>
     <string name="spec_invalid">Wir haben keine %s</string>

+ 3 - 3
app/src/main/res/values-fr/strings.xml

@@ -61,8 +61,8 @@
     <string name="flavor_original">Glace originale</string>
     <string name="flavor_original_hw">Glace originale</string>
     <string name="flavor_multi">Glace multi-saveurs</string>
-    <string name="flavor_sauce">Ajouter de la confiture +</string>
-    <string name="flavor_kernel">+ choisir le noyau</string>
+    <string name="flavor_sauce">Choisis Le Coulis ou Nappage +</string>
+    <string name="flavor_kernel">+ Choisis Le Croquant</string>
     <string name="shop_cart_add">Ajouter au panier</string>
     <string name="make_now">Créer maintenant</string>
     <string name="shop_cart">Panier</string>
@@ -462,7 +462,7 @@
     <string name="price_model">Paiement mixte billets et pièces</string>
     <string name="nayax_model1">Nayax Pas d\'inactivité</string>
     <string name="nayax_model2">Nayax inactif</string>
-    <string name="have_money">Montant investi :</string>
+    <string name="have_money">Montant Inséré :</string>
     <string name="nayax_model">Modèle NaYax :</string>
     <string name="nayax_pay">Paiement NaYax</string>
     <string name="nayax_pay_mix">NaYax+paiement mixte</string>

+ 9 - 9
app/src/main/res/values-hy/strings.xml

@@ -62,12 +62,12 @@
     <string name="flavor_original_hw">Օրիգինալ պաղպաղակ</string>
     <string name="flavor_multi">Բազմհամով պաղպաղակ</string>
     <string name="flavor_sauce">Ավելացնել ջեմ +</string>
-    <string name="flavor_kernel">+ ընտրել միջուկը</string>
-    <string name="shop_cart_add">Ավելացնել զամբյուղում</string>
+    <string name="flavor_kernel">+ Ավելացնել ընկուզեղեն</string>
+    <string name="shop_cart_add">Գին</string>
     <string name="make_now">Ստեղծեք հիմա</string>
-    <string name="shop_cart">Գնումների զամբյուղ</string>
-    <string name="shop_cart_pay">Անցնել վճարման</string>
-    <string name="shop_cart_price">Ընդամենը %d բաժակ, ընդհանուր %1s%2s</string>
+    <string name="shop_cart">Զամբյուղ</string>
+    <string name="shop_cart_pay">Վճարել</string>
+    <string name="shop_cart_price">Ընդամենը %d բաժակ, արժեքը %1s%2s</string>
     <string name="shop_cart_half_price_tip">Նույն բնութագրերի պաղպաղակ, երկրորդը կարող է օգտվել կես գնի զեղչից: </string>
     <string name="peanut">գետնանուշ</string>
     <string name="filbert">պնդուկ</string>
@@ -112,9 +112,9 @@
     <string name="take_tip">Սնունդ ընդունելու խորհուրդներ</string>
     <string name="take_back">Վերադառնալ գլխավոր էջ</string>
     <string name="pay_success">Վճարումը հաջողվեց</string>
-    <string name="order_complete">Պատվերն ավարտված է</string>
-    <string name="make_describe_ing">Ձեր պաղպաղակը պատրաստվում է, խնդրում ենք սպասել...</string>
-    <string name="make_ing">Սննդի պատրաստում</string>
+    <string name="order_complete">Պատվերը պատրաստ է</string>
+    <string name="make_describe_ing">Ընթացքում է, խնդրում ենք սպասել...</string>
+    <string name="make_ing">Պատրաստվում է</string>
     <string name="take_describe_complete">Ձեր պաղպաղակն ավարտված է, խնդրում ենք վերցնել այն որքան հնարավոր է շուտ: </string>
     <string name="take_complete">Խնդրում ենք ճաշել</string>
     <string name="take_describe_close">Սննդի ընդունման պորտը փակվում է, խնդրում ենք ուշադրություն դարձնել: </string>
@@ -391,7 +391,7 @@
     <string name="button_update">Փոփոխել</string>
     <string name="button_open">Դիտել</string>
     <string name="button_start">Սկսել</string>
-    <string name="button_clear">Մաքրել</string>
+    <string name="button_clear">Ջնջել</string>
     <string name="button_delete">Հետին տարածություն</string>
     <string name="button_confirm">Հաստատել</string>
     <string name="button_cancel">Չեղարկել</string>

+ 9 - 5
build.gradle

@@ -4,14 +4,18 @@ apply from: "config.gradle"
 buildscript {
     repositories {
         google()
-        jcenter()
-        maven { url 'https://maven.aliyun.com/repository/google' }
-        maven { url 'https://maven.aliyun.com/repository/jcenter' }
-        maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
+//        jcenter()
+        mavenCentral()
+//        maven { url 'https://maven.aliyun.com/repository/google' }
+//        maven { url 'https://maven.aliyun.com/repository/jcenter' }
+//        maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
+        maven { url 'https://maven.aliyun.com/repository/public' }
+        maven { url 'https://maven.google.com' }
+        maven { url 'https://jitpack.io' }
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:3.5.3'
-        classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'
+        classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0'//greenDao生产代码插件
         classpath 'com.novoda:bintray-release:0.7.0'
     }
 }

+ 2 - 2
config.gradle

@@ -2,10 +2,10 @@ ext {
 
     android = [
             "compileSdkVersion"            : 28,
-            "minSdkVersion"                : 19,
+            "minSdkVersion"                : 21,
             "targetSdkVersion"             : 28,
             "versionCode"                  : 110,
-            "versionName"                  : "1.0.50",//版本号修改
+            "versionName"                  : "1.0.54",//版本号修改
 
             "androidSupport"               : "28.0.0",
             "constraint-layout"            : "1.1.3",

+ 3 - 2
gradle/wrapper/gradle-wrapper.properties

@@ -1,6 +1,7 @@
-#Sun Nov 12 13:16:51 CST 2023
+#Thu Feb 13 16:38:55 CST 2025
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-5.4.1-all.zip
+#distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
+distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-6.1.1-all.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists

BIN
jniLibs/arm64-v8a/libSerialPortJni.so


BIN
jniLibs/armeabi-v7a/libSerialPortJni.so


BIN
jniLibs/x86/libSerialPortJni.so


BIN
jniLibs/x86_64/libSerialPortJni.so