LaiTool/src/main/Service/ServiceBasic/bookServiceBasic.ts
lq1405 224ee47984 1. 修改用户机器码管理(所有用户需要重新注册,激活)
2. 重构软件鉴权,添加自动判断机器码,可以不在手动点击确定
3. 新增软件启动时,提示用户是不是还存在等待中的任务,还有的话,由用户判断是不是丢弃,丢弃,会将所有的等待中的任务设置为失败
4. 聚合推文 提示词合并,人物、风格和场景 添加判无,修复部分情况无法合并
5. 新增 预设(人物,场景,风格)对提示词相关的提示
6. 修复 文案处理,流式输出内容重复问题,删除豆包(请求格式不兼容)
7. 新增 文案处理 输出内容一键格式化(注意:由于GPT输出的格式化有太多的不确定,不一定可以完全格式化,需要手动检查)
8. 聚合推文原创,新增时默认设置 修脸参数,初始和SD设置中的一致
9. 修复聚合推文选图覆盖 bug
2024-10-15 19:33:37 +08:00

96 lines
5.4 KiB
TypeScript

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) => await this.bookTaskDetailServiceBasic.UpdateBookTaskStatus(bookTaskDetailId, status);
DeleteBookTaskDetailReversePromptById = async (bookTaskDetailId: string, reversePromptId: 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);
//#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 };