sys_system.go 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package system
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "go.uber.org/zap"
  5. "server/global"
  6. "server/model/common/response"
  7. "server/model/system"
  8. systemRes "server/model/system/response"
  9. "server/utils"
  10. )
  11. type SystemApi struct{}
  12. // GetSystemConfig
  13. // @Tags System
  14. // @Summary 获取配置文件内容
  15. // @Security ApiKeyAuth
  16. // @Produce application/json
  17. // @Success 200 {object} response.Response{data=systemRes.SysConfigResponse,msg=string} "获取配置文件内容,返回包括系统配置"
  18. // @Router /system/getSystemConfig [post]
  19. func (s *SystemApi) GetSystemConfig(c *gin.Context) {
  20. config, err := systemConfigService.GetSystemConfig()
  21. if err != nil {
  22. global.GVA_LOG.Error("获取失败!", zap.Error(err))
  23. response.FailWithMessage("获取失败", c)
  24. return
  25. }
  26. response.OkWithDetailed(systemRes.SysConfigResponse{Config: config}, "获取成功", c)
  27. }
  28. // SetSystemConfig
  29. // @Tags System
  30. // @Summary 设置配置文件内容
  31. // @Security ApiKeyAuth
  32. // @Produce application/json
  33. // @Param data body system.System true "设置配置文件内容"
  34. // @Success 200 {object} response.Response{data=string} "设置配置文件内容"
  35. // @Router /system/setSystemConfig [post]
  36. func (s *SystemApi) SetSystemConfig(c *gin.Context) {
  37. var sys system.System
  38. err := c.ShouldBindJSON(&sys)
  39. if err != nil {
  40. response.FailWithMessage(err.Error(), c)
  41. return
  42. }
  43. err = systemConfigService.SetSystemConfig(sys)
  44. if err != nil {
  45. global.GVA_LOG.Error("设置失败!", zap.Error(err))
  46. response.FailWithMessage("设置失败", c)
  47. return
  48. }
  49. response.OkWithMessage("设置成功", c)
  50. }
  51. // ReloadSystem
  52. // @Tags System
  53. // @Summary 重启系统
  54. // @Security ApiKeyAuth
  55. // @Produce application/json
  56. // @Success 200 {object} response.Response{msg=string} "重启系统"
  57. // @Router /system/reloadSystem [post]
  58. func (s *SystemApi) ReloadSystem(c *gin.Context) {
  59. err := utils.Reload()
  60. if err != nil {
  61. global.GVA_LOG.Error("重启系统失败!", zap.Error(err))
  62. response.FailWithMessage("重启系统失败", c)
  63. return
  64. }
  65. response.OkWithMessage("重启系统成功", c)
  66. }
  67. // GetServerInfo
  68. // @Tags System
  69. // @Summary 获取服务器信息
  70. // @Security ApiKeyAuth
  71. // @Produce application/json
  72. // @Success 200 {object} response.Response{data=map[string]interface{},msg=string} "获取服务器信息"
  73. // @Router /system/getServerInfo [post]
  74. func (s *SystemApi) GetServerInfo(c *gin.Context) {
  75. server, err := systemConfigService.GetServerInfo()
  76. if err != nil {
  77. global.GVA_LOG.Error("获取失败!", zap.Error(err))
  78. response.FailWithMessage("获取失败", c)
  79. return
  80. }
  81. response.OkWithDetailed(gin.H{"server": server}, "获取成功", c)
  82. }