dailyFile.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package dao
  2. import "server/global"
  3. type DailyFile struct {
  4. global.GVA_MODEL
  5. UserId int `json:"userId" form:"userId" gorm:"comment:用户编号"`
  6. Name string `json:"name" from:"name" gorm:"comment:文件名称"`
  7. Genre int `json:"genre" form:"genre" gorm:"comment:文件类型"`
  8. FileGenre FileGenre `json:"fileGenre" form:"fileGenre" gorm:"foreignKey:genre;references:id;"`
  9. Path string `json:"path" from:"path" gorm:"comment:路径"`
  10. }
  11. func (DailyFile) TableName() string {
  12. return "daily_file"
  13. }
  14. // TODO:日常文件查询
  15. // QueryDailyFileList 查询日常文件列表
  16. func QueryDailyFileList(limit, offset, userId, genre int, name string) (dailyFiles []DailyFile, total int64, err error) {
  17. // 创建db
  18. db := global.GVA_DB.Model(&DailyFile{}).Where("user_id=?", userId)
  19. // 如果有条件搜索 下方会自动创建搜索语句
  20. if genre != 0 {
  21. db = db.Where("genre = ?", genre)
  22. }
  23. if name != "" {
  24. db = db.Where("name LIKE ?", "%"+name+"%")
  25. }
  26. err = db.Count(&total).Error
  27. if err != nil {
  28. return
  29. }
  30. err = db.Order("id desc").Limit(limit).Offset(offset).Preload("FileGenre").Find(&dailyFiles).Error
  31. return dailyFiles, total, err
  32. }
  33. // TODO:日常文件新增
  34. // CreateDailyFile 新增日常文件
  35. func (df DailyFile) CreateDailyFile() error {
  36. return global.GVA_DB.Create(&df).Error
  37. }
  38. // TODO:日常文件修改
  39. // TODO:日常文件删除
  40. // DeleteDailyFile 删除日常文件
  41. func (df DailyFile) DeleteDailyFile() error {
  42. return global.GVA_DB.Unscoped().Delete(&df).Error
  43. }