admin_backend/main.go
2025-03-04 12:05:23 +08:00

68 lines
2.0 KiB
Go

package main
import (
"backend/controller"
"backend/feishu/server"
"backend/util"
"log"
"os"
"github.com/gin-gonic/gin"
)
// GOOS=linux GOARCH=amd64 go build -o /data/backend/release/backend main.go
func main() {
r := gin.Default()
// 以追加模式打开或创建日志文件
file, err := os.OpenFile("./log/backend.log", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
if err != nil {
log.Fatalf("failed to open log file: %v", err)
}
// 将默认日志输出指向文件
log.SetOutput(file)
api := r.Group("/api")
{
api.POST("/auth/login", controller.Login)
api.GET("/auth/codes", controller.Codes)
api.POST("/log/user", controller.UserDetail)
api.POST("/log/asset", controller.Asset)
api.POST("/log/event", controller.Event)
api.POST("/log/order", controller.Order)
api.POST("/user/list", controller.UserList)
api.GET("/user/info", controller.UserInfo)
api.POST("/user/gm", controller.UserGM)
api.POST("/server/list", controller.AppList)
api.POST("/server/serverList", controller.ServerList)
api.POST("/server/addServer", controller.AddServer)
api.POST("/server/updateApp", controller.UpdateApp)
api.POST("/server/updateAppFeishu", controller.UpdateAppFeishu)
api.POST("/server/restart", controller.RestartServer)
api.POST("/server/reload", controller.ReloadServer)
api.POST("/statistics/level", controller.StatisticsLevel)
api.POST("/statistics/info", controller.StatisticsInfo)
api.POST("/statistics/heat", controller.StatisticsHeat)
// 邮件
api.POST("/mail/send", controller.SendMail)
api.POST("/mail/list", controller.MailList)
api.POST("/mail/delete", controller.MailDelete)
// 飞书
api.POST("/feishu/sendInfo", controller.FeishuSendInfo)
api.POST("/feishu/sendWeekInfo", controller.FeishuSendWeekInfo)
api.POST("/feishu/updateApp", controller.FeishuUpdateApp)
api.POST("/feishu/serverInfo", controller.FeishuServerInfo)
}
go controller.AppPortNmap()
go util.ScheduleDailyTask()
go server.Server()
r.Run(":5320") // 在 0.0.0.0:5320 上监听并服务
}