mirror of
https://github.com/ToolJet/ToolJet
synced 2026-05-22 16:38:21 +00:00
pass ws admin
This commit is contained in:
parent
6e6b721fca
commit
29202a8e40
3 changed files with 15 additions and 1 deletions
|
|
@ -8,6 +8,7 @@ import { TooljetDbModule } from '@modules/tooljet-db/module';
|
|||
import { AppsModule } from '@modules/apps/module';
|
||||
import { OrganizationsModule } from '@modules/organizations/module';
|
||||
import { VersionModule } from '@modules/versions/module';
|
||||
import { UsersModule } from '@modules/users/module';
|
||||
export class ExternalApiModule {
|
||||
static async register(configs?: { IS_GET_CONTEXT: boolean }): Promise<DynamicModule> {
|
||||
const importPath = await getImportPath(configs?.IS_GET_CONTEXT);
|
||||
|
|
@ -18,6 +19,7 @@ export class ExternalApiModule {
|
|||
return {
|
||||
module: ExternalApiModule,
|
||||
imports: [
|
||||
await UsersModule.register(configs),
|
||||
await RolesModule.register(configs),
|
||||
await GroupPermissionsModule.register(configs),
|
||||
await TooljetDbModule.register(configs),
|
||||
|
|
|
|||
|
|
@ -292,7 +292,6 @@ export default class LicenseBase {
|
|||
return this._isServerSideGlobal;
|
||||
}
|
||||
public get externalApis(): boolean {
|
||||
return true;
|
||||
if (this.IsBasicPlan) {
|
||||
return !!this.BASIC_PLAN_TERMS.features?.externalApi;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ import { Organization } from '@entities/organization.entity';
|
|||
import { OrganizationUser } from '@entities/organization_user.entity';
|
||||
import { isSuperAdmin } from '@helpers/utils.helper';
|
||||
import * as uuid from 'uuid';
|
||||
import { USER_ROLE } from '@modules/group-permissions/constants';
|
||||
|
||||
type UserFilterOptions = { searchText?: string; status?: string; page?: number };
|
||||
|
||||
|
|
@ -168,6 +169,18 @@ export class UserRepository extends Repository<User> {
|
|||
await manager.upsert(UserDetails, updatableParams, conflictsPaths);
|
||||
}
|
||||
|
||||
async getUserWithAdminRole(organizationId: string, manager?: EntityManager): Promise<User | null> {
|
||||
return dbTransactionWrap((manager: EntityManager) => {
|
||||
return manager
|
||||
.createQueryBuilder(User, 'user')
|
||||
.innerJoin('user.userGroups', 'groupUsers')
|
||||
.innerJoin('groupUsers.group', 'group')
|
||||
.where('group.name = :groupName', { groupName: USER_ROLE.ADMIN })
|
||||
.andWhere('group.organizationId = :organizationId', { organizationId })
|
||||
.getOne();
|
||||
}, manager || this.manager);
|
||||
}
|
||||
|
||||
async findByEmail(
|
||||
email: string,
|
||||
organizationId?: string,
|
||||
|
|
|
|||
Loading…
Reference in a new issue