Keine Beschreibung
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

query_tenant.go 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package tenant
  2. import (
  3. "context"
  4. "fmt"
  5. "git.x2erp.com/qdy/go-base/ctx"
  6. "git.x2erp.com/qdy/go-base/logger"
  7. "git.x2erp.com/qdy/go-base/model/response"
  8. "git.x2erp.com/qdy/go-base/util"
  9. "git.x2erp.com/qdy/go-db/factory/database"
  10. "git.x2erp.com/qdy/go-svc-configure/internal/service/dao"
  11. "git.x2erp.com/qdy/go-svc-configure/internal/tables"
  12. )
  13. // GetTenant 查询单个租户
  14. func GetTenant(tenantID string, ctx context.Context, dbFactory *database.DBFactory, reqCtx *ctx.RequestContext) *response.QueryResult[tables.TenantDB] {
  15. logger.Debug("GetTenant-开始查询租户")
  16. if tenantID == "" {
  17. logger.ErrorC(reqCtx, "租户ID不能为空")
  18. return util.CreateErrorResult[tables.TenantDB]("租户ID不能为空", reqCtx)
  19. }
  20. // 获取数据库连接
  21. db := dbFactory.GetDB()
  22. // 查询租户
  23. tenant, err := dao.GetTenantByTenantID(ctx, db, tenantID)
  24. if err != nil {
  25. logger.ErrorC(reqCtx, fmt.Sprintf("查询租户失败: %v", err))
  26. return util.CreateErrorResult[tables.TenantDB](fmt.Sprintf("查询租户失败: %v", err), reqCtx)
  27. }
  28. logger.Debug(fmt.Sprintf("成功查询租户: %s", tenantID))
  29. return util.CreateSuccessResultData[tables.TenantDB](*tenant, reqCtx)
  30. }
  31. // ListTenants 查询租户列表
  32. func ListTenants(ctx context.Context, dbFactory *database.DBFactory, reqCtx *ctx.RequestContext) *response.QueryResult[[]tables.TenantDB] {
  33. logger.Debug("ListTenants-开始查询租户列表")
  34. // 获取数据库连接
  35. db := dbFactory.GetDB()
  36. // 查询租户列表
  37. tenants, err := dao.ListTenants(ctx, db)
  38. if err != nil {
  39. logger.ErrorC(reqCtx, fmt.Sprintf("查询租户列表失败: %v", err))
  40. return util.CreateErrorResult[[]tables.TenantDB](fmt.Sprintf("查询租户列表失败: %v", err), reqCtx)
  41. }
  42. result := util.CreateSuccessResultData[[]tables.TenantDB](tenants, reqCtx)
  43. result.Count = len(tenants)
  44. result.TotalCount = len(tenants)
  45. logger.Debug(fmt.Sprintf("成功查询租户列表, 共 %d 个租户", len(tenants)))
  46. return result
  47. }