Files
xinmi/internal/workbench/content_export.go
T

31 lines
693 B
Go
Raw Normal View History

package workbench
import (
"strings"
"github.com/Tencent/WeKnora/internal/accesspolicy"
"github.com/gin-gonic/gin"
)
func (h *Handler) Export(c *gin.Context) {
if !accesspolicy.Allowed(c.Request.Context(), "content.deliver") {
respondError(c, ErrForbidden)
return
}
if c.Param("kind") != "content-tasks" {
respondError(c, ErrInvalid)
return
}
r, err := h.service.get(c.Request.Context(), "content-tasks", c.Param("id"))
if err != nil {
respondError(c, err)
return
}
data, err := decode[TaskData](r.Data)
if err != nil || strings.TrimSpace(data.Composed) == "" {
respondError(c, ErrInvalid)
return
}
result(c, gin.H{"name": r.Name, "content": data.Composed})
}