Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

LuticateGroupsBusiness.php 2.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. namespace Luticate\Auth\Business;
  3. use Luticate\Utils\LuBusiness;
  4. use Luticate\Auth\DataAccess\LuticateGroupsDataAccess;
  5. use Luticate\Auth\DBO\LuticateGroupsDbo;
  6. class LuticateGroupsBusiness extends LuBusiness {
  7. protected static function getDataAccess()
  8. {
  9. return new LuticateGroupsDataAccess();
  10. }
  11. /**
  12. * @param $group_id
  13. * @return LuticateGroupsDbo|null
  14. */
  15. public static function checkGroupId($group_id)
  16. {
  17. $group = LuticateGroupsDataAccess::getById($group_id);
  18. if (is_null($group)) {
  19. self::notFound("Group not found");
  20. }
  21. return $group;
  22. }
  23. public static function getUsers($group_id, $page = 0, $perPage = 2000000000, $query = "")
  24. {
  25. return LuticateGroupsDataAccess::getUsers($group_id, $page, $perPage, $query);
  26. }
  27. public static function getByName($group_name)
  28. {
  29. return LuticateGroupsDataAccess::getByName($group_name);
  30. }
  31. public static function hasUser($user_id, $group_id)
  32. {
  33. return LuticateGroupsDataAccess::hasUser($user_id, $group_id);
  34. }
  35. public static function addUser($user_id, $group_id)
  36. {
  37. self::checkGroupId($group_id);
  38. LuticateUsersBusiness::checkUserId($user_id);
  39. if (self::hasUser($user_id, $group_id)) {
  40. return true;
  41. }
  42. return LuticateGroupsDataAccess::addUser($user_id, $group_id);
  43. }
  44. public static function delUser($user_id, $group_id)
  45. {
  46. self::checkGroupId($group_id);
  47. LuticateUsersBusiness::checkUserId($user_id);
  48. return LuticateGroupsDataAccess::delUser($user_id, $group_id);
  49. }
  50. public static function add($group_name)
  51. {
  52. $group = self::getByName($group_name);
  53. if (is_null($group)) {
  54. $group = new LuticateGroupsDbo();
  55. $group->setName($group_name);
  56. return LuticateGroupsDataAccess::addId($group);
  57. }
  58. self::badInput("Group name already exists");
  59. return -1;
  60. }
  61. public static function edit($group_id, $group_name)
  62. {
  63. $group = self::getByName($group_name);
  64. if (!is_null($group) && $group->getId() != $group_id) {
  65. self::badInput("Group name already exists");
  66. }
  67. $group = self::checkGroupId($group_id);
  68. $group->setName($group_name);
  69. LuticateGroupsDataAccess::editById($group_id, $group);
  70. return true;
  71. }
  72. }