2024-08-18 16:22:19 +08:00
|
|
|
|
import { DEFINE_STRING } from "../../../define/define_string";
|
|
|
|
|
|
import { GeneralResponse } from "../../../model/generalResponse";
|
|
|
|
|
|
import { BookService } from "../../../define/db/service/Book/bookService";
|
2024-11-09 16:46:06 +08:00
|
|
|
|
import { Book } from "../../../model/book/book";
|
2024-10-15 19:33:37 +08:00
|
|
|
|
import { BookBackTaskStatus, BookBackTaskType, BookTaskStatus, TaskExecuteType } from "../../../define/enum/bookEnum";
|
|
|
|
|
|
import BookBackTaskServiceBasic from "./bookBackTaskServiceBasic";
|
|
|
|
|
|
import { BookBasic } from "./bookBasic";
|
|
|
|
|
|
import BookTaskServiceBasic from "./bookTaskServiceBasic";
|
|
|
|
|
|
import BookTaskDetailServiceBasic from "./bookTaskDetailServiceBasic";
|
2024-11-02 18:18:55 +08:00
|
|
|
|
import { TaskModal } from "@/model/task";
|
2024-11-19 20:28:31 +08:00
|
|
|
|
import { BookTaskDetail } from "@/model/book/bookTaskDetail";
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 该类中封装了小说的基础服务,主要是检查每次引入对应的服务类
|
|
|
|
|
|
* 这边进行一个统一的调用,方便后续的维护
|
|
|
|
|
|
*/
|
2024-10-15 19:33:37 +08:00
|
|
|
|
class BookServiceBasic {
|
2024-08-18 16:22:19 +08:00
|
|
|
|
bookService: BookService
|
2024-10-15 19:33:37 +08:00
|
|
|
|
private bookBasic: BookBasic
|
|
|
|
|
|
private bookTaskServiceBasic: BookTaskServiceBasic
|
|
|
|
|
|
private bookTaskDetailServiceBasic: BookTaskDetailServiceBasic
|
|
|
|
|
|
private bookBackTaskServiceBasic: BookBackTaskServiceBasic
|
|
|
|
|
|
|
2024-08-18 16:22:19 +08:00
|
|
|
|
constructor() {
|
2024-10-15 19:33:37 +08:00
|
|
|
|
this.bookBasic = new BookBasic();
|
|
|
|
|
|
this.bookTaskServiceBasic = new BookTaskServiceBasic();
|
|
|
|
|
|
this.bookTaskDetailServiceBasic = new BookTaskDetailServiceBasic();
|
|
|
|
|
|
this.bookBackTaskServiceBasic = new BookBackTaskServiceBasic();
|
2024-08-18 16:22:19 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 主动返回前端的消息
|
|
|
|
|
|
sendReturnMessage(data: GeneralResponse.MessageResponse, message_name = DEFINE_STRING.BOOK.GET_COPYWRITING_RETURN) {
|
|
|
|
|
|
global.newWindow[0].win.webContents.send(message_name, data)
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-09-04 19:49:20 +08:00
|
|
|
|
//#region 事务操作
|
2024-10-28 18:38:11 +08:00
|
|
|
|
transaction = async (realm: any) => await this.bookBasic.transaction(realm);
|
|
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
// (callback: (realm: any) => void) {
|
|
|
|
|
|
// this.bookService.transaction(() => {
|
|
|
|
|
|
// callback(this.bookService.realm)
|
|
|
|
|
|
// })
|
|
|
|
|
|
// }
|
2024-09-04 19:49:20 +08:00
|
|
|
|
//#endregion
|
|
|
|
|
|
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
//#region 小说任务
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
GetBookDataById = async (bookId: string) => await this.bookBasic.GetBookDataById(bookId);
|
|
|
|
|
|
UpdateBookData = async (bookId: string, data: Book.SelectBook) => await this.bookBasic.UpdateBookData(bookId, data);
|
|
|
|
|
|
DeleteBookData = async (bookId: string) => await this.bookBasic.DeleteBookData(bookId);
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
//#region 批次任务任务
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
GetBookTaskDataById = async (bookTaskId: string) => await this.bookTaskServiceBasic.GetBookTaskDataById(bookTaskId);
|
|
|
|
|
|
GetBookTaskData = async (bookTaskCondition: Book.QueryBookTaskCondition) => await this.bookTaskServiceBasic.GetBookTaskData(bookTaskCondition);
|
|
|
|
|
|
GetMaxBookTaskNo = async (bookId: string) => await this.bookTaskServiceBasic.GetMaxBookTaskNo(bookId);
|
|
|
|
|
|
UpdetedBookTaskData = async (bookTaskId: string, data: Book.SelectBookTask) => await this.bookTaskServiceBasic.UpdetedBookTaskData(bookTaskId, data);
|
|
|
|
|
|
ResetBookTask = async (bookTaskId: string) => await this.bookTaskServiceBasic.ResetBookTask(bookTaskId);
|
|
|
|
|
|
DeleteBookTaskData = async (bookTaskId: string) => await this.bookTaskServiceBasic.DeleteBookTaskData(bookTaskId);
|
|
|
|
|
|
GetBookAndTask = async (bookId: string, bookTaskName: string) => await this.bookTaskServiceBasic.GetBookAndTask(bookId, bookTaskName);
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
//#region 分镜任务
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
AddBookTaskDetail = async (bookTaskDetail: Book.SelectBookTaskDetail) => await this.bookTaskDetailServiceBasic.AddBookTaskDetail(bookTaskDetail);
|
|
|
|
|
|
GetBookTaskDetailDataById = async (bookTaskDetailId: string) => await this.bookTaskDetailServiceBasic.GetBookTaskDetailDataById(bookTaskDetailId);
|
|
|
|
|
|
GetBookTaskDetailData = async (condition: Book.QueryBookTaskDetailCondition, returnEmpty: boolean = false) => await this.bookTaskDetailServiceBasic.GetBookTaskDetailData(condition, returnEmpty);
|
2024-11-19 20:28:31 +08:00
|
|
|
|
/** 获取指定小说的分镜的某个属性数据 */
|
|
|
|
|
|
GetBookTaskDetailProperty = async (bookTaskDetailId: string, property: string) => await this.bookTaskDetailServiceBasic.GetBookTaskDetailProperty(bookTaskDetailId, property);
|
2024-10-15 19:33:37 +08:00
|
|
|
|
UpdateBookTaskDetail = async (bookTaskDetailId: string, data: Book.SelectBookTaskDetail) => await this.bookTaskDetailServiceBasic.UpdateBookTaskDetail(bookTaskDetailId, data);
|
2024-10-28 18:38:11 +08:00
|
|
|
|
UpdateBookTaskStatus = async (bookTaskDetailId: string, status: BookTaskStatus, errorMsg?: string) => await this.bookTaskDetailServiceBasic.UpdateBookTaskStatus(bookTaskDetailId, status, errorMsg);
|
|
|
|
|
|
DeleteBookTaskDetailReversePromptById = async (bookTaskDetailId: string) => await this.bookTaskDetailServiceBasic.DeleteBookTaskDetailReversePromptById(bookTaskDetailId);
|
2024-10-15 19:33:37 +08:00
|
|
|
|
DeleteBoookTaskDetailGenerateImage = async (bookTaskDetailId: string) => await this.bookTaskDetailServiceBasic.DeleteBoookTaskDetailGenerateImage(bookTaskDetailId);
|
|
|
|
|
|
UpdateBookTaskDetailReversePrompt = async (bookTaskDetailId: string, reversePromptId: string, data: Book.ReversePrompt) => await this.bookTaskDetailServiceBasic.UpdateBookTaskDetailReversePrompt(bookTaskDetailId, reversePromptId, data);
|
|
|
|
|
|
UpdateBookTaskDetailMjMessage = async (bookTaskDetailId: string, mjMessage: Book.MJMessage) => await this.bookTaskDetailServiceBasic.UpdateBookTaskDetailMjMessage(bookTaskDetailId, mjMessage);
|
2024-11-19 20:28:31 +08:00
|
|
|
|
UpdateBookTaskDetailVideoMessage = async (bookTaskDetailId: string, videoMessage: BookTaskDetail.VideoMessage) => await this.bookTaskDetailServiceBasic.UpdateBookTaskDetailVideoMessage(bookTaskDetailId, videoMessage);
|
2024-10-28 18:38:11 +08:00
|
|
|
|
DeleteBookTaskDetailData = async (condition: Book.DeleteBookTaskDetailCondition) => await this.bookTaskDetailServiceBasic.DeleteBookTaskDetail(condition);
|
2024-09-12 14:13:09 +08:00
|
|
|
|
|
2024-08-18 16:22:19 +08:00
|
|
|
|
//#endregion
|
|
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
//#region 后台任务
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
AddBookBackTask = async (bookId: string,
|
2024-08-18 16:22:19 +08:00
|
|
|
|
taskType: BookBackTaskType,
|
2024-10-15 19:33:37 +08:00
|
|
|
|
executeType: TaskExecuteType,
|
|
|
|
|
|
bookTaskId: string,
|
|
|
|
|
|
bookTaskDetailId: string,
|
|
|
|
|
|
responseMessageName: string) => await this.bookBackTaskServiceBasic.AddBookBackTask(bookId, taskType, executeType, bookTaskId, bookTaskDetailId, responseMessageName);
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-10-15 19:33:37 +08:00
|
|
|
|
GetAllStatusTaskCount = async (status: BookBackTaskStatus[]) => await this.bookBackTaskServiceBasic.GetAllStatusTaskCount(status);
|
|
|
|
|
|
UpdateTaskStatus = async (bookBackTask: Book.UpdateBookTaskListStatus) => await this.bookBackTaskServiceBasic.UpdateTaskStatus(bookBackTask);
|
|
|
|
|
|
GiveUpNotStartBackTask = async () => await this.bookBackTaskServiceBasic.GiveUpNotStartBackTask();
|
2024-08-18 16:22:19 +08:00
|
|
|
|
|
2024-11-02 18:18:55 +08:00
|
|
|
|
/** 设置指定的消息名称的任务状态为错误及错误信息 */
|
|
|
|
|
|
SetMessageNameTaskToFail = async (massageName: string, errorMessage: string) => await this.bookBackTaskServiceBasic.SetMessageNameTaskToFail(massageName, errorMessage);
|
|
|
|
|
|
/** 查询指定的条件的后台任务 */
|
|
|
|
|
|
GetBackTaskCollection = async (queryTaskCondition: TaskModal.QueryTaskCondition) => await this.bookBackTaskServiceBasic.GetBackTaskCollection(queryTaskCondition);
|
2024-10-15 19:33:37 +08:00
|
|
|
|
//#endregion
|
2024-08-18 16:22:19 +08:00
|
|
|
|
}
|
2024-10-15 19:33:37 +08:00
|
|
|
|
export { BookServiceBasic };
|