Няма описание
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.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package role
  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. // GetRole 查询单个角色
  14. func GetRole(roleID string, ctx context.Context, dbFactory *database.DBFactory, reqCtx *ctx.RequestContext) *response.QueryResult[tables.RoleDB] {
  15. logger.Debug("GetRole-开始查询角色")
  16. if roleID == "" {
  17. logger.ErrorC(reqCtx, "角色ID不能为空")
  18. return util.CreateErrorResult[tables.RoleDB]("角色ID不能为空", reqCtx)
  19. }
  20. // 获取数据库连接
  21. db := dbFactory.GetDB()
  22. // 查询角色
  23. role, err := dao.GetRoleByRoleID(ctx, db, roleID)
  24. if err != nil {
  25. logger.ErrorC(reqCtx, fmt.Sprintf("查询角色失败: %v", err))
  26. return util.CreateErrorResult[tables.RoleDB](fmt.Sprintf("查询角色失败: %v", err), reqCtx)
  27. }
  28. logger.Debug(fmt.Sprintf("成功查询角色: %s", roleID))
  29. return util.CreateSuccessResultData[tables.RoleDB](*role, reqCtx)
  30. }
  31. // ListRoles 查询角色列表
  32. func ListRoles(ctx context.Context, dbFactory *database.DBFactory, reqCtx *ctx.RequestContext) *response.QueryResult[[]tables.RoleDB] {
  33. logger.Debug("ListRoles-开始查询角色列表")
  34. // 获取数据库连接
  35. db := dbFactory.GetDB()
  36. // 查询角色列表
  37. roles, err := dao.ListRoles(ctx, db)
  38. if err != nil {
  39. logger.ErrorC(reqCtx, fmt.Sprintf("查询角色列表失败: %v", err))
  40. return util.CreateErrorResult[[]tables.RoleDB](fmt.Sprintf("查询角色列表失败: %v", err), reqCtx)
  41. }
  42. result := util.CreateSuccessResultData[[]tables.RoleDB](roles, reqCtx)
  43. result.Count = len(roles)
  44. result.TotalCount = len(roles)
  45. logger.Debug(fmt.Sprintf("成功查询角色列表, 共 %d 个角色", len(roles)))
  46. return result
  47. }