margin dto working properly
This commit is contained in:
parent
b035655bc6
commit
7036a8be55
|
@ -5,7 +5,7 @@ package ad;
|
||||||
service AdsService {
|
service AdsService {
|
||||||
rpc FindOneByUuid(AdByUuid) returns (Ad);
|
rpc FindOneByUuid(AdByUuid) returns (Ad);
|
||||||
rpc FindAll(AdFilter) returns (Ads);
|
rpc FindAll(AdFilter) returns (Ads);
|
||||||
rpc Create(Ad) returns (Ad);
|
rpc Create(Ad) returns (AdByUuid);
|
||||||
rpc Update(Ad) returns (Ad);
|
rpc Update(Ad) returns (Ad);
|
||||||
rpc Delete(AdByUuid) returns (Empty);
|
rpc Delete(AdByUuid) returns (Empty);
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,12 +6,5 @@ export class CreateAdCommand {
|
||||||
constructor(request: CreateAdRequest) {
|
constructor(request: CreateAdRequest) {
|
||||||
this.createAdRequest = request;
|
this.createAdRequest = request;
|
||||||
console.log('req creation');
|
console.log('req creation');
|
||||||
console.log(this.createAdRequest.monMargin);
|
|
||||||
console.log(this.createAdRequest.tueMargin);
|
|
||||||
console.log(this.createAdRequest.wedMargin);
|
|
||||||
console.log(this.createAdRequest.thuMargin);
|
|
||||||
console.log(this.createAdRequest.friMargin);
|
|
||||||
console.log(this.createAdRequest.satMargin);
|
|
||||||
console.log(this.createAdRequest.sunMargin);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,8 @@ import {
|
||||||
import { Frequency } from '../entities/frequency.enum';
|
import { Frequency } from '../entities/frequency.enum';
|
||||||
import { Transform, Type } from 'class-transformer';
|
import { Transform, Type } from 'class-transformer';
|
||||||
import { mappingKeyToFrequency } from './utils/frequency.mapping';
|
import { mappingKeyToFrequency } from './utils/frequency.mapping';
|
||||||
|
import { MarginDTO } from './create.margin.dto';
|
||||||
|
import { ScheduleDTO } from './create.schedule.dto';
|
||||||
|
|
||||||
// TODO mapping schedule and margin (proto object to margin and schedule fields )
|
// TODO mapping schedule and margin (proto object to margin and schedule fields )
|
||||||
export class CreateAdRequest {
|
export class CreateAdRequest {
|
||||||
|
@ -58,84 +60,15 @@ export class CreateAdRequest {
|
||||||
@AutoMap()
|
@AutoMap()
|
||||||
toDate?: Date;
|
toDate?: Date;
|
||||||
|
|
||||||
@IsDate()
|
@ValidateNested({ each: true })
|
||||||
@IsOptional()
|
@Type(() => ScheduleDTO)
|
||||||
@AutoMap()
|
@AutoMap(() => ScheduleDTO)
|
||||||
monTime?: string;
|
schedule: ScheduleDTO;
|
||||||
|
|
||||||
@IsString()
|
@ValidateNested({ each: true })
|
||||||
@IsOptional()
|
@Type(() => MarginDTO)
|
||||||
@AutoMap()
|
@AutoMap(() => MarginDTO)
|
||||||
tueTime?: string;
|
marginDurations: MarginDTO;
|
||||||
|
|
||||||
@IsString()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
wedTime?: string;
|
|
||||||
|
|
||||||
@IsString()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
thuTime?: string;
|
|
||||||
|
|
||||||
@IsString()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
friTime?: string;
|
|
||||||
|
|
||||||
@IsString()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
satTime?: string;
|
|
||||||
|
|
||||||
@IsString()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
sunTime?: string;
|
|
||||||
|
|
||||||
@Transform(
|
|
||||||
({ value }) => {
|
|
||||||
console.log(value);
|
|
||||||
return value;
|
|
||||||
},
|
|
||||||
{
|
|
||||||
toClassOnly: true,
|
|
||||||
},
|
|
||||||
)
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
monMargin?: number;
|
|
||||||
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
tueMargin?: number;
|
|
||||||
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
wedMargin?: number;
|
|
||||||
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
thuMargin?: number;
|
|
||||||
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
friMargin?: number;
|
|
||||||
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
satMargin?: number;
|
|
||||||
|
|
||||||
@IsInt()
|
|
||||||
@IsOptional()
|
|
||||||
@AutoMap()
|
|
||||||
sunMargin?: number;
|
|
||||||
|
|
||||||
@ValidateIf((ad) => ad.driver)
|
@ValidateIf((ad) => ad.driver)
|
||||||
@IsInt()
|
@IsInt()
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
import { AutoMap } from '@automapper/classes';
|
||||||
|
import {
|
||||||
|
IsInt,
|
||||||
|
IsLatitude,
|
||||||
|
IsLongitude,
|
||||||
|
IsOptional,
|
||||||
|
IsString,
|
||||||
|
} from 'class-validator';
|
||||||
|
|
||||||
|
export class AddressDTO {
|
||||||
|
@IsInt()
|
||||||
|
@AutoMap()
|
||||||
|
position: number;
|
||||||
|
|
||||||
|
@IsLongitude()
|
||||||
|
@AutoMap()
|
||||||
|
lon: number;
|
||||||
|
|
||||||
|
@IsLatitude()
|
||||||
|
@AutoMap()
|
||||||
|
lat: number;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
name?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
houseNumber?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
street?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
locality?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
postalCode?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@AutoMap()
|
||||||
|
country: string;
|
||||||
|
}
|
|
@ -0,0 +1,40 @@
|
||||||
|
import { AutoMap } from '@automapper/classes';
|
||||||
|
import { Transform } from 'class-transformer';
|
||||||
|
import { IsInt, IsOptional } from 'class-validator';
|
||||||
|
|
||||||
|
export class MarginDTO {
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
mon?: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
tue?: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
wed?: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
thu?: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
fri?: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
sat?: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
sun?: number;
|
||||||
|
}
|
|
@ -0,0 +1,39 @@
|
||||||
|
import { AutoMap } from '@automapper/classes';
|
||||||
|
import { IsOptional, IsString } from 'class-validator';
|
||||||
|
|
||||||
|
export class ScheduleDTO {
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
monTime?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
tueTime?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
wedTime?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
thuTime?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
friTime?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
satTime?: string;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
@IsOptional()
|
||||||
|
@AutoMap()
|
||||||
|
sunTime?: string;
|
||||||
|
}
|
Loading…
Reference in New Issue