1
This commit is contained in:
@@ -16,8 +16,6 @@ class BaseSync(ABC):
|
||||
def __init__(self):
|
||||
self.redis_client = RedisClient()
|
||||
self.db_manager = DatabaseManager()
|
||||
self.computer_names = self._get_computer_names()
|
||||
self.computer_name_pattern = re.compile(COMPUTER_NAME_PATTERN)
|
||||
self.sync_stats = {
|
||||
'total_accounts': 0,
|
||||
'success_count': 0,
|
||||
@@ -26,14 +24,7 @@ class BaseSync(ABC):
|
||||
'avg_sync_time': 0
|
||||
}
|
||||
|
||||
def _get_computer_names(self) -> List[str]:
|
||||
"""获取计算机名列表"""
|
||||
if ',' in COMPUTER_NAMES:
|
||||
names = [name.strip() for name in COMPUTER_NAMES.split(',')]
|
||||
logger.info(f"使用配置的计算机名列表: {names}")
|
||||
return names
|
||||
return [COMPUTER_NAMES.strip()]
|
||||
|
||||
|
||||
@abstractmethod
|
||||
async def sync(self):
|
||||
"""执行同步(兼容旧接口)"""
|
||||
@@ -44,42 +35,7 @@ class BaseSync(ABC):
|
||||
"""批量同步数据"""
|
||||
pass
|
||||
|
||||
def _safe_float(self, value: Any, default: float = 0.0) -> float:
|
||||
"""安全转换为float"""
|
||||
if value is None:
|
||||
return default
|
||||
try:
|
||||
if isinstance(value, str):
|
||||
value = value.strip()
|
||||
if value == '':
|
||||
return default
|
||||
return float(value)
|
||||
except (ValueError, TypeError):
|
||||
return default
|
||||
|
||||
def _safe_int(self, value: Any, default: int = 0) -> int:
|
||||
"""安全转换为int"""
|
||||
if value is None:
|
||||
return default
|
||||
try:
|
||||
if isinstance(value, str):
|
||||
value = value.strip()
|
||||
if value == '':
|
||||
return default
|
||||
return int(float(value))
|
||||
except (ValueError, TypeError):
|
||||
return default
|
||||
|
||||
def _safe_str(self, value: Any, default: str = '') -> str:
|
||||
"""安全转换为str"""
|
||||
if value is None:
|
||||
return default
|
||||
try:
|
||||
result = str(value).strip()
|
||||
return result if result else default
|
||||
except:
|
||||
return default
|
||||
|
||||
|
||||
def _escape_sql_value(self, value: Any) -> str:
|
||||
"""转义SQL值"""
|
||||
if value is None:
|
||||
|
||||
Reference in New Issue
Block a user