diff --git a/migration/1706012712969-add_import_date_to_donation_entity.ts b/migration/1706012712969-add_import_date_to_donation_entity.ts new file mode 100644 index 000000000..33fbf0470 --- /dev/null +++ b/migration/1706012712969-add_import_date_to_donation_entity.ts @@ -0,0 +1,15 @@ +import { MigrationInterface, QueryRunner } from 'typeorm'; + +export class addImportDateToDonationEntity1706012712969 + implements MigrationInterface +{ + async up(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `ALTER TABLE "donation" ADD COLUMN IF NOT EXISTS "importDate" TIMESTAMP WITH TIME ZONE`, + ); + } + + async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE "donation" DROP COLUMN "importDate"`); + } +} diff --git a/src/entities/donation.ts b/src/entities/donation.ts index 394fee0e9..f4c0860b9 100644 --- a/src/entities/donation.ts +++ b/src/entities/donation.ts @@ -214,6 +214,10 @@ export class Donation extends BaseEntity { @Column() createdAt: Date; + @Field(type => Date, { nullable: true }) + @Column({ nullable: true }) + importDate: Date; + @Field(type => String, { nullable: true }) @Column({ nullable: true }) donationType?: string; diff --git a/src/repositories/donationRepository.ts b/src/repositories/donationRepository.ts index f6b34e823..af3faf85d 100644 --- a/src/repositories/donationRepository.ts +++ b/src/repositories/donationRepository.ts @@ -387,12 +387,20 @@ export const getPendingDonationsIds = (): Promise<{ id: number }[]> => { hours: Number(process.env.DONATION_VERIFICAITON_EXPIRATION_HOURS), }) .toDate(); + return Donation.find({ - where: { - status: DONATION_STATUS.PENDING, - isFiat: false, - createdAt: MoreThan(date), - }, + where: [ + { + status: DONATION_STATUS.PENDING, + isFiat: false, + createdAt: MoreThan(date), + }, + { + status: DONATION_STATUS.PENDING, + isFiat: false, + importDate: MoreThan(date), + }, + ], select: ['id'], }); }; diff --git a/src/services/cronJobs/backupDonationImportJob.ts b/src/services/cronJobs/backupDonationImportJob.ts index 055ed0b69..5e4d13de5 100644 --- a/src/services/cronJobs/backupDonationImportJob.ts +++ b/src/services/cronJobs/backupDonationImportJob.ts @@ -111,6 +111,7 @@ export const createBackupDonation = async ( ); const donation = (await findDonationById(Number(donationId))) as Donation; donation!.createdAt = getCreatedAtFromMongoObjectId(donationData._id); + donation!.importDate = new Date(); return donation.save(); };