Açıklama Yok
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.

types.go 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package api
  2. import (
  3. "git.x2erp.com/qdy/go-base/ctx"
  4. "git.x2erp.com/qdy/go-base/model/response"
  5. )
  6. // StartInstanceRequest 启动实例请求
  7. type StartInstanceRequest struct {
  8. ToolURL string `json:"tool_url" binding:"required"`
  9. Token string `json:"token" binding:"required"`
  10. }
  11. // InstanceInfo 实例信息
  12. type InstanceInfo struct {
  13. ProjectID string `json:"project_id"`
  14. Port int `json:"port"`
  15. PID int `json:"pid"`
  16. Status string `json:"status"`
  17. ConfigPath string `json:"config_path"`
  18. WorkDir string `json:"work_dir"`
  19. APIBase string `json:"api_base"`
  20. ToolURL string `json:"tool_url"`
  21. }
  22. // CreateSessionRequest 创建会话请求
  23. type CreateSessionRequest struct {
  24. Title string `json:"title,omitempty"`
  25. ParentID string `json:"parent_id,omitempty"`
  26. }
  27. // SendMessageRequest 发送消息请求
  28. type SendMessageRequest struct {
  29. ProjectID string `json:"project_id" binding:"required"`
  30. Message string `json:"message" binding:"required"`
  31. }
  32. // ErrorResponse 错误响应
  33. func ErrorResponse(err error) (*response.QueryResult[interface{}], error) {
  34. return &response.QueryResult[interface{}]{
  35. Success: false,
  36. Error: err.Error(),
  37. }, err
  38. }
  39. // SuccessResponse 成功响应
  40. func SuccessResponse(data interface{}) (*response.QueryResult[interface{}], error) {
  41. return &response.QueryResult[interface{}]{
  42. Success: true,
  43. Data: data,
  44. }, nil
  45. }
  46. // SuccessResponseWithMessage 带消息的成功响应
  47. func SuccessResponseWithMessage(data interface{}, message string) (*response.QueryResult[interface{}], error) {
  48. return &response.QueryResult[interface{}]{
  49. Success: true,
  50. Data: data,
  51. Message: message,
  52. }, nil
  53. }
  54. // GetRequestContext 获取请求上下文(简化函数)
  55. func GetRequestContext(reqCtx *ctx.RequestContext) (tenantID, userID string) {
  56. if reqCtx != nil {
  57. return reqCtx.TenantID, reqCtx.UserID
  58. }
  59. return "", ""
  60. }