diff --git a/internal/db/models/user_dao.go b/internal/db/models/user_dao.go index 88cb0896..38433b90 100644 --- a/internal/db/models/user_dao.go +++ b/internal/db/models/user_dao.go @@ -534,18 +534,18 @@ func (this *UserDAO) UpdateUserIsVerified(tx *dbs.Tx, userId int64, isRejected b } // RenewUserServersState 更新用户服务状态 -func (this *UserDAO) RenewUserServersState(tx *dbs.Tx, userId int64) error { +func (this *UserDAO) RenewUserServersState(tx *dbs.Tx, userId int64) (bool, error) { oldServersEnabled, err := this.Query(tx). Pk(userId). Result("serversEnabled"). FindBoolCol() if err != nil { - return err + return false, err } newServersEnabled, err := this.CheckUserServersEnabled(tx, userId) if err != nil { - return err + return false, err } if oldServersEnabled != newServersEnabled { @@ -554,23 +554,23 @@ func (this *UserDAO) RenewUserServersState(tx *dbs.Tx, userId int64) error { Set("serversEnabled", newServersEnabled). UpdateQuickly() if err != nil { - return err + return false, err } // 创建变更通知 clusterIds, err := SharedServerDAO.FindUserServerClusterIds(tx, userId) if err != nil { - return err + return false, err } for _, clusterId := range clusterIds { err = SharedNodeTaskDAO.CreateClusterTask(tx, nodeconfigs.NodeRoleNode, clusterId, userId, 0, NodeTaskTypeUserServersStateChanged) if err != nil { - return err + return false, err } } } - return nil + return newServersEnabled, nil } // NotifyUpdate 用户变更通知 @@ -580,7 +580,7 @@ func (this *UserDAO) NotifyUpdate(tx *dbs.Tx, userId int64) error { } // 更新用户服务状态 - err := this.RenewUserServersState(tx, userId) + _, err := this.RenewUserServersState(tx, userId) if err != nil { return err } diff --git a/internal/rpc/services/service_user.go b/internal/rpc/services/service_user.go index 8f754345..88d20707 100644 --- a/internal/rpc/services/service_user.go +++ b/internal/rpc/services/service_user.go @@ -781,7 +781,7 @@ func (this *UserService) CheckUserServersState(ctx context.Context, req *pb.Chec } // RenewUserServersState 更新用户服务可用状态 -func (this *UserService) RenewUserServersState(ctx context.Context, req *pb.RenewUserServersStateRequest) (*pb.RPCSuccess, error) { +func (this *UserService) RenewUserServersState(ctx context.Context, req *pb.RenewUserServersStateRequest) (*pb.RenewUserServersStateResponse, error) { _, userId, err := this.ValidateAdminAndUser(ctx, false) if err != nil { return nil, err @@ -792,10 +792,12 @@ func (this *UserService) RenewUserServersState(ctx context.Context, req *pb.Rene } var tx = this.NullTx() - err = models.SharedUserDAO.RenewUserServersState(tx, req.UserId) + isEnabled, err := models.SharedUserDAO.RenewUserServersState(tx, req.UserId) if err != nil { return nil, err } - return this.Success() + return &pb.RenewUserServersStateResponse{ + IsEnabled: isEnabled, + }, nil }