diff --git a/backend/internal/service/user_group_service.go b/backend/internal/service/user_group_service.go index bc3d966..9b68af7 100644 --- a/backend/internal/service/user_group_service.go +++ b/backend/internal/service/user_group_service.go @@ -62,7 +62,10 @@ func (s *UserGroupService) Create(input dto.UserGroupCreateDto) (group model.Use group = model.UserGroup{ FriendlyName: input.FriendlyName, Name: input.Name, - LdapID: &input.LdapID, + } + + if input.LdapID != "" { + group.LdapID = &input.LdapID } if err := s.db.Preload("Users").Create(&group).Error; err != nil { diff --git a/backend/internal/service/user_service.go b/backend/internal/service/user_service.go index 455b9d1..57343d8 100644 --- a/backend/internal/service/user_service.go +++ b/backend/internal/service/user_service.go @@ -66,8 +66,11 @@ func (s *UserService) CreateUser(input dto.UserCreateDto) (model.User, error) { Email: input.Email, Username: input.Username, IsAdmin: input.IsAdmin, - LdapID: &input.LdapID, } + if input.LdapID != "" { + user.LdapID = &input.LdapID + } + if err := s.db.Create(&user).Error; err != nil { if errors.Is(err, gorm.ErrDuplicatedKey) { return model.User{}, s.checkDuplicatedFields(user) diff --git a/backend/resources/migrations/postgres/20250120102531_fix_empy_ldap_id_string.down.sql b/backend/resources/migrations/postgres/20250120102531_fix_empy_ldap_id_string.down.sql new file mode 100644 index 0000000..be451ac --- /dev/null +++ b/backend/resources/migrations/postgres/20250120102531_fix_empy_ldap_id_string.down.sql @@ -0,0 +1,2 @@ +UPDATE users SET ldap_id = '' WHERE ldap_id IS NULL; +UPDATE user_groups SET ldap_id = '' WHERE ldap_id IS NULL; \ No newline at end of file diff --git a/backend/resources/migrations/postgres/20250120102531_fix_empy_ldap_id_string.up.sql b/backend/resources/migrations/postgres/20250120102531_fix_empy_ldap_id_string.up.sql new file mode 100644 index 0000000..01fe893 --- /dev/null +++ b/backend/resources/migrations/postgres/20250120102531_fix_empy_ldap_id_string.up.sql @@ -0,0 +1,2 @@ +UPDATE users SET ldap_id = null WHERE ldap_id = ''; +UPDATE user_groups SET ldap_id = null WHERE ldap_id = ''; \ No newline at end of file diff --git a/backend/resources/migrations/sqlite/20250120102531_fix_empy_ldap_id_string.down.sql b/backend/resources/migrations/sqlite/20250120102531_fix_empy_ldap_id_string.down.sql new file mode 100644 index 0000000..be451ac --- /dev/null +++ b/backend/resources/migrations/sqlite/20250120102531_fix_empy_ldap_id_string.down.sql @@ -0,0 +1,2 @@ +UPDATE users SET ldap_id = '' WHERE ldap_id IS NULL; +UPDATE user_groups SET ldap_id = '' WHERE ldap_id IS NULL; \ No newline at end of file diff --git a/backend/resources/migrations/sqlite/20250120102531_fix_empy_ldap_id_string.up.sql b/backend/resources/migrations/sqlite/20250120102531_fix_empy_ldap_id_string.up.sql new file mode 100644 index 0000000..01fe893 --- /dev/null +++ b/backend/resources/migrations/sqlite/20250120102531_fix_empy_ldap_id_string.up.sql @@ -0,0 +1,2 @@ +UPDATE users SET ldap_id = null WHERE ldap_id = ''; +UPDATE user_groups SET ldap_id = null WHERE ldap_id = ''; \ No newline at end of file