From 06e0e3b7d61e95902a6129de2490461cd0693e1d Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 15 十月 2025 15:06:40 +0800
Subject: [PATCH] 新增异步方法并优化服务调用逻辑在多个数据库文件中进行了二进制文件的修改、删除和新增操作,可能涉及数据库内容的更新或重建。在 HttpsClient.cs文件中新增了 PostNotLimitAsync方法,用于发送支持 JSON 格式的异步 HTTP POST 请求,并记录请求和响应参数。在 AgingInOrOutInputService.cs文件中,将 HttpsClient.PostAsync替换为PostNotLimitAsync,以利用新方法的功能特性。同时删除了不再需要的注释代码。
---
Code Management/WCS/WIDESEAWCS_Client/src/views/Home.vue | 235 +++++++---------------------------------------------------
1 files changed, 28 insertions(+), 207 deletions(-)
diff --git a/Code Management/WCS/WIDESEAWCS_Client/src/views/Home.vue b/Code Management/WCS/WIDESEAWCS_Client/src/views/Home.vue
index e327eb1..134ace2 100644
--- a/Code Management/WCS/WIDESEAWCS_Client/src/views/Home.vue
+++ b/Code Management/WCS/WIDESEAWCS_Client/src/views/Home.vue
@@ -1,171 +1,38 @@
<template>
- <div class="home-contianer">
- <div>
- <el-tabs type="border-card" @tab-click="handleClick" style="width: 100%; height: 100%;">
- <el-tab-pane label="闄堝寲搴�" style="width: 100%;height: 100%;">
- <div class="StackerOne">
- <div class="content">{{ this.StackerOne.deviceName }}:</div>
- <!-- <div :class="this.ConveyorlineOut.data.command.interactiveSignal==1 ? 'bool_false' : 'bool_true'"></div> -->
- <div class="content">浠诲姟鍙凤細{{ this.StackerOne.data.currentTaskNum }}</div>
- <div class="content display">
- <div>宸ヤ綔妯″紡锛歿{ this.StackerOne.data.stackerCraneAutoStatusDes }}</div>
- <div :class="this.StackerOne.data.stackerCraneAutoStatusDes != '鑷姩' ? 'bool_false' : 'bool_true'"></div>
- </div>
- <div class="content display">
- <div>璁惧鐘舵�侊細{{ this.StackerOne.data.stackerCraneStatusDes }}</div>
- <div :class="this.StackerOne.data.stackerCraneStatusDes != '姝e父' ? 'bool_false' : 'bool_true'"></div>
- </div>
- <div class="content display">
- <div>浣滀笟鐘舵�侊細{{ this.StackerOne.data.stackerCraneWorkStatusDes }}</div>
- <div :class="this.StackerOne.data.stackerCraneWorkStatusDes != '寰呮満' ? 'bool_false' : 'bool_true'"></div>
- </div>
- </div>
- <div class="ConveyorlineOut">
- <div class="content">{{ this.ConveyorlineOut.deviceName }}-----{{
- this.ConveyorlineOut.data.childDeviceCode}}:</div>
- <div class="display">
- <div>
- <div class="Signal">璇诲彇淇″彿锛�</div>
- <div class="content ">浠诲姟鍙凤細{{ this.ConveyorlineOut.data.command.taskNum }}</div>
- <div class="content ">鎵樼洏鍙凤細{{ this.ConveyorlineOut.data.command.barcode }}</div>
- <div class="content ">缁堢偣鍦板潃锛歿{ this.ConveyorlineOut.data.command.targetAddress}}</div>
- <div class="content display">
- <div>鎵爜绔欏彴鍏ュ簱璇锋眰锛�</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[0] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- <div class="content display">
- <div>鍫嗗灈鏈哄嚭搴撶珯鍙拌姹傦細</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[2] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- <div class="content display">
- <div>鍫嗗灈鏈哄叆搴撶珯鍙拌姹�</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[4] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- <div class="content display">
- <div>绾夸綋鍑哄簱鍙h姹傦細</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[6] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- </div>
- <div style="margin-left: 40px;">
- <div class="Signal">鍐欏叆淇″彿锛�</div>
- <div class="content ">浠诲姟鍙凤細{{ this.ConveyorlineOut.data.commandWrite.taskNum }}</div>
- <div class="content ">鎵樼洏鍙凤細{{ this.ConveyorlineOut.data.commandWrite.barcode }}</div>
- <div class="content ">缁堢偣鍦板潃锛歿{ this.ConveyorlineOut.data.commandWrite.targetAddress}}</div>
- <div class="content display">
- <div>鎵爜绔欏彴鍏ュ簱璇锋眰锛�</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[1] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- <div class="content display">
- <div>鍫嗗灈鏈哄嚭搴撶珯鍙拌姹傦細</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[3] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- <div class="content display">
- <div>鍫嗗灈鏈哄叆搴撶珯鍙拌姹�</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[5] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- <div class="content display">
- <div>绾夸綋鍑哄簱鍙h姹傦細</div>
- <div
- :class="this.ConveyorlineOut.data.writeInteractiveSignal[7] != true ? 'bool_false' : 'bool_true'">
- </div>
- </div>
- </div>
- </div>
- </div>
- </el-tab-pane>
- <el-tab-pane label="闈欑疆搴�" id="print-content">
-
- </el-tab-pane>
- <el-tab-pane label="鍒嗗搴�" id="print-content">
-
- </el-tab-pane><el-tab-pane label="楂樻俯搴�" id="print-content">
-
- </el-tab-pane>
- <el-tab-pane label="甯告俯搴�" id="print-content">
-
- </el-tab-pane>
- </el-tabs>
- </div>
- </div>
+ <div class="title"></div>
+ <el-container>
+ <el-header>鏃ュ織</el-header>
+ <el-main>
+ <el-card v-for="(log, index) in logs" :key="index" class="log-card" :style="{ color: log.color }">
+ <div :style="{ color: log.color }">{{ log.logEntry }}</div>
+ <div :style="{ color: log.color }">{{ log.time }}</div>
+ </el-card>
+ </el-main>
+ </el-container>
</template>
<script>
-import { ref, reactive } from 'vue'
-import eventBus from "../uitils/eventBus";
+import { ref, onMounted } from 'vue'
+import eventBus from "@/uitils/eventBus";
+
export default {
setup() {
- return {
- StackerOne: {
- deviceName: "",
- data: {},
- },
- ConveyorlineOut: {
- deviceName: "",
- data: {
- command: {},
- commandWrite: {},
- writeInteractiveSignal:[],
- },
- },
- ConveyorlineIn: {
- deviceName: "",
- data: {
- command: {},
- commandWrite: {},
- writeInteractiveSignal:[],
- },
- }
- }
-
- },
- methods: {
- intToBitArrayFromBinaryString (num, numBits){
- // 灏嗘暣鏁拌浆鎹负浜岃繘鍒跺瓧绗︿覆锛屽苟浣跨敤padStart鏂规硶琛ヨ冻鍒版寚瀹氱殑浣嶆暟锛堝墠闈㈣ˉ0锛�
- let binaryString = num.toString(2).padStart(numBits, '0');
- let bitArray = [];
- for (let i = 0; i < numBits; i++) {
- // 鐩存帴鏍规嵁瀛楃涓蹭腑瀛楃鏄惁涓�'1'鏉ョ‘瀹氭瘡涓�浣嶇殑鍊硷紙杞崲涓哄竷灏斿�硷級
- bitArray.push(binaryString[i] === '1');
+ const logs = ref([]);
+ onMounted(() => {
+ eventBus.on('Logs', eventData => {
+ if (logs.value.length > 500) {
+ logs.value = [];
}
- return bitArray;
+ const logEntry = "鏃ュ織淇℃伅锛�" + eventData.log
+ const time = "鏃堕棿锛�" + eventData.time
+ logs.value.unshift({ logEntry: logEntry, time: time, color: eventData.color });
+
+ // logs.value.unshift(logEntry);
+ });
+ });
+ return {
+ logs
}
- },
- mounted() {
- eventBus.on('stackerData', eventData => {
- if (eventData.deviceName == "闄堝寲1鍙峰爢鍨涙満") {
- this.StackerOne.deviceName = eventData.deviceName;
- this.StackerOne.data = eventData.data
- }
- // console.log(eventData);
- })
- eventBus.on('locationData', eventData => {
- console.log(eventData);
- if (eventData.deviceName == "闄堝寲鍑哄簱杈撻�佺嚎") {
- this.ConveyorlineOut.deviceName = eventData.deviceName;
- this.ConveyorlineOut.data = eventData.data
- }
- if (eventData.data.childDeviceCode == '1018') {
- this.ConveyorlineIn.deviceName = eventData.deviceName;
- this.ConveyorlineIn.data = eventData.data
- let number = eventData.data.commandWrite.writeInteractiveSignal
- this.ConveyorlineIn.data.writeInteractiveSignal = this.intToBitArrayFromBinaryString(number, 8);
- console.log(this.ConveyorlineIn.data.writeInteractiveSignal);
- }
- })
}
}
</script>
@@ -178,53 +45,7 @@
color: orange;
}
-.bool_true {
- width: 30px;
- height: 20px;
- margin-top: 10px;
- margin-left: 10px;
- background-color: rgb(99, 155, 16);
-}
-
-.bool_info {
- width: 30px;
- height: 10px;
- background-color: #ccc;
-}
-
-.StackerOne {
- width: 100%;
+.log-card {
margin-bottom: 10px;
- padding-left: 30px;
- font-size: 25px;
- border: 1px solid #ccc;
-}
-
-.ConveyorlineOut {
- width: 100%;
- margin-bottom: 10px;
- padding-left: 30px;
- font-size: 25px;
- border: 1px solid #ccc;
-}
-
-.bool_false {
- display: block;
- width: 30px;
- height: 20px;
- margin-top: 10px;
- margin-left: 10px;
- background-color: rgb(204, 71, 71);
-}
-
-.content {
- margin-bottom: 20px;
-}
-.Signal{
- margin-bottom: 20px;
- color:blueviolet;
-}
-.display {
- display: flex;
}
</style>
\ No newline at end of file
--
Gitblit v1.9.3