This commit is contained in:
睿 安
2026-01-21 16:48:36 +08:00
commit abba5cb273
246 changed files with 57473 additions and 0 deletions

0
app/ui/home/__init__.py Normal file
View File

View File

@@ -0,0 +1,79 @@
from PyQt5.QtCore import Qt, pyqtSignal, QThread, QUrl
from PyQt5.QtGui import QFont, QDesktopServices
from PyQt5.QtWidgets import QWidget, QMessageBox
from app.ui.Icon import Icon
from .home_windowUi import Ui_Dialog
from ...person import Me
Stylesheet = """
QPushButton{
border-radius: 5px;
padding: 8px;
border-right: 2px solid #888888; /* 按钮边框2px宽白色 */
border-bottom: 2px solid #888888; /* 按钮边框2px宽白色 */
border-left: 1px solid #ffffff; /* 按钮边框2px宽白色 */
border-top: 1px solid #ffffff; /* 按钮边框2px宽白色 */
}
QPushButton:hover {
background-color: lightgray;
}
"""
class HomeWindow(QWidget, Ui_Dialog):
load_finish_signal = pyqtSignal(bool)
def __init__(self, parent=None):
super().__init__(parent)
self.setupUi(self)
self.init_ui()
self.setStyleSheet(Stylesheet)
self.load_finish_signal.emit(True)
self.btn_report.clicked.connect(self.report)
self.btn_save.clicked.connect(self.save_info)
def init_ui(self):
self.label_wxid.setText(Me().wxid)
self.lineEdit_name.setText(Me().name)
self.lineEdit_phone.setText(Me().mobile)
def save_info(self):
if self.lineEdit_name.text():
Me().name = self.lineEdit_name.text()
else:
QMessageBox.critical(self, "错误",
"昵称不能为空")
return
if self.lineEdit_phone.text():
Me().mobile = self.lineEdit_phone.text()
else:
QMessageBox.critical(self, "错误",
"手机号不能为空")
return
Me().save_info()
QMessageBox.information(self, "修改成功",
"个人信息修改成功")
def report(self):
time_range = ['2023-01-01 00:00:00', '2024-02-10 00:00:00']
self.report_thread = ReportThread(Me(), time_range)
self.report_thread.start()
QDesktopServices.openUrl(QUrl(f"http://127.0.0.1:21314/"))
class ReportThread(QThread):
okSignal = pyqtSignal(bool)
def __init__(self, contact, time_range=None):
super().__init__()
self.contact = contact
self.time_range = time_range
def run(self):
from app.web_ui import web
web.contact = self.contact
web.time_range = self.time_range
web.run(port='21314')
self.okSignal.emit(True)

View File

@@ -0,0 +1,109 @@
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'home_windowUi.ui'
#
# Created by: PyQt5 UI code generator 5.15.10
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(590, 547)
font = QtGui.QFont()
font.setFamily("微软雅黑")
Dialog.setFont(font)
self.verticalLayout_2 = QtWidgets.QVBoxLayout(Dialog)
self.verticalLayout_2.setObjectName("verticalLayout_2")
spacerItem = QtWidgets.QSpacerItem(20, 157, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_2.addItem(spacerItem)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem1)
self.verticalLayout = QtWidgets.QVBoxLayout()
self.verticalLayout.setObjectName("verticalLayout")
self.btn_report = QtWidgets.QPushButton(Dialog)
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(30)
self.btn_report.setFont(font)
self.btn_report.setObjectName("btn_report")
self.verticalLayout.addWidget(self.btn_report)
self.label = QtWidgets.QLabel(Dialog)
self.label.setAlignment(QtCore.Qt.AlignCenter)
self.label.setObjectName("label")
self.verticalLayout.addWidget(self.label)
self.gridLayout = QtWidgets.QGridLayout()
self.gridLayout.setObjectName("gridLayout")
self.label_4 = QtWidgets.QLabel(Dialog)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 0, 0, 1, 1)
self.lineEdit_phone = QtWidgets.QLineEdit(Dialog)
self.lineEdit_phone.setStyleSheet("background:transparent;\n"
"\n"
" border-radius:5px;\n"
" border-top: 0px solid #b2e281;\n"
" border-bottom: 2px solid black;\n"
" border-right: 0px solid #b2e281;\n"
" border-left: 0px solid #b2e281;\n"
"\n"
"\n"
" border-style:outset\n"
" ")
self.lineEdit_phone.setFrame(False)
self.lineEdit_phone.setObjectName("lineEdit_phone")
self.gridLayout.addWidget(self.lineEdit_phone, 0, 1, 1, 1)
self.lineEdit_name = QtWidgets.QLineEdit(Dialog)
self.lineEdit_name.setStyleSheet("background:transparent;\n"
"\n"
" border-radius:5px;\n"
" border-top: 0px solid #b2e281;\n"
" border-bottom: 2px solid black;\n"
" border-right: 0px solid #b2e281;\n"
" border-left: 0px solid #b2e281;\n"
"\n"
"\n"
" border-style:outset\n"
" ")
self.lineEdit_name.setFrame(False)
self.lineEdit_name.setObjectName("lineEdit_name")
self.gridLayout.addWidget(self.lineEdit_name, 1, 1, 1, 1)
self.label_wxid = QtWidgets.QLabel(Dialog)
self.label_wxid.setText("")
self.label_wxid.setObjectName("label_wxid")
self.gridLayout.addWidget(self.label_wxid, 2, 1, 1, 1)
self.label_5 = QtWidgets.QLabel(Dialog)
self.label_5.setObjectName("label_5")
self.gridLayout.addWidget(self.label_5, 1, 0, 1, 1)
self.label_6 = QtWidgets.QLabel(Dialog)
self.label_6.setObjectName("label_6")
self.gridLayout.addWidget(self.label_6, 2, 0, 1, 1)
self.verticalLayout.addLayout(self.gridLayout)
self.btn_save = QtWidgets.QPushButton(Dialog)
self.btn_save.setObjectName("btn_save")
self.verticalLayout.addWidget(self.btn_save)
self.horizontalLayout.addLayout(self.verticalLayout)
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem2)
self.verticalLayout_2.addLayout(self.horizontalLayout)
spacerItem3 = QtWidgets.QSpacerItem(20, 157, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_2.addItem(spacerItem3)
self.retranslateUi(Dialog)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
_translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
self.btn_report.setText(_translate("Dialog", "我的年度聊天报告"))
self.label.setText(_translate("Dialog", "修改个人信息"))
self.label_4.setText(_translate("Dialog", "手机号"))
self.label_5.setText(_translate("Dialog", "微信昵称"))
self.label_6.setText(_translate("Dialog", "wxid"))
self.btn_save.setText(_translate("Dialog", "保存"))