zhangqian
2024-05-22 0a6e8be485f41fcbf6c362663138ce86ccdd02f1
音频正在处理或者处理完成,不可删除
2个文件已修改
54 ■■■■ 已修改文件
controllers/audio.go 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
models/audio.go 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
controllers/audio.go
@@ -322,7 +322,18 @@
        return
    }
    err := service.DeleteAudio(params.ID)
    audio, err := models.NewAudioSearch().SetID(params.ID).First()
    if err != nil {
        util.ResponseFormat(c, code.RequestParamError, "音频不存在")
        return
    }
    if audio.AudioStatus == constvar.AudioStatusProcessing || audio.AudioStatus == constvar.AudioStatusFinish {
        util.ResponseFormat(c, code.RequestParamError, "音频正在处理或者处理完成,不可删除")
        return
    }
    err = service.DeleteAudio(params.ID)
    if err != nil {
        util.ResponseFormat(c, code.InternalError, err.Error())
        return
@@ -345,7 +356,20 @@
        return
    }
    err := service.BatchDeleteAudio(params.IDs)
    audioList, err := models.NewAudioSearch().SetIDs(params.IDs).FindNotTotal()
    if err != nil {
        util.ResponseFormat(c, code.InternalError, "内部错误")
        return
    }
    for _, audio := range audioList {
        if audio.AudioStatus == constvar.AudioStatusProcessing || audio.AudioStatus == constvar.AudioStatusFinish {
            util.ResponseFormat(c, code.RequestParamError, "音频正在处理或者处理完成,不可删除")
            return
        }
    }
    err = service.BatchDeleteAudio(params.IDs)
    if err != nil {
        util.ResponseFormat(c, code.InternalError, err.Error())
        return
models/audio.go
@@ -32,14 +32,15 @@
    AudioSearch struct {
        Audio
        Order     string
        PageNum   int
        PageSize  int
        Orm       *gorm.DB
        Keyword   string
        IDs       []uint
        BeginTime time.Time
        EndTime   time.Time
        Order      string
        PageNum    int
        PageSize   int
        Orm        *gorm.DB
        Keyword    string
        IDs        []uint
        BeginTime  time.Time
        EndTime    time.Time
        StatusList []constvar.AudioStatus
    }
)
@@ -95,6 +96,11 @@
func (slf *AudioSearch) SetName(name string) *AudioSearch {
    slf.Name = name
    return slf
}
func (slf *AudioSearch) SetAudioStatusList(statusList []constvar.AudioStatus) *AudioSearch {
    slf.StatusList = statusList
    return slf
}
@@ -182,6 +188,10 @@
        db = db.Where("is_followed = ?", slf.IsFollowed)
    }
    if len(slf.StatusList) != 0 {
        db = db.Where("audio_status in ?", slf.StatusList)
    }
    return db
}