Skip to content

Commit

Permalink
Fix init admin user tenants is null, del pointer (#63)
Browse files Browse the repository at this point in the history
* Fix audit log recorded wrong status

* Reserve expired rule of the silence

* Optimize tenant management add member and role

* update tenants sql

* Fix init admin user tenants is null, del pointer
  • Loading branch information
Cairry authored Aug 1, 2024
1 parent bb3ea80 commit 0ea1cc6
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 9 deletions.
2 changes: 1 addition & 1 deletion deploy/sql/tenants.sql
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
INSERT INTO `tenants` (`id`, `name`, `create_at`, `create_by`, `manager`, `description`, `user_number`, `rule_number`, `duty_number`, `notice_number`, `remove_protection`) VALUES ('tid-co4iic3adq7a2jjeas90', 'default', 1711876400, 'system', 'admin', 'default 租户', 999, 999, 999, 999, 1);
INSERT INTO `tenants` (`id`, `name`, `create_at`, `create_by`, `manager`, `description`, `user_number`, `rule_number`, `duty_number`, `notice_number`, `remove_protection`) VALUES ('default', 'default', 1711876400, 'system', 'admin', 'default 租户', 999, 999, 999, 999, 1);

14 changes: 7 additions & 7 deletions internal/repo/tenant.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ func (tr TenantRepo) Create(t models.Tenant) error {
return err
}

*userData.Tenants = append(*userData.Tenants, t.ID)
userData.Tenants = append(userData.Tenants, t.ID)
err = tr.g.Updates(Updates{
Table: models.Member{},
Where: map[string]interface{}{
Expand Down Expand Up @@ -147,7 +147,7 @@ func (tr TenantRepo) List(t models.TenantQuery) (data []models.Tenant, err error
}

var ts = &[]models.Tenant{}
for _, tid := range *getUser.Tenants {
for _, tid := range getUser.Tenants {
getT, err := tr.Tenant().Get(models.TenantQuery{ID: tid})
if err != nil {
return nil, err
Expand Down Expand Up @@ -221,14 +221,14 @@ func (tr TenantRepo) AddTenantLinkedUsers(t models.TenantLinkedUsers) error {
}

var exist bool
for _, tid := range *userData.Tenants {
for _, tid := range userData.Tenants {
if tid == t.ID {
exist = true
}
}

if !exist {
*userData.Tenants = append(*userData.Tenants, t.ID)
userData.Tenants = append(userData.Tenants, t.ID)
}
err = tr.g.Updates(Updates{
Table: models.Member{},
Expand Down Expand Up @@ -278,14 +278,14 @@ func (tr TenantRepo) RemoveTenantLinkedUsers(t models.TenantQuery) error {
}

var newTenants = &[]string{}
for _, tid := range *userData.Tenants {
for _, tid := range userData.Tenants {
if tid == t.ID {
continue
}
*newTenants = append(*newTenants, tid)
}
*userData.Tenants = *newTenants

userData.Tenants = *newTenants
err = tr.g.Updates(Updates{
Table: models.Member{},
Where: map[string]interface{}{
Expand Down
13 changes: 12 additions & 1 deletion internal/repo/user.go
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,17 @@ func (ur UserRepo) Create(r models.Member) error {
return err
}

if r.UserId == "admin" {
r.Tenants = append(r.Tenants, "default")
err = ur.g.Updates(Updates{
Table: models.Member{},
Where: map[string]interface{}{
"user_id = ?": r.UserId,
},
Updates: r,
})
}

return nil
}

Expand All @@ -119,7 +130,7 @@ func (ur UserRepo) Delete(r models.MemberQuery) error {
return err
}

for _, tid := range *userInfo.Tenants {
for _, tid := range userInfo.Tenants {
err = ur.Tenant().RemoveTenantLinkedUsers(models.TenantQuery{ID: tid, UserID: r.UserId})
if err != nil {
return err
Expand Down
1 change: 1 addition & 0 deletions internal/services/user.go
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@ func (us userService) Register(req interface{}) (interface{}, interface{}) {
if r.UserId == "" {
r.UserId = cmd.RandUid()
}

r.Password = hashPassword
r.CreateAt = time.Now().Unix()

Expand Down

0 comments on commit 0ea1cc6

Please sign in to comment.