From 1733e439882975f8ba98b3168c4809e69f93b79a Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期四, 29 五月 2025 13:21:30 +0800
Subject: [PATCH] 1.扫描测试

---
 H5/Js/ScanTest.js   |   77 +++++++++++++++++++++++++
 H5/ScanTest.aspx.cs |   14 ++++
 H5/ScanTest.aspx    |   36 ++++++++++++
 3 files changed, 127 insertions(+), 0 deletions(-)

diff --git a/H5/Js/ScanTest.js b/H5/Js/ScanTest.js
new file mode 100644
index 0000000..9be9b7c
--- /dev/null
+++ b/H5/Js/ScanTest.js
@@ -0,0 +1,77 @@
+锘縱ar vm = new Vue({
+    el: '#app',
+    data: function () {
+        return {
+            isLoading: false,
+            textInput: '',
+            scanWorkstation: '',
+            html5QrCode: null,
+            pendingCallbacks: {}  // 瀛樺偍鍥炶皟鍑芥暟
+        }
+    },
+    mounted() {
+        // 鍒濆鍖栨秷鎭洃鍚�
+        window.addEventListener('message', this.handleH5Response);
+    },
+    beforeDestroy() {
+        // 娓呯悊浜嬩欢鐩戝惉
+        window.removeEventListener('message', this.handleH5Response);
+    },
+    methods: {
+        // 澶勭悊H5鐨勫搷搴�
+        handleH5Response(event) {
+            try {
+                const data = JSON.parse(event.data);
+                if (data.RequestId && typeof data.returnValue !== 'undefined') {
+                    const callback = this.pendingCallbacks[data.RequestId];
+                    if (callback) {
+                        callback(data.returnValue);
+                        delete this.pendingCallbacks[data.RequestId];
+                    }
+                }
+            } catch (e) {
+                console.error('瑙f瀽鍝嶅簲澶辫触:', e);
+            }
+        },
+
+        // 鍚姩鎵弿娴嬭瘯
+        startScanTest() {
+            const requestId = Date.now().toString(); // 鐢熸垚鍞竴璇锋眰ID
+            const sendData = {
+                Type: 'Scan',
+                Barcode: 'TM250304-000104-2',
+                Detail: 'detail info',
+                Ip: '192.168.38.135',
+                Port: '9100',
+                RequestId: requestId // 娣诲姞璇锋眰鏍囪瘑
+            };
+
+            // 鍒涘缓Promise绛夊緟鍝嶅簲
+            new Promise((resolve) => {
+                this.pendingCallbacks[requestId] = resolve;
+
+                // 鍙戦�佹秷鎭�
+                var result = uni.webView.postMessage({
+                    data: JSON.stringify(sendData)
+                });
+                alert(result);
+                //// 璁剧疆瓒呮椂澶勭悊
+                //setTimeout(() => {
+                //    if (this.pendingCallbacks[requestId]) {
+                //        delete this.pendingCallbacks[requestId];
+                //        console.error('璇锋眰瓒呮椂');
+                //        resolve(-1); // 杩斿洖瓒呮椂鐘舵��
+                //    }
+                //}, 5000); // 5绉掕秴鏃�
+            }).then(result => {
+                console.log('鎿嶄綔缁撴灉:', result);
+                // 杩欓噷澶勭悊杩斿洖缁撴灉
+                if (result === 0) {
+                    alert('鎿嶄綔鎴愬姛!');
+                } else {
+                    alert('鎿嶄綔澶辫触锛岄敊璇爜: ' + result);
+                }
+            });
+        }
+    }
+});
\ No newline at end of file
diff --git a/H5/ScanTest.aspx b/H5/ScanTest.aspx
new file mode 100644
index 0000000..94e591b
--- /dev/null
+++ b/H5/ScanTest.aspx
@@ -0,0 +1,36 @@
+锘�<%@ Page Title="" Language="C#" MasterPageFile="~/Mst.master" AutoEventWireup="true" CodeFile="ScanTest.aspx.cs" Inherits="H5_Config" %>
+<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
+    <style>
+    .bg-info {
+        background-color:#fff;
+    }
+</style>
+</asp:Content>
+<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" runat="Server">
+    <br />
+    <br />
+    <br />
+    <br />
+        <van-nav-bar
+  title="娴嬭瘯鎵弿"
+  left-text="杩斿洖"
+  left-arrow
+  @click-left="GoBack()"
+></van-nav-bar>
+   
+     <div class="padding">
+        <van-button plain type="warning" @click="startScanTest">娴嬭瘯鎵弿</van-button>
+        <van-cell-group>
+              <van-field  v-model="textInput" placeholder="璇锋壂鎻忚繖閲�"  v-focus.noKeyboard ></van-field>
+       </van-cell-group>
+    </div>
+
+</asp:Content>
+<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" runat="Server">
+   <%--<comback ></comback>--%>
+</asp:Content>
+<asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" runat="Server">
+    <script src="Js/jquery-2.1.4.min.js"></script>
+    <script src="Js/ScanTest.js?<%=11 %>"></script>
+
+</asp:Content>
diff --git a/H5/ScanTest.aspx.cs b/H5/ScanTest.aspx.cs
new file mode 100644
index 0000000..ffb8734
--- /dev/null
+++ b/H5/ScanTest.aspx.cs
@@ -0,0 +1,14 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+public partial class H5_Config : System.Web.UI.Page
+{
+    protected void Page_Load(object sender, EventArgs e)
+    {
+
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.3