From f4b6b26b1ec37a534fcfc85dda943536d236ebd8 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Thu, 23 Oct 2025 17:24:21 +0800
Subject: [PATCH] 邮箱手机绑定

---
 trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java |   34 ++++++++++++++++++++++++++++++++--
 1 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
index e403aa1..36178dc 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
@@ -29,6 +29,7 @@
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.text.DecimalFormat;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -60,6 +61,9 @@
 			List<Realtime> data = this.dataService.realtime(symbol);
 			data.forEach(d->{
 				Item bySymbol = itemService.findBySymbol(d.getSymbol());
+				if (bySymbol == null) {
+					return;
+				}
 				if(LangUtils.isEnItem()){
 					bySymbol.transName();
 				}
@@ -80,10 +84,36 @@
 					d.setAmount(d.getAmount().setScale(2, RoundingMode.HALF_UP));
 				}
 				d.setSymbolData(bySymbol.getSymbolData());
-
+				BigDecimal open = DataCache.getLatestOpen(d.getSymbol());
+				if (open != null) {
+					d.setOpen(open);
+				}
 			});
-			return Result.ok(data);
+
+			List<Realtime> result = new ArrayList<>();
+			if (!data.isEmpty()) {
+				Realtime realtime = data.stream().filter(x -> x.getSymbol().equalsIgnoreCase("btcusdt")).findFirst().orElse(null);
+				if (realtime != null) {
+					result.add(realtime);
+					data.remove(realtime);
+				}
+				Realtime realtime2 = data.stream().filter(x -> x.getSymbol().equalsIgnoreCase("ethusdt")).findFirst().orElse(null);
+				if (realtime2 != null) {
+					result.add(realtime2);
+					data.remove(realtime2);
+				}
+				Realtime realtime3 = data.stream().filter(x -> x.getSymbol().equalsIgnoreCase("xrpusdt")).findFirst().orElse(null);
+				if (realtime3 != null) {
+					result.add(realtime3);
+					data.remove(realtime3);
+				}
+				if (!data.isEmpty()) {
+					result.addAll(data);
+				}
+			}
+			return Result.ok(result);
 		} catch (Exception e) {
+			e.printStackTrace();
 			log.error("c", e);
 			throw  new YamiShopBindException("生成实时数据失败");
 		}

--
Gitblit v1.9.3