Administrator
2024-04-18 15ee75f52d3258b14670d0487b36eae15a4e9dbc
code_attribute/code_data_util.py
@@ -7,9 +7,11 @@
import time
from code_attribute import gpcode_manager
from db import mysql_data, redis_manager
from db import mysql_data_delegate as mysql_data, redis_manager_delegate as redis_manager
from db.redis_manager_delegate import RedisUtils
from utils import tool
__db = 0
_redisManager = redis_manager.RedisManager(0)
@@ -18,7 +20,7 @@
    if code == '600066':
        print('进入调试')
    # 昨日收盘价
    price_close = gpcode_manager.get_price_pre(code)
    price_close = gpcode_manager.CodePrePriceManager.get_price_pre_cache(code)
    max_price = tool.to_price(decimal.Decimal(str(price_close)) * decimal.Decimal("1.1"))
    min_price = tool.to_price(decimal.Decimal(str(price_close)) * decimal.Decimal("0.9"))
    if min_price <= decimal.Decimal(str(price)) <= max_price:
@@ -28,17 +30,23 @@
# 自由流通股本工具类
class ZYLTGBUtil:
    __db = 0
    @classmethod
    def save(cls, code, val, unit):
        redis = _redisManager.getRedis()
        redis.setex("zyltgb-{}".format(code), tool.get_expire(),
                    round(float(val) * 100000000) if int(unit) == 0 else round(
                        float(val) * 10000))
        RedisUtils.setex(_redisManager.getRedis(), "zyltgb-{}".format(code), tool.get_expire(),
                         round(float(val) * 100000000) if int(unit) == 0 else round(
                             float(val) * 10000))
    @classmethod
    def save_async(cls, code, val, unit):
        RedisUtils.setex_async(cls.__db, "zyltgb-{}".format(code), tool.get_expire(),
                               round(float(val) * 100000000) if int(unit) == 0 else round(
                                   float(val) * 10000))
    @classmethod
    def get(cls, code):
        redis = _redisManager.getRedis()
        val = redis.get("zyltgb-{}".format(code))
        val = RedisUtils.get(_redisManager.getRedis(), "zyltgb-{}".format(code))
        if val is not None:
            return int(val)
        return None
@@ -66,7 +74,4 @@
if __name__ == "__main__":
    redis = _redisManager.getRedis()
    keys = redis.keys("zyltgb-*")
    for key in keys:
        redis.delete(key)
    pass