temp
This commit is contained in:
parent
158f0d6275
commit
e247a9fd2a
@ -1,9 +1,34 @@
|
||||
export default interface AutoPlanConfigDto {
|
||||
paths: Array<string>,
|
||||
version: Number,
|
||||
ignoreSeason0: Boolean,
|
||||
ignorePaths: Array<string>,
|
||||
deleteSmallVideo: boolean,
|
||||
rules: Array<string>,
|
||||
start: boolean
|
||||
/**
|
||||
* 待处理的路径
|
||||
*/
|
||||
paths: Array<string>;
|
||||
/**
|
||||
* 版本
|
||||
*/
|
||||
version: Number;
|
||||
/**
|
||||
* 是否忽略season 0
|
||||
*/
|
||||
ignoreSeason0: Boolean;
|
||||
/**
|
||||
* 忽略的文件名
|
||||
*/
|
||||
ignorePaths: Array<string>;
|
||||
/**
|
||||
* 是否删除小于2m的视频文件
|
||||
*/
|
||||
deleteSmallVideo: boolean;
|
||||
/**
|
||||
* 重命名规则
|
||||
*/
|
||||
rules: Array<string>;
|
||||
/**
|
||||
* 是否忽略现有的文件
|
||||
*/
|
||||
ignoreExist: boolean;
|
||||
/**
|
||||
* 是否开始任务
|
||||
*/
|
||||
start: boolean;
|
||||
}
|
@ -11,8 +11,30 @@ import GlobalConfig from 'entity/po/GlobalConfig';
|
||||
import GlobalConfigService from './GlobalConfigService';
|
||||
|
||||
const autoConfigCode = "autoConfig";
|
||||
/**
|
||||
* 需要处理的文件
|
||||
*/
|
||||
let needDeal = new Set();
|
||||
/**
|
||||
* 文件夹变更记录。key:变更前的目录,value:变更后的目录.当needDeal为空时清理pathMap
|
||||
*/
|
||||
let pathMap = {};
|
||||
/**
|
||||
* 自动化配置
|
||||
*/
|
||||
let autoConfig: AutoPlanConfigDto = null;
|
||||
|
||||
|
||||
class AutoPlanService {
|
||||
|
||||
static async init() {
|
||||
let str = await GlobalConfigService.getVal(autoConfigCode);
|
||||
if (str != null) {
|
||||
} else {
|
||||
autoConfig = JSON.parse(str);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存配置
|
||||
*/
|
||||
@ -23,12 +45,26 @@ class AutoPlanService {
|
||||
description: "自动化计划配置"
|
||||
};
|
||||
await GlobalConfigService.insertOrReplace(configBody);
|
||||
if (!body.start) {
|
||||
return;
|
||||
}
|
||||
let old = await GlobalConfigService.getVal(autoConfigCode);
|
||||
if (old && old.length)
|
||||
autoConfig = body;
|
||||
if (body.start && !body.ignoreExist) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查文件名是否被忽略的
|
||||
*/
|
||||
function checkIgnore(str: string): boolean {
|
||||
for (let i in autoConfig.ignorePaths) {
|
||||
if (str.match(autoConfig.ignorePaths[i])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
export default AutoPlanService;
|
||||
|
19
openRenamerBackend/sqls/v004_新增记录表.sql
Normal file
19
openRenamerBackend/sqls/v004_新增记录表.sql
Normal file
@ -0,0 +1,19 @@
|
||||
-- 记录已处理过的路径
|
||||
CREATE TABLE dealed_file_path (
|
||||
key_str TEXT(32) NOT NULL,
|
||||
"path" TEXT(200) NOT NULL,
|
||||
CONSTRAINT dealed_file_path_PK PRIMARY KEY (key_str)
|
||||
);
|
||||
|
||||
CREATE TABLE auto_deal_history (
|
||||
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||
createTime INTEGER NOT NULL,
|
||||
oldName TEXT(200) NOT NULL,
|
||||
newName TEXT(200) NOT NULL,
|
||||
-- 说明
|
||||
comment TEXT(200) NOT NULL,
|
||||
-- 1:文件重命名,2:剧集下无季文件夹,自动创建;3:操作失败
|
||||
"type" INTEGER NOT NULL,
|
||||
CONSTRAINT auto_deal_history_PK PRIMARY KEY (id)
|
||||
);
|
||||
CREATE INDEX auto_deal_history_createTime_IDX ON auto_deal_history (createTime);
|
Loading…
x
Reference in New Issue
Block a user