Skip to content

Commit

Permalink
🚧 WIP command migrate demandeAbandonSignaled
Browse files Browse the repository at this point in the history
  • Loading branch information
HubM committed Feb 4, 2025
1 parent 439647b commit 8dfdfdd
Show file tree
Hide file tree
Showing 2 changed files with 94 additions and 3 deletions.
6 changes: 3 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ services:
db:
container_name: potentiel_db
image: postgres:13
volumes:
- .database/potentiel-dev.dump:/dump/potentiel-dev.dump
- .database/restore-dev-db.sh:/docker-entrypoint-initdb.d/restore-dev-db.sh
# volumes:
# - .database/potentiel-dev.dump:/dump/potentiel-dev.dump
# - .database/restore-dev-db.sh:/docker-entrypoint-initdb.d/restore-dev-db.sh
environment:
- POSTGRES_USER=potadmindb
- POSTGRES_PASSWORD=localpwd
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
import { Command, Flags } from '@oclif/core';
import { S3 } from '@aws-sdk/client-s3';
// import { mediator } from 'mediateur';

import { executeSelect } from '@potentiel-libraries/pg-helpers';
// import { Abandon } from '@potentiel-domain/laureat';

export class MigrerDemandeAbandonSignaled extends Command {
static flags = {
dryRun: Flags.boolean(),
};

async run(): Promise<void> {
try {
// const { flags } = await this.parse(MigrerDemandeAbandonSignaled);

const legacyEvents = await executeSelect<{
legacyProjectId: string;
identifiantProjet: string;
dateAccord: string;
pjIdDemandeAbandon: string;
}>(
`select
payload->>'projectId' as "legacyProjectId",
format(
'%s#%s#%s#%s',
p."appelOffreId",
p."periodeId",
p."familleId",
p."numeroCRE"
) as "identifiantProjet",
payload->>'decidedOn' as "dateAccord",
payload->>'attachments' as "pjIdDemandeAbandon"
from "eventStores" es
join "projects" p on p.id::text = es.payload->>'projectId'
where es."type" = 'DemandeAbandonSignaled';`,
);

if (!legacyEvents.length) {
console.log('ℹ️ No legacy events found');
process.exit(0);
}

const bucket = new S3({

Check failure on line 44 in packages/applications/cli/src/commands/abandon/migrer-demandeAbandonSignaled.ts

View workflow job for this annotation

GitHub Actions / call-shared-workflow / lint

'bucket' is assigned a value but never used
endpoint: process.env.S3_ENDPOINT as string,
credentials: {
accessKeyId: process.env.AWS_ACCESS_KEY_ID as string,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY as string,
},
forcePathStyle: true,
});

console.log(`ℹ️ ${legacyEvents.length} legacy events to migrate`);

for (const {
// legacyProjectId,
// identifiantProjet,
// dateAccord,
pjIdDemandeAbandon,
} of legacyEvents) {
const document = await executeSelect<{ storedAt: string }>(
'select "storedAt" from "files" where id = $1',
JSON.parse(pjIdDemandeAbandon)[0].id,
);

if (!document.length) {
console.log('ℹ No document found');
continue;
}
const { storedAt } = document[0];

Check failure on line 70 in packages/applications/cli/src/commands/abandon/migrer-demandeAbandonSignaled.ts

View workflow job for this annotation

GitHub Actions / call-shared-workflow / lint

'storedAt' is assigned a value but never used

console.log('document', document[0]);

// await mediator.send<Abandon.DemanderAbandonUseCase>({
// type: 'Lauréat.Abandon.UseCase.DemanderAbandon',
// data: {
// identifiantProjetValue,
// dateDemandeValue,
// identifiantUtilisateurValue,
// raisonValue,
// },
// });
}

process.exit(0);
} catch (error) {
console.error(error);
process.exit(1);
}
}
}

0 comments on commit 8dfdfdd

Please sign in to comment.