rez_core 3.1.51 → 3.1.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/module/integration/service/integration-entity-mapper.service.js +1 -1
  2. package/dist/module/integration/service/integration-entity-mapper.service.js.map +1 -1
  3. package/dist/module/mapper/controller/field-mapper.controller.d.ts +1 -0
  4. package/dist/module/mapper/controller/field-mapper.controller.js +13 -0
  5. package/dist/module/mapper/controller/field-mapper.controller.js.map +1 -1
  6. package/dist/module/mapper/dto/field-mapper.dto.d.ts +2 -0
  7. package/dist/module/mapper/dto/field-mapper.dto.js.map +1 -1
  8. package/dist/module/mapper/entity/field-mapper.entity.d.ts +1 -0
  9. package/dist/module/mapper/entity/field-mapper.entity.js +6 -2
  10. package/dist/module/mapper/entity/field-mapper.entity.js.map +1 -1
  11. package/dist/module/mapper/repository/field-lovs.repository.d.ts +1 -0
  12. package/dist/module/mapper/repository/field-lovs.repository.js +3 -0
  13. package/dist/module/mapper/repository/field-lovs.repository.js.map +1 -1
  14. package/dist/module/mapper/service/field-mapper.service.d.ts +1 -0
  15. package/dist/module/mapper/service/field-mapper.service.js +18 -7
  16. package/dist/module/mapper/service/field-mapper.service.js.map +1 -1
  17. package/dist/module/meta/controller/meta.controller.d.ts +3 -0
  18. package/dist/module/meta/controller/meta.controller.js +13 -0
  19. package/dist/module/meta/controller/meta.controller.js.map +1 -1
  20. package/dist/module/meta/repository/entity-master.repository.d.ts +1 -0
  21. package/dist/module/meta/repository/entity-master.repository.js +9 -0
  22. package/dist/module/meta/repository/entity-master.repository.js.map +1 -1
  23. package/dist/module/meta/service/entity-master.service.d.ts +1 -0
  24. package/dist/module/meta/service/entity-master.service.js +3 -0
  25. package/dist/module/meta/service/entity-master.service.js.map +1 -1
  26. package/dist/tsconfig.build.tsbuildinfo +1 -1
  27. package/package.json +1 -1
  28. package/src/module/integration/service/integration-entity-mapper.service.ts +1 -1
  29. package/src/module/mapper/controller/field-mapper.controller.ts +7 -0
  30. package/src/module/mapper/dto/field-mapper.dto.ts +2 -1
  31. package/src/module/mapper/entity/field-mapper.entity.ts +4 -2
  32. package/src/module/mapper/repository/field-lovs.repository.ts +4 -0
  33. package/src/module/mapper/service/field-mapper.service.ts +21 -11
  34. package/src/module/meta/controller/meta.controller.ts +14 -0
  35. package/src/module/meta/repository/entity-master.repository.ts +16 -0
  36. package/src/module/meta/service/entity-master.service.ts +7 -0
  37. package/.vscode/extensions.json +0 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rez_core",
3
- "version": "3.1.51",
3
+ "version": "3.1.54",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "private": false,
@@ -11,7 +11,7 @@ export class IntegrationEntityMapperService {
11
11
  }
12
12
 
