diff --git a/package.json b/package.json index 759b4a0..3a5d1b3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@erp/plugin-sdk", - "version": "1.11.2", + "version": "1.11.3", "main": "dist/index.js", "types": "dist/index.d.ts", "bin": { diff --git a/src/backend/services/core.service.ts b/src/backend/services/core.service.ts index d02c305..6286de2 100644 --- a/src/backend/services/core.service.ts +++ b/src/backend/services/core.service.ts @@ -331,9 +331,19 @@ export class CoreService { source: this.serviceName, timestamp: Date.now(), }; - this.client.emit(pattern, event).subscribe({ - error: (err) => this.logger.error(`Failed to emit event ${pattern}:`, err), - }); + try { + const conn = await amqp.connect(this.getRMQUrl()); + const ch = await conn.createChannel(); + await ch.assertExchange('system_events', 'topic', { durable: true }); + ch.publish('system_events', pattern, Buffer.from(JSON.stringify({ + pattern, + data: event, + }))); + await ch.close(); + await conn.close(); + } catch (err: any) { + this.logger.error(`Failed to emit event ${pattern}: ${err.message}`); + } } async auditLog(action: string, resource: string, details?: any): Promise {