72 lines
2.7 KiB
Python
72 lines
2.7 KiB
Python
from PyQt5 import QtWidgets, QtCore
|
|
from PyQt5.QtWidgets import QApplication, QWidget, QGridLayout, QLabel, QPushButton, QTextEdit
|
|
from selenium import webdriver
|
|
from selenium.webdriver.support.ui import WebDriverWait
|
|
from selenium.webdriver.support import expected_conditions as EC
|
|
from selenium.webdriver.chrome.options import Options
|
|
from selenium.webdriver.chrome.service import Service #웨일
|
|
# from webdriver_manager.chrome import ChromeDriverManager #웨일
|
|
import time
|
|
import ctypes
|
|
import atexit
|
|
|
|
from login import login
|
|
import sys
|
|
from navigate import navigate_to_new_product_registration
|
|
from modify_products import modify_products
|
|
from database import setup_database
|
|
from utils import log
|
|
from config import WEBSITE_URL
|
|
from credentials import load_credentials, save_credentials
|
|
from ai.gemini import ImageDescriptionGenerator
|
|
from login_widget import LoginWidget
|
|
from mongo_config import MongoConfig
|
|
from PyQt5 import QtCore, QtWidgets
|
|
from logger_module import setup_logger
|
|
import logging
|
|
class MainWindow(QWidget):
|
|
def __init__(self, mongo_config, logger, CURRENT_VERSION):
|
|
super().__init__()
|
|
self.mongo_config = mongo_config
|
|
self.logger = logger
|
|
self.CURRENT_VERSION = CURRENT_VERSION
|
|
self.initUI()
|
|
|
|
def initUI(self):
|
|
self.setWindowTitle('AutoPercenty by 리앤수인터')
|
|
self.setGeometry(300, 300, 600, 500) # 위치와 크기 설정
|
|
|
|
grid = QGridLayout()
|
|
self.setLayout(grid)
|
|
|
|
# 로그인 정보와 작업 상태 정보 라벨 추가
|
|
self.loginInfoLabel = QLabel('로그인 정보가 여기 표시됩니다.')
|
|
grid.addWidget(self.loginInfoLabel, 0, 0, 1, 2)
|
|
|
|
self.workStatusLabel = QLabel('작업 상태 정보가 여기 표시됩니다.')
|
|
grid.addWidget(self.workStatusLabel, 0, 2, 1, 1)
|
|
|
|
# 로그인 버튼 추가
|
|
self.loginButton = QPushButton('로그인')
|
|
self.loginButton.clicked.connect(self.openLoginWidget)
|
|
grid.addWidget(self.loginButton, 1, 0)
|
|
|
|
# 로그 박스 추가
|
|
self.logBox = QTextEdit()
|
|
self.logBox.setReadOnly(True)
|
|
grid.addWidget(self.logBox, 2, 0, 3, 3) # 2행 0열부터 4행 2열까지
|
|
|
|
def openLoginWidget(self):
|
|
# 여기서 LoginWidget 인스턴스를 생성하고 표시합니다.
|
|
self.login_widget = LoginWidget(self.mongo_config, self.CURRENT_VERSION)
|
|
self.login_widget.show()
|
|
|
|
def main():
|
|
CURRENT_VERSION = "1.0.1"
|
|
app = QApplication(sys.argv)
|
|
mongo_config = MongoConfig()
|
|
logger = setup_logger('default_logger', 'application.log', level=logging.DEBUG)
|
|
main_window = MainWindow(mongo_config, logger,CURRENT_VERSION)
|
|
main_window.show()
|
|
sys.exit(app.exec_())
|