From a5429b8a83e1b4a48c2a3b9b0b475f08a114837c Mon Sep 17 00:00:00 2001 From: yinbangzhong <zhongbangyin@126.com> Date: 星期四, 20 六月 2024 09:11:57 +0800 Subject: [PATCH] download file by attach model --- models/audio.go | 35 ++++++++++++++++++++++++----------- 1 files changed, 24 insertions(+), 11 deletions(-) diff --git a/models/audio.go b/models/audio.go index 76fac0c..4ef34a6 100644 --- a/models/audio.go +++ b/models/audio.go @@ -15,12 +15,15 @@ gorm.Model Name string `gorm:"index;type:varchar(255);not null;default:'';comment:闊抽鍚嶇О" json:"name"` // 闊抽鍚嶇О Size int64 `gorm:"type:int;not null;default:0;comment:鏂囦欢澶у皬" json:"size"` // 闊抽澶у皬 - FilePath string `gorm:"type:varchar(255);not null;default:'';comment:闊抽璺緞" json:"-"` //闊抽璺緞 // 闊抽璺緞 + FilePath string `gorm:"type:varchar(255);not null;default:'';comment:闊抽璺緞" json:"-"` //闊抽璺緞 + TxtFilePath string `gorm:"type:varchar(255);not null;default:'';comment:txt璺緞" json:"-"` //txt璺緞 AudioStatus constvar.AudioStatus `gorm:"type:tinyint;not null;default:0;comment:鐘舵��" json:"audioStatus"` // 闊抽鐘舵�� LocomotiveNumber string `gorm:"index;type:varchar(255);not null;default:'';comment:鏈鸿溅鍙�" json:"locomotiveNumber"` // 鏈鸿溅鍙� TrainNumber string `gorm:"index;type:varchar(255);not null;default:'';comment:杞︽" json:"trainNumber"` // 杞︽ DriverNumber string `gorm:"index;type:varchar(255);not null;default:'';comment:鍙告満鍙�" json:"driverNumber"` // 鍙告満鍙� Station string `gorm:"index;type:varchar(255);not null;default:'';comment:杞︾珯鍙�" json:"station"` // 杞︾珯 + RouteNumber string `gorm:"index;type:varchar(255);not null;default:'';comment:浜よ矾鍙�" json:"routeNumber"` // 浜よ矾鍙� + KilometerMarker string `gorm:"index;type:varchar(255);not null;default:'';comment:鍏噷鏍�" json:"kilometerMarker"` // 鍏噷鏍� OccurrenceAt time.Time `json:"-"` OccurrenceTime string `json:"occurrenceTime" gorm:"-"` IsFollowed constvar.BoolType `gorm:"type:tinyint;not null;default:2;comment:鏄惁鍏虫敞"` //鏄惁鍏虫敞 1鍏虫敞 2鏈叧娉� @@ -32,14 +35,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 +99,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 } @@ -180,6 +189,10 @@ if slf.IsFollowed != 0 { db = db.Where("is_followed = ?", slf.IsFollowed) + } + + if len(slf.StatusList) != 0 { + db = db.Where("audio_status in ?", slf.StatusList) } return db @@ -271,7 +284,7 @@ db = slf.build() ) - if err := db.Count(&total).Error; err != nil { + if err := db.Where("deleted_at IS NULL").Count(&total).Error; err != nil { return records, int(total), fmt.Errorf("find count err: %v", err) } if slf.PageNum*slf.PageSize > 0 { @@ -308,7 +321,7 @@ db = slf.Orm.Table(slf.TableName()).Where(query, args...) ) - if err := db.Count(&total).Error; err != nil { + if err := db.Where("deleted_at IS NULL").Count(&total).Error; err != nil { return records, total, fmt.Errorf("find by query count err: %v", err) } if slf.PageNum*slf.PageSize > 0 { -- Gitblit v1.8.0