63 lines
2.1 KiB
JavaScript
63 lines
2.1 KiB
JavaScript
|
|
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
|
|||
|
|
}], '获取小说类型成功');
|
|||
|
|
}
|
|||
|
|
}
|