auto_task.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package db
  2. import (
  3. "context"
  4. "time"
  5. "youngee_b_api/model/gorm_model"
  6. log "github.com/sirupsen/logrus"
  7. )
  8. func AutoUpdateStatus() error {
  9. db := GetReadDB(context.Background())
  10. // 查找所有到达招募截止时间的项目id
  11. var projectIds []string
  12. db = db.Debug().Model(gorm_model.ProjectInfo{}).Select("project_id").Where("project_status = 6").Find(&projectIds)
  13. //fmt.Println("projectIds",projectIds)
  14. if len(projectIds) != 0 {
  15. for _,projectId := range projectIds{
  16. db1 := GetReadDB(context.Background())
  17. db1 = db1.Debug().Model(gorm_model.YoungeeTaskInfo{}).Where("project_id = ? and task_status = 1",projectId).Update("task_status",3)
  18. }
  19. }
  20. db1 := GetReadDB(context.Background())
  21. // 更新招募中项目状态为待支付
  22. err := db1.Debug().Model(gorm_model.ProjectInfo{}).
  23. Where("project_status = ? AND recruit_ddl < ?", 4, time.Now()).Update("project_status", 6).Error
  24. if err != nil {
  25. log.Println("DB AutoUpdateStatus error :", err)
  26. return err
  27. }
  28. return nil
  29. }
  30. func GetLastAutoTaskID() (int, error) {
  31. db := GetReadDB(context.Background())
  32. // 查找最后一个
  33. LastTask := gorm_model.InfoAutoTask{}
  34. result := db.Last(&LastTask)
  35. err := result.Error
  36. if err != nil {
  37. log.Println("DB GetLastAutoTaskID:", err)
  38. return 0, err
  39. }
  40. //fmt.Printf("auto task %+v %+v", result, LastTask)
  41. return LastTask.AutoTaskID, nil
  42. }
  43. func AutoUpdateApplyTimes() error {
  44. db := GetReadDB(context.Background())
  45. // 查询task表信息
  46. db = db.Debug().Model(gorm_model.YoungeeTalentInfo{})
  47. err := db.Where("1 = 1").Update("apply_num", 5).Error
  48. if err != nil {
  49. log.Println("DB AutoUpdateStatus error :", err)
  50. return err
  51. }
  52. return nil
  53. }