From c25482e9cc5aa1343d7b38bff3d06d0d9c86c1c7 Mon Sep 17 00:00:00 2001
From: DELL_jzs <jiazeshi_zpp@163.com>
Date: 星期六, 26 二月 2022 19:27:38 +0800
Subject: [PATCH] init
---
自助机测试/index.html | 144 ++++++++++++++++++++++++
自助机测试/js/WebSocketClient.js | 163 +++++++++++++++++++++++++++
2 files changed, 307 insertions(+), 0 deletions(-)
diff --git "a/\350\207\252\345\212\251\346\234\272\346\265\213\350\257\225/index.html" "b/\350\207\252\345\212\251\346\234\272\346\265\213\350\257\225/index.html"
new file mode 100644
index 0000000..9f0992b
--- /dev/null
+++ "b/\350\207\252\345\212\251\346\234\272\346\265\213\350\257\225/index.html"
@@ -0,0 +1,144 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+ <title>鑷姪鏈烘祴璇�</title>
+ <script src="./js/WebSocketClient.js"></script>
+</head>
+
+<body>
+ <div>
+ <p id="con_ststus">杩炴帴鎴愬姛</p>
+ </div>
+ <div>
+ <p id="dev_ststus">璁惧鐘舵��</p>
+ </div>
+ <div>
+ <P id="dev_info">璁惧淇℃伅</P>
+ </div>
+ <div>
+ <input type="button" value="鎵撳嵃鍗曠" onclick="btn_click_Dan()">
+ <input type="button" value="鎵撳嵃澶氱" onclick="btn_click_Duo()">
+ <input type="button" value="娓呴櫎鐘舵��" onclick="btn_click_Clear()">
+ </div>
+
+ <div>
+
+ </div>
+</body>
+
+<script type="text/javascript">
+
+ //鏇存柊杩炴帴鐘舵��
+ function Update_Con_Status(msg) {
+ document.getElementById('con_ststus').innerHTML = msg;
+ }
+ function Update_Dev_Info() {
+
+ }
+
+ Client.OnOpen = function () {
+ Update_Con_Status("杩炴帴鎴愬姛");
+ };
+
+ Client.OnClose = function () {
+ Update_Con_Status("杩炴帴鏂紑");
+ };
+
+ Client.OnMsg = function (result) {
+ document.getElementById('dev_info').innerHTML = JSON.stringify(result);
+
+ }
+
+ function btn_click_Dan() {
+ console.log("鎵撳嵃鍗曠");
+ var itemObj = {
+ "Code": 10, // 10锛岃〃绀� 鎵撳嵃椤圭洰锛孖temData 涓洪」鐩俊鎭�
+ "ItemData": {
+ "TubeType": 1, //蹇呭~锛�1锛氱梾姣掞紝2锛氳瘯鍓�
+ "Id": "鎵撳嵃椤圭洰鐨勫敮涓�Id", //蹇呭~锛屾墦鍗伴」鐩殑鍞竴Id
+ "TestItem": "濡傦細鐥呮瘨閲囨牱", //蹇呴』鎸囧畾锛屾墦鍗伴」鐩悕绉�
+ "Barcode": "010203040506", //蹇呭~锛屾潯鐮佸彿
+ //浠ヤ笅淇℃伅鍜屾爣绛炬墦鍗扮殑鍐呭鏈夊叧锛屾牴鎹疄闄呮儏鍐佃祴鍊�
+ "PatientNo": "1002",
+ "PatientName": "寮犱笁",
+ "PatientSex": "鐢�",
+ "PatientAge": "18宀�",
+ "DeptDoc": "鐢宠绉戝",
+ "DeptTest": "妫�楠岀瀹�",
+ "SampleName": "鏍囨湰鍚嶇О",
+ "ItemAddTime": "2021-11-12 23:12:39"
+ }
+ };
+
+ if (Client.IsOpen) {
+ ClientSendToServerObj(itemObj);
+ console.log("鎵撳嵃鍗曠瀹屾垚");
+ Update_Con_Status("杩炴帴鎴愬姛 [鎵撳嵃鍗曠鍙戦�佸畬鎴怾");
+ } else {
+ console.log("鏈繛鎺ヨ澶囷紒");
+ Update_Con_Status("杩炴帴鏂紑 [鎵撳嵃鍗曠鍙戦�佸け璐");
+ }
+ }
+ function btn_click_Duo() {
+ console.log("鎵撳嵃澶氱");
+ var itemObj = {
+ "Code": 100, // 10锛岃〃绀� 鎵撳嵃椤圭洰锛孖temData 涓洪」鐩俊鎭�
+ "ItemDatas": [{
+ "TubeType": 1, //蹇呭~锛�1锛氱梾姣掞紝2锛氳瘯鍓�
+ "Id": "鎵撳嵃椤圭洰鐨勫敮涓�Id", //蹇呭~锛屾墦鍗伴」鐩殑鍞竴Id
+ "TestItem": "濡傦細鐥呮瘨閲囨牱", //蹇呴』鎸囧畾锛屾墦鍗伴」鐩悕绉�
+ "Barcode": "010203040506", //蹇呭~锛屾潯鐮佸彿
+ //浠ヤ笅淇℃伅鍜屾爣绛炬墦鍗扮殑鍐呭鏈夊叧锛屾牴鎹疄闄呮儏鍐佃祴鍊�
+ "PatientNo": "1002",
+ "PatientName": "寮犱笁",
+ "PatientSex": "鐢�",
+ "PatientAge": "18宀�",
+ "DeptDoc": "鐢宠绉戝",
+ "DeptTest": "妫�楠岀瀹�",
+ "SampleName": "鏍囨湰鍚嶇О",
+ "ItemAddTime": "2021-11-12 23:12:39"
+ }, {
+ "TubeType": 1, //蹇呭~锛�1锛氱梾姣掞紝2锛氳瘯鍓�
+ "Id": "鎵撳嵃椤圭洰鐨勫敮涓�Id1", //蹇呭~锛屾墦鍗伴」鐩殑鍞竴Id
+ "TestItem": "濡傦細鐥呮瘨閲囨牱1", //蹇呴』鎸囧畾锛屾墦鍗伴」鐩悕绉�
+ "Barcode": "010203040507", //蹇呭~锛屾潯鐮佸彿
+ //浠ヤ笅淇℃伅鍜屾爣绛炬墦鍗扮殑鍐呭鏈夊叧锛屾牴鎹疄闄呮儏鍐佃祴鍊�
+ "PatientNo": "1002",
+ "PatientName": "寮犱笁",
+ "PatientSex": "鐢�",
+ "PatientAge": "18宀�",
+ "DeptDoc": "鐢宠绉戝",
+ "DeptTest": "妫�楠岀瀹�",
+ "SampleName": "鏍囨湰鍚嶇О",
+ "ItemAddTime": "2021-11-12 23:12:39"
+ }]
+ };
+
+ if (Client.IsOpen) {
+ ClientSendToServerObj(itemObj);
+ console.log("鎵撳嵃澶氱瀹屾垚");
+ Update_Con_Status("杩炴帴鎴愬姛 [鎵撳嵃澶氱鍙戦�佸畬鎴怾");
+ } else {
+ console.log("鏈繛鎺ヨ澶囷紒");
+ Update_Con_Status("杩炴帴鏂紑 [鎵撳嵃澶氱鍙戦�佸け璐");
+ }
+ }
+ function btn_click_Clear() {
+ console.log("鎵撳嵃澶氱");
+ var itemObj = {
+ "Code": 11 // 10锛岃〃绀� 鎵撳嵃椤圭洰锛孖temData 涓洪」鐩俊鎭�
+ };
+
+ if (Client.IsOpen) {
+ ClientSendToServerObj(itemObj);
+ console.log("娓呴櫎璇曠瀹屾垚");
+ Update_Con_Status("杩炴帴鎴愬姛 [娓呴櫎璇曠鍙戦�佸畬鎴怾");
+ } else {
+ console.log("鏈繛鎺ヨ澶囷紒");
+ Update_Con_Status("杩炴帴鏂紑 [娓呴櫎璇曠鍙戦�佸け璐");
+ }
+ }
+</script>
+
+</html>
\ No newline at end of file
diff --git "a/\350\207\252\345\212\251\346\234\272\346\265\213\350\257\225/js/WebSocketClient.js" "b/\350\207\252\345\212\251\346\234\272\346\265\213\350\257\225/js/WebSocketClient.js"
new file mode 100644
index 0000000..069b496
--- /dev/null
+++ "b/\350\207\252\345\212\251\346\234\272\346\265\213\350\257\225/js/WebSocketClient.js"
@@ -0,0 +1,163 @@
+/**
+ * 鏈嶅姟鍦板潃
+ */
+let url = "ws://127.0.0.1:5050/";
+/**
+ * WebSocketClient 瀹㈡埛绔�
+ */
+let WebSocketClient;
+
+/**
+ * 瀹㈡埛绔姸鎬�
+ */
+let Client = {
+ /**鏄惁杩炴帴 */
+ IsOpen: false,
+ /**鏈�鏂版敹鍒扮殑鏈嶅姟绔俊鎭� */
+ Receive: null,
+ /**閲嶈繛妫�娴嬭鏃跺櫒 */
+ JiShiQi: null,
+ /**鎵撳紑浜嬩欢 */
+ OnOpen: null,
+ /**鍏抽棴浜嬩欢 */
+ OnClose: null,
+ /**鎺ユ敹鍒颁俊鎭簨浠� */
+ OnMsg: null,
+}
+
+/**
+ * 淇℃伅杩斿洖绫诲瀷
+ */
+let Result = {
+ Order: "",
+ Time: new Date()
+};
+
+/**
+ * 鎵撳紑杩炴帴瀹屾垚
+ * @param {*} model
+ */
+function OnOpen(model) {
+ console.log("鎵撳紑杩炴帴瀹屾垚");
+ Client.IsOpen = true;
+
+ if (typeof (Client.OnOpen) == 'function') {
+ Client.OnOpen();
+ }
+}
+
+/**
+ * 杩炴帴鏂紑
+ * @param {*} model
+ */
+function OnClose(model) {
+ // console.log("杩炴帴鏂紑");
+ Client.IsOpen = false;
+
+ if (typeof (Client.OnClose) == 'function') {
+ Client.OnClose();
+ }
+}
+
+/**
+ * 閿欒
+ * @param {*} error
+ */
+function OnError(error) {
+ //console.error(error);
+}
+
+/**
+ * 瀹㈡埛绔富鍔ㄥ悜鏈嶅姟绔彂閫佹秷鎭�
+ * @param {String} msg 鍙戦�佺殑瀛楃涓�
+ */
+function ClientSendToServerMsg(msg) {
+ if (msg != null && msg.length > 0) {
+ WebSocketClient.send(msg);
+ }
+}
+
+/**
+ * 瀹㈡埛绔富鍔ㄥ悜鏈嶅姟绔彂閫佸疄渚�
+ * @param {Object} obj 瀵硅薄瀹炰緥
+ */
+function ClientSendToServerObj(obj) {
+ if (null != obj) {
+ var msg = JSON.stringify(obj);
+ WebSocketClient.send(msg);
+ }
+}
+
+/**
+ * 鏁版嵁鎺ユ敹
+ * @param {*} model
+ */
+function OnMessage(model) {
+
+ var result = JSON.parse(model.data);
+ console.log(result);
+
+ Client.Receive = result;
+ // Result.Order = result.Order;
+ // Result.Time = new Date();
+
+ // ClientSendToServerObj(Result);
+
+ if (typeof (Client.OnMsg) == 'function') {
+ Client.OnMsg(result);
+ }
+}
+
+/**
+ * 鎵撳紑杩炴帴
+ */
+function Open() {
+
+ //闅旂鎵ц锛岃繛鎺ュけ璐ュ悗鍙户缁繛鎺�
+ (function () {
+
+ //鍒濆鍖栧弬鏁�
+ Client.IsOpen = false;
+ Client.Receive = null;
+
+ Result.Order = "";
+ Result.Time = new Date();
+
+ if ('WebSocket' in window) {
+ WebSocketClient = new WebSocket(url);
+ }
+ else if ('MozWebSocket' in window) {
+ WebSocketClient = new MozWebSocket(url);
+ }
+ else {
+ alert("娴忚鍣ㄤ笉鏀寔WebSocket");
+ }
+
+ WebSocketClient.onopen = OnOpen;
+ WebSocketClient.onclose = OnClose;
+ WebSocketClient.onerror = OnError;
+ WebSocketClient.onmessage = OnMessage;
+ })();
+}
+
+/**
+ * 妫�娴嬬姸鎬�
+ */
+function Detect() {
+ //宸茶繛鎺�
+ if (Client.IsOpen && WebSocketClient.readyState == 1) {
+ //Result.Time = new Date();
+ //ClientSendToServerObj(Result);
+ } else {
+ Open();
+ }
+ // console.log(Client);
+ // console.log(WebSocketClient);
+}
+
+
+//鍚姩
+(function () {
+ Open();
+ Client.JiShiQi = setInterval(Detect, 5000);
+})()
\ No newline at end of file
--
Gitblit v1.9.1