import { DEFINE_STRING } from "../../../define/define_string"; import { GeneralResponse } from "../../../model/generalResponse"; import { BookService } from "../../../define/db/service/Book/bookService"; import { Book } from "../../../model/book"; 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"; /** * 该类中封装了小说的基础服务,主要是检查每次引入对应的服务类 * 这边进行一个统一的调用,方便后续的维护 */ class BookServiceBasic { bookService: BookService private bookBasic: BookBasic private bookTaskServiceBasic: BookTaskServiceBasic private bookTaskDetailServiceBasic: BookTaskDetailServiceBasic private bookBackTaskServiceBasic: BookBackTaskServiceBasic constructor() { this.bookBasic = new BookBasic(); this.bookTaskServiceBasic = new BookTaskServiceBasic(); this.bookTaskDetailServiceBasic = new BookTaskDetailServiceBasic(); this.bookBackTaskServiceBasic = new BookBackTaskServiceBasic(); } // 主动返回前端的消息 sendReturnMessage(data: GeneralResponse.MessageResponse, message_name = DEFINE_STRING.BOOK.GET_COPYWRITING_RETURN) { global.newWindow[0].win.webContents.send(message_name, data) } //#region 事务操作 transaction = async (realm: any) => await this.bookBasic.transaction(realm); // (callback: (realm: any) => void) { // this.bookService.transaction(() => { // callback(this.bookService.realm) // }) // } //#endregion //#region 小说任务 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); //#endregion //#region 批次任务任务 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); //#endregion //#region 分镜任务 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); UpdateBookTaskDetail = async (bookTaskDetailId: string, data: Book.SelectBookTaskDetail) => await this.bookTaskDetailServiceBasic.UpdateBookTaskDetail(bookTaskDetailId, data); UpdateBookTaskStatus = async (bookTaskDetailId: string, status: BookTaskStatus, errorMsg?: string) => await this.bookTaskDetailServiceBasic.UpdateBookTaskStatus(bookTaskDetailId, status, errorMsg); DeleteBookTaskDetailReversePromptById = async (bookTaskDetailId: string) => await this.bookTaskDetailServiceBasic.DeleteBookTaskDetailReversePromptById(bookTaskDetailId); 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); DeleteBookTaskDetailData = async (condition: Book.DeleteBookTaskDetailCondition) => await this.bookTaskDetailServiceBasic.DeleteBookTaskDetail(condition); //#endregion //#region 后台任务 AddBookBackTask = async (bookId: string, taskType: BookBackTaskType, executeType: TaskExecuteType, bookTaskId: string, bookTaskDetailId: string, responseMessageName: string) => await this.bookBackTaskServiceBasic.AddBookBackTask(bookId, taskType, executeType, bookTaskId, bookTaskDetailId, responseMessageName); 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(); //#endregion } export { BookServiceBasic };