修复全DLC列表错误问题

修复文本描述错误问题
增加默认测试列表,并非单个
This commit is contained in:
JackLee_CN 2024-10-14 18:13:16 +08:00
parent 0b55dfd546
commit 6b9bb016c8
4 changed files with 55 additions and 21 deletions

View File

@ -99,4 +99,8 @@ extern QStringList ex_in_dlc_table_head_tips;
extern QStringList ex_all_dlc_table_head_tips; extern QStringList ex_all_dlc_table_head_tips;
extern QStringList ex_default_src_name;
extern QStringList ex_default_src_url;
#endif #endif

View File

@ -17,6 +17,18 @@ QStringList ex_in_dlc_table_head_tips = {QStringLiteral("已增加DLC")};
QStringList ex_all_dlc_table_head_tips = {QStringLiteral("DLC列表")}; QStringList ex_all_dlc_table_head_tips = {QStringLiteral("DLC列表")};
QStringList ex_default_src_name = {QStringLiteral("ikun0014"),
QStringLiteral("ManifestHub "),
QStringLiteral("fast_ikun0014"),
QStringLiteral("fast_ManifestHub ")
};
QStringList ex_default_src_url = {QStringLiteral("https://github.com/ikun0014/ManifestHub"),
QStringLiteral("https://github.com/ManifestHub/ManifestHub.git"),
QStringLiteral("https://githubfast.com/ikun0014/ManifestHub.git"),
QStringLiteral("https://githubfast.com/ManifestHub/ManifestHub.git"),
};
GloablData _data; GloablData _data;
#endif // STEAM_BASE_EX_H #endif // STEAM_BASE_EX_H

View File

