mirror of
https://github.com/krau/SaveAny-Bot.git
synced 2026-06-01 05:30:58 +08:00
fix: set filedbid for silent mode task, close #67
This commit is contained in:
@@ -115,7 +115,7 @@ func AddToQueue(ctx *ext.Context, update *ext.Update) error {
|
|||||||
}
|
}
|
||||||
if update.CallbackQuery.MsgID != record.ReplyMessageID {
|
if update.CallbackQuery.MsgID != record.ReplyMessageID {
|
||||||
record.ReplyMessageID = update.CallbackQuery.MsgID
|
record.ReplyMessageID = update.CallbackQuery.MsgID
|
||||||
if err := dao.SaveReceivedFile(record); err != nil {
|
if _, err := dao.SaveReceivedFile(record); err != nil {
|
||||||
common.Log.Errorf("更新记录失败: %s", err)
|
common.Log.Errorf("更新记录失败: %s", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,14 +49,15 @@ func handleFileMessage(ctx *ext.Context, update *ext.Update) error {
|
|||||||
file.FileName = GenFileNameFromMessage(*update.EffectiveMessage.Message, file)
|
file.FileName = GenFileNameFromMessage(*update.EffectiveMessage.Message, file)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := dao.SaveReceivedFile(&dao.ReceivedFile{
|
record, err := dao.SaveReceivedFile(&dao.ReceivedFile{
|
||||||
Processing: false,
|
Processing: false,
|
||||||
FileName: file.FileName,
|
FileName: file.FileName,
|
||||||
ChatID: update.EffectiveChat().GetID(),
|
ChatID: update.EffectiveChat().GetID(),
|
||||||
MessageID: update.EffectiveMessage.ID,
|
MessageID: update.EffectiveMessage.ID,
|
||||||
ReplyMessageID: msg.ID,
|
ReplyMessageID: msg.ID,
|
||||||
ReplyChatID: update.GetUserChat().GetID(),
|
ReplyChatID: update.GetUserChat().GetID(),
|
||||||
}); err != nil {
|
})
|
||||||
|
if err != nil {
|
||||||
common.Log.Errorf("添加接收的文件失败: %s", err)
|
common.Log.Errorf("添加接收的文件失败: %s", err)
|
||||||
if _, err := ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
if _, err := ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
||||||
Message: fmt.Sprintf("添加接收的文件失败: %s", err),
|
Message: fmt.Sprintf("添加接收的文件失败: %s", err),
|
||||||
@@ -73,6 +74,7 @@ func handleFileMessage(ctx *ext.Context, update *ext.Update) error {
|
|||||||
return HandleSilentAddTask(ctx, update, user, &types.Task{
|
return HandleSilentAddTask(ctx, update, user, &types.Task{
|
||||||
Ctx: ctx,
|
Ctx: ctx,
|
||||||
Status: types.Pending,
|
Status: types.Pending,
|
||||||
|
FileDBID: record.ID,
|
||||||
File: file,
|
File: file,
|
||||||
StorageName: user.DefaultStorage,
|
StorageName: user.DefaultStorage,
|
||||||
FileChatID: update.EffectiveChat().GetID(),
|
FileChatID: update.EffectiveChat().GetID(),
|
||||||
|
|||||||
@@ -100,7 +100,8 @@ func handleLinkMessage(ctx *ext.Context, update *ext.Update) error {
|
|||||||
ReplyMessageID: replied.ID,
|
ReplyMessageID: replied.ID,
|
||||||
ReplyChatID: update.GetUserChat().GetID(),
|
ReplyChatID: update.GetUserChat().GetID(),
|
||||||
}
|
}
|
||||||
if err := dao.SaveReceivedFile(receivedFile); err != nil {
|
record, err := dao.SaveReceivedFile(receivedFile)
|
||||||
|
if err != nil {
|
||||||
common.Log.Errorf("保存接收的文件失败: %s", err)
|
common.Log.Errorf("保存接收的文件失败: %s", err)
|
||||||
ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
||||||
Message: "无法保存文件: " + err.Error(),
|
Message: "无法保存文件: " + err.Error(),
|
||||||
@@ -114,6 +115,7 @@ func handleLinkMessage(ctx *ext.Context, update *ext.Update) error {
|
|||||||
return HandleSilentAddTask(ctx, update, user, &types.Task{
|
return HandleSilentAddTask(ctx, update, user, &types.Task{
|
||||||
Ctx: ctx,
|
Ctx: ctx,
|
||||||
Status: types.Pending,
|
Status: types.Pending,
|
||||||
|
FileDBID: record.ID,
|
||||||
File: file,
|
File: file,
|
||||||
StorageName: user.DefaultStorage,
|
StorageName: user.DefaultStorage,
|
||||||
UserID: user.ChatID,
|
UserID: user.ChatID,
|
||||||
|
|||||||
@@ -113,7 +113,8 @@ func saveCmd(ctx *ext.Context, update *ext.Update) error {
|
|||||||
ReplyChatID: update.GetUserChat().GetID(),
|
ReplyChatID: update.GetUserChat().GetID(),
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := dao.SaveReceivedFile(receivedFile); err != nil {
|
record, err := dao.SaveReceivedFile(receivedFile)
|
||||||
|
if err != nil {
|
||||||
common.Log.Errorf("保存接收的文件失败: %s", err)
|
common.Log.Errorf("保存接收的文件失败: %s", err)
|
||||||
if _, err := ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
if _, err := ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
||||||
Message: fmt.Sprintf("保存接收的文件失败: %s", err),
|
Message: fmt.Sprintf("保存接收的文件失败: %s", err),
|
||||||
@@ -129,6 +130,7 @@ func saveCmd(ctx *ext.Context, update *ext.Update) error {
|
|||||||
return HandleSilentAddTask(ctx, update, user, &types.Task{
|
return HandleSilentAddTask(ctx, update, user, &types.Task{
|
||||||
Ctx: ctx,
|
Ctx: ctx,
|
||||||
Status: types.Pending,
|
Status: types.Pending,
|
||||||
|
FileDBID: record.ID,
|
||||||
File: file,
|
File: file,
|
||||||
StorageName: user.DefaultStorage,
|
StorageName: user.DefaultStorage,
|
||||||
FileChatID: update.EffectiveChat().GetID(),
|
FileChatID: update.EffectiveChat().GetID(),
|
||||||
@@ -235,7 +237,8 @@ func handleBatchSave(ctx *ext.Context, update *ext.Update, args []string) error
|
|||||||
ReplyChatID: update.GetUserChat().GetID(),
|
ReplyChatID: update.GetUserChat().GetID(),
|
||||||
ReplyMessageID: 0,
|
ReplyMessageID: 0,
|
||||||
}
|
}
|
||||||
if err := dao.SaveReceivedFile(receivedFile); err != nil {
|
record, err := dao.SaveReceivedFile(receivedFile)
|
||||||
|
if err != nil {
|
||||||
common.Log.Errorf("保存接收的文件失败: %s", err)
|
common.Log.Errorf("保存接收的文件失败: %s", err)
|
||||||
failedSaveDB++
|
failedSaveDB++
|
||||||
continue
|
continue
|
||||||
@@ -243,6 +246,7 @@ func handleBatchSave(ctx *ext.Context, update *ext.Update, args []string) error
|
|||||||
task := &types.Task{
|
task := &types.Task{
|
||||||
Ctx: ctx,
|
Ctx: ctx,
|
||||||
Status: types.Pending,
|
Status: types.Pending,
|
||||||
|
FileDBID: record.ID,
|
||||||
File: file,
|
File: file,
|
||||||
StorageName: user.DefaultStorage,
|
StorageName: user.DefaultStorage,
|
||||||
FileChatID: chatID,
|
FileChatID: chatID,
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ func handleTelegraph(ctx *ext.Context, update *ext.Update) error {
|
|||||||
IsTelegraph: true,
|
IsTelegraph: true,
|
||||||
TelegraphURL: tgphUrl,
|
TelegraphURL: tgphUrl,
|
||||||
}
|
}
|
||||||
if err := dao.SaveReceivedFile(record); err != nil {
|
if _, err := dao.SaveReceivedFile(record); err != nil {
|
||||||
common.Log.Errorf("保存接收的文件失败: %s", err)
|
common.Log.Errorf("保存接收的文件失败: %s", err)
|
||||||
ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
ctx.EditMessage(update.EffectiveChat().GetID(), &tg.MessagesEditMessageRequest{
|
||||||
Message: "无法保存文件: " + err.Error(),
|
Message: "无法保存文件: " + err.Error(),
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
package dao
|
package dao
|
||||||
|
|
||||||
func SaveReceivedFile(receivedFile *ReceivedFile) error {
|
func SaveReceivedFile(receivedFile *ReceivedFile) (*ReceivedFile, error) {
|
||||||
record, err := GetReceivedFileByChatAndMessageID(receivedFile.ChatID, receivedFile.MessageID)
|
record, err := GetReceivedFileByChatAndMessageID(receivedFile.ChatID, receivedFile.MessageID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
receivedFile.ID = record.ID
|
receivedFile.ID = record.ID
|
||||||
}
|
}
|
||||||
return db.Save(receivedFile).Error
|
db.Save(receivedFile)
|
||||||
|
return receivedFile, db.Error
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetReceivedFileByChatAndMessageID(chatID int64, messageID int) (*ReceivedFile, error) {
|
func GetReceivedFileByChatAndMessageID(chatID int64, messageID int) (*ReceivedFile, error) {
|
||||||
|
|||||||
Reference in New Issue
Block a user