mirror of
https://github.com/infiniflow/ragflow.git
synced 2026-08-04 23:00:30 +08:00
Go: fix list services (#17664)
### Summary 1. Fix admin list services; 2. Fix admin show service 'service_name'; Signed-off-by: Jin Hai <haijin.chn@gmail.com>
This commit is contained in:
@@ -490,7 +490,8 @@ func (h *Handler) DeleteUserAPIToken(c *gin.Context) {
|
||||
|
||||
// GetServices handle get all services
|
||||
func (h *Handler) GetServices(c *gin.Context) {
|
||||
services, err := h.service.ListServices()
|
||||
ctx := c.Request.Context()
|
||||
services, err := h.service.ListServices(ctx)
|
||||
if err != nil {
|
||||
common.ResponseWithHttpCodeData(c, http.StatusInternalServerError, common.CodeBadRequest, nil, err.Error())
|
||||
return
|
||||
@@ -518,48 +519,38 @@ func (h *Handler) GetServicesByType(c *gin.Context) {
|
||||
|
||||
// GetService handle get service details
|
||||
func (h *Handler) GetService(c *gin.Context) {
|
||||
serviceID := c.Param("service_id")
|
||||
if serviceID == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service ID is required")
|
||||
serviceName := c.Param("service_name")
|
||||
if serviceName == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service name is required")
|
||||
return
|
||||
}
|
||||
|
||||
// Get all services and find the one with matching ID
|
||||
allConfigs := server.GetAllConfigs()
|
||||
|
||||
var targetService map[string]interface{}
|
||||
for _, config := range allConfigs {
|
||||
if id, ok := config["id"]; ok {
|
||||
if strconv.Itoa(id.(int)) == serviceID {
|
||||
targetService = config
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if targetService == nil {
|
||||
common.ErrorWithCode(c, common.CodeNotFound, "Service not found")
|
||||
return
|
||||
}
|
||||
|
||||
serviceStatus, err := h.service.GetServiceDetails(targetService)
|
||||
ctx := c.Request.Context()
|
||||
services, err := h.service.ListServices(ctx)
|
||||
if err != nil {
|
||||
common.ErrorWithCode(c, common.CodeServerError, err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
common.SuccessWithData(c, serviceStatus, "")
|
||||
for _, serviceInstance := range services {
|
||||
if serviceInstance.Name == serviceName {
|
||||
common.SuccessWithData(c, serviceInstance, "")
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
common.ErrorWithCode(c, common.CodeNotFound, "Service not found")
|
||||
}
|
||||
|
||||
// ShutdownService handle shutdown service
|
||||
func (h *Handler) ShutdownService(c *gin.Context) {
|
||||
serviceID := c.Param("service_id")
|
||||
if serviceID == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service ID is required")
|
||||
serviceName := c.Param("service_name")
|
||||
if serviceName == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service name is required")
|
||||
return
|
||||
}
|
||||
|
||||
result, err := h.service.ShutdownService(serviceID)
|
||||
result, err := h.service.ShutdownService(serviceName)
|
||||
if err != nil {
|
||||
common.ErrorWithCode(c, common.CodeServerError, err.Error())
|
||||
return
|
||||
@@ -570,13 +561,13 @@ func (h *Handler) ShutdownService(c *gin.Context) {
|
||||
|
||||
// StartService handle start service
|
||||
func (h *Handler) StartService(c *gin.Context) {
|
||||
serviceID := c.Param("service_id")
|
||||
if serviceID == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service ID is required")
|
||||
serviceName := c.Param("service_name")
|
||||
if serviceName == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service name is required")
|
||||
return
|
||||
}
|
||||
|
||||
result, err := h.service.StartService(serviceID)
|
||||
result, err := h.service.StartService(serviceName)
|
||||
if err != nil {
|
||||
common.ErrorWithCode(c, common.CodeServerError, err.Error())
|
||||
return
|
||||
@@ -587,13 +578,13 @@ func (h *Handler) StartService(c *gin.Context) {
|
||||
|
||||
// RestartService handle restart service
|
||||
func (h *Handler) RestartService(c *gin.Context) {
|
||||
serviceID := c.Param("service_id")
|
||||
if serviceID == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service ID is required")
|
||||
serviceName := c.Param("service_name")
|
||||
if serviceName == "" {
|
||||
common.ErrorWithCode(c, common.CodeBadRequest, "Service name is required")
|
||||
return
|
||||
}
|
||||
|
||||
result, err := h.service.RestartService(serviceID)
|
||||
result, err := h.service.RestartService(serviceName)
|
||||
if err != nil {
|
||||
common.ErrorWithCode(c, common.CodeServerError, err.Error())
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user