myorm_pg 2.0.0 → 2.2.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 (46) hide show
  1. package/README.md +356 -170
  2. package/lib/core/decorators/SchemasDecorators.d.ts +3 -0
  3. package/lib/core/decorators/SchemasDecorators.d.ts.map +1 -1
  4. package/lib/core/decorators/SchemasDecorators.js +14 -0
  5. package/lib/core/decorators/SchemasDecorators.js.map +1 -1
  6. package/lib/core/design/Type.d.ts +1 -0
  7. package/lib/core/design/Type.d.ts.map +1 -1
  8. package/lib/core/design/Type.js +7 -1
  9. package/lib/core/design/Type.js.map +1 -1
  10. package/lib/core/exceptions/ConstraintFailException.d.ts +5 -0
  11. package/lib/core/exceptions/ConstraintFailException.d.ts.map +1 -0
  12. package/lib/core/exceptions/ConstraintFailException.js +13 -0
  13. package/lib/core/exceptions/ConstraintFailException.js.map +1 -0
  14. package/lib/core/objects/interfaces/IDBConnection.d.ts +1 -0
  15. package/lib/core/objects/interfaces/IDBConnection.d.ts.map +1 -1
  16. package/lib/core/objects/interfaces/IDBContext.d.ts +34 -1
  17. package/lib/core/objects/interfaces/IDBContext.d.ts.map +1 -1
  18. package/lib/core/objects/interfaces/IDBManager.d.ts +1 -0
  19. package/lib/core/objects/interfaces/IDBManager.d.ts.map +1 -1
  20. package/lib/core/objects/interfaces/IDBSet.d.ts +20 -1
  21. package/lib/core/objects/interfaces/IDBSet.d.ts.map +1 -1
  22. package/lib/implementations/PGDBConnection.d.ts +1 -0
  23. package/lib/implementations/PGDBConnection.d.ts.map +1 -1
  24. package/lib/implementations/PGDBConnection.js +5 -0
  25. package/lib/implementations/PGDBConnection.js.map +1 -1
  26. package/lib/implementations/PGDBContext.d.ts +39 -3
  27. package/lib/implementations/PGDBContext.d.ts.map +1 -1
  28. package/lib/implementations/PGDBContext.js +219 -0
  29. package/lib/implementations/PGDBContext.js.map +1 -1
  30. package/lib/implementations/PGDBManager.d.ts +2 -0
  31. package/lib/implementations/PGDBManager.d.ts.map +1 -1
  32. package/lib/implementations/PGDBManager.js +38 -0
  33. package/lib/implementations/PGDBManager.js.map +1 -1
  34. package/lib/implementations/PGDBSet.d.ts +13 -2
  35. package/lib/implementations/PGDBSet.d.ts.map +1 -1
  36. package/lib/implementations/PGDBSet.js +254 -84
  37. package/lib/implementations/PGDBSet.js.map +1 -1
  38. package/lib/implementations/PGFluentField.d.ts +18 -0
  39. package/lib/implementations/PGFluentField.d.ts.map +1 -0
  40. package/lib/implementations/PGFluentField.js +154 -0
  41. package/lib/implementations/PGFluentField.js.map +1 -0
  42. package/lib/implementations/PGSetHelper.d.ts +19 -0
  43. package/lib/implementations/PGSetHelper.d.ts.map +1 -0
  44. package/lib/implementations/PGSetHelper.js +48 -0
  45. package/lib/implementations/PGSetHelper.js.map +1 -0
  46. package/package.json +1 -1
