Files
media/dao/audio/transcribe_task_detail_dao.go

36 lines
1.0 KiB
Go
Raw Normal View History

2026-05-20 11:32:39 +08:00
package audio
import (
"context"
consts "media/consts/audio"
entity "media/model/entity/audio"
"gitea.com/red-future/common/db/gfdb"
)
var TranscribeTaskDetail = new(transcribeTaskDetailDao)
type transcribeTaskDetailDao struct{}
// Insert 插入明细
func (d *transcribeTaskDetailDao) Insert(ctx context.Context, data *entity.TranscribeTaskDetail) (id int64, err error) {
// FieldsEx 排除空 scenes 字段JSONB 列不支持空串 ''
r, err := gfdb.DB(ctx).Model(ctx, consts.TranscribeTaskDetailTable).
Data(data).
FieldsEx(entity.TranscribeTaskDetailCols.Scenes).
Insert()
if err != nil {
return 0, err
}
return r.LastInsertId()
}
// ListByTaskID 根据taskId查询明细列表(按file_index升序)
func (d *transcribeTaskDetailDao) ListByTaskID(ctx context.Context, taskID string) (res []entity.TranscribeTaskDetail, err error) {
err = gfdb.DB(ctx).Model(ctx, consts.TranscribeTaskDetailTable).
Where(entity.TranscribeTaskDetailCols.TaskID, taskID).
OrderAsc(entity.TranscribeTaskDetailCols.FileIndex).
Scan(&res)
return
}