Compare commits
7 Commits
v4.2.2-bet
...
v4.2.2-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
792452c048 | ||
|
|
662eb0bc7f | ||
|
|
94a9bdbb93 | ||
|
|
df96183f42 | ||
|
|
dbdc2144b7 | ||
|
|
e34106f857 | ||
|
|
c3c07804cd |
@@ -189,13 +189,9 @@ MAA多账号管理与自动化软件
|
||||
|
||||
# 关于
|
||||
|
||||
## 未来开发方向
|
||||
## 项目开发情况
|
||||
|
||||
- [ ] 尝试接入更多开源社区成果
|
||||
- [ ] 支持对MAA运行状况的进一步识别
|
||||
- [x] 添加更多通知手段
|
||||
- [x] GUI界面美化
|
||||
- [ ] 软件相关web功能开发
|
||||
可在[《AUTO_MAA开发者协作文档》](https://docs.qq.com/aio/DQ3Z5eHNxdmxFQmZX)的`开发任务`页面中查看开发进度。
|
||||
|
||||
## 贡献者
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ from qfluentwidgets import (
|
||||
FolderValidator,
|
||||
BoolValidator,
|
||||
RangeValidator,
|
||||
qconfig,
|
||||
)
|
||||
|
||||
|
||||
@@ -125,6 +126,15 @@ class AppConfig:
|
||||
self.queue_config = QueueConfig()
|
||||
self.maa_config = MaaConfig()
|
||||
|
||||
config_list = self.search_config()
|
||||
for config in config_list:
|
||||
if config[0] == "Maa":
|
||||
qconfig.load(config[1], self.maa_config)
|
||||
self.maa_config.save()
|
||||
elif config[0] == "Queue":
|
||||
qconfig.load(config[1], self.queue_config)
|
||||
self.queue_config.save()
|
||||
|
||||
logger.info("配置类初始化完成")
|
||||
|
||||
def init_database(self, mode: str) -> None:
|
||||
@@ -378,6 +388,22 @@ class AppConfig:
|
||||
db.close()
|
||||
logger.info("数据文件版本更新完成")
|
||||
|
||||
def search_config(self) -> list:
|
||||
"""搜索所有子配置文件"""
|
||||
|
||||
config_list = []
|
||||
|
||||
if (self.app_path / "config/MaaConfig").exists():
|
||||
for subdir in (self.app_path / "config/MaaConfig").iterdir():
|
||||
if subdir.is_dir():
|
||||
config_list.append(["Maa", subdir / "config.json"])
|
||||
|
||||
if (self.app_path / "config/QueueConfig").exists():
|
||||
for json_file in (self.app_path / "config/QueueConfig").glob("*.json"):
|
||||
config_list.append(["Queue", json_file])
|
||||
|
||||
return config_list
|
||||
|
||||
def open_database(self, mode: str, index: str = None) -> None:
|
||||
"""打开数据库"""
|
||||
|
||||
@@ -459,6 +485,7 @@ class AppConfig:
|
||||
|
||||
self.maa_config.set(self.maa_config.MaaSet_Name, "")
|
||||
self.maa_config.set(self.maa_config.MaaSet_Path, ".")
|
||||
self.maa_config.set(self.maa_config.RunSet_ProxyTimesLimit, 0)
|
||||
self.maa_config.set(self.maa_config.RunSet_AnnihilationTimeLimit, 40)
|
||||
self.maa_config.set(self.maa_config.RunSet_RoutineTimeLimit, 10)
|
||||
self.maa_config.set(self.maa_config.RunSet_RunTimesLimit, 3)
|
||||
@@ -587,6 +614,9 @@ class MaaConfig(QConfig):
|
||||
MaaSet_Name = ConfigItem("MaaSet", "Name", "")
|
||||
MaaSet_Path = ConfigItem("MaaSet", "Path", ".", FolderValidator())
|
||||
|
||||
RunSet_ProxyTimesLimit = RangeConfigItem(
|
||||
"RunSet", "ProxyTimesLimit", 0, RangeValidator(0, 1024)
|
||||
)
|
||||
RunSet_AnnihilationTimeLimit = RangeConfigItem(
|
||||
"RunSet", "AnnihilationTimeLimit", 40, RangeValidator(1, 1024)
|
||||
)
|
||||
|
||||
@@ -137,8 +137,16 @@ class MaaManager(QObject):
|
||||
if self.isInterruptionRequested:
|
||||
break
|
||||
|
||||
user[1] = "运行"
|
||||
self.update_user_list.emit(user_list)
|
||||
if (
|
||||
self.set["RunSet"]["ProxyTimesLimit"] == 0
|
||||
or self.data[user[2]][14] < self.set["RunSet"]["ProxyTimesLimit"]
|
||||
):
|
||||
user[1] = "运行"
|
||||
self.update_user_list.emit(user_list)
|
||||
else:
|
||||
user[1] = "跳过"
|
||||
self.update_user_list.emit(user_list)
|
||||
continue
|
||||
|
||||
# 初始化代理情况记录和模式替换记录
|
||||
run_book = [False for _ in range(2)]
|
||||
@@ -851,7 +859,10 @@ class MaaManager(QObject):
|
||||
] = "False" # 自定义基建配置文件只读
|
||||
data["Configurations"]["Default"][
|
||||
"Infrast.CustomInfrastFile"
|
||||
] = f"{self.config_path}/simple/{self.data[index][16]}/infrastructure/infrastructure.json" # 自定义基建配置文件地址
|
||||
] = str(
|
||||
self.config_path
|
||||
/ f"simple/{self.data[index][16]}/infrastructure/infrastructure.json"
|
||||
) # 自定义基建配置文件地址
|
||||
|
||||
# 人工排查配置
|
||||
elif "人工排查" in mode:
|
||||
|
||||
@@ -578,6 +578,14 @@ class MaaSettingBox(QWidget):
|
||||
widget = QWidget()
|
||||
Layout = QVBoxLayout(widget)
|
||||
|
||||
self.ProxyTimesLimit = SpinBoxSettingCard(
|
||||
(0, 1024),
|
||||
FluentIcon.PAGE_RIGHT,
|
||||
"用户单日代理次数上限",
|
||||
"当用户本日代理成功次数超过该阈值时跳过代理,阈值为“0”时视为无代理次数上限",
|
||||
Config.maa_config.RunSet_ProxyTimesLimit,
|
||||
)
|
||||
|
||||
self.AnnihilationTimeLimit = SpinBoxSettingCard(
|
||||
(1, 1024),
|
||||
FluentIcon.PAGE_RIGHT,
|
||||
@@ -602,6 +610,7 @@ class MaaSettingBox(QWidget):
|
||||
Config.maa_config.RunSet_RunTimesLimit,
|
||||
)
|
||||
|
||||
Layout.addWidget(self.ProxyTimesLimit)
|
||||
Layout.addWidget(self.AnnihilationTimeLimit)
|
||||
Layout.addWidget(self.RoutineTimeLimit)
|
||||
Layout.addWidget(self.RunTimesLimit)
|
||||
@@ -707,7 +716,7 @@ class MaaSettingBox(QWidget):
|
||||
shutil.copy(
|
||||
file_path,
|
||||
Config.app_path
|
||||
/ f"config/MaaConfig/{self.name}/simple/{choice.input[0].currentIndex()}/infrastructure",
|
||||
/ f"config/MaaConfig/{self.name}/simple/{choice.input[0].currentIndex()}/infrastructure/infrastructure.json",
|
||||
)
|
||||
else:
|
||||
logger.warning("未选择自定义基建文件")
|
||||
@@ -963,11 +972,9 @@ class MaaSettingBox(QWidget):
|
||||
elif j == 5:
|
||||
curdate = server_date()
|
||||
if curdate != value:
|
||||
item = QTableWidgetItem("今日未代理")
|
||||
item = QTableWidgetItem("未代理")
|
||||
else:
|
||||
item = QTableWidgetItem(
|
||||
f"今日已代理{data_simple[i][14]}次"
|
||||
)
|
||||
item = QTableWidgetItem(f"已代理{data_simple[i][14]}次")
|
||||
item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
|
||||
elif j == 12:
|
||||
if Config.PASSWORD == "":
|
||||
@@ -1032,11 +1039,9 @@ class MaaSettingBox(QWidget):
|
||||
elif j == 5:
|
||||
curdate = server_date()
|
||||
if curdate != value:
|
||||
item = QTableWidgetItem("今日未代理")
|
||||
item = QTableWidgetItem("未代理")
|
||||
else:
|
||||
item = QTableWidgetItem(
|
||||
f"今日已代理{data_beta[i][14]}次"
|
||||
)
|
||||
item = QTableWidgetItem(f"已代理{data_beta[i][14]}次")
|
||||
item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
|
||||
elif j == 12:
|
||||
if Config.PASSWORD == "":
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"main_version": "4.2.2.0",
|
||||
"main_version": "4.2.2.1",
|
||||
"updater_version": "1.1.1.0",
|
||||
"announcement": "\n## 新增功能\n- 调度队列上线,支持MAA多开 #12\n- 公告系统上线\n## 修复BUG\n- 修复手机号码不全时引发的混乱\n- 添加了一堆BUG(确信)\n## 程序优化\n- 界面重构,引入`QFluentWidgets`美化界面",
|
||||
"announcement": "\n## 新增功能\n- 添加用户每日代理次数上限功能 #15\n## 修复BUG\n- 修复自定义基建无法正常使用的问题\n- 修正人工排查文案\n## 程序优化\n- 无",
|
||||
"proxy_list": [
|
||||
"",
|
||||
"https://gitproxy.click/",
|
||||
|
||||
Reference in New Issue
Block a user