controllers/audio.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
request/audio.go | ●●●●● 补丁 | 查看 | 原始文档 | 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 {