Skip to content

Commit e792c1f

Browse files
add metadata dto change custom fields dto
1 parent 1227c58 commit e792c1f

File tree

14 files changed

+73
-57
lines changed

14 files changed

+73
-57
lines changed

docs/service/dto/NEW_DTO.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
## For crud operations
33
```ts
44
import { ApiProperty, PartialType } from '@nestjs/swagger'
5-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
5+
import { CustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
66
import { IsMongoId } from 'class-validator'
77

8-
export class [NAME]CreateDto extends AbstractCustomFieldsDto {
8+
export class [NAME]CreateDto extends CustomFieldsDto {
99
[FIELDS_HERE...]
1010
}
1111

service/src/_common/abstracts/dto/abstract.custom-fields.dto.ts renamed to service/src/_common/abstracts/dto/custom-fields.dto.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { IsObject, IsOptional, ValidateNested } from 'class-validator'
22

3-
export abstract class AbstractCustomFieldsDto {
3+
export class CustomFieldsDto {
44
@IsObject()
55
@IsOptional()
66
@ValidateNested()
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { IsObject, ValidateNested } from 'class-validator'
2+
import { ApiProperty } from '@nestjs/swagger'
3+
import { Type } from 'class-transformer'
4+
import { MetadataPartDto } from './parts/metadata.part.dto'
5+
6+
export class MetadataDto {
7+
@IsObject()
8+
@ValidateNested()
9+
@Type(() => MetadataPartDto)
10+
@ApiProperty({ type: MetadataPartDto })
11+
public metadata: MetadataPartDto
12+
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import { IsString, IsOptional, IsDate } from 'class-validator'
2+
import { ApiProperty } from '@nestjs/swagger'
3+
4+
export class MetadataPartDto {
5+
@IsString()
6+
@IsOptional()
7+
@ApiProperty()
8+
public createdBy?: string
9+
10+
@IsDate()
11+
@IsOptional()
12+
@ApiProperty()
13+
public createdAt?: Date
14+
15+
@IsString()
16+
@IsOptional()
17+
@ApiProperty()
18+
public lastUpdatedBy?: string
19+
20+
@IsDate()
21+
@IsOptional()
22+
@ApiProperty()
23+
public lastUpdatedAt?: Date
24+
}

service/src/core/categories/_dto/categories.dto.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { ApiProperty, PartialType } from '@nestjs/swagger'
22
import { IsString, IsNumber, IsOptional, IsBoolean, IsMongoId, IsNotEmpty } from 'class-validator'
3-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
3+
import { CustomFieldsDto } from '~/_common/abstracts/dto/custom-fields.dto'
44

5-
export class CategoriesCreateDto extends AbstractCustomFieldsDto {
5+
export class CategoriesCreateDto extends CustomFieldsDto {
66
@IsString()
77
@IsNotEmpty()
88
@ApiProperty()
@@ -50,5 +50,4 @@ export class CategoriesDto extends CategoriesCreateDto {
5050
public _id: string
5151
}
5252

53-
export class CategoriesUpdateDto extends PartialType(CategoriesCreateDto) {
54-
}
53+
export class CategoriesUpdateDto extends PartialType(CategoriesCreateDto) {}

service/src/core/entities/_dto/entites.dto.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
import { ApiProperty, PartialType } from '@nestjs/swagger'
2-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
2+
import { CustomFieldsDto } from '~/_common/abstracts/dto/custom-fields.dto'
33
import { Type } from 'class-transformer'
44
import { IsEmail, IsEnum, IsMongoId, IsNotEmpty, IsOptional, ValidateNested } from 'class-validator'
55
import { ProfilePartDto } from '~/core/entities/_dto/parts/profile.part.dto'
66
import { StatePartDto } from '~/core/entities/_dto/parts/state.part.dto'
77
import { EntityType, EntityTypeList } from '~/_common/enum/entity-type.enum'
88

9-
export class EntitiesCreateDto extends AbstractCustomFieldsDto {
9+
export class EntitiesCreateDto extends CustomFieldsDto {
1010
@IsEmail()
1111
@IsNotEmpty()
1212
@ApiProperty()
@@ -36,5 +36,4 @@ export class EntitiesDto extends EntitiesCreateDto {
3636
public _id: string
3737
}
3838

39-
export class EntitiesUpdateDto extends PartialType(EntitiesCreateDto) {
40-
}
39+
export class EntitiesUpdateDto extends PartialType(EntitiesCreateDto) {}

service/src/core/filestorage/_dto/filestorage.dto.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { ApiProperty, PartialType } from '@nestjs/swagger'
2-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
2+
import { CustomFieldsDto } from '~/_common/abstracts/dto/custom-fields.dto'
33
import { IsMongoId, IsString, IsEnum, IsOptional, IsObject, IsBoolean, IsNotEmpty } from 'class-validator'
44
import { FsType, FsTypeList } from '~/core/filestorage/_enum/fs-type.enum'
55

6-
export class FilestorageCreateDto extends AbstractCustomFieldsDto {
6+
export class FilestorageCreateDto extends CustomFieldsDto {
77
@IsEnum(FsTypeList)
88
@IsNotEmpty()
99
@ApiProperty({ enum: FsTypeList })
@@ -46,5 +46,4 @@ export class FilestorageDto extends FilestorageCreateDto {
4646
public _id: string
4747
}
4848

49-
export class FilestorageUpdateDto extends PartialType(FilestorageCreateDto) {
50-
}
49+
export class FilestorageUpdateDto extends PartialType(FilestorageCreateDto) {}

service/src/core/identities/_dto/identities.dto.ts

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,11 @@
11
import { ApiProperty, PartialType } from '@nestjs/swagger'
2-
import {
3-
IsString,
4-
IsNotEmpty,
5-
ValidateNested,
6-
IsEmail,
7-
IsBoolean,
8-
IsArray,
9-
IsMongoId,
10-
IsOptional,
11-
} from 'class-validator'
2+
import { IsString, IsNotEmpty, ValidateNested, IsEmail, IsBoolean, IsArray, IsMongoId, IsOptional } from 'class-validator'
123
import { Type } from 'class-transformer'
134
import { StatePartDTO } from './parts/state.part.dto'
145
import { SecurityPartDTO } from './parts/security.part.dto'
15-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
6+
import { CustomFieldsDto } from '~/_common/abstracts/dto/custom-fields.dto'
167

17-
export class IdentitiesCreateDto extends AbstractCustomFieldsDto {
8+
export class IdentitiesCreateDto extends CustomFieldsDto {
189
@IsMongoId()
1910
@IsNotEmpty()
2011
@ApiProperty()
@@ -78,5 +69,4 @@ export class IdentitiesDto extends IdentitiesCreateDto {
7869
public _id: string
7970
}
8071

81-
export class IdentitiesUpdateDto extends PartialType(IdentitiesCreateDto) {
82-
}
72+
export class IdentitiesUpdateDto extends PartialType(IdentitiesCreateDto) {}

service/src/core/projects/_dto/project.dto.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { IsString, IsOptional, IsDate, IsObject, IsMongoId, IsNotEmpty } from 'class-validator'
22
import { ApiProperty } from '@nestjs/swagger'
3-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
3+
import { CustomFieldsDto } from '~/_common/abstracts/dto/custom-fields.dto'
44

5-
export class ProjectCreateDto extends AbstractCustomFieldsDto {
5+
export class ProjectCreateDto extends CustomFieldsDto {
66
@IsString()
77
@IsNotEmpty()
88
@ApiProperty()
@@ -35,5 +35,4 @@ export class ProjectDto extends ProjectCreateDto {
3535
public _id: string
3636
}
3737

38-
export class ProjectUpdateDto extends ProjectCreateDto {
39-
}
38+
export class ProjectUpdateDto extends ProjectCreateDto {}

service/src/tickets/sla/_dto/sla.dto.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { ApiProperty, PartialType } from '@nestjs/swagger'
2-
import { AbstractCustomFieldsDto } from '~/_common/abstracts/dto/abstract.custom-fields.dto'
2+
import { CustomFieldsDto } from '~/_common/abstracts/dto/custom-fields.dto'
33
import { IsArray, IsMongoId, IsNotEmpty, IsNumber, IsOptional, IsString, Min } from 'class-validator'
44

5-
export class SlaCreateDto extends AbstractCustomFieldsDto {
5+
export class SlaCreateDto extends CustomFieldsDto {
66
@IsString()
77
@IsNotEmpty()
88
@ApiProperty()
@@ -50,5 +50,4 @@ export class SlaDto extends SlaCreateDto {
5050
public _id: string
5151
}
5252

53-
export class SlaUpdateDto extends PartialType(SlaCreateDto) {
54-
}
53+
export class SlaUpdateDto extends PartialType(SlaCreateDto) {}

0 commit comments

Comments
 (0)