mirror of
https://gitlab.com/mobicoop/v3/service/matcher.git
synced 2026-01-01 20:22:41 +00:00
refactor; create ad request validation
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
import { createMap, Mapper } from '@automapper/core';
|
||||
import { createMap, forMember, mapFrom, Mapper } from '@automapper/core';
|
||||
import { AutomapperProfile, InjectMapper } from '@automapper/nestjs';
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { Ad } from '../domain/entities/ad';
|
||||
import { AdPresenter } from '../adapters/primaries/ad.presenter';
|
||||
import { CreateAdRequest } from '../domain/dtos/create-ad.request';
|
||||
|
||||
@Injectable()
|
||||
export class AdProfile extends AutomapperProfile {
|
||||
@@ -13,6 +14,28 @@ export class AdProfile extends AutomapperProfile {
|
||||
override get profile() {
|
||||
return (mapper: any) => {
|
||||
createMap(mapper, Ad, AdPresenter);
|
||||
createMap(mapper, CreateAdRequest, CreateAdRequest);
|
||||
createMap(
|
||||
mapper,
|
||||
CreateAdRequest,
|
||||
Ad,
|
||||
forMember(
|
||||
(dest) => dest.fromDate,
|
||||
mapFrom((source) => new Date(source.fromDate)),
|
||||
),
|
||||
forMember(
|
||||
(dest) => dest.toDate,
|
||||
mapFrom((source) => new Date(source.toDate)),
|
||||
),
|
||||
forMember(
|
||||
(dest) => dest.createdAt,
|
||||
mapFrom((source) => new Date(source.createdAt)),
|
||||
),
|
||||
forMember(
|
||||
(dest) => dest.updatedAt,
|
||||
mapFrom((source) => new Date(source.updatedAt)),
|
||||
),
|
||||
);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user