@ -255,6 +255,9 @@ bool xsteam_curl_steam_id_app_info(std::string uid, UidData &u_data)
{ {
if (data.key() == "dlc") if (data.key() == "dlc")
{ {
if (data.value().size() > 0)
{
u_data.r_dlc.clear();
for (auto x : data.value()) for (auto x : data.value())
{ {
u_data.r_dlc.push_back(x.dump()); u_data.r_dlc.push_back(x.dump());
@ -263,6 +266,7 @@ bool xsteam_curl_steam_id_app_info(std::string uid, UidData &u_data)
} }
} }
} }
}
if (u_data.name != "") if (u_data.name != "")
{ {
//_data.u_data.push_back(u_data); //_data.u_data.push_back(u_data);
@ -359,11 +363,15 @@ void xsteam_save_data_read()
{ {
// 当本地保存数据文件不存在或者读取data.json文件出错或者导致用户修改配置使得读取data.json出错. // 当本地保存数据文件不存在或者读取data.json文件出错或者导致用户修改配置使得读取data.json出错.
// 默认测试数据源 // 默认测试数据源
for (int i = 0; i <= ex_default_src_name.count() - 1; i++)
{
SrcData _src_data; SrcData _src_data;
_src_data.src_name = "FastGitHud"; _src_data.src_name = ex_default_src_name[i].toStdString();
_src_data.src_url = "https://githubfast.com/ManifestHub/ManifestHub.git"; _src_data.src_url = ex_default_src_url[i].toStdString();
_src_data.src_type = GIT_MODE::TAG; _src_data.src_type = GIT_MODE::TAG;
_data.s_data.push_back(_src_data); _data.s_data.push_back(_src_data);
}
// 默认配置 // 默认配置
_data.x_config.font = 0; _data.x_config.font = 0;
_data.x_config.font_bold = 0; _data.x_config.font_bold = 0;
@ -598,7 +606,8 @@ void xsteam_delete_uid_st(std::string uid)
{ {
it = _data.u_data.erase(it); it = _data.u_data.erase(it);
QFile st(QString::fromStdString(_data.x_config.steamtools_st_dir + uid + ".st")); QFile st(QString::fromStdString(_data.x_config.steamtools_st_dir + uid + ".st"));
if(st.exists()){ if (st.exists())
{
st.remove(); st.remove();
} }
xsteam_save_data_write(); xsteam_save_data_write();
@ -606,9 +615,11 @@ void xsteam_delete_uid_st(std::string uid)
} }
} }
} }
bool xsteam_src_data_exists(std::string src_name){ bool xsteam_src_data_exists(std::string src_name)
{
QString save_file_str = ex_save_path_ex + "tags_" + QString::fromStdString(src_name) + ".data"; QString save_file_str = ex_save_path_ex + "tags_" + QString::fromStdString(src_name) + ".data";
if(QFile(save_file_str).exists()){ if (QFile(save_file_str).exists())
{
return true; return true;
} }
return false; return false;

View File

@ -86,7 +86,7 @@ void xsteam_ui::xsteam_init_mind_layout()
ip_layout->addWidget(ip_uid_edit); ip_layout->addWidget(ip_uid_edit);
ip_layout->setContentsMargins(2, 2, 2, 2); ip_layout->setContentsMargins(2, 2, 2, 2);
btn_dlc_push = new QPushButton(tr("入库信息")); btn_dlc_push = new QPushButton(tr("获取DLC列表"));
btn_dlc_push->setObjectName("SET_DLC"); btn_dlc_push->setObjectName("SET_DLC");
ip_iu_layout = new QHBoxLayout(); ip_iu_layout = new QHBoxLayout();
@ -112,7 +112,7 @@ void xsteam_ui::xsteam_init_mind_layout()
ip_uid_group->setLayout(ip_uid_group_layout); ip_uid_group->setLayout(ip_uid_group_layout);
// all dlc info // all dlc info
ip_dlc_info_layout = new QVBoxLayout(); ip_dlc_info_layout = new QVBoxLayout();
ip_all_dlc_group = new QGroupBox(tr("DLC信息")); ip_all_dlc_group = new QGroupBox(tr("入库信息"));
ip_all_dlc_group->setObjectName("ALL_DLC_GROUP"); ip_all_dlc_group->setObjectName("ALL_DLC_GROUP");
ip_all_dlc_table = new xsteam_view(); ip_all_dlc_table = new xsteam_view();
ip_all_dlc_table->setObjectName("ALL_DLC_TABLE"); ip_all_dlc_table->setObjectName("ALL_DLC_TABLE");
@ -204,16 +204,22 @@ void xsteam_ui::slots_get_uid_dlcs()
UidData uid_data; UidData uid_data;
slots_msg_text("获取DLC信息..."); slots_msg_text("获取DLC信息...");
ip_all_dlc_table->item_clear(); ip_all_dlc_table->item_clear();
ip_in_dlc_table->item_clear();
slots_disable_enable_function(false);
QFuture<void> future = QtConcurrent::run([=](UidData uid_data)
{
if (xsteam_curl_steam_id_app_info(ip_uid_edit->text().toStdString(), uid_data)) if (xsteam_curl_steam_id_app_info(ip_uid_edit->text().toStdString(), uid_data))
{ {
ip_all_dlc_table->item_append(uid_data, VIEW_MODE::ALL_DLC_INFO); ip_all_dlc_table->item_append(uid_data, VIEW_MODE::ALL_DLC_INFO);
xs_data = uid_data; xs_data = uid_data;
slots_msg_text("DLC信息获取完毕"); slots_msg_text("DLC信息获取完毕");
slots_disable_enable_function(true);
} }
else else
{ {
slots_msg_text("获取DLC信息失败!请检查UID是否正确&网络是否畅通"); slots_msg_text("获取DLC信息失败!请检查UID是否正确&网络是否畅通");
} slots_disable_enable_function(true);
}},uid_data);
} }
void xsteam_ui::slots_rightMenu(const QPoint &pos) void xsteam_ui::slots_rightMenu(const QPoint &pos)
{ {
@ -483,7 +489,8 @@ void xsteam_ui::slots_imput_uid_push()
bool steamtools_ok = false; bool steamtools_ok = false;
in_data.t_g_uid = ip_uid_edit->text().toStdString(); in_data.t_g_uid = ip_uid_edit->text().toStdString();
in_data.t_s_name = server_txt->currentText().toStdString(); in_data.t_s_name = server_txt->currentText().toStdString();
if(ip_uid_edit->text().toStdString()==""){ if (ip_uid_edit->text().toStdString() == "")
{
slots_msg_text("入库UID不能为空"); slots_msg_text("入库UID不能为空");
} }
if (xsteam_uid_exists(in_data.t_g_uid)) if (xsteam_uid_exists(in_data.t_g_uid))