13
13
  async findByDid(did: string) {
14
- return this.integrationEntityMapperRepo.findOne({
14
+ return await this.integrationEntityMapperRepo.findOne({
15
15
  where: { did },
16
16
  });
17
17
  }
@@ -37,6 +37,13 @@ export class FieldMapperController {
37
37
  return this.fieldMapperService.createFieldMappers(dtos, loggedInUser);
38
38
  }
39
39
 
40
+ @Post('bulk-update')
41
+ @HttpCode(HttpStatus.OK)
42
+ async updateBulk(@Req() req: any, @Body() dtos: FieldMapperDto[]) {
43
+ const loggedInUser = req.user.userData;
44
+ return this.fieldMapperService.updateFieldMappers(dtos, loggedInUser);
45
+ }
46
+
40
47
  @Get('getFields/:mapperId')
41
48
  async getFieldsByMapper(@Param('mapperId') mapperId: number) {
42
49
  return this.fieldMapperService.getMapperFields(mapperId);
@@ -1,4 +1,5 @@
1
1
  import { BaseEntity } from '../../meta/entity/base-entity.entity';
2
+ import { FieldLovMapper } from '../entity/field-lovs.entity';
2
3
 
3
4
  export class FieldMapperDto extends BaseEntity {
4
5
  mapper_id: string;
@@ -9,6 +10,6 @@ export class FieldMapperDto extends BaseEntity {
9
10
  mapped_entity_type: string;
10
11
  filter_code?: string;
11
12
  filter_json?: any;
12
-
13
+ field_lovs?: FieldLovMapper[];
13
14
  }
14
15
 
@@ -18,10 +18,10 @@ export class FieldMapper extends BaseEntity {
18
18
  @Column({ name: 'source_attribute', type: 'varchar', length: 30 })
19
19
  source_attribute: string;
20
20
 
21
- @Column({ name: 'destination_attribute', type: 'varchar', length: 30 })
21
+ @Column({ name: 'attribute_key', type: 'varchar', length: 30 })
22
22
  attribute_key: string;
23
23
 
24
- @Column({ name: 'destination_entity_type', type: 'varchar', length: 30 })
24
+ @Column({ name: 'mapper_entity_type', type: 'varchar', length: 30 })
25
25
  mapper_entity_type: string;
26
26
 
27
27
  @Column({ name: 'mapped_entity_type', type: 'varchar', length: 30, nullable: true })
@@ -33,4 +33,6 @@ export class FieldMapper extends BaseEntity {
33
33
  @Column({ name: 'is_lov_present', type: 'tinyint', nullable: true, default: 0 })
34
34
  is_lov_present: number;
35
35
 
36
+ @Column({name: 'seq', type: 'int', nullable: true})
37
+ seq: number;
36
38
  }
@@ -8,6 +8,10 @@ export class FieldLovsRepository {
8
8
  constructor(@InjectRepository(FieldLovMapper) private readonly fieldLovMapperRepository: Repository<FieldLovMapper>) {
9
9
  }
10
10
 
11
+ async saveBulk(dtos: FieldLovMapper[]) {
12
+ return await this.fieldLovMapperRepository.save(dtos)
13
+ }
14
+
11
15
  async findByMapperFieldIdAndSourceAttributeValue(mapper_field_id: number, source_attribute_value: string) {
12
16
  return await this.fieldLovMapperRepository.findOne({
13
17
  where: { mapper_field_id, source_attribute_value },
@@ -23,6 +23,9 @@ export class FieldMapperService extends EntityServiceImpl {
23
23
  }
24
24
 
25
25
  async createEntity(dto: FieldMapperDto, loggedInUser: UserData) {
26
+ if (dto.field_lovs) {
27
+ await this.fieldLovsRepository.saveBulk(dto.field_lovs);
28
+ }
26
29
  return super.createEntity(dto, loggedInUser);
27
30
  }
28
31
 
@@ -41,7 +44,16 @@ export class FieldMapperService extends EntityServiceImpl {
41
44
  let result: BaseEntity[] = [];
42
45
  for (const dto of dtos) {
43
46
  const fieldMapper = await super.createEntity(dto, loggedInUser);
44
- result.push(fieldMapper)
47
+ result.push(fieldMapper);
48
+ }
49
+ return result;
50
+ }
51
+
52
+ async updateFieldMappers(dtos: FieldMapperDto[], loggedInUser: UserData) {
53
+ let result: BaseEntity[] = [];
54
+ for (const dto of dtos) {
55
+ const fieldMapper = await super.updateEntity(dto, loggedInUser);
56
+ result.push(fieldMapper);
45
57
  }
46
58
  return result;
47
59
  }
@@ -50,7 +62,6 @@ export class FieldMapperService extends EntityServiceImpl {
50
62
  return await this.fieldMapperRepository.findByMapperId(mapperId);
51
63
  }
52
64
 
53
-
54
65
  async resolveData(
55
66
  mapper_id: number,
56
67
  parent_type: string,
@@ -58,9 +69,8 @@ export class FieldMapperService extends EntityServiceImpl {
58
69
  userData: UserData,
59
70
  ) {
60
71
  const fieldMappers =
61
- await this.fieldMapperRepository.findByMapperIdAndMappedEntityType(
72
+ await this.fieldMapperRepository.findByMapperId(
62
73
  mapper_id,
63
- parent_type,
64
74
  );
65
75
 
66
76
  const result: Record<string, any> = {};
@@ -94,11 +104,11 @@ export class FieldMapperService extends EntityServiceImpl {
94
104
  ) {
95
105
  // Step 1: get related target entity ids
96
106
  const relations = await this.datasource.query(
97
- `SELECT target_entity_id
98
- FROM cr_entity_relation_data
99
- WHERE source_entity_type = ?
100
- AND source_entity_id = ?
101
- AND target_entity_type = ?
107
+ `SELECT target_entity_id
108
+ FROM cr_entity_relation_data
109
+ WHERE source_entity_type = ?
110
+ AND source_entity_id = ?
111
+ AND target_entity_type = ?
102
112
  AND organization_id = ?`,
103
113
  [
104
114
  parent_type,
@@ -115,7 +125,7 @@ export class FieldMapperService extends EntityServiceImpl {
115
125
  // Step 2a: filtered fetch with IN clause using applyFilterWrapper
116
126
  inMemory[entityType][filterCode] = inMemory[entityType][
117
127
  filterCode
118
- ] = await this.filterService.applyFilterWrapper({
128
+ ] = await this.filterService.applyFilterWrapper({
119
129
  entity_type: entityType,
120
130
  savedFilterCode: filterCode,
121
131
  quickFilter: [
@@ -144,7 +154,7 @@ export class FieldMapperService extends EntityServiceImpl {
144
154
  // Fetch mapped attribute values
145
155
  const entityData = inMemory[entityType][filterCode];
146
156
  if (entityData) {
147
- let value = entityData[field.mapper_entity_type];
157
+ let value = entityData[field.attribute_key];
148
158
 
149
159
  if (field.is_lov_present) {
150
160
  if (field.action === 'LOOKUP') {
@@ -1,4 +1,5 @@
1
1
  import {
2
+ Body,
2
3
  Controller,
3
4
  HttpStatus,
4
5
  Post,
@@ -79,4 +80,17 @@ export class MetaController {
79
80
  const result = await this.entityMaster.getOperationList(loggedInUser);
80
81
  return result;
81
82
  }
83
+
84
+ @Post('getattributesoftypedate')
85
+ async getAttributesOfTypeDate(
86
+ @Req() req: Request & { user: any },
87
+ @Body('entity_type') entity_type: string,
88
+ ) {
89
+ const loggedInUser = req.user.userData;
90
+ const result = await this.entityMaster.getAttributesOfTypeDate(
91
+ entity_type,
92
+ loggedInUser,
93
+ );
94
+ return result;
95
+ }
82
96
  }
@@ -42,4 +42,20 @@ export class EntityMasterRepository {
42
42
 
43
43
  return { text, number, date, select, multiselect, year };
44
44
  }
45
+
46
+ async getAttributesOfTypeDate(entity_type, loggedInUser) {
47
+ const organization_id = loggedInUser.organization_id;
48
+
49
+ const attributes = await this.dataSource.query(
50
+ `SELECT * FROM cr_attribute_master WHERE mapped_entity_type = ? AND data_type = 'DATE' AND organization_id = ?`,
51
+ [entity_type, organization_id],
52
+ );
53
+
54
+ const attributeList = attributes.map((attr) => ({
55
+ label: attr.name,
56
+ value: attr.attribute_key,
57
+ }));
58
+
59
+ return attributeList;
60
+ }
45
61
  }
@@ -154,4 +154,11 @@ export class EntityMasterService {
154
154
  async getOperationList(loggedInUser: any) {
155
155
  return await this.entityMasterRepo.getOperationList(loggedInUser);
156
156
  }
157
+
158
+ async getAttributesOfTypeDate(entityType: string, loggedInUser: any) {
159
+ return await this.entityMasterRepo.getAttributesOfTypeDate(
160
+ entityType,
161
+ loggedInUser,
162
+ );
163
+ }
157
164
  }
@@ -1,5 +0,0 @@
1
- {
2
- "recommendations": [
3
- "dbaeumer.vscode-eslint"
4
- ]
5
- }