cuiqian2004
2025-06-12 ade379c26e00929b7295b37d7c274ccbb0026b7d
App.vue
@@ -1,4 +1,8 @@
<script>
   import {
      showModal,
      showToast,
   } from "@/js/Page.js"
   export default {
      globalData: {
         largeMode: false,
@@ -20,21 +24,25 @@
         bindClasses: false,
         classes: ""
      },
      data() {
         //获取全局参数:url-服务器地址
         return {
         }
      },
      onLaunch: function() {
         console.log('App Launch');
         this.deviceInfo = uni.getSystemInfoSync();
         this.initscan();
      },
      onUnload() {
         // // 汉德霍尔 PDA rfid扫码页面卸载时释放资源
         // const rfidModule = uni.requireNativePlugin('HandheldRFID');
         // rfidModule.closeModule();
      },
      onShow: function() {
         // const args = plus.runtime.arguments || ""
         // if(args)
         // {
         //    uni.showModal({
         //       title: "App参数",
         //       content: args,
         //       showCancel: false,
         //       confirmText:"cancel"
         //    });
         // }
         console.log('App Show')
      },
      onHide: function() {
@@ -43,11 +51,20 @@
      methods: {
         initscan() {
            let that = this;
            var main = plus.android.runtimeMainActivity(), //获取activity
               IntentFilter = plus.android.importClass('android.content.IntentFilter'), //引入过滤器
            console.log("deviceInfo", this.deviceInfo)
            if (this.deviceInfo?.brand.includes('alps')) { // 汉德霍尔设备特征
               // const rfidModule = uni.requireNativePlugin('HandheldRFID');
               // console.log("rfidModule",rfidModule)
               // rfidModule.initModule((res) => {
               //    console.log("rfid initModule", res)
               // })
            } else {
               var main = plus.android.runtimeMainActivity() //获取activity
               var IntentFilter = plus.android.importClass('android.content.IntentFilter') //引入过滤器
               // Intent = plus.android.importClass('android.content.Intent'),
               filter = new IntentFilter(),
               receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', {
               var filter = new IntentFilter()
               var receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', {
                  onReceive: function(context, intent) { //实现onReceiver回调函数
                     //console.log('onReceive',intent);
                     plus.android.importClass(intent);
@@ -59,7 +76,6 @@
                        decodesource,
                        decodedata: decodedata || data,
                        decodelabeltype,
                     };
                     console.log('onReceive', scanResult);
                     uni.$emit("scanresult", scanResult);
@@ -69,14 +85,39 @@
            filter.addAction("com.pda.formobox"); //监听扫码广播
            filter.addAction('com.rfid.scan') //
            main.registerReceiver(receiver, filter); //注册监听
            }
         },
         onScan(callback) {
            console.log('onScan');
            if (this.deviceInfo?.brand.includes('alps')) { // 汉德霍尔设备特征
               // const rfidModule = uni.requireNativePlugin('HandheldRFID');
               // rfidModule.startScan((res) => {
               //    if (res.code) {
               //       console.log(res)
               //       let data = res.data || ""
               //       if (Array.isArray(data)) {
               //          data = data.map((a) => a.epc).join(",")
               //       }
               //       var scanResult = {
               //          decodesource: "epc",
               //          decodedata: data,
               //          decodelabeltype: "",
               //       };
               //       console.log(scanResult)
               //       callback(scanResult);
               //    } else {
               //       console.log("rfid startScan", res)
               //    }
               // })
            } else {
            uni.$off("scanresult");
            uni.$on("scanresult", (result) => {
               callback(result);
            });
         }
         },
      }
   }
</script>
@@ -148,14 +189,17 @@
      .uni-data-tree {
         font-size: 24px !important;
         .input-value {
            height: 45px !important;
            font-size: 24px !important;
         }
         .placeholder {
          font-size: 24px !important;
         }
      }
      .segmented-control__text {
         font-size: 24px !important;
         height: 45px;