智慧食堂
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.go 3.6 KiB

1 year ago
11 months ago
1 year ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. package main
  2. import (
  3. "applet/app/db"
  4. "context"
  5. "fmt"
  6. "log"
  7. "net/http"
  8. "os"
  9. "os/signal"
  10. "syscall"
  11. "time"
  12. "applet/app/cfg"
  13. "applet/app/router"
  14. )
  15. //系统初始化
  16. func init() {
  17. cfg.InitCfg() //配置初始化
  18. cfg.InitLog() //日志初始化
  19. cfg.InitCache() //缓存初始化
  20. if cfg.Debug { //判断是否是debug
  21. if err := db.InitDB(cfg.DB); err != nil { //主数据库初始化
  22. panic(err)
  23. }
  24. }
  25. fmt.Println("init success")
  26. }
  27. func main() {
  28. //svc.CentralKitchenForSchoolAlipayTradeFastpayRefundQuery(db.Db)
  29. //var list []model.CentralKitchenForSchoolUserRefundDay
  30. //if err := db.Db.Where("create_at >= '2024-01-15 18:00:00' AND state = 4 and uid < 0").Desc("id").Find(&list); err != nil {
  31. // fmt.Println(err)
  32. //}
  33. //
  34. //var notCanUserIds []int
  35. //for _, v := range list {
  36. // v.RecordsId = -v.RecordsId
  37. // v.OutTradeNo = "-" + v.OutTradeNo
  38. // affected1, err := db.Db.Where("id=?", v.Id).Cols("records_id", "out_trade_no").Update(&v)
  39. // if err != nil {
  40. // fmt.Println(err)
  41. // }
  42. // fmt.Println(">>>>>>>>>>>>>>>>>affected1<<<<<<<<<<<<<<<<<<<", affected1)
  43. // continue
  44. // var mm []model.CentralKitchenForSchoolUserRefundDay
  45. // if err := db.Db.Where("uid = ?", v.Uid).And("state = 1").Desc("records_id").Find(&mm); err != nil {
  46. // fmt.Println(err)
  47. // }
  48. //
  49. // if len(mm) > 0 {
  50. // mmm := new(model.CentralKitchenForSchoolUserWithDay)
  51. // _, err := db.Db.Where("id =?", mm[0].RecordsId).Get(mmm)
  52. // if err != nil {
  53. // fmt.Println(err)
  54. // }
  55. // //if mmm.Date == "2024-01-31" {
  56. // //1、更改当前记录
  57. // v.Uid = -v.Uid
  58. // affected1, err := db.Db.Where("id=?", v.Id).Cols("uid").Update(&v)
  59. // if err != nil {
  60. // fmt.Println(err)
  61. // }
  62. // fmt.Println(">>>>>>>>>>>>>>>>>affected1<<<<<<<<<<<<<<<<<<<", affected1)
  63. // vv := new(model.CentralKitchenForSchoolUserWithDay)
  64. // _, err = db.Db.Where("id =?", v.RecordsId).Get(vv)
  65. // if err != nil {
  66. // fmt.Println(err)
  67. // }
  68. // vv.State = 2
  69. // affected11, err := db.Db.Where("id=?", vv.Id).Cols("state").Update(vv)
  70. // if err != nil {
  71. // fmt.Println(err)
  72. // }
  73. // fmt.Println(">>>>>>>>>>>>>>>>>affected11<<<<<<<<<<<<<<<<<<<", affected11)
  74. //
  75. // //2、更改兑换记录
  76. // mm[0].OutRequestNo = v.OutRequestNo
  77. // mm[0].State = v.State
  78. // mm[0].RefundDate = v.RefundDate
  79. // mm[0].Memo = "exchange"
  80. // affected2, err := db.Db.Where("id=?", mm[0].Id).Cols("out_request_no", "state", "refund_date", "memo").Update(mm[0])
  81. // if err != nil {
  82. // fmt.Println(err)
  83. // }
  84. // fmt.Println(">>>>>>>>>>>>>>>>>affected2<<<<<<<<<<<<<<<<<<<", affected2)
  85. // mmm.State = 4
  86. // affected22, err := db.Db.Where("id=?", mmm.Id).Cols("state").Update(mmm)
  87. // if err != nil {
  88. // fmt.Println(err)
  89. // }
  90. // fmt.Println(">>>>>>>>>>>>>>>>>affected22<<<<<<<<<<<<<<<<<<<", affected22)
  91. //
  92. // //}
  93. // } else {
  94. // notCanUserIds = append(notCanUserIds, v.Uid)
  95. // }
  96. //}
  97. r := router.Init() //创建路由
  98. srv := &http.Server{ //设置http服务参数
  99. Addr: cfg.SrvAddr, //指定ip和端口
  100. Handler: r, //指定路由
  101. }
  102. go func() { //协程启动监听http服务
  103. fmt.Println("Listening and serving HTTP on " + cfg.SrvAddr)
  104. if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
  105. log.Fatalf("listen: %s\n", err)
  106. }
  107. }()
  108. //退出go守护进程
  109. quit := make(chan os.Signal)
  110. signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
  111. <-quit
  112. log.Println("Shutting down server...")
  113. ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
  114. defer cancel()
  115. if err := srv.Shutdown(ctx); err != nil {
  116. log.Fatal("Server forced to shutdown:", err)
  117. }
  118. log.Println("Server exiting")
  119. }