Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

migration: api-depot postgres #488

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
4 changes: 2 additions & 2 deletions apps/api/src/modules/base_locale/base_locale.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import {
BaseLocale,
StatusBaseLocalEnum,
} from '@/shared/entities/base_locale.entity';
import { Habilitation } from '@/shared/modules/api_depot/types/habilitation.type';
import { Habilitation } from '@/shared/modules/api_depot/api-depot.types';
import { BanPlateformService } from '@/shared/modules/ban_plateform/ban_plateform.service';
import {
getApiRecoveryUrl,
Expand Down Expand Up @@ -460,7 +460,7 @@ export class BaseLocaleService {
): Promise<void> {
await this.basesLocalesRepository.update(
{ id: baseLocale.id },
{ habilitationId: habilitation._id },
{ habilitationId: habilitation.id },
);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import {
EmailStrategy,
FranceConnectStrategy,
Strategy,
Habilitation,
StatusHabiliation,
} from '@/shared/modules/api_depot/types/habilitation.type';
StatusHabilitationEnum,
TypeStrategyEnum,
} from '@/shared/modules/api_depot/api-depot.types';
import { ApiProperty } from '@nestjs/swagger';

export class Strategy {
@ApiProperty({ enum: ['email', 'franceconnect'] })
type: 'email' | 'franceconnect';
export class StrategyDTO {
@ApiProperty({ enum: TypeStrategyEnum })
type: TypeStrategyEnum;

@ApiProperty()
pinCode: string;
Expand All @@ -25,7 +25,7 @@ export class Strategy {

export class HabilitationDTO implements Habilitation {
@ApiProperty()
_id: string;
id: string;

@ApiProperty()
codeCommune: string;
Expand All @@ -36,14 +36,14 @@ export class HabilitationDTO implements Habilitation {
@ApiProperty()
franceconnectAuthenticationUrl?: string;

@ApiProperty({ type: () => Strategy })
strategy?: EmailStrategy | FranceConnectStrategy;
@ApiProperty({ type: () => StrategyDTO })
strategy?: Strategy;

@ApiProperty()
client?: string;

@ApiProperty({ enum: StatusHabiliation })
status: StatusHabiliation;
@ApiProperty({ enum: StatusHabilitationEnum })
status: StatusHabilitationEnum;

@ApiProperty()
createdAt?: Date;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import {
ApiBearerAuth,
} from '@nestjs/swagger';

import { Habilitation } from '@/shared/modules/api_depot/types/habilitation.type';
import { Habilitation } from '@/shared/modules/api_depot/api-depot.types';

import { CustomRequest } from '@/lib/types/request.type';
import { AdminGuard } from '@/lib/guards/admin.guard';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import { ObjectId } from 'mongodb';

import {
Habilitation,
StatusHabiliation,
} from '@/shared/modules/api_depot/types/habilitation.type';
StatusHabilitationEnum,
} from '@/shared/modules/api_depot/api-depot.types';
import { ApiDepotService } from '@/shared/modules/api_depot/api_depot.service';
import { BaseLocale } from '@/shared/entities/base_locale.entity';
import { BaseLocaleService } from '../../base_locale.service';
Expand Down Expand Up @@ -66,7 +66,7 @@ export class HabilitationService {
}

// On verifie que l'habilitation est valide
if (habilitation.status !== StatusHabiliation.ACCEPTED) {
if (habilitation.status !== StatusHabilitationEnum.ACCEPTED) {
return false;
}
// On verifie que l'habilitation n'est pas expirée
Expand All @@ -86,7 +86,10 @@ export class HabilitationService {
const now = new Date();
const { status, expiresAt } = habilitation;

if (status === StatusHabiliation.ACCEPTED && new Date(expiresAt) > now) {
if (
status === StatusHabilitationEnum.ACCEPTED &&
new Date(expiresAt) > now
) {
throw new HttpException(
'Cette Base Adresse Locale possède déjà une habilitation',
HttpStatus.PRECONDITION_FAILED,
Expand Down Expand Up @@ -116,7 +119,7 @@ export class HabilitationService {

async sendPinCode(habilitationId: string): Promise<void> {
const habilitation: Habilitation = await this.findOne(habilitationId);
if (habilitation.status !== StatusHabiliation.PENDING) {
if (habilitation.status !== StatusHabilitationEnum.PENDING) {
throw new HttpException(
'Aucune demande d’habilitation en attente',
HttpStatus.PRECONDITION_FAILED,
Expand All @@ -141,7 +144,7 @@ export class HabilitationService {
async validatePinCode(habilitationId: string, code: string): Promise<any> {
const habilitation: Habilitation = await this.findOne(habilitationId);

if (habilitation.status !== StatusHabiliation.PENDING) {
if (habilitation.status !== StatusHabilitationEnum.PENDING) {
throw new HttpException(
'Aucune demande d’habilitation en attente',
HttpStatus.PRECONDITION_FAILED,
Expand Down
42 changes: 21 additions & 21 deletions apps/api/test/habilitation.e2e-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ import MockAdapter from 'axios-mock-adapter';
import axios from 'axios';
import {
Habilitation,
StatusHabiliation,
} from '@/shared/modules/api_depot/types/habilitation.type';
StatusHabilitationEnum,
} from '@/shared/modules/api_depot/api-depot.types';
import { add } from 'date-fns';
import { MailerModule } from '@/shared/test/mailer.module.test';
import { Repository } from 'typeorm';
Expand Down Expand Up @@ -128,8 +128,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.ACCEPTED,
id: habilitationId,
status: StatusHabilitationEnum.ACCEPTED,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -161,8 +161,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.ACCEPTED,
id: habilitationId,
status: StatusHabilitationEnum.ACCEPTED,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -222,8 +222,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.ACCEPTED,
id: habilitationId,
status: StatusHabilitationEnum.ACCEPTED,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand All @@ -242,7 +242,7 @@ describe('HABILITATION MODULE', () => {
);

const updatedBAL = await balRepository.findOneBy({ id: balId });
expect(updatedBAL.habilitationId).toBe(habilitation._id);
expect(updatedBAL.habilitationId).toBe(habilitation.id);
});

it('expect 412 BAL already has habilitation', async () => {
Expand All @@ -258,8 +258,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.ACCEPTED,
id: habilitationId,
status: StatusHabilitationEnum.ACCEPTED,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -295,8 +295,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.PENDING,
id: habilitationId,
status: StatusHabilitationEnum.PENDING,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -334,8 +334,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.ACCEPTED,
id: habilitationId,
status: StatusHabilitationEnum.ACCEPTED,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -371,8 +371,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.PENDING,
id: habilitationId,
status: StatusHabilitationEnum.PENDING,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -408,8 +408,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.PENDING,
id: habilitationId,
status: StatusHabilitationEnum.PENDING,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down Expand Up @@ -455,8 +455,8 @@ describe('HABILITATION MODULE', () => {
});

const habilitation: Habilitation = {
_id: habilitationId,
status: StatusHabiliation.REJECTED,
id: habilitationId,
status: StatusHabilitationEnum.REJECTED,
expiresAt: add(new Date(), { months: 1 }),
codeCommune: commune,
emailCommune: '[email protected]',
Expand Down
Loading
Loading