auto restore user's power for failure tasks

This commit is contained in:
RockYang
2024-11-11 18:12:35 +08:00
parent c39814ce2b
commit 4dbfdab50d
10 changed files with 105 additions and 90 deletions

View File

@@ -222,25 +222,11 @@ func (h *SunoHandler) Remove(c *gin.Context) {
}
// 删除任务
tx := h.DB.Begin()
if err := tx.Delete(&job).Error; err != nil {
tx.Rollback()
resp.ERROR(c, err.Error())
return
}
// 恢复用户算力
err = h.userService.IncreasePower(job.UserId, job.Power, model.PowerLog{
Type: types.PowerRefund,
Model: job.ModelName,
Remark: fmt.Sprintf("Suno 任务失败退回算力。任务ID%sErr:%s", job.TaskId, job.ErrMsg),
})
err = h.DB.Delete(&job).Error
if err != nil {
tx.Rollback()
resp.ERROR(c, err.Error())
return
}
tx.Commit()
// 删除文件
_ = h.uploader.GetUploadHandler().Delete(job.CoverURL)