diff --git a/repo/js/FullyAutoAndSemiAutoTools/config/settings.json b/repo/js/FullyAutoAndSemiAutoTools/config/settings.json index 6f1298cb2..1bebad90f 100644 --- a/repo/js/FullyAutoAndSemiAutoTools/config/settings.json +++ b/repo/js/FullyAutoAndSemiAutoTools/config/settings.json @@ -50,6 +50,12 @@ "label": "加载路径层级(不可小于1)<配置模式 刷新||加载 生效>", "default": "2" }, + { + "name": "the_layer", + "type": "checkbox", + "label": "只加载指定层级<配置模式 加载 生效>", + "default": false + }, { "name": "order_rules", "type": "input-text", diff --git a/repo/js/FullyAutoAndSemiAutoTools/main.js b/repo/js/FullyAutoAndSemiAutoTools/main.js index a3ffe1d56..ab16c8df6 100644 --- a/repo/js/FullyAutoAndSemiAutoTools/main.js +++ b/repo/js/FullyAutoAndSemiAutoTools/main.js @@ -518,21 +518,31 @@ async function loadUidSettingsMap(uidSettingsMap) { // const key = keys[keys.size - 1] // PATH_JSON_LIST.filter(item => item.level > 0) + // 预先建立 levelName 到路径信息的映射 + const levelNameMap = new Map(); + PATH_JSON_LIST.forEach(item => { + if (item.levelName) { + levelNameMap.set(item.levelName, item); + } + }); + //中间一段路径名称 const dir_key = keys.join("\\") filterSettings = filterUidSettings.filter(item => { - const settings_level = PATH_JSON_LIST.filter(list_item => list_item.levelName === item.name).find(); + // const settings_level = PATH_JSON_LIST.filter(list_item => list_item.levelName === item.name).find(); + const settings_level = levelNameMap.get(item.name); if (settings_level) { //只加载指定目录 return (settings_level.path.includes(dir_key)) } + return false }) const theLayer = settings.the_layer || false const levelSettings = filterSettings.filter(item => { const level_all = item.name.replaceAll(levelName, ""); // 获取级别 const level = level_all.split("_").filter(item => item?.trim() !== "").map(parseInt)[0] - if (theLayer && loadingLevel === level + 1) { + if (theLayer) { //只加载指定级别的设置 return (loadingLevel === level + 1) } diff --git a/repo/js/FullyAutoAndSemiAutoTools/settings.json b/repo/js/FullyAutoAndSemiAutoTools/settings.json index 6f1298cb2..1bebad90f 100644 --- a/repo/js/FullyAutoAndSemiAutoTools/settings.json +++ b/repo/js/FullyAutoAndSemiAutoTools/settings.json @@ -50,6 +50,12 @@ "label": "加载路径层级(不可小于1)<配置模式 刷新||加载 生效>", "default": "2" }, + { + "name": "the_layer", + "type": "checkbox", + "label": "只加载指定层级<配置模式 加载 生效>", + "default": false + }, { "name": "order_rules", "type": "input-text", diff --git a/repo/js/FullyAutoAndSemiAutoTools/utils/cron.js b/repo/js/FullyAutoAndSemiAutoTools/utils/cron.js index 5e153c6c9..cf7dc24c3 100644 --- a/repo/js/FullyAutoAndSemiAutoTools/utils/cron.js +++ b/repo/js/FullyAutoAndSemiAutoTools/utils/cron.js @@ -123,6 +123,7 @@ function parseCron(cron) { * @returns {Promise} 返回一个Promise,解析为下一个Cron时间戳 */ async function getNextCronTimestamp(cronExpression, startTimestamp = Date.now(), endTimestamp, url) { + log.warn("使用cron CD算法 请开启JS HTTP 权限 如已开启请忽略") const result = await http.request("POST", url, JSON.stringify({ cronExpression: `${cronExpression}`, startTimestamp: startTimestamp,