https://project.mdnd-it.cc/work_packages/94
This commit is contained in:
2025-08-23 04:25:28 +02:00
parent 725516ad6c
commit 19cfa031d0
25823 changed files with 1095587 additions and 2801760 deletions
@@ -0,0 +1,4 @@
export interface GetOrganizationByIdQuery {
id: string;
}
//# sourceMappingURL=GetOrganizationByIdQuery.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationByIdQuery.d.ts","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationByIdQuery.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;CACZ"}
@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=GetOrganizationByIdQuery.js.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationByIdQuery.js","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationByIdQuery.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
import { IOrganizationRepository } from '../../../Domain/IRepository/IOrganizationRepository';
import { GetOrganizationByIdQuery } from './GetOrganizationByIdQuery';
import { ShortOrganizationDto } from '../../DTOs/OrganizationDto';
export declare class GetOrganizationByIdQueryHandler {
private readonly orgRepo;
constructor(orgRepo: IOrganizationRepository);
execute(query: GetOrganizationByIdQuery): Promise<ShortOrganizationDto | null>;
}
//# sourceMappingURL=GetOrganizationByIdQueryHandler.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationByIdQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationByIdQueryHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,qBAAa,+BAA+B;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,uBAAuB;IAEvD,OAAO,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAKrF"}
@@ -0,0 +1,17 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GetOrganizationByIdQueryHandler = void 0;
const OrganizationMapper_1 = require("../../DTOs/Mappers/OrganizationMapper");
class GetOrganizationByIdQueryHandler {
constructor(orgRepo) {
this.orgRepo = orgRepo;
}
async execute(query) {
const org = await this.orgRepo.findById(query.id);
if (!org)
return null;
return OrganizationMapper_1.OrganizationMapper.toShortDto(org);
}
}
exports.GetOrganizationByIdQueryHandler = GetOrganizationByIdQueryHandler;
//# sourceMappingURL=GetOrganizationByIdQueryHandler.js.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationByIdQueryHandler.js","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationByIdQueryHandler.ts"],"names":[],"mappings":";;;AAIA,8EAA2E;AAE3E,MAAa,+BAA+B;IAC1C,YAA6B,OAAgC;QAAhC,YAAO,GAAP,OAAO,CAAyB;IAAG,CAAC;IAEjE,KAAK,CAAC,OAAO,CAAC,KAA+B;QAC3C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,OAAO,uCAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;CACF;AARD,0EAQC"}
@@ -0,0 +1,4 @@
export interface GetOrganizationLoginUrlQuery {
organizationId: string;
}
//# sourceMappingURL=GetOrganizationLoginUrlQuery.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationLoginUrlQuery.d.ts","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationLoginUrlQuery.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,4BAA4B;IAC3C,cAAc,EAAE,MAAM,CAAC;CACxB"}
@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=GetOrganizationLoginUrlQuery.js.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationLoginUrlQuery.js","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationLoginUrlQuery.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
import { IOrganizationRepository } from '../../../Domain/IRepository/IOrganizationRepository';
import { GetOrganizationLoginUrlQuery } from './GetOrganizationLoginUrlQuery';
import { OrganizationLoginUrlDto } from '../../DTOs/OrganizationDto';
export declare class GetOrganizationLoginUrlQueryHandler {
private readonly orgRepo;
constructor(orgRepo: IOrganizationRepository);
execute(query: GetOrganizationLoginUrlQuery): Promise<OrganizationLoginUrlDto | null>;
}
//# sourceMappingURL=GetOrganizationLoginUrlQueryHandler.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationLoginUrlQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationLoginUrlQueryHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,qBAAa,mCAAmC;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,uBAAuB;IAEvD,OAAO,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;CA+C5F"}
@@ -0,0 +1,48 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GetOrganizationLoginUrlQueryHandler = void 0;
const Logger_1 = require("../../Services/Logger");
class GetOrganizationLoginUrlQueryHandler {
constructor(orgRepo) {
this.orgRepo = orgRepo;
}
async execute(query) {
const startTime = Date.now();
try {
(0, Logger_1.logDatabase)('Getting organization login URL', `organizationId: ${query.organizationId}`, 0, {
organizationId: query.organizationId
});
const organization = await this.orgRepo.findById(query.organizationId);
if (!organization) {
(0, Logger_1.logWarning)('Organization not found for login URL request', {
organizationId: query.organizationId
});
return null;
}
if (!organization.url) {
(0, Logger_1.logWarning)('Organization has no configured login URL', {
organizationId: query.organizationId,
organizationName: organization.name
});
return null;
}
const result = {
organizationId: organization.id,
organizationName: organization.name,
loginUrl: organization.url
};
(0, Logger_1.logDatabase)('Organization login URL retrieved successfully', `organizationId: ${query.organizationId}`, Date.now() - startTime, {
organizationId: organization.id,
organizationName: organization.name,
hasUrl: !!organization.url
});
return result;
}
catch (error) {
(0, Logger_1.logError)('GetOrganizationLoginUrlQueryHandler error', error);
throw new Error('Failed to retrieve organization login URL');
}
}
}
exports.GetOrganizationLoginUrlQueryHandler = GetOrganizationLoginUrlQueryHandler;
//# sourceMappingURL=GetOrganizationLoginUrlQueryHandler.js.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationLoginUrlQueryHandler.js","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationLoginUrlQueryHandler.ts"],"names":[],"mappings":";;;AAGA,kDAA0E;AAE1E,MAAa,mCAAmC;IAC9C,YAA6B,OAAgC;QAAhC,YAAO,GAAP,OAAO,CAAyB;IAAG,CAAC;IAEjE,KAAK,CAAC,OAAO,CAAC,KAAmC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,IAAA,oBAAW,EAAC,gCAAgC,EAAE,mBAAmB,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE;gBAC1F,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAEvE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,IAAA,mBAAU,EAAC,8CAA8C,EAAE;oBACzD,cAAc,EAAE,KAAK,CAAC,cAAc;iBACrC,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;gBACtB,IAAA,mBAAU,EAAC,0CAA0C,EAAE;oBACrD,cAAc,EAAE,KAAK,CAAC,cAAc;oBACpC,gBAAgB,EAAE,YAAY,CAAC,IAAI;iBACpC,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,MAAM,GAA4B;gBACtC,cAAc,EAAE,YAAY,CAAC,EAAE;gBAC/B,gBAAgB,EAAE,YAAY,CAAC,IAAI;gBACnC,QAAQ,EAAE,YAAY,CAAC,GAAG;aAC3B,CAAC;YAEF,IAAA,oBAAW,EAAC,+CAA+C,EACzD,mBAAmB,KAAK,CAAC,cAAc,EAAE,EACzC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB;gBACE,cAAc,EAAE,YAAY,CAAC,EAAE;gBAC/B,gBAAgB,EAAE,YAAY,CAAC,IAAI;gBACnC,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG;aAC3B,CACF,CAAC;YAEF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,iBAAQ,EAAC,2CAA2C,EAAE,KAAc,CAAC,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;CACF;AAlDD,kFAkDC"}
@@ -0,0 +1,6 @@
export interface GetOrganizationsByPageQuery {
from: number;
to: number;
includeDeleted?: boolean;
}
//# sourceMappingURL=GetOrganizationsByPageQuery.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationsByPageQuery.d.ts","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationsByPageQuery.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,2BAA2B;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B"}
@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=GetOrganizationsByPageQuery.js.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationsByPageQuery.js","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationsByPageQuery.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
import { IOrganizationRepository } from '../../../Domain/IRepository/IOrganizationRepository';
import { GetOrganizationsByPageQuery } from './GetOrganizationsByPageQuery';
import { ShortOrganizationDto } from '../../DTOs/OrganizationDto';
export declare class GetOrganizationsByPageQueryHandler {
private readonly orgRepo;
constructor(orgRepo: IOrganizationRepository);
execute(query: GetOrganizationsByPageQuery): Promise<{
organizations: ShortOrganizationDto[];
totalCount: number;
}>;
}
//# sourceMappingURL=GetOrganizationsByPageQueryHandler.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationsByPageQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationsByPageQueryHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIlE,qBAAa,kCAAkC;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,uBAAuB;IAEvD,OAAO,CAAC,KAAK,EAAE,2BAA2B,GAAG,OAAO,CAAC;QAAE,aAAa,EAAE,oBAAoB,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAkD1H"}
@@ -0,0 +1,55 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GetOrganizationsByPageQueryHandler = void 0;
const OrganizationMapper_1 = require("../../DTOs/Mappers/OrganizationMapper");
const Logger_1 = require("../../Services/Logger");
class GetOrganizationsByPageQueryHandler {
constructor(orgRepo) {
this.orgRepo = orgRepo;
}
async execute(query) {
try {
// Validate pagination parameters
if (query.from < 0 || query.to < query.from) {
throw new Error('Invalid pagination parameters');
}
const limit = query.to - query.from + 1;
if (limit > 100) {
throw new Error('Page size too large. Maximum 100 records per request');
}
(0, Logger_1.logRequest)('Get organizations by page query started', undefined, undefined, {
from: query.from,
to: query.to,
includeDeleted: query.includeDeleted || false
});
const result = query.includeDeleted
? await this.orgRepo.findByPageIncludingDeleted(query.from, query.to)
: await this.orgRepo.findByPage(query.from, query.to);
(0, Logger_1.logRequest)('Get organizations by page query completed', undefined, undefined, {
from: query.from,
to: query.to,
returned: result.organizations.length,
totalCount: result.totalCount,
includeDeleted: query.includeDeleted || false
});
return {
organizations: OrganizationMapper_1.OrganizationMapper.toShortDtoList(result.organizations),
totalCount: result.totalCount
};
}
catch (error) {
(0, Logger_1.logError)('GetOrganizationsByPageQueryHandler error', error instanceof Error ? error : new Error(String(error)));
// Handle database errors
if (error instanceof Error && error.message.includes('database')) {
throw new Error('Database connection error');
}
// Re-throw validation errors as-is
if (error instanceof Error && (error.message.includes('Invalid pagination') || error.message.includes('Page size'))) {
throw error;
}
throw new Error('Failed to retrieve organizations');
}
}
}
exports.GetOrganizationsByPageQueryHandler = GetOrganizationsByPageQueryHandler;
//# sourceMappingURL=GetOrganizationsByPageQueryHandler.js.map
@@ -0,0 +1 @@
{"version":3,"file":"GetOrganizationsByPageQueryHandler.js","sourceRoot":"","sources":["../../../../src/Application/Organization/queries/GetOrganizationsByPageQueryHandler.ts"],"names":[],"mappings":";;;AAGA,8EAA2E;AAC3E,kDAA6D;AAE7D,MAAa,kCAAkC;IAC7C,YAA6B,OAAgC;QAAhC,YAAO,GAAP,OAAO,CAAyB;IAAG,CAAC;IAEjE,KAAK,CAAC,OAAO,CAAC,KAAkC;QAC9C,IAAI,CAAC;YACH,iCAAiC;YACjC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC5C,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,KAAK,GAAG,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YACxC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC1E,CAAC;YAED,IAAA,mBAAU,EAAC,yCAAyC,EAAE,SAAS,EAAE,SAAS,EAAE;gBAC1E,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK;aAC9C,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc;gBACjC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;gBACrE,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YAExD,IAAA,mBAAU,EAAC,2CAA2C,EAAE,SAAS,EAAE,SAAS,EAAE;gBAC5E,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC,MAAM;gBACrC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK;aAC9C,CAAC,CAAC;YAEH,OAAO;gBACL,aAAa,EAAE,uCAAkB,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;gBACtE,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,iBAAQ,EAAC,0CAA0C,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAEhH,yBAAyB;YACzB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACjE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YAED,mCAAmC;YACnC,IAAI,KAAK,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;gBACpH,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AArDD,gFAqDC"}