@bytebrand/export-cars 1.3.2 → 1.4.0

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 (118) hide show
  1. package/dist/config/alleskralle.config.js +2 -3
  2. package/dist/config/alleskralle.config.js.map +1 -1
  3. package/dist/config/as24.config.js +0 -1
  4. package/dist/config/as24.config.js.map +1 -1
  5. package/dist/config/auto24.config.js +2 -3
  6. package/dist/config/auto24.config.js.map +1 -1
  7. package/dist/config/autouncle.config.js +0 -1
  8. package/dist/config/autouncle.config.js.map +1 -1
  9. package/dist/config/by-owner.config.js +0 -1
  10. package/dist/config/by-owner.config.js.map +1 -1
  11. package/dist/config/config.d.ts +1 -6
  12. package/dist/config/config.js +0 -9
  13. package/dist/config/config.js.map +1 -1
  14. package/dist/config/criteo.config.d.ts +5 -0
  15. package/dist/config/criteo.config.js +14 -0
  16. package/dist/config/criteo.config.js.map +1 -0
  17. package/dist/config/dasparking.config.js +2 -3
  18. package/dist/config/dasparking.config.js.map +1 -1
  19. package/dist/config/eauto.config.js +0 -1
  20. package/dist/config/eauto.config.js.map +1 -1
  21. package/dist/config/kleinanzeigeFocus.config.js +2 -1
  22. package/dist/config/kleinanzeigeFocus.config.js.map +1 -1
  23. package/dist/config/meinstadt.config.js +5 -1
  24. package/dist/config/meinstadt.config.js.map +1 -1
  25. package/dist/config/ooyyo.config.js +5 -1
  26. package/dist/config/ooyyo.config.js.map +1 -1
  27. package/dist/enums/export-type.enum.d.ts +2 -1
  28. package/dist/enums/export-type.enum.js +1 -0
  29. package/dist/enums/export-type.enum.js.map +1 -1
  30. package/dist/enums/file-types.enum.d.ts +8 -0
  31. package/dist/enums/file-types.enum.js +13 -0
  32. package/dist/enums/file-types.enum.js.map +1 -0
  33. package/dist/enums/index.d.ts +2 -0
  34. package/dist/enums/index.js +19 -0
  35. package/dist/enums/index.js.map +1 -0
  36. package/dist/export.schema.d.ts +5 -0
  37. package/dist/export.schema.js +22 -17
  38. package/dist/export.schema.js.map +1 -1
  39. package/dist/exporters/as24.exporter.d.ts +5 -4
  40. package/dist/exporters/as24.exporter.js +22 -22
  41. package/dist/exporters/as24.exporter.js.map +1 -1
  42. package/dist/exporters/auto24.exporter.d.ts +3 -4
  43. package/dist/exporters/auto24.exporter.js +13 -14
  44. package/dist/exporters/auto24.exporter.js.map +1 -1
  45. package/dist/exporters/autouncle.exporter.d.ts +4 -5
  46. package/dist/exporters/autouncle.exporter.js +16 -13
  47. package/dist/exporters/autouncle.exporter.js.map +1 -1
  48. package/dist/exporters/by-owner.exporter.d.ts +5 -3
  49. package/dist/exporters/by-owner.exporter.js +20 -17
  50. package/dist/exporters/by-owner.exporter.js.map +1 -1
  51. package/dist/exporters/fb.exporter.d.ts +3 -5
  52. package/dist/exporters/fb.exporter.js +15 -13
  53. package/dist/exporters/fb.exporter.js.map +1 -1
  54. package/dist/exporters/google.exporter.d.ts +3 -5
  55. package/dist/exporters/google.exporter.js +19 -21
  56. package/dist/exporters/google.exporter.js.map +1 -1
  57. package/dist/exporters/meinstadt.exporter.d.ts +1 -4
  58. package/dist/exporters/meinstadt.exporter.js +5 -8
  59. package/dist/exporters/meinstadt.exporter.js.map +1 -1
  60. package/dist/exporters/mobile.exporter.d.ts +1 -4
  61. package/dist/exporters/mobile.exporter.js +11 -12
  62. package/dist/exporters/mobile.exporter.js.map +1 -1
  63. package/dist/exporters/ooyyo.exporter.d.ts +3 -4
  64. package/dist/exporters/ooyyo.exporter.js +11 -9
  65. package/dist/exporters/ooyyo.exporter.js.map +1 -1
  66. package/dist/exporters/rubrikk.exporter.d.ts +4 -5
  67. package/dist/exporters/rubrikk.exporter.js +13 -11
  68. package/dist/exporters/rubrikk.exporter.js.map +1 -1
  69. package/dist/services/index.d.ts +5 -0
  70. package/dist/services/index.js +22 -0
  71. package/dist/services/index.js.map +1 -0
  72. package/dist/services/mapping.service.js +2 -2
  73. package/dist/services/mapping.service.js.map +1 -1
  74. package/dist/services/user.service.d.ts +2 -0
  75. package/dist/services/user.service.js +3 -0
  76. package/dist/services/user.service.js.map +1 -1
  77. package/dist/transformers/as24.transformer.d.ts +3 -1
  78. package/dist/transformers/as24.transformer.js +6 -3
  79. package/dist/transformers/as24.transformer.js.map +1 -1
  80. package/dist/transformers/mobile.transformer.js +2 -3
  81. package/dist/transformers/mobile.transformer.js.map +1 -1
  82. package/dist/tsconfig.build.tsbuildinfo +1 -1
  83. package/package.json +2 -2
  84. package/src/config/alleskralle.config.ts +2 -3
  85. package/src/config/as24.config.ts +0 -1
  86. package/src/config/auto24.config.ts +2 -3
  87. package/src/config/autouncle.config.ts +0 -1
  88. package/src/config/by-owner.config.ts +0 -1
  89. package/src/config/config.ts +1 -10
  90. package/src/config/criteo.config.ts +11 -0
  91. package/src/config/dasparking.config.ts +2 -3
  92. package/src/config/eauto.config.ts +0 -1
  93. package/src/config/kleinanzeigeFocus.config.ts +2 -1
  94. package/src/config/meinstadt.config.ts +5 -1
  95. package/src/config/ooyyo.config.ts +5 -1
  96. package/src/enums/export-type.enum.ts +1 -0
  97. package/src/enums/file-types.enum.ts +8 -0
  98. package/src/enums/index.ts +2 -0
  99. package/src/export.schema.ts +6 -1
  100. package/src/exporters/as24.exporter.ts +23 -24
  101. package/src/exporters/auto24.exporter.ts +8 -10
  102. package/src/exporters/autouncle.exporter.ts +9 -7
  103. package/src/exporters/by-owner.exporter.ts +12 -15
  104. package/src/exporters/fb.exporter.ts +8 -7
  105. package/src/exporters/google.exporter.ts +12 -15
  106. package/src/exporters/meinstadt.exporter.ts +2 -5
  107. package/src/exporters/mobile.exporter.ts +8 -8
  108. package/src/exporters/ooyyo.exporter.ts +5 -4
  109. package/src/exporters/rubrikk.exporter.ts +12 -8
  110. package/src/services/index.ts +5 -0
  111. package/src/services/mapping.service.ts +2 -2
  112. package/src/services/user.service.ts +5 -0
  113. package/src/transformers/as24.transformer.ts +4 -2
  114. package/src/transformers/mobile.transformer.ts +2 -3
  115. package/dist/utils/parser.utils.d.ts +0 -3
  116. package/dist/utils/parser.utils.js +0 -20
  117. package/dist/utils/parser.utils.js.map +0 -1
  118. package/src/utils/parser.utils.ts +0 -17
