midjourney.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. package model
  2. type Midjourney struct {
  3. Id int `json:"id"`
  4. Code int `json:"code"`
  5. UserId int `json:"user_id" gorm:"index"`
  6. Action string `json:"action"`
  7. MjId string `json:"mj_id" gorm:"index"`
  8. Prompt string `json:"prompt"`
  9. PromptEn string `json:"prompt_en"`
  10. Description string `json:"description"`
  11. State string `json:"state"`
  12. SubmitTime int64 `json:"submit_time"`
  13. StartTime int64 `json:"start_time"`
  14. FinishTime int64 `json:"finish_time"`
  15. ImageUrl string `json:"image_url"`
  16. Status string `json:"status"`
  17. Progress string `json:"progress"`
  18. FailReason string `json:"fail_reason"`
  19. }
  20. func GetAllUserTask(userId int, startIdx int, num int) []*Midjourney {
  21. var tasks []*Midjourney
  22. var err error
  23. err = DB.Where("user_id = ?", userId).Order("id desc").Limit(num).Offset(startIdx).Find(&tasks).Error
  24. if err != nil {
  25. return nil
  26. }
  27. return tasks
  28. }
  29. func GetAllTasks(startIdx int, num int) []*Midjourney {
  30. var tasks []*Midjourney
  31. var err error
  32. err = DB.Order("id desc").Limit(num).Offset(startIdx).Find(&tasks).Error
  33. if err != nil {
  34. return nil
  35. }
  36. return tasks
  37. }
  38. func GetAllUnFinishTasks() []*Midjourney {
  39. var tasks []*Midjourney
  40. var err error
  41. // get all tasks progress is not 100%
  42. err = DB.Where("progress != ?", "100%").Find(&tasks).Error
  43. if err != nil {
  44. return nil
  45. }
  46. return tasks
  47. }
  48. func GetByMJId(mjId string) *Midjourney {
  49. var mj *Midjourney
  50. var err error
  51. err = DB.Where("mj_id = ?", mjId).First(&mj).Error
  52. if err != nil {
  53. return nil
  54. }
  55. return mj
  56. }
  57. func GetMjByuId(id int) *Midjourney {
  58. var mj *Midjourney
  59. var err error
  60. err = DB.Where("id = ?", id).First(&mj).Error
  61. if err != nil {
  62. return nil
  63. }
  64. return mj
  65. }
  66. func UpdateProgress(id int, progress string) error {
  67. return DB.Model(&Midjourney{}).Where("id = ?", id).Update("progress", progress).Error
  68. }
  69. func (midjourney *Midjourney) Insert() error {
  70. var err error
  71. err = DB.Create(midjourney).Error
  72. return err
  73. }
  74. func (midjourney *Midjourney) Update() error {
  75. var err error
  76. err = DB.Save(midjourney).Error
  77. return err
  78. }