@@ -20,6 +20,9 @@ const NotImplementedException_1 = __importDefault(require("../core/exceptions/No
20
20
  const TypeNotSuportedException_1 = __importDefault(require("../core/exceptions/TypeNotSuportedException"));
21
21
  const InvalidOperationException_1 = __importDefault(require("../core/exceptions/InvalidOperationException"));
22
22
  const RelationType_1 = require("../core/enums/RelationType");
23
+ const ConstraintFailException_1 = __importDefault(require("../core/exceptions/ConstraintFailException"));
24
+ const PGFluentField_1 = __importDefault(require("./PGFluentField"));
25
+ const PGSetHelper_1 = __importDefault(require("./PGSetHelper"));
23
26
  class PGDBSet {
24
27
  constructor(cTor, context) {
25
28
  this._statements = [];
@@ -34,6 +37,10 @@ class PGDBSet {
34
37
  AddAsync(obj) {
35
38
  return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
36
39
  var _a, _b;
40
+ if (!obj)
41
+ throw new InvalidOperationException_1.default(`Cannot insert a null reference object of ${this._type.name}`);
42
+ if (!this.IsCorrectType(obj))
43
+ throw new InvalidOperationException_1.default(`The object passed as argument is not a ${this._type.name} instance`);
37
44
  let sql = `insert into "${this._table}"(`;
38
45
  let values = `values (`;
39
46
  let returnKey = '';
@@ -49,8 +56,12 @@ class PGDBSet {
49
56
  };
50
57
  continue;
51
58
  }
52
- if (Reflect.get(obj, map.Field) == undefined)
59
+ let currPropValue = Reflect.get(obj, map.Field);
60
+ if (currPropValue == undefined || currPropValue == null) {
61
+ sql += `"${map.Column}",`;
62
+ values += `null,`;
53
63
  continue;
64
+ }
54
65
  let relation = SchemasDecorators_1.default.GetRelationAttribute(this._type, map.Field);
55
66
  let designType = Type_1.default.GetDesingType(this._type, map.Field);
56
67
  if ((designType && this._context.IsMapped(designType)) || (relation && this._context.IsMapped(relation.TypeBuilder()))) {
@@ -62,7 +73,7 @@ class PGDBSet {
62
73
  continue;
63
74
  }
64
75
  let colType = Type_1.default.CastType(map.Type);
65
- sql += `${map.Column},`;
76
+ sql += `"${map.Column}",`;
66
77
  values += `${this.CreateValueStatement(colType, Reflect.get(obj, map.Field))},`;
67
78
  }
68
79
  if (key == undefined) {
@@ -184,10 +195,17 @@ class PGDBSet {
184
195
  UpdateObjectAsync(obj, cascade) {
185
196
  return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
186
197
  var _a;
198
+ if (!this.IsCorrectType(obj))
199
+ throw new InvalidOperationException_1.default(`The object passed as argument is not a ${this._type.name} instance`);
200
+ if (!obj)
201
+ throw new InvalidOperationException_1.default(`Cannot update a null reference object of ${this._type.name}`);
187
202
  let keys = Type_1.default.GetProperties(this._type).filter(p => SchemasDecorators_1.default.IsPrimaryKey(this._type, p));
188
203
  let wheres = [];
189
204
  if (keys && keys.length > 0) {
190
205
  keys.forEach((w, i) => {
206
+ let keyValue = Reflect.get(obj, w);
207
+ if (!keyValue)
208
+ throw new ConstraintFailException_1.default(`The field ${this._type.name}.${w} is a primary key but has no value`);
191
209
  wheres.push({
192
210
  Statement: {
193
211
  Field: w,
@@ -198,7 +216,7 @@ class PGDBSet {
198
216
  });
199
217
  });
200
218
  }
201
- let update = `update ${this._table} set`;
219
+ let update = `update "${this._table}" set`;
202
220
  let values = "";
203
221
  let key;
204
222
  let subTypes = [];
@@ -222,7 +240,7 @@ class PGDBSet {
222
240
  };
223
241
  continue;
224
242
  }
225
- values += `${map.Column} = ${this.CreateValueStatement(colType, Reflect.get(obj, map.Field))},`;
243
+ values += `"${map.Column}" = ${this.CreateValueStatement(colType, Reflect.get(obj, map.Field))},`;
226
244
  }
227
245
  update = `${update} ${values.substring(0, values.length - 1)}`;
228
246
  for (let where of wheres) {
@@ -334,6 +352,10 @@ class PGDBSet {
334
352
  }
335
353
  DeleteAsync(obj) {
336
354
  return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
355
+ if (!obj)
356
+ throw new InvalidOperationException_1.default(`Cannot delete a null reference object of ${this._type.name}`);
357
+ if (!this.IsCorrectType(obj))
358
+ throw new InvalidOperationException_1.default(`The object passed as argument is not a ${this._type.name} instance`);
337
359
  let keys = Type_1.default.GetProperties(this._type).filter(p => SchemasDecorators_1.default.IsPrimaryKey(this._type, p));
338
360
  let wheres = [];
339
361
  if (keys && keys.length > 0) {
@@ -348,7 +370,7 @@ class PGDBSet {
348
370
  });
349
371
  });
350
372
  }
351
- let del = `delete from ${this._table} `;
373
+ let del = `delete from "${this._table}" `;
352
374
  for (let where of wheres) {
353
375
  del += ` ${where.StatementType} ${this.EvaluateStatement(where)} `;
354
376
  }
@@ -358,6 +380,7 @@ class PGDBSet {
358
380
  }
359
381
  Where(statement) {
360
382
  var _a;
383
+ this.ResetFilters();
361
384
  this._statements.push({
362
385
  Statement: {
363
386
  Field: statement.Field.toString(),
@@ -419,9 +442,22 @@ class PGDBSet {
419
442
  ToListAsync() {
420
443
  return __awaiter(this, void 0, void 0, function* () {
421
444
  return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
422
- let query = `select * from "${this._table}"`;
423
- for (let where of this._statements) {
424
- query += ` ${where.StatementType} ${this.EvaluateStatement(where)} `;
445
+ let whereSrt = PGSetHelper_1.default.ExtractWhereData(this);
446
+ let sqlSrt = PGSetHelper_1.default.ExtractSQLData(this);
447
+ let query = `select "${this._table}".* from "${this._table}"`;
448
+ if (sqlSrt && sqlSrt.toLowerCase().trim().startsWith(`select distinct "${this._table}".*`))
449
+ query = sqlSrt;
450
+ if (!whereSrt) {
451
+ if (this._whereAsString != undefined && this._statements.length > 0) {
452
+ throw new InvalidOperationException_1.default("Is not possible combine free and structured queries");
453
+ }
454
+ if (this._whereAsString != undefined) {
455
+ query += ` ${this._whereAsString} `;
456
+ }
457
+ query += this.EvaluateWhere();
458
+ }
459
+ else {
460
+ query += whereSrt;
425
461
  }
426
462
  let ordenation = "";
427
463
  for (let orderby of this._ordering) {
@@ -439,71 +475,7 @@ class PGDBSet {
439
475
  return [];
440
476
  }
441
477
  let list = [];
442
- for (let row of r.rows) {
443
- let instance = Reflect.construct(this._type, []);
444
- for (let map of this._maps) {
445
- let type = Type_1.default.GetDesingType(this._type, map.Field);
446
- let relation = SchemasDecorators_1.default.GetRelationAttribute(this._type, map.Field);
447
- if ((!type || type === Array) && relation)
448
- type = relation.TypeBuilder();
449
- if (!this._context.IsMapped(type))
450
- Reflect.set(instance, map.Field, Reflect.get(row, map.Column));
451
- else {
452
- if (Reflect.get(row, map.Column) == undefined)
453
- continue;
454
- let includeType = this._includes.filter(s => s.Field == map.Field);
455
- let loaded = false;
456
- if (includeType.length > 0) {
457
- loaded = true;
458
- let colletion = this._context.Collection(type);
459
- if (colletion == undefined)
460
- continue;
461
- let subKey = SchemasDecorators_1.default.ExtractPrimaryKey(type);
462
- if ((relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.MANY_TO_MANY || (relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.ONE_TO_MANY) {
463
- let values = Reflect.get(row, map.Column);
464
- if (!values || values.length == 0)
465
- continue;
466
- colletion.Where({
467
- Field: subKey,
468
- Kind: IStatement_1.Operation.EQUALS,
469
- Value: values[0]
470
- });
471
- for (let i = 0; i < values.length; i++) {
472
- if (i == 0)
473
- continue;
474
- colletion.Or({
475
- Field: subKey,
476
- Kind: IStatement_1.Operation.EQUALS,
477
- Value: values[i]
478
- });
479
- }
480
- let subObjets = yield colletion.ToListAsync();
481
- Reflect.set(instance, map.Field, subObjets);
482
- }
483
- else {
484
- colletion.Where({
485
- Field: subKey,
486
- Kind: IStatement_1.Operation.EQUALS,
487
- Value: Reflect.get(row, map.Column)
488
- });
489
- let subObjet = yield colletion.FirstOrDefaultAsync();
490
- Reflect.set(instance, map.Field, subObjet);
491
- }
492
- }
493
- Type_1.default.InjectMetadata(instance, {
494
- Field: map.Field,
495
- Type: map.Type,
496
- Value: Reflect.get(row, map.Column),
497
- Loaded: loaded
498
- });
499
- }
500
- }
501
- try {
502
- delete instance._orm_metadata_;
503
- }
504
- catch (_a) { }
505
- list.push(instance);
506
- }
478
+ list = yield this.BuildObjects(r);
507
479
  this.Reset();
508
480
  return list;
509
481
  }));
@@ -519,6 +491,27 @@ class PGDBSet {
519
491
  }));
520
492
  });
521
493
  }
494
+ WhereField(field) {
495
+ this.ResetFilters();
496
+ return new PGFluentField_1.default(this, field, false);
497
+ }
498
+ AndField(field) {
499
+ return new PGFluentField_1.default(this, field, false);
500
+ }
501
+ OrField(field) {
502
+ return new PGFluentField_1.default(this, field, true);
503
+ }
504
+ WhereAsString(where) {
505
+ this.ResetFilters();
506
+ if (where && !where.trim().toLocaleLowerCase().startsWith("where")) {
507
+ where = `where ${where}`;
508
+ }
509
+ this._whereAsString = where;
510
+ return this;
511
+ }
512
+ AndLoadAll(field) {
513
+ return this.Join(field);
514
+ }
522
515
  CreatePromisse(func) {
523
516
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
524
517
  try {
@@ -529,15 +522,24 @@ class PGDBSet {
529
522
  }
530
523
  }));
531
524
  }
525
+ CleanQueryTree() {
526
+ this.Reset();
527
+ }
532
528
  CreateValueStatement(colType, value) {
529
+ if (value == undefined || value == null)
530
+ return 'null';
533
531
  if (colType == DBTypes_1.DBTypes.TEXT) {
534
532
  return `$$${value}$$`;
535
533
  }
536
534
  else if (Type_1.default.IsNumber(colType)) {
535
+ if (isNaN(value))
536
+ throw new InvalidOperationException_1.default(`Can not cast the value "${value}" in a number`);
537
537
  return `${value}`.replace(',', '.');
538
538
  }
539
539
  else if (Type_1.default.IsDate(colType)) {
540
540
  let dt = value;
541
+ if (!dt)
542
+ throw new InvalidOperationException_1.default(`Can not cast the value: "${value}" in a valid date`);
541
543
  let dtStr = `'${dt.getFullYear()}-${dt.getMonth() + 1}-${dt.getDate()}'`;
542
544
  if (colType == DBTypes_1.DBTypes.DATE) {
543
545
  return `${dtStr}`;
@@ -561,6 +563,18 @@ class PGDBSet {
561
563
  }
562
564
  throw new TypeNotSuportedException_1.default(`The type ${colType} is not suported`);
563
565
  }
566
+ EvaluateWhere() {
567
+ let query = "";
568
+ for (let i = 0; i < this._statements.length; i++) {
569
+ let where = this._statements[i];
570
+ if (i == 0 && where.StatementType != StatementType.WHERE)
571
+ throw new InvalidOperationException_1.default(`The query three must start with a WHERE statement`);
572
+ if (i > 0 && where.StatementType == StatementType.WHERE)
573
+ where.StatementType = StatementType.AND;
574
+ query += ` ${where.StatementType} ${this.EvaluateStatement(where)} `;
575
+ }
576
+ return query;
577
+ }
564
578
  EvaluateStatement(pgStatement) {
565
579
  let column = Type_1.default.GetColumnName(this._type, pgStatement.Statement.Field.toString());
566
580
  let typeName = Type_1.default.GetDesingTimeTypeName(this._type, pgStatement.Statement.Field.toString());
@@ -575,39 +589,79 @@ class PGDBSet {
575
589
  type = relation.TypeBuilder();
576
590
  }
577
591
  if (pgStatement.Statement.Value == undefined)
578
- return `${column} is null`;
579
- if (this._context.IsMapped(type)) {
580
- throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
592
+ return `"${this._table}".${column} is null`;
593
+ if (this._context.IsMapped(type) || (relation && this._context.IsMapped(relation.TypeBuilder()))) {
594
+ if (!relation)
595
+ throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
596
+ if (isArray) {
597
+ if (pgStatement.Statement.Value.lenght == 0)
598
+ return `coalesce(array_length("${this._table}".${column}, 1), 0) = 0`;
599
+ if (pgStatement.Statement.Value.filter(s => s == undefined || s == null).length > 0)
600
+ throw new InvalidOperationException_1.default(`Can not compare relations with null or undefined objets`);
601
+ let c = pgStatement.Statement.Value[0];
602
+ let k = SchemasDecorators_1.default.ExtractPrimaryKey(c.constructor);
603
+ if (!k)
604
+ throw new ConstraintFailException_1.default(`The type ${c.constructor.name} must have a key field`);
605
+ let elementType = Type_1.default.GetDesingTimeTypeName(c.constructor, k);
606
+ let internalType = Type_1.default.CastType(elementType);
607
+ let keyType = DBTypes_1.DBTypes.LONGARRAY;
608
+ if (Type_1.default.IsNumber(internalType))
609
+ keyType = DBTypes_1.DBTypes.LONGARRAY;
610
+ else if (Type_1.default.IsText(internalType))
611
+ keyType = DBTypes_1.DBTypes.TEXTARRAY;
612
+ else if (Type_1.default.IsDate(internalType))
613
+ keyType = DBTypes_1.DBTypes.DATEARRAY;
614
+ else
615
+ throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
616
+ let newValues = [];
617
+ for (let e of pgStatement.Statement.Value) {
618
+ newValues = [e[k]];
619
+ }
620
+ typeName = keyType;
621
+ pgStatement.Statement.Value = newValues;
622
+ }
623
+ else {
624
+ let k = SchemasDecorators_1.default.ExtractPrimaryKey(pgStatement.Statement.Value.constructor);
625
+ if (!k)
626
+ throw new ConstraintFailException_1.default(`The type ${pgStatement.Statement.Value.constructor.name} must have a key field`);
627
+ let elementType = Type_1.default.GetDesingTimeTypeName(pgStatement.Statement.Value.constructor, k);
628
+ let internalType = Type_1.default.CastType(elementType);
629
+ typeName = internalType;
630
+ pgStatement.Statement.Value = pgStatement.Statement.Value[k];
631
+ }
581
632
  }
582
633
  if (isArray) {
583
634
  if (!typeName)
584
635
  throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
585
636
  if (pgStatement.Statement.Kind == IStatement_1.Operation.EQUALS) {
586
- return `${column} = ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
637
+ return `"${this._table}".${column} = ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
587
638
  }
588
639
  if (pgStatement.Statement.Kind == IStatement_1.Operation.NOTEQUALS) {
589
- return `${column} != ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
640
+ return `"${this._table}".${column} != ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
590
641
  }
591
642
  if (pgStatement.Statement.Kind == IStatement_1.Operation.SMALLER) {
592
- return `${column} <@ ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
643
+ return `"${this._table}".${column} <@ ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
593
644
  }
594
645
  if ([IStatement_1.Operation.STARTWITH, IStatement_1.Operation.CONSTAINS, IStatement_1.Operation.ENDWITH, IStatement_1.Operation.GREATHER].includes(pgStatement.Statement.Kind)) {
595
- return `${column} @> ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
646
+ return `"${this._table}".${column} @> ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
596
647
  }
597
648
  }
598
- if (Type_1.default.IsNumber(Type_1.default.CastType(typeName.toString()))) {
649
+ if (Type_1.default.IsNumber(Type_1.default.CastType(typeName.toString())) || Type_1.default.IsDate(Type_1.default.CastType(typeName.toString()))) {
599
650
  operation[1] = "";
600
651
  operation[2] = "";
652
+ if ([IStatement_1.Operation.CONSTAINS, IStatement_1.Operation.ENDWITH, IStatement_1.Operation.STARTWITH].filter(s => s == pgStatement.Statement.Kind).length > 0) {
653
+ throw new InvalidOperationException_1.default(`Can execute ${pgStatement.Statement.Kind.toString().toLocaleLowerCase()} only with text and array fields`);
654
+ }
601
655
  }
602
656
  else {
603
657
  operation[1] = `$$${operation[1]}`;
604
658
  operation[2] = `${operation[2]}$$`;
605
659
  }
606
- return `${column} ${operation[0]} ${operation[1]}${pgStatement.Statement.Value}${operation[2]}`;
660
+ return `"${this._table}".${column} ${operation[0]} ${operation[1]}${pgStatement.Statement.Value}${operation[2]}`;
607
661
  }
608
662
  EvaluateOrderBy(ordering) {
609
663
  let column = Type_1.default.GetColumnName(this._type, ordering.Field.toString());
610
- return ` ${column} ${ordering.Order}`;
664
+ return ` "${this._table}".${column} ${ordering.Order}`;
611
665
  }
612
666
  GetOperators(operation) {
613
667
  switch (operation) {
@@ -632,10 +686,126 @@ class PGDBSet {
632
686
  }
633
687
  }
634
688
  Reset() {
635
- this._statements = [];
636
689
  this._ordering = [];
637
690
  this._includes = [];
638
691
  this._limit = undefined;
692
+ this.ResetFilters();
693
+ }
694
+ ResetFilters() {
695
+ this._statements = [];
696
+ this._whereAsString = undefined;
697
+ PGSetHelper_1.default.CleanORMData(this);
698
+ }
699
+ IsCorrectType(obj) {
700
+ let sameCTor = obj && obj.constructor && obj.constructor == this._type;
701
+ if (sameCTor)
702
+ return true;
703
+ if (obj.prototype == this._type)
704
+ return true;
705
+ if (obj.prototype && obj.prototype.constructor == this._type)
706
+ return true;
707
+ let objectKeys = Object.keys(obj);
708
+ for (let map of this._maps) {
709
+ let v = obj[map.Field];
710
+ if (v == undefined) {
711
+ let exists = objectKeys.filter(s => s == map.Field).length > 0;
712
+ if (!exists) {
713
+ let allowNull = SchemasDecorators_1.default.AllowNullValue(this._type, map.Field);
714
+ if (!allowNull)
715
+ return false;
716
+ }
717
+ }
718
+ }
719
+ obj.__proto__ = this._type;
720
+ return true;
721
+ }
722
+ BuildObjects(r) {
723
+ return __awaiter(this, void 0, void 0, function* () {
724
+ let list = [];
725
+ for (let row of r.rows) {
726
+ let instance = Reflect.construct(this._type, []);
727
+ for (let map of this._maps) {
728
+ let type = Type_1.default.GetDesingType(this._type, map.Field);
729
+ let relation = SchemasDecorators_1.default.GetRelationAttribute(this._type, map.Field);
730
+ if ((!type || type === Array) && relation)
731
+ type = relation.TypeBuilder();
732
+ if (!this._context.IsMapped(type)) {
733
+ let v = Reflect.get(row, map.Column);
734
+ let vType = Type_1.default.CastType(map.Type);
735
+ if (v != undefined) {
736
+ if ([DBTypes_1.DBTypes.INTEGER, DBTypes_1.DBTypes.LONG, DBTypes_1.DBTypes.SERIAL].includes(vType))
737
+ Reflect.set(instance, map.Field, Number.parseInt(v));
738
+ else if (DBTypes_1.DBTypes.DOUBLE == vType)
739
+ Reflect.set(instance, map.Field, Number.parseFloat(v));
740
+ else if ([DBTypes_1.DBTypes.DATE, DBTypes_1.DBTypes.DATETIME].includes(vType)) {
741
+ try {
742
+ v = new Date(v);
743
+ }
744
+ catch (_a) { }
745
+ Reflect.set(instance, map.Field, v);
746
+ }
747
+ else if (DBTypes_1.DBTypes.TEXT == vType)
748
+ Reflect.set(instance, map.Field, v.toString());
749
+ else
750
+ Reflect.set(instance, map.Field, v);
751
+ }
752
+ else
753
+ Reflect.set(instance, map.Field, v);
754
+ }
755
+ else {
756
+ if (Reflect.get(row, map.Column) == undefined)
757
+ continue;
758
+ let includeType = this._includes.filter(s => s.Field == map.Field);
759
+ let loaded = false;
760
+ if (includeType.length > 0) {
761
+ loaded = true;
762
+ let colletion = this._context.Collection(type);
763
+ if (colletion == undefined)
764
+ continue;
765
+ let subKey = SchemasDecorators_1.default.ExtractPrimaryKey(type);
766
+ if ((relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.MANY_TO_MANY || (relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.ONE_TO_MANY) {
767
+ let values = Reflect.get(row, map.Column);
768
+ if (!values || values.length == 0)
769
+ continue;
770
+ colletion.Where({
771
+ Field: subKey,
772
+ Kind: IStatement_1.Operation.EQUALS,
773
+ Value: values[0]
774
+ });
775
+ for (let i = 0; i < values.length; i++) {
776
+ if (i == 0)
777
+ continue;
778
+ colletion.Or({
779
+ Field: subKey,
780
+ Kind: IStatement_1.Operation.EQUALS,
781
+ Value: values[i]
782
+ });
783
+ }
784
+ let subObjets = yield colletion.ToListAsync();
785
+ Reflect.set(instance, map.Field, subObjets);
786
+ }
787
+ else {
788
+ colletion.Where({
789
+ Field: subKey,
790
+ Kind: IStatement_1.Operation.EQUALS,
791
+ Value: Reflect.get(row, map.Column)
792
+ });
793
+ let subObjet = yield colletion.FirstOrDefaultAsync();
794
+ Reflect.set(instance, map.Field, subObjet);
795
+ }
796
+ }
797
+ Type_1.default.InjectMetadata(instance, {
798
+ Field: map.Field,
799
+ Type: map.Type,
800
+ Value: Reflect.get(row, map.Column),
801
+ Loaded: loaded
802
+ });
803
+ }
804
+ }
805
+ list.push(instance);
806
+ }
807
+ return list;
808
+ });
639
809
  }
640
810
  }
641
811
  exports.default = PGDBSet;
@@ -1 +1 @@
1
- {"version":3,"file":"PGDBSet.js","sourceRoot":"","sources":["../../src/implementations/PGDBSet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PGDBSet.js","sourceRoot":"","sources":["../../src/implementations/PGDBSet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { IFluentField } from "../core/objects/interfaces/IDBSet";
2
+ import PGDBSet from "./PGDBSet";
3
+ export default class PGFluentField<T extends object, K extends keyof T, P extends PGDBSet<T>> implements IFluentField<T, K, P> {
4
+ private _pgSet;
5
+ private _field;
6
+ private _isOr;
7
+ constructor(pgSet: P, field: keyof T, isOr?: boolean);
8
+ IsGreaterThan(value: T[K]): P;
9
+ IsEqualTo(value: T[K]): P;
10
+ IsNotEqualTo(value: T[K]): P;
11
+ IsSmallerThan(value: T[K]): P;
12
+ IsInsideIn(value: T[K][]): P;
13
+ Constains(value: T[K]): P;
14
+ StartsWith(value: T[K]): P;
15
+ EndsWith(value: T[K]): P;
16
+ IsNull(): P;
17
+ }
18
+ //# sourceMappingURL=PGFluentField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PGFluentField.d.ts","sourceRoot":"","sources":["../../src/implementations/PGFluentField.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,OAAO,OAAO,MAAM,WAAW,CAAC;AAGhC,MAAM,CAAC,OAAO,OAAO,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,CAAE,YAAW,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAE1H,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,KAAK,CAAW;gBAGZ,KAAK,EAAG,CAAC,EAAE,KAAK,EAAG,MAAM,CAAC,EAAE,IAAI,GAAG,OAAe;IAOvD,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAuB7B,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAqBzB,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAuB5B,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAuB7B,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IAwB5B,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAuBzB,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAuB1B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAsBxB,MAAM,IAAI,CAAC;CAoBrB"}