63 lines
2.1 KiB
JavaScript
Raw Normal View History

2024-06-24 13:11:19 +08:00
import { BookType } from "../../../define/enum/bookEnum";
import { errorMessage, successMessage } from "../../generalTools";
import BooKService from "../../../define/db/service/Book/bookService";
import { BookTaskService } from "../../../define/db/service/Book/bookTaskService";
const { v4: uuidv4 } = require('uuid');
import { define } from '../../../define/define'
import path from 'path'
import { CheckFolderExistsOrCreate } from "../../../define/Tools/file";
export class BookBasic {
constructor() {
}
/**
* 获取路径中的最后一层或两层目录
* @param {string} path 文件或目录的完整路径
* @param {number} level 需要获取的层级数1表示最后一层2表示最后两层
* @returns {string} 最后的一层或两层目录
*/
getLastPathLevels(path, level = 1) {
// 根据操作系统的不同,路径分隔符可能不同
const separator = path.includes('/') ? '/' : '\\';
const parts = path.split(separator);
// 获取最后的一层或两层目录
const lastLevels = parts.slice(-level);
// 重新组合成路径字符串
return lastLevels.join(separator);
}
/**
* 新增或者是修小说数据
* @param {*} book 小说信息
* @returns
*/
async AddOrModifyBook(book) {
try {
if (book == null) {
return errorMessage('小说数据为空,无法修改');
}
// 处理一下数据,处理文件地址(删除前缀,转换为默认地址)
// 当前的小说的名字是不是在数据库中以存在
let _bookService = await BooKService.getInstance();
let res = await _bookService.AddOrModifyBook(book);
return res;
} catch (error) {
return errorMessage('修改数据错误,错误信息如下:' + error.message, 'BookBasic_AddOrModifyBook');
}
}
// 小说类型返回
GetBookType() {
return successMessage([{
label: 'SD反推',
value: BookType.SD_REVERSE
}, {
label: 'MJ反推',
value: BookType.MJ_REVERSE
}, {
label: "原创",
value: BookType.ORIGINAL
}], '获取小说类型成功');
}
}