@@ -10,51 +10,49 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.As24Exporter = void 0;
13
- const config_service_1 = require("../services/config.service");
14
- const loader_service_1 = require("../services/loader.service");
13
+ const services_1 = require("../services");
15
14
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
16
15
  const common_1 = require("@nestjs/common");
17
16
  const core_1 = require("@nestjs/core");
18
17
  const as24_transformer_1 = require("../transformers/as24.transformer");
19
- const user_service_1 = require("../services/user.service");
20
18
  const lodash_1 = require("lodash");
21
19
  const converter_utils_1 = require("../utils/converter.utils");
22
20
  const promises_1 = require("fs/promises");
23
21
  const path_1 = require("path");
24
22
  const zipper_1 = require("@bytebrand/zipper");
23
+ const enums_1 = require("../enums");
24
+ const services_2 = require("../services");
25
25
  let As24Exporter = class As24Exporter {
26
26
  configService;
27
27
  loaderService;
28
28
  userService;
29
29
  moduleRef;
30
- constructor(configService, loaderService, userService, moduleRef) {
30
+ carService;
31
+ rulesService;
32
+ constructor(configService, loaderService, userService, moduleRef, carService, rulesService) {
31
33
  this.configService = configService;
32
34
  this.loaderService = loaderService;
33
35
  this.userService = userService;
34
36
  this.moduleRef = moduleRef;
37
+ this.carService = carService;
38
+ this.rulesService = rulesService;
35
39
  }
36
40
  async export() {
37
41
  await cronicle_helper_1.CronicleUtils.ensureDir(this.configService.config.pathesConfig.localConvertedDirectory);
38
42
  await cronicle_helper_1.CronicleUtils.emptyDir(this.configService.config.pathesConfig.localConvertedDirectory);
39
43
  const as24Transformer = await this.moduleRef.create(as24_transformer_1.As24Transformer);
40
44
  const descriptionSchemas = {};
41
- for (const dealerId of this.configService.config.dealersList) {
42
- descriptionSchemas[dealerId] = await this.userService.getDefaultSummaryByDealerId(dealerId);
43
- }
44
45
  const processedDealers = [];
45
46
  await this.loaderService.process(async (chunk) => {
46
- if (chunk && chunk.data) {
47
+ const chunkData = chunk.data.filter(car => this.carService.filterCar(car, this.rulesService.rules));
48
+ if (chunk && chunkData) {
47
49
  for (let i = 0; i < chunk.data.length; i += 1) {
48
50
  const data = chunk.data[i];
49
51
  const ownerId = (0, lodash_1.get)(data.car, 'metaData.ownerId', null);
50
- if (ownerId &&
51
- this.configService.config.dealersList &&
52
- this.configService.config.dealersList.includes(ownerId)) {
53
- const transformedData = await as24Transformer.transform(data.car, descriptionSchemas);
54
- const transformedDataCSV = `${(0, converter_utils_1.convertToCSV)(transformedData)}\n`;
55
- await (0, promises_1.writeFile)(`${this.configService.config.pathesConfig.localConvertedDirectory}/${ownerId}.csv`, Buffer.from(transformedDataCSV), { flag: 'a' });
56
- (0, lodash_1.union)([ownerId], processedDealers);
57
- }
52
+ const transformedData = await as24Transformer.transform(data.car, descriptionSchemas);
53
+ const transformedDataCSV = `${(0, converter_utils_1.convertToCSV)(transformedData)}\n`;
54
+ await (0, promises_1.writeFile)(`${this.configService.config.pathesConfig.localConvertedDirectory}/${ownerId}.${enums_1.FileTypes.csv}`, Buffer.from(transformedDataCSV), { flag: 'a' });
55
+ (0, lodash_1.union)([ownerId], processedDealers);
58
56
  }
59
57
  chunk.data = null;
60
58
  }
@@ -62,8 +60,8 @@ let As24Exporter = class As24Exporter {
62
60
  for (const dealer of processedDealers) {
63
61
  const now = new Date();
64
62
  const d = `${now.getFullYear()}${now.getMonth() + 1}${now.getDate()}`;
65
- const fileCSV = (0, path_1.normalize)(`${this.configService.config.pathesConfig.localConvertedDirectory}/${dealer}.csv`);
66
- const fileZIP = (0, path_1.normalize)(`${this.configService.config.pathesConfig.localConvertedDirectory}/${d}_${dealer}.zip`);
63
+ const fileCSV = (0, path_1.normalize)(`${this.configService.config.pathesConfig.localConvertedDirectory}/${dealer}.${enums_1.FileTypes.csv}`);
64
+ const fileZIP = (0, path_1.normalize)(`${this.configService.config.pathesConfig.localConvertedDirectory}/${d}_${dealer}.${enums_1.FileTypes.zip}`);
67
65
  if (await cronicle_helper_1.CronicleUtils.exists(fileCSV)) {
68
66
  await zipper_1.Zipper.zip({ fileList: [fileCSV], dest: fileZIP });
69
67
  }
@@ -72,10 +70,12 @@ let As24Exporter = class As24Exporter {
72
70
  };
73
71
  As24Exporter = __decorate([
74
72
  (0, common_1.Injectable)(),
75
- __metadata("design:paramtypes", [config_service_1.ConfigService,
76
- loader_service_1.LoaderService,
77
- user_service_1.UserService,
78
- core_1.ModuleRef])
73
+ __metadata("design:paramtypes", [services_1.ConfigService,
74
+ services_1.LoaderService,
75
+ services_1.UserService,
76
+ core_1.ModuleRef,
77
+ services_2.CarService,
78
+ services_2.RulesService])
79
79
  ], As24Exporter);
80
80
  exports.As24Exporter = As24Exporter;
81
81
  //# sourceMappingURL=as24.exporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"as24.exporter.js","sourceRoot":"","sources":["../../src/exporters/as24.exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"as24.exporter.js","sourceRoot":"","sources":["../../src/exporters/as24.exporter.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,12 @@
1
- import { CarService } from '../services/car.service';
2
- import { ConfigService } from '../services/config.service';
1
+ import { CarService, RulesService, ConfigService, LoaderService } from '../services';
3
2
  import { Exporter } from '../interfaces/exporter.interface';
4
- import { LoaderService } from '../services/loader.service';
5
3
  import { ModuleRef } from '@nestjs/core';
6
4
  export declare class Auto24Exporter implements Exporter {
7
5
  private carService;
8
6
  private configService;
9
7
  private loaderService;
10
8
  private moduleRef;
11
- constructor(carService: CarService, configService: ConfigService, loaderService: LoaderService, moduleRef: ModuleRef);
9
+ private rulesService;
10
+ constructor(carService: CarService, configService: ConfigService, loaderService: LoaderService, moduleRef: ModuleRef, rulesService: RulesService);
12
11
  export(): Promise<void>;
13
12
  }
@@ -11,9 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Auto24Exporter = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
- const car_service_1 = require("../services/car.service");
15
- const config_service_1 = require("../services/config.service");
16
- const loader_service_1 = require("../services/loader.service");
14
+ const services_1 = require("../services");
17
15
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
18
16
  const lodash_1 = require("lodash");
19
17
  const core_1 = require("@nestjs/core");
@@ -25,11 +23,13 @@ let Auto24Exporter = class Auto24Exporter {
25
23
  configService;
26
24
  loaderService;
27
25
  moduleRef;
28
- constructor(carService, configService, loaderService, moduleRef) {
26
+ rulesService;
27
+ constructor(carService, configService, loaderService, moduleRef, rulesService) {
29
28
  this.carService = carService;
30
29
  this.configService = configService;
31
30
  this.loaderService = loaderService;
32
31
  this.moduleRef = moduleRef;
32
+ this.rulesService = rulesService;
33
33
  }
34
34
  async export() {
35
35
  for (const file of this.configService.config.outputFiles) {
@@ -40,18 +40,16 @@ let Auto24Exporter = class Auto24Exporter {
40
40
  const xmlBuilder = new auto24_xml_builder_1.Auto24XmlBuilder(fileXml);
41
41
  const auto24Transformer = await this.moduleRef.create(auto24_transfomer_1.Auto24Transformer);
42
42
  await this.loaderService.process(async (chunk) => {
43
- if (chunk && chunk.data) {
43
+ const chunkData = chunk.data.filter(car => this.carService.filterCar(car, this.rulesService.rules));
44
+ if (chunk && chunkData) {
44
45
  if ((0, lodash_1.toNumber)(chunk.id) === 0) {
45
46
  await xmlBuilder.buildStart(chunk.total);
46
47
  }
47
48
  for (let i = 0; i < chunk.data.length; i += 1) {
48
49
  const data = chunk.data[i];
49
50
  const { car, images } = data;
50
- const ownerId = (0, lodash_1.get)(car, 'metaData.ownerId');
51
- if (!this.configService.config.dealersList || this.configService.config.dealersList.indexOf(ownerId) !== -1) {
52
- await xmlBuilder.addItem(auto24Transformer.transform(car, images), this.configService.config.location);
53
- this.carService.counter.countCar(images);
54
- }
51
+ await xmlBuilder.addItem(auto24Transformer.transform(car, images), this.configService.config.location);
52
+ this.carService.counter.countCar(images);
55
53
  }
56
54
  chunk.data = null;
57
55
  }
@@ -65,10 +63,11 @@ let Auto24Exporter = class Auto24Exporter {
65
63
  };
66
64
  Auto24Exporter = __decorate([
67
65
  (0, common_1.Injectable)(),
68
- __metadata("design:paramtypes", [car_service_1.CarService,
69
- config_service_1.ConfigService,
70
- loader_service_1.LoaderService,
71
- core_1.ModuleRef])
66
+ __metadata("design:paramtypes", [services_1.CarService,
67
+ services_1.ConfigService,
68
+ services_1.LoaderService,
69
+ core_1.ModuleRef,
70
+ services_1.RulesService])
72
71
  ], Auto24Exporter);
73
72
  exports.Auto24Exporter = Auto24Exporter;
74
73
  //# sourceMappingURL=auto24.exporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto24.exporter.js","sourceRoot":"","sources":["../../src/exporters/auto24.exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto24.exporter.js","sourceRoot":"","sources":["../../src/exporters/auto24.exporter.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,14 @@
1
- import { CarService } from '../services/car.service';
2
- import { ConfigService } from '../services/config.service';
1
+ import { CarService, RulesService, ConfigService, LoaderService } from '../services';
3
2
  import { Exporter } from '../interfaces/exporter.interface';
4
- import { LoaderService } from '../services/loader.service';
5
3
  import { ModuleRef } from '@nestjs/core';
6
- import { RulesService } from '../services/rules.service';
4
+ import { UserService } from '../services';
7
5
  export declare class AutouncleExporter implements Exporter {
8
6
  private carService;
9
7
  private configService;
10
8
  private loaderService;
11
9
  private rulesService;
12
10
  private moduleRef;
13
- constructor(carService: CarService, configService: ConfigService, loaderService: LoaderService, rulesService: RulesService, moduleRef: ModuleRef);
11
+ private readonly userService;
12
+ constructor(carService: CarService, configService: ConfigService, loaderService: LoaderService, rulesService: RulesService, moduleRef: ModuleRef, userService: UserService);
14
13
  export(): Promise<void>;
15
14
  }
@@ -11,32 +11,34 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.AutouncleExporter = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
- const car_service_1 = require("../services/car.service");
15
- const config_service_1 = require("../services/config.service");
16
- const loader_service_1 = require("../services/loader.service");
14
+ const services_1 = require("../services");
17
15
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
18
16
  const core_1 = require("@nestjs/core");
19
17
  const autouncle_json_builder_1 = require("../formats/autouncle-json.builder");
20
18
  const autouncle_transformer_1 = require("../transformers/autouncle.transformer");
21
19
  const lodash_1 = require("lodash");
22
- const rules_service_1 = require("../services/rules.service");
20
+ const enums_1 = require("../enums");
21
+ const services_2 = require("../services");
23
22
  let AutouncleExporter = class AutouncleExporter {
24
23
  carService;
25
24
  configService;
26
25
  loaderService;
27
26
  rulesService;
28
27
  moduleRef;
29
- constructor(carService, configService, loaderService, rulesService, moduleRef) {
28
+ userService;
29
+ constructor(carService, configService, loaderService, rulesService, moduleRef, userService) {
30
30
  this.carService = carService;
31
31
  this.configService = configService;
32
32
  this.loaderService = loaderService;
33
33
  this.rulesService = rulesService;
34
34
  this.moduleRef = moduleRef;
35
+ this.userService = userService;
35
36
  }
36
37
  async export() {
37
- const exists = await cronicle_helper_1.CronicleUtils.exists(this.configService.config.fileName);
38
- exists && (await cronicle_helper_1.CronicleUtils.unlink(this.configService.config.fileName));
39
- const autouncleJsonBuilder = new autouncle_json_builder_1.AutouncleJsonBuilder(this.configService.config.fileName);
38
+ const fileName = this.userService.getFileName(enums_1.ExportType.AUTOUNCLE, enums_1.FileTypes.json);
39
+ const exists = await cronicle_helper_1.CronicleUtils.exists(fileName);
40
+ exists && (await cronicle_helper_1.CronicleUtils.unlink(fileName));
41
+ const autouncleJsonBuilder = new autouncle_json_builder_1.AutouncleJsonBuilder(fileName);
40
42
  const autouncleTransformer = await this.moduleRef.create(autouncle_transformer_1.AutouncleTransformer);
41
43
  await autouncleJsonBuilder.buildStart();
42
44
  let firstCar = true;
@@ -69,11 +71,12 @@ let AutouncleExporter = class AutouncleExporter {
69
71
  };
70
72
  AutouncleExporter = __decorate([
71
73
  (0, common_1.Injectable)(),
72
- __metadata("design:paramtypes", [car_service_1.CarService,
73
- config_service_1.ConfigService,
74
- loader_service_1.LoaderService,
75
- rules_service_1.RulesService,
76
- core_1.ModuleRef])
74
+ __metadata("design:paramtypes", [services_1.CarService,
75
+ services_1.ConfigService,
76
+ services_1.LoaderService,
77
+ services_1.RulesService,
78
+ core_1.ModuleRef,
79
+ services_2.UserService])
77
80
  ], AutouncleExporter);
78
81
  exports.AutouncleExporter = AutouncleExporter;
79
82
  //# sourceMappingURL=autouncle.exporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"autouncle.exporter.js","sourceRoot":"","sources":["../../src/exporters/autouncle.exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autouncle.exporter.js","sourceRoot":"","sources":["../../src/exporters/autouncle.exporter.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
- import { ConfigService } from '../services/config.service';
1
+ import { ConfigService, LoaderService, CarService, RulesService, UserService } from '../services';
2
2
  import { Exporter } from '../interfaces/exporter.interface';
3
- import { LoaderService } from '../services/loader.service';
4
3
  import { ModuleRef } from '@nestjs/core';
5
4
  export declare class ByOwnerExporter implements Exporter {
6
5
  private configService;
7
6
  private loaderService;
8
7
  private moduleRef;
9
- constructor(configService: ConfigService, loaderService: LoaderService, moduleRef: ModuleRef);
8
+ private userService;
9
+ private carService;
10
+ private rulesService;
11
+ constructor(configService: ConfigService, loaderService: LoaderService, moduleRef: ModuleRef, userService: UserService, carService: CarService, rulesService: RulesService);
10
12
  export(): Promise<void>;
11
13
  }
@@ -10,39 +10,39 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ByOwnerExporter = void 0;
13
- const config_service_1 = require("../services/config.service");
14
- const loader_service_1 = require("../services/loader.service");
13
+ const services_1 = require("../services");
15
14
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
16
15
  const common_1 = require("@nestjs/common");
17
16
  const core_1 = require("@nestjs/core");
18
17
  const by_owner_transformer_1 = require("../transformers/by-owner.transformer");
19
18
  const fs_1 = require("fs");
20
- const lodash_1 = require("lodash");
19
+ const enums_1 = require("../enums");
21
20
  const createCsvWriter = require('csv-write-stream');
22
21
  let ByOwnerExporter = class ByOwnerExporter {
23
22
  configService;
24
23
  loaderService;
25
24
  moduleRef;
26
- constructor(configService, loaderService, moduleRef) {
25
+ userService;
26
+ carService;
27
+ rulesService;
28
+ constructor(configService, loaderService, moduleRef, userService, carService, rulesService) {
27
29
  this.configService = configService;
28
30
  this.loaderService = loaderService;
29
31
  this.moduleRef = moduleRef;
32
+ this.userService = userService;
33
+ this.carService = carService;
34
+ this.rulesService = rulesService;
30
35
  }
31
36
  async export() {
32
- await cronicle_helper_1.CronicleUtils.unlinkIfExists(this.configService.config.fileName);
37
+ const fileName = this.userService.getFileName(enums_1.ExportType.BY_OWNER, enums_1.FileTypes.csv);
38
+ await cronicle_helper_1.CronicleUtils.unlinkIfExists(fileName);
33
39
  const byOwnerTransformer = await this.moduleRef.create(by_owner_transformer_1.ByOwnerTransformer);
34
40
  const csvWriter = createCsvWriter();
35
- csvWriter.pipe((0, fs_1.createWriteStream)(this.configService.config.fileName));
41
+ csvWriter.pipe((0, fs_1.createWriteStream)(fileName));
36
42
  let index = 0;
37
43
  await this.loaderService.process(async (chunk) => {
38
- chunk.data
39
- .map(({ car }) => car)
40
- .filter((car) => {
41
- const ownerId = (0, lodash_1.get)(car, 'metaData.ownerId');
42
- return ownerId === this.configService.config.ownerId;
43
- })
44
- .map(car => byOwnerTransformer.transform(car, (index += 1)))
45
- .forEach(car => csvWriter.write(car));
44
+ const chunkData = chunk.data.filter(car => this.carService.filterCar(car, this.rulesService.rules));
45
+ chunkData.map(({ car }) => byOwnerTransformer.transform(car, (index += 1))).forEach(car => csvWriter.write(car));
46
46
  chunk.data = null;
47
47
  });
48
48
  csvWriter.end();
@@ -50,9 +50,12 @@ let ByOwnerExporter = class ByOwnerExporter {
50
50
  };
51
51
  ByOwnerExporter = __decorate([
52
52
  (0, common_1.Injectable)(),
53
- __metadata("design:paramtypes", [config_service_1.ConfigService,
54
- loader_service_1.LoaderService,
55
- core_1.ModuleRef])
53
+ __metadata("design:paramtypes", [services_1.ConfigService,
54
+ services_1.LoaderService,
55
+ core_1.ModuleRef,
56
+ services_1.UserService,
57
+ services_1.CarService,
58
+ services_1.RulesService])
56
59
  ], ByOwnerExporter);
57
60
  exports.ByOwnerExporter = ByOwnerExporter;
58
61
  //# sourceMappingURL=by-owner.exporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"by-owner.exporter.js","sourceRoot":"","sources":["../../src/exporters/by-owner.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA2D;AAG3D,+DAA2D;AAC3D,gEAA2D;AAC3D,2CAA4C;AAC5C,uCAAyC;AACzC,+EAA0E;AAC1E,2BAAuC;AAEvC,mCAA6B;AAC7B,MAAM,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAG7C,IAAM,eAAe,GAArB,MAAM,eAAe;IAEhB;IACA;IACA;IAHV,YACU,aAA4B,EAC5B,aAA4B,EAC5B,SAAoB;QAFpB,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;IAC3B,CAAC;IAEJ,KAAK,CAAC,MAAM;QACV,MAAM,+BAAa,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEvE,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yCAAkB,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;QACpC,SAAS,CAAC,IAAI,CAAC,IAAA,sBAAiB,EAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEtE,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,KAAK,CAAC,IAAI;iBACP,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;iBACrB,MAAM,CAAC,CAAC,GAAoB,EAAE,EAAE;gBAC/B,MAAM,OAAO,GAAG,IAAA,YAAG,EAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;gBAC7C,OAAO,OAAO,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;YACvD,CAAC,CAAC;iBACD,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;iBAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAExC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE,CAAC;IAClB,CAAC;CACF,CAAA;AA9BY,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAGc,8BAAa;QACb,8BAAa;QACjB,gBAAS;GAJnB,eAAe,CA8B3B;AA9BY,0CAAe"}
1
+ {"version":3,"file":"by-owner.exporter.js","sourceRoot":"","sources":["../../src/exporters/by-owner.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAkG;AAGlG,gEAA2D;AAC3D,2CAA4C;AAC5C,uCAAyC;AACzC,+EAA0E;AAC1E,2BAAuC;AACvC,oCAAiD;AAEjD,MAAM,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAG7C,IAAM,eAAe,GAArB,MAAM,eAAe;IAEhB;IACA;IACA;IACA;IACA;IACA;IANV,YACU,aAA4B,EAC5B,aAA4B,EAC5B,SAAoB,EACpB,WAAwB,EACxB,UAAsB,EACtB,YAA0B;QAL1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAY;QACtB,iBAAY,GAAZ,YAAY,CAAc;IACjC,CAAC;IAEJ,KAAK,CAAC,MAAM;QACV,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,kBAAU,CAAC,QAAQ,EAAE,iBAAS,CAAC,GAAG,CAAC,CAAC;QAElF,MAAM,+BAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yCAAkB,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;QACpC,SAAS,CAAC,IAAI,CAAC,IAAA,sBAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC;QAE5C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACpG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACjH,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE,CAAC;IAClB,CAAC;CACF,CAAA;AA5BY,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAGc,wBAAa;QACb,wBAAa;QACjB,gBAAS;QACP,sBAAW;QACZ,qBAAU;QACR,uBAAY;GAPzB,eAAe,CA4B3B;AA5BY,0CAAe"}
@@ -1,15 +1,13 @@
1
- import { CarService } from '../services/car.service';
2
- import { ConfigService } from '../services/config.service';
1
+ import { CarService, RulesService, LoaderService, ConfigService, UserService } from '../services';
3
2
  import { Exporter } from '../interfaces/exporter.interface';
4
- import { LoaderService } from '../services/loader.service';
5
3
  import { ModuleRef } from '@nestjs/core';
6
- import { RulesService } from '../services/rules.service';
7
4
  export declare class FbExporter implements Exporter {
8
5
  private carService;
9
6
  private configService;
10
7
  private rulesService;
11
8
  private loaderService;
12
9
  private moduleRef;
13
- constructor(carService: CarService, configService: ConfigService, rulesService: RulesService, loaderService: LoaderService, moduleRef: ModuleRef);
10
+ private userService;
11
+ constructor(carService: CarService, configService: ConfigService, rulesService: RulesService, loaderService: LoaderService, moduleRef: ModuleRef, userService: UserService);
14
12
  export(): Promise<void>;
15
13
  }
@@ -11,33 +11,34 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.FbExporter = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
- const car_service_1 = require("../services/car.service");
15
- const config_service_1 = require("../services/config.service");
16
- const loader_service_1 = require("../services/loader.service");
14
+ const services_1 = require("../services");
17
15
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
18
16
  const lodash_1 = require("lodash");
19
17
  const fb_xml_builder_1 = require("../formats/fb-xml.builder");
20
18
  const core_1 = require("@nestjs/core");
21
19
  const fb_transformer_1 = require("../transformers/fb.transformer");
22
- const rules_service_1 = require("../services/rules.service");
20
+ const enums_1 = require("../enums");
23
21
  let FbExporter = class FbExporter {
24
22
  carService;
25
23
  configService;
26
24
  rulesService;
27
25
  loaderService;
28
26
  moduleRef;
29
- constructor(carService, configService, rulesService, loaderService, moduleRef) {
27
+ userService;
28
+ constructor(carService, configService, rulesService, loaderService, moduleRef, userService) {
30
29
  this.carService = carService;
31
30
  this.configService = configService;
32
31
  this.rulesService = rulesService;
33
32
  this.loaderService = loaderService;
34
33
  this.moduleRef = moduleRef;
34
+ this.userService = userService;
35
35
  }
36
36
  async export() {
37
- const exists = await cronicle_helper_1.CronicleUtils.exists(this.configService.config.fileName);
38
- exists && (await cronicle_helper_1.CronicleUtils.unlink(this.configService.config.fileName));
37
+ const fileName = this.userService.getFileName(enums_1.ExportType.FB, enums_1.FileTypes.xml);
38
+ const exists = await cronicle_helper_1.CronicleUtils.exists(fileName);
39
+ exists && (await cronicle_helper_1.CronicleUtils.unlink(fileName));
39
40
  const fbTransformer = await this.moduleRef.create(fb_transformer_1.FbTransformer);
40
- const fbXmlBuilder = new fb_xml_builder_1.FbXmlBuilder(this.configService.config.fileName);
41
+ const fbXmlBuilder = new fb_xml_builder_1.FbXmlBuilder(fileName);
41
42
  await fbXmlBuilder.buildStart(this.configService.config.url);
42
43
  await this.loaderService.process(async (chunk) => {
43
44
  const chunkData = chunk.data.filter(car => this.carService.filterCar(car, this.rulesService.rules));
@@ -57,11 +58,12 @@ let FbExporter = class FbExporter {
57
58
  };
58
59
  FbExporter = __decorate([
59
60
  (0, common_1.Injectable)(),
60
- __metadata("design:paramtypes", [car_service_1.CarService,
61
- config_service_1.ConfigService,
62
- rules_service_1.RulesService,
63
- loader_service_1.LoaderService,
64
- core_1.ModuleRef])
61
+ __metadata("design:paramtypes", [services_1.CarService,
62
+ services_1.ConfigService,
63
+ services_1.RulesService,
64
+ services_1.LoaderService,
65
+ core_1.ModuleRef,
66
+ services_1.UserService])
65
67
  ], FbExporter);
66
68
  exports.FbExporter = FbExporter;
67
69
  //# sourceMappingURL=fb.exporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fb.exporter.js","sourceRoot":"","sources":["../../src/exporters/fb.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAAqD;AACrD,+DAA2D;AAG3D,+DAA2D;AAC3D,gEAA2D;AAC3D,mCAA6B;AAC7B,8DAAyD;AACzD,uCAAyC;AACzC,mEAA+D;AAC/D,6DAAyD;AAIlD,IAAM,UAAU,GAAhB,MAAM,UAAU;IAEX;IACA;IACA;IACA;IACA;IALV,YACU,UAAsB,EACtB,aAA4B,EAC5B,YAA0B,EAC1B,aAA4B,EAC5B,SAAoB;QAJpB,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;IAC3B,CAAC;IAEJ,KAAK,CAAC,MAAM;QACV,MAAM,MAAM,GAAG,MAAM,+BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9E,MAAM,IAAI,CAAC,MAAM,+BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE3E,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,8BAAa,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,6BAAY,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1E,MAAM,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7D,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACpG,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;gBAC5B,MAAM,OAAO,GAAG,IAAA,YAAG,EAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,KAAK,EAAE;oBACT,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;oBAC9D,MAAM,YAAY,CAAC,OAAO,CAAC,GAAgB,CAAC,CAAC;oBAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBAC/C;aACF;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;CACF,CAAA;AAjCY,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAGW,wBAAU;QACP,8BAAa;QACd,4BAAY;QACX,8BAAa;QACjB,gBAAS;GANnB,UAAU,CAiCtB;AAjCY,gCAAU"}
1
+ {"version":3,"file":"fb.exporter.js","sourceRoot":"","sources":["../../src/exporters/fb.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,0CAAkG;AAGlG,gEAA2D;AAC3D,mCAA6B;AAC7B,8DAAyD;AACzD,uCAAyC;AACzC,mEAA+D;AAC/D,oCAAiD;AAI1C,IAAM,UAAU,GAAhB,MAAM,UAAU;IAEX;IACA;IACA;IACA;IACA;IACA;IANV,YACU,UAAsB,EACtB,aAA4B,EAC5B,YAA0B,EAC1B,aAA4B,EAC5B,SAAoB,EACpB,WAAwB;QALxB,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAa;IAC/B,CAAC;IAEJ,KAAK,CAAC,MAAM;QACV,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,kBAAU,CAAC,EAAE,EAAE,iBAAS,CAAC,GAAG,CAAC,CAAC;QAE5E,MAAM,MAAM,GAAG,MAAM,+BAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,MAAM,+BAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,8BAAa,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,6BAAY,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7D,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACpG,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;gBAC5B,MAAM,OAAO,GAAG,IAAA,YAAG,EAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,KAAK,EAAE;oBACT,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;oBAC9D,MAAM,YAAY,CAAC,OAAO,CAAC,GAAgB,CAAC,CAAC;oBAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBAC/C;aACF;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;CACF,CAAA;AApCY,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAGW,qBAAU;QACP,wBAAa;QACd,uBAAY;QACX,wBAAa;QACjB,gBAAS;QACP,sBAAW;GAPvB,UAAU,CAoCtB;AApCY,gCAAU"}
@@ -1,15 +1,13 @@
1
- import { CarService } from '../services/car.service';
2
- import { ConfigService } from '../services/config.service';
1
+ import { CarService, ConfigService, LoaderService, RulesService, UserService } from '../services';
3
2
  import { Exporter } from '../interfaces/exporter.interface';
4
- import { LoaderService } from '../services/loader.service';
5
3
  import { ModuleRef } from '@nestjs/core';
6
- import { RulesService } from '../services/rules.service';
7
4
  export declare class GoogleExporter implements Exporter {
8
5
  private carService;
9
6
  private configService;
10
7
  private rulesService;
11
8
  private loaderService;
12
9
  private moduleRef;
13
- constructor(carService: CarService, configService: ConfigService, rulesService: RulesService, loaderService: LoaderService, moduleRef: ModuleRef);
10
+ private userService;
11
+ constructor(carService: CarService, configService: ConfigService, rulesService: RulesService, loaderService: LoaderService, moduleRef: ModuleRef, userService: UserService);
14
12
  export(): Promise<void>;
15
13
  }
@@ -11,45 +11,42 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.GoogleExporter = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
- const car_service_1 = require("../services/car.service");
15
- const config_service_1 = require("../services/config.service");
16
- const loader_service_1 = require("../services/loader.service");
14
+ const services_1 = require("../services");
17
15
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
18
- const lodash_1 = require("lodash");
19
16
  const google_xml_builder_1 = require("../formats/google-xml.builder");
20
17
  const google_transformer_1 = require("../transformers/google.transformer");
21
18
  const core_1 = require("@nestjs/core");
22
- const rules_service_1 = require("../services/rules.service");
19
+ const enums_1 = require("../enums");
23
20
  let GoogleExporter = class GoogleExporter {
24
21
  carService;
25
22
  configService;
26
23
  rulesService;
27
24
  loaderService;
28
25
  moduleRef;
29
- constructor(carService, configService, rulesService, loaderService, moduleRef) {
26
+ userService;
27
+ constructor(carService, configService, rulesService, loaderService, moduleRef, userService) {
30
28
  this.carService = carService;
31
29
  this.configService = configService;
32
30
  this.rulesService = rulesService;
33
31
  this.loaderService = loaderService;
34
32
  this.moduleRef = moduleRef;
33
+ this.userService = userService;
35
34
  }
36
35
  async export() {
37
- const exists = await cronicle_helper_1.CronicleUtils.exists(this.configService.config.fileName);
38
- exists && (await cronicle_helper_1.CronicleUtils.unlink(this.configService.config.fileName));
36
+ const exportType = this.configService.config.isCriteo ? enums_1.ExportType.CRITEO : enums_1.ExportType.GOOGLE;
37
+ const fileName = this.userService.getFileName(exportType, enums_1.FileTypes.xml);
38
+ const exists = await cronicle_helper_1.CronicleUtils.exists(fileName);
39
+ exists && (await cronicle_helper_1.CronicleUtils.unlink(fileName));
39
40
  const googleTransformer = await this.moduleRef.create(google_transformer_1.GoogleTransformer);
40
- const googleXmlBuilder = new google_xml_builder_1.GoogleXmlBuilder(this.configService.config.fileName);
41
+ const googleXmlBuilder = new google_xml_builder_1.GoogleXmlBuilder(fileName);
41
42
  await googleXmlBuilder.buildStart(this.configService.config.url);
42
43
  await this.loaderService.process(async (chunk) => {
43
44
  const chunkData = chunk.data.filter(car => this.carService.filterCar(car, this.rulesService.rules));
44
45
  chunk.data = null;
45
46
  for (const data of chunkData) {
46
- const ownerId = (0, lodash_1.get)(data.car, 'metaData.ownerId', null);
47
- const owner = await this.carService.getOwner(ownerId);
48
- if (owner) {
49
- const car = await googleTransformer.transform({ ...data });
50
- await googleXmlBuilder.addItem(car);
51
- this.carService.counter.countCar(data.images);
52
- }
47
+ const car = await googleTransformer.transform({ ...data });
48
+ await googleXmlBuilder.addItem(car);
49
+ this.carService.counter.countCar(data.images);
53
50
  }
54
51
  });
55
52
  await googleXmlBuilder.buildEnd();
@@ -57,11 +54,12 @@ let GoogleExporter = class GoogleExporter {
57
54
  };
58
55
  GoogleExporter = __decorate([
59
56
  (0, common_1.Injectable)(),
60
- __metadata("design:paramtypes", [car_service_1.CarService,
61
- config_service_1.ConfigService,
62
- rules_service_1.RulesService,
63
- loader_service_1.LoaderService,
64
- core_1.ModuleRef])
57
+ __metadata("design:paramtypes", [services_1.CarService,
58
+ services_1.ConfigService,
59
+ services_1.RulesService,
60
+ services_1.LoaderService,
61
+ core_1.ModuleRef,
62
+ services_1.UserService])
65
63
  ], GoogleExporter);
66
64
  exports.GoogleExporter = GoogleExporter;
67
65
  //# sourceMappingURL=google.exporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"google.exporter.js","sourceRoot":"","sources":["../../src/exporters/google.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAAqD;AACrD,+DAA2D;AAG3D,+DAA2D;AAC3D,gEAA2D;AAC3D,mCAA6B;AAC7B,sEAAiE;AACjE,2EAAuE;AACvE,uCAAyC;AACzC,6DAAyD;AAGlD,IAAM,cAAc,GAApB,MAAM,cAAc;IAEf;IACA;IACA;IACA;IACA;IALV,YACU,UAAsB,EACtB,aAA4B,EAC5B,YAA0B,EAC1B,aAA4B,EAC5B,SAAoB;QAJpB,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;IAC3B,CAAC;IAEJ,KAAK,CAAC,MAAM;QACV,MAAM,MAAM,GAAG,MAAM,+BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9E,MAAM,IAAI,CAAC,MAAM,+BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE3E,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sCAAiB,CAAC,CAAC;QACzE,MAAM,gBAAgB,GAAG,IAAI,qCAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClF,MAAM,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEjE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACpG,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;gBAC5B,MAAM,OAAO,GAAG,IAAA,YAAG,EAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,KAAK,EAAE;oBACT,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;oBAC3D,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBAC/C;aACF;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;CACF,CAAA;AAjCY,cAAc;IAD1B,IAAA,mBAAU,GAAE;qCAGW,wBAAU;QACP,8BAAa;QACd,4BAAY;QACX,8BAAa;QACjB,gBAAS;GANnB,cAAc,CAiC1B;AAjCY,wCAAc"}
1
+ {"version":3,"file":"google.exporter.js","sourceRoot":"","sources":["../../src/exporters/google.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,0CAAkG;AAGlG,gEAA2D;AAC3D,sEAAiE;AACjE,2EAAuE;AACvE,uCAAyC;AACzC,oCAAiD;AAG1C,IAAM,cAAc,GAApB,MAAM,cAAc;IAEf;IACA;IACA;IACA;IACA;IACA;IANV,YACU,UAAsB,EACtB,aAA4B,EAC5B,YAA0B,EAC1B,aAA4B,EAC5B,SAAoB,EACpB,WAAwB;QALxB,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAa;IAC/B,CAAC;IAEJ,KAAK,CAAC,MAAM;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAU,CAAC,MAAM,CAAC;QAC9F,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,EAAE,iBAAS,CAAC,GAAG,CAAC,CAAC;QAEzE,MAAM,MAAM,GAAG,MAAM,+BAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,MAAM,+BAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEjD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sCAAiB,CAAC,CAAC;QACzE,MAAM,gBAAgB,GAAG,IAAI,qCAAgB,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEjE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACpG,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;gBAC5B,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;gBAC3D,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC/C;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;CACF,CAAA;AAjCY,cAAc;IAD1B,IAAA,mBAAU,GAAE;qCAGW,qBAAU;QACP,wBAAa;QACd,uBAAY;QACX,wBAAa;QACjB,gBAAS;QACP,sBAAW;GAPvB,cAAc,CAiC1B;AAjCY,wCAAc"}