zhangqian
2024-06-12 c40d07e760598c0aae4353f7a1e2d6b01747e83f
文件下载&状态筛选
2个文件已修改
39 ■■■■ 已修改文件
controllers/audio.go 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
request/audio.go 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
controllers/audio.go
@@ -2,8 +2,10 @@
import (
    "errors"
    "fmt"
    "github.com/gin-gonic/gin"
    "gorm.io/gorm"
    "io"
    "os"
    "path"
    "speechAnalysis/constvar"
@@ -268,10 +270,27 @@
        return
    }
    c.Header("Content-Description", "File Transfer")
    c.Header("Content-Disposition", "attachment; filename="+audio.Name)
    c.Header("Content-Type", "application/octet-stream")
    c.File(audio.FilePath)
    file, err := os.Open(audio.FilePath)
    if err != nil {
        util.ResponseFormat(c, code.InternalError, "文件打开失败")
        return
    }
    defer file.Close()
    fileInfo, err := file.Stat()
    if err != nil {
        util.ResponseFormat(c, code.InternalError, "获取文件信息失败")
        return
    }
    c.Header("Content-Disposition", "inline; filename="+audio.Name) // 在浏览器中直接打开
    c.Header("Content-Length", fmt.Sprint(fileInfo.Size()))
    c.Header("Content-Type", "audio/mpeg") // 设置音频文件类型
    if _, err := io.Copy(c.Writer, file); err != nil {
        util.ResponseFormat(c, code.InternalError, "文件传输失败")
        return
    }
}
// BatchProcess
request/audio.go
@@ -7,15 +7,15 @@
type GetAudioList struct {
    PageInfo
    Keyword          string                 `form:"keyword"`                                                                            // 关键字
    Keyword          string                 `form:"keyword"`                                                                         // 关键字
    LocomotiveNumber string                 `gorm:"index;type:varchar(255);not null;default:'';comment:机车号" form:"locomotiveNumber"` // 机车号
    TrainNumber      string                 `gorm:"index;type:varchar(255);not null;default:'';comment:车次" form:"trainNumber"`        // 车次
    TrainNumber      string                 `gorm:"index;type:varchar(255);not null;default:'';comment:车次" form:"trainNumber"`       // 车次
    DriverNumber     string                 `gorm:"index;type:varchar(255);not null;default:'';comment:司机号" form:"driverNumber"`     // 司机号
    StationNumber    string                 `gorm:"index;type:varchar(255);not null;default:'';comment:车站号" form:"stationNumber"`    // 车站号
    BeginTime        time.Time              `form:"beginTime"`                                                                          //开始时间
    EndTime          time.Time              `form:"endTime"`                                                                            //结束时间
    IsFollowed       constvar.BoolType      `form:"isFollowed"`                                                                         //是否关注 1关注 2未关注
    StatusList       []constvar.AudioStatus `form:"statusList"`                                                                         //音频状态数组
    BeginTime        time.Time              `form:"beginTime"`                                                                       //开始时间
    EndTime          time.Time              `form:"endTime"`                                                                         //结束时间
    IsFollowed       constvar.BoolType      `form:"isFollowed"`                                                                      //是否关注 1关注 2未关注
    StatusList       []constvar.AudioStatus `form:"statusList"`                                                                      //音频状态数组
}
type ProcessAudio struct {