From 5648819608a812a34a6ec757a2cbed5e5141777d Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期一, 01 九月 2025 16:31:38 +0800
Subject: [PATCH] 动态总大单公式修改

---
 utils/huaxin_util.py |   57 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 49 insertions(+), 8 deletions(-)

diff --git a/utils/huaxin_util.py b/utils/huaxin_util.py
index 189db1e..2ce0e45 100644
--- a/utils/huaxin_util.py
+++ b/utils/huaxin_util.py
@@ -1,12 +1,17 @@
 # 鎶ュ崟鐘舵��
-TORA_TSTP_OST_Cached = 0  # 棰勫煁
-TORA_TSTP_OST_Unknown = 1  # 鏈煡
-TORA_TSTP_OST_Accepted = 2  # 浜ゆ槗鎵�宸叉帴鏀�
-TORA_TSTP_OST_PartTraded = 3  # 閮ㄥ垎鎴愪氦
-TORA_TSTP_OST_AllTraded = 4  # 鍏ㄩ儴鎴愪氦
-TORA_TSTP_OST_PartTradeCanceled = 5  # 閮ㄦ垚閮ㄦ挙
-TORA_TSTP_OST_AllCanceled = 6  # 鍏ㄩ儴鎾ゅ崟
-TORA_TSTP_OST_Rejected = 7  # 浜ゆ槗鎵�宸叉嫆缁�
+import random
+import threading
+
+from utils import tool
+
+TORA_TSTP_OST_Cached = '0'  # 棰勫煁
+TORA_TSTP_OST_Unknown = '1'  # 鏈煡
+TORA_TSTP_OST_Accepted = '2'  # 浜ゆ槗鎵�宸叉帴鏀�
+TORA_TSTP_OST_PartTraded = '3'  # 閮ㄥ垎鎴愪氦
+TORA_TSTP_OST_AllTraded = '4'  # 鍏ㄩ儴鎴愪氦
+TORA_TSTP_OST_PartTradeCanceled = '5'  # 閮ㄦ垚閮ㄦ挙
+TORA_TSTP_OST_AllCanceled = '6'  # 鍏ㄩ儴鎾ゅ崟
+TORA_TSTP_OST_Rejected = '7'  # 浜ゆ槗鎵�宸叉嫆缁�
 TORA_TSTP_OST_SendTradeEngine = '#'  # 鍙戝線浜ゆ槗鏍稿績
 
 # 鎶ュ崟浠锋牸鏉′欢
@@ -27,3 +32,39 @@
 TORA_TSTP_EXD_SZSE = 2  # 娣卞湷浜ゆ槗鎵�
 TORA_TSTP_EXD_HK = 3  # 棣欐腐浜ゆ槗鎵�
 TORA_TSTP_EXD_BSE = 4  # 鍖椾含璇佸埜浜ゆ槗鎵�
+
+
+# 鏄惁鍙互鎾ゅ崟
+def is_can_cancel(state):
+    if state == TORA_TSTP_OST_Cached or state == TORA_TSTP_OST_Unknown or state == TORA_TSTP_OST_Accepted or state == TORA_TSTP_OST_PartTraded:
+        return True
+    return False
+
+
+# 鏄惁宸茬粡鎾ゅ崟
+def is_canceled(state):
+    if state == TORA_TSTP_OST_AllCanceled or state == TORA_TSTP_OST_PartTradeCanceled:
+        return True
+    return False
+
+
+# 鏄惁宸茬粡鎴愪氦
+def is_deal(state):
+    if state == TORA_TSTP_OST_PartTraded or state == TORA_TSTP_OST_AllTraded or state == TORA_TSTP_OST_PartTradeCanceled:
+        return True
+    return False
+
+
+__order_ref_lock = threading.RLock()
+__public_order_ref = int(tool.get_now_time_str().replace(":", ""))
+
+
+# 鍒涘缓璁㈠崟寮曠敤
+def create_order_ref():
+    __order_ref_lock.acquire()
+    try:
+        global __public_order_ref
+        __public_order_ref += random.randint(5, 20)
+        return __public_order_ref
+    finally:
+        __order_ref_lock.release()

--
Gitblit v1.8.0