优化导包顺序,修复颜色显示不正常的问题
This commit is contained in:
parent
c1a143aa8e
commit
78996e841c
@ -1,15 +1,15 @@
|
||||
import threading
|
||||
import time
|
||||
|
||||
import schedule
|
||||
import telebot
|
||||
import time
|
||||
import threading
|
||||
|
||||
from loguru import logger
|
||||
from telebot import types
|
||||
|
||||
from src.entity.finance import get_net_win_by_telegram_id
|
||||
from src.entity.visual_list import text_count_by_telegram_id
|
||||
from src.entity.pay_record import get_pay_failed_by_telegram_id
|
||||
from src.entity.user import get_all_users
|
||||
from src.entity.visual_list import text_count_by_telegram_id
|
||||
|
||||
TOKEN = '6013830443:AAGzq1Tgtr_ZejU7bv0mab14xOwi0_64d0w'
|
||||
bot = telebot.TeleBot(TOKEN)
|
||||
|
@ -3,12 +3,11 @@ import time
|
||||
import schedule
|
||||
from loguru import logger
|
||||
|
||||
from src.core.constant import BOT_TOKEN, COUNT_GROUP_ID
|
||||
from src.core.message_client import send_message
|
||||
from src.core.util import get_curr_day
|
||||
from src.entity.finance import get_net_win_by_user
|
||||
from src.entity.pay_record import get_pay_failed_by_user
|
||||
|
||||
from src.core.constant import BOT_TOKEN, COUNT_GROUP_ID
|
||||
from src.core.message_client import send_message
|
||||
from src.entity.user import get_user_by_username_and_password
|
||||
from src.entity.visual_list import text_count_by_user
|
||||
|
||||
|
@ -1,14 +1,15 @@
|
||||
import time
|
||||
from concurrent.futures import ThreadPoolExecutor
|
||||
from dataclasses import dataclass
|
||||
from typing import List
|
||||
|
||||
from loguru import logger
|
||||
|
||||
from src.core.api_request import account_post
|
||||
from src.core.constant import BANNER_URL, BOT_TOKEN, GROUP_ID
|
||||
from src.core.message_client import send_message
|
||||
from src.core.util import get_curr_day
|
||||
from src.entity.account import Account
|
||||
import time
|
||||
|
||||
from src.entity.member import get_today_new_member_list
|
||||
from src.entity.pay_record import get_latest_deposit_user
|
||||
from src.entity.user import User
|
||||
@ -47,7 +48,6 @@ def query_banner_info(account: Account):
|
||||
try:
|
||||
date = get_curr_day()
|
||||
banner_info = get_banner_info(account)
|
||||
from loguru import logger
|
||||
logger.debug(f'{account.name}请求成功:{banner_info}')
|
||||
logger.info(
|
||||
f'{time.strftime("%Y-%m-%d %H:%M:%S")} {account.name}:注册:{banner_info.registerMembers},首存:{banner_info.firstDepositNum},负盈利:{banner_info.netWinLose},有效:{banner_info.effectiveNew},活跃:{banner_info.activeMembers}')
|
||||
@ -87,4 +87,4 @@ def query_banner_info(account: Account):
|
||||
def get_banner_info_by_user(user: User) -> List[BannerInfo]:
|
||||
with ThreadPoolExecutor(max_workers=len(user.accounts)) as executor:
|
||||
futures = [executor.submit(get_banner_info, account) for account in user.accounts]
|
||||
return [future.result() for future in futures]
|
||||
return [future.result() for future in futures]
|
||||
|
@ -6,11 +6,11 @@ from typing import Dict, List, Optional
|
||||
|
||||
from src import logger
|
||||
from src.core import api_request, util
|
||||
from src.core.constant import PAY_RECORD_URL, PAY_RECORD_LIST_URL
|
||||
from src.core.constant import PAY_RECORD_LIST_URL, PAY_RECORD_URL
|
||||
from src.core.util import get_curr_day, get_first_day_month
|
||||
from src.entity.account import Account
|
||||
from src.entity.member import (async_get_member_detail_by_name,
|
||||
get_member_by_name, get_member_list, MemberList)
|
||||
from src.entity.member import (MemberList, async_get_member_detail_by_name,
|
||||
get_member_by_name, get_member_list)
|
||||
from src.entity.user import User, get_user_by_telegram_id
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
from dataclasses import dataclass
|
||||
from typing import List
|
||||
from cachetools import cached, TTLCache
|
||||
|
||||
from cachetools import TTLCache, cached
|
||||
from sqlalchemy import String, func
|
||||
from sqlalchemy.dialects.mssql import TINYINT
|
||||
from sqlalchemy.orm import Mapped, mapped_column, relationship
|
||||
|
@ -1,5 +1,6 @@
|
||||
from PyQt6.QtCore import QObject, pyqtSignal
|
||||
|
||||
|
||||
class GlobalSignals(QObject):
|
||||
user_data_updated = pyqtSignal()
|
||||
|
||||
|
@ -1,13 +1,15 @@
|
||||
import configparser
|
||||
import os
|
||||
import time
|
||||
|
||||
from loguru import logger
|
||||
from PyQt6.QtCore import QDate, QDateTime, Qt, QThreadPool, QTime, QTimer
|
||||
from PyQt6.QtGui import QColor, QIcon, QAction
|
||||
from PyQt6.QtGui import QAction, QColor, QIcon
|
||||
from PyQt6.QtWidgets import (QApplication, QCheckBox, QDateEdit, QHBoxLayout,
|
||||
QHeaderView, QMainWindow, QPushButton,
|
||||
QSizePolicy, QTableWidget, QTableWidgetItem,
|
||||
QTabWidget, QTextEdit, QVBoxLayout, QWidget, QMessageBox, QSystemTrayIcon, QMenu)
|
||||
QHeaderView, QMainWindow, QMenu, QMessageBox,
|
||||
QPushButton, QSizePolicy, QSystemTrayIcon,
|
||||
QTableWidget, QTableWidgetItem, QTabWidget,
|
||||
QTextEdit, QVBoxLayout, QWidget)
|
||||
|
||||
from src.core.message_client import send_message
|
||||
from src.core.util import convert_data, resource_path
|
||||
@ -116,14 +118,15 @@ class Application(QMainWindow):
|
||||
|
||||
def init_table_data(self):
|
||||
# 初始化表格数据
|
||||
# 例如,加载账户数据并更新表格
|
||||
for account in self.user.accounts:
|
||||
data = self.query_initial_data(account)
|
||||
self.update_table(account.username, data)
|
||||
data = self.query_initial_data(self.user)
|
||||
for row in data:
|
||||
time_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
|
||||
self.update_table(row.agentCode, [time_str, row.registerMembers, row.firstDepositNum, row.netWinLose,
|
||||
row.effectiveNew, row.activeMembers])
|
||||
|
||||
def query_initial_data(self, account):
|
||||
# 实际实现应该根据您的业务逻辑来定义
|
||||
return ReportTask.query_data_for_account(account)
|
||||
return ReportTask.query_data_for_user(account)
|
||||
|
||||
def setup_report_timer(self):
|
||||
self.report_timer = QTimer(self)
|
||||
@ -201,9 +204,10 @@ class Application(QMainWindow):
|
||||
def update_date_edit(self):
|
||||
# 更新日期选择器的日期为当前日期
|
||||
self.dateEdit.setDate(QDate.currentDate())
|
||||
# 强制刷新控件
|
||||
self.dateEdit.update()
|
||||
# 更新日期范围
|
||||
self.update_date_range()
|
||||
print(self.dateEdit.date())
|
||||
# 设置定时器每24小时触发一次
|
||||
self.date_update_timer.start(86400000)
|
||||
|
||||
@ -330,7 +334,7 @@ class Application(QMainWindow):
|
||||
|
||||
for col, cell_data in enumerate(data):
|
||||
cell = self.create_table_cell(cell_data, table, col)
|
||||
# 注意这里我们使用 row_count 而不是 0
|
||||
# 使用 row_count 而不是 0
|
||||
table.setItem(row_count, col, cell)
|
||||
self.handle_data_change(table, cell_data, col, account_username, notifications)
|
||||
|
||||
@ -354,7 +358,7 @@ class Application(QMainWindow):
|
||||
|
||||
def update_cell_color(self, table, col, count_change):
|
||||
# 更新单元格颜色
|
||||
cell = table.item(0, col)
|
||||
cell = table.item(table.rowCount() - 1, col)
|
||||
if count_change > 0:
|
||||
cell.setForeground(QColor(Qt.GlobalColor.green))
|
||||
elif count_change < 0:
|
||||
|
@ -1,8 +1,9 @@
|
||||
import time
|
||||
|
||||
from PyQt6.QtCore import QObject, QRunnable, pyqtSignal
|
||||
from src.entity.banner_info import get_banner_info
|
||||
from src.entity.finance import get_net_win_by_user, get_adjusted_salary
|
||||
|
||||
from src.entity.banner_info import get_banner_info, get_banner_info_by_user
|
||||
from src.entity.finance import get_adjusted_salary, get_net_win_by_user
|
||||
from src.entity.pay_record import get_pay_failed_by_user
|
||||
from src.entity.visual_list import text_count_by_user
|
||||
|
||||
@ -30,6 +31,11 @@ class ReportTask(QRunnable):
|
||||
return [time_str, banner_info.registerMembers, banner_info.firstDepositNum, banner_info.netWinLose,
|
||||
banner_info.effectiveNew, banner_info.activeMembers]
|
||||
|
||||
@staticmethod
|
||||
def query_data_for_user(user):
|
||||
banner_info_res = get_banner_info_by_user(user)
|
||||
return banner_info_res
|
||||
|
||||
|
||||
class ButtonTask(QRunnable):
|
||||
def __init__(self, query_type, selected_date_str, user):
|
||||
|
Loading…
Reference in New Issue
Block a user