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.
- package/README.md +356 -170
- package/lib/core/decorators/SchemasDecorators.d.ts +3 -0
- package/lib/core/decorators/SchemasDecorators.d.ts.map +1 -1
- package/lib/core/decorators/SchemasDecorators.js +14 -0
- package/lib/core/decorators/SchemasDecorators.js.map +1 -1
- package/lib/core/design/Type.d.ts +1 -0
- package/lib/core/design/Type.d.ts.map +1 -1
- package/lib/core/design/Type.js +7 -1
- package/lib/core/design/Type.js.map +1 -1
- package/lib/core/exceptions/ConstraintFailException.d.ts +5 -0
- package/lib/core/exceptions/ConstraintFailException.d.ts.map +1 -0
- package/lib/core/exceptions/ConstraintFailException.js +13 -0
- package/lib/core/exceptions/ConstraintFailException.js.map +1 -0
- package/lib/core/objects/interfaces/IDBConnection.d.ts +1 -0
- package/lib/core/objects/interfaces/IDBConnection.d.ts.map +1 -1
- package/lib/core/objects/interfaces/IDBContext.d.ts +34 -1
- package/lib/core/objects/interfaces/IDBContext.d.ts.map +1 -1
- package/lib/core/objects/interfaces/IDBManager.d.ts +1 -0
- package/lib/core/objects/interfaces/IDBManager.d.ts.map +1 -1
- package/lib/core/objects/interfaces/IDBSet.d.ts +20 -1
- package/lib/core/objects/interfaces/IDBSet.d.ts.map +1 -1
- package/lib/implementations/PGDBConnection.d.ts +1 -0
- package/lib/implementations/PGDBConnection.d.ts.map +1 -1
- package/lib/implementations/PGDBConnection.js +5 -0
- package/lib/implementations/PGDBConnection.js.map +1 -1
- package/lib/implementations/PGDBContext.d.ts +39 -3
- package/lib/implementations/PGDBContext.d.ts.map +1 -1
- package/lib/implementations/PGDBContext.js +219 -0
- package/lib/implementations/PGDBContext.js.map +1 -1
- package/lib/implementations/PGDBManager.d.ts +2 -0
- package/lib/implementations/PGDBManager.d.ts.map +1 -1
- package/lib/implementations/PGDBManager.js +38 -0
- package/lib/implementations/PGDBManager.js.map +1 -1
- package/lib/implementations/PGDBSet.d.ts +13 -2
- package/lib/implementations/PGDBSet.d.ts.map +1 -1
- package/lib/implementations/PGDBSet.js +254 -84
- package/lib/implementations/PGDBSet.js.map +1 -1
- package/lib/implementations/PGFluentField.d.ts +18 -0
- package/lib/implementations/PGFluentField.d.ts.map +1 -0
- package/lib/implementations/PGFluentField.js +154 -0
- package/lib/implementations/PGFluentField.js.map +1 -0
- package/lib/implementations/PGSetHelper.d.ts +19 -0
- package/lib/implementations/PGSetHelper.d.ts.map +1 -0
- package/lib/implementations/PGSetHelper.js +48 -0
- package/lib/implementations/PGSetHelper.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemasDecorators.js","sourceRoot":"","sources":["../../../src/core/decorators/SchemasDecorators.ts"],"names":[],"mappings":";;;;;AACA,4BAA0B;AAE1B,0DAAkC;AAClC,wDAAqD;AAErD,MAAqB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"SchemasDecorators.js","sourceRoot":"","sources":["../../../src/core/decorators/SchemasDecorators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,MAAM,CAAC,OAAO,OAAO,IAAI;WAEP,aAAa,CAAC,IAAI,EAAG,QAAQ;WAO7B,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI;QAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAI,OAAO,CAAA;KAAC,GAAG,SAAS;WAKpG,qBAAqB,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI,MAAM,GAAG,SAAS;WAelF,OAAO,CAAC,IAAI,EAAG,MAAM,GAAI,MAAM;WAa/B,cAAc,CAAC,MAAM,EAAG,GAAG,EAAE,QAAQ,EAAG;QAAC,KAAK,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,OAAO,CAAC;QAAC,KAAK,EAAG,GAAG,CAAC;QAAC,MAAM,EAAG,OAAO,CAAA;KAAC;WASvG,eAAe,CAAC,MAAM,EAAG,GAAG,GAAI,UAAU,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;WAM3E,YAAY,CAAC,IAAI,EAAG,QAAQ,GAAI,MAAM;WAKtC,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,MAAM;WAKrD,QAAQ,CAAC,GAAG,EAAG,GAAG,GAAI,OAAO;WAoB7B,oBAAoB,CAAC,IAAI,EAAG,QAAQ,GAAI;QAAE,KAAK,EAAG,MAAM,CAAC;QAAC,MAAM,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,MAAM,CAAA;KAAE,EAAE;WA8B5F,OAAO,CAAC,MAAM,EAAG,MAAM;WAevB,kBAAkB,CAAC,MAAM,EAAG,MAAM;WAKlC,MAAM,CAAC,MAAM,EAAG,MAAM;WAWtB,QAAQ,CAAC,MAAM,EAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,MAAM,CAAC,OAAO,OAAO,IAAI;WAEP,aAAa,CAAC,IAAI,EAAG,QAAQ;WAO7B,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI;QAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAI,OAAO,CAAA;KAAC,GAAG,SAAS;WAKpG,qBAAqB,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI,MAAM,GAAG,SAAS;WAelF,OAAO,CAAC,IAAI,EAAG,MAAM,GAAI,MAAM;WAa/B,cAAc,CAAC,MAAM,EAAG,GAAG,EAAE,QAAQ,EAAG;QAAC,KAAK,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,OAAO,CAAC;QAAC,KAAK,EAAG,GAAG,CAAC;QAAC,MAAM,EAAG,OAAO,CAAA;KAAC;WASvG,eAAe,CAAC,MAAM,EAAG,GAAG,GAAI,UAAU,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;WAM3E,YAAY,CAAC,IAAI,EAAG,QAAQ,GAAI,MAAM;WAKtC,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,MAAM;WAKrD,QAAQ,CAAC,GAAG,EAAG,GAAG,GAAI,OAAO;WAoB7B,oBAAoB,CAAC,IAAI,EAAG,QAAQ,GAAI;QAAE,KAAK,EAAG,MAAM,CAAC;QAAC,MAAM,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,MAAM,CAAA;KAAE,EAAE;WA8B5F,OAAO,CAAC,MAAM,EAAG,MAAM;WAevB,kBAAkB,CAAC,MAAM,EAAG,MAAM;WAKlC,MAAM,CAAC,MAAM,EAAG,MAAM;WAWtB,QAAQ,CAAC,MAAM,EAAG,MAAM;WAaxB,MAAM,CAAC,MAAM,EAAG,MAAM;IAUpC;;;;;OAKG;WACW,QAAQ,CAAC,IAAI,EAAG,MAAM,GAAI,OAAO;CAkBlD"}
|
package/lib/core/design/Type.js
CHANGED
|
@@ -109,6 +109,12 @@ class Type {
|
|
|
109
109
|
}
|
|
110
110
|
return false;
|
|
111
111
|
}
|
|
112
|
+
static IsText(dbType) {
|
|
113
|
+
switch (dbType.toLocaleLowerCase()) {
|
|
114
|
+
case DBTypes_1.DBTypes.TEXT: return true;
|
|
115
|
+
}
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
112
118
|
/**
|
|
113
119
|
*
|
|
114
120
|
* @method
|
|
@@ -117,7 +123,7 @@ class Type {
|
|
|
117
123
|
*/
|
|
118
124
|
static CastType(type) {
|
|
119
125
|
for (let k in DBTypes_1.DBTypes) {
|
|
120
|
-
if (DBTypes_1.DBTypes[k] == type.
|
|
126
|
+
if (DBTypes_1.DBTypes[k] == type.toLowerCase().trim())
|
|
121
127
|
return DBTypes_1.DBTypes[k];
|
|
122
128
|
}
|
|
123
129
|
switch (type.toLowerCase()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Type.js","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Type.js","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConstraintFailException.d.ts","sourceRoot":"","sources":["../../../src/core/exceptions/ConstraintFailException.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,SAAS;gBAE9C,OAAO,EAAG,MAAM;CAI/B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const Exception_1 = __importDefault(require("./Exception"));
|
|
7
|
+
class ConstraintFailException extends Exception_1.default {
|
|
8
|
+
constructor(message) {
|
|
9
|
+
super(message);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.default = ConstraintFailException;
|
|
13
|
+
//# sourceMappingURL=ConstraintFailException.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConstraintFailException.js","sourceRoot":"","sources":["../../../src/core/exceptions/ConstraintFailException.ts"],"names":[],"mappings":";;;;;AAAA,4DAAoC;AAEpC,MAAqB,uBAAwB,SAAQ,mBAAS;IAE1D,YAAY,OAAgB;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AAND,0CAMC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDBConnection.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBConnection.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,WAAW,aAAa;IAElC,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,KAAK,IAAK,IAAI,CAAC;IACf,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
|
|
1
|
+
{"version":3,"file":"IDBConnection.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBConnection.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,WAAW,aAAa;IAElC,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IAClB,MAAM,EAAG,OAAO,CAAC;IACjB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,KAAK,IAAK,IAAI,CAAC;IACf,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
|
|
@@ -1,8 +1,41 @@
|
|
|
1
1
|
import IDBSet from './IDBSet';
|
|
2
|
+
import IStatement from './IStatement';
|
|
2
3
|
export default interface IDBContext {
|
|
3
|
-
Collection<T>(cTor: {
|
|
4
|
+
Collection<T extends Object>(cTor: {
|
|
4
5
|
new (...args: any[]): T;
|
|
5
6
|
}): IDBSet<T> | undefined;
|
|
6
7
|
UpdateDatabaseAsync(): Promise<void>;
|
|
8
|
+
ExecuteNonQuery(query: string): Promise<void>;
|
|
9
|
+
ExecuteQuery(query: string): Promise<any>;
|
|
10
|
+
}
|
|
11
|
+
export interface IThreeQueryableObject {
|
|
12
|
+
Join(...args: {
|
|
13
|
+
new (...args: any[]): Object;
|
|
14
|
+
}[]): IJoiningQuery;
|
|
15
|
+
}
|
|
16
|
+
export interface IJoiningQuery {
|
|
17
|
+
On<C extends Object, U extends Object>(cT: {
|
|
18
|
+
new (...args: any[]): C;
|
|
19
|
+
}, cKey: keyof C, uT: {
|
|
20
|
+
new (...args: any[]): U;
|
|
21
|
+
}, uKey: keyof U): IJoiningQuery;
|
|
22
|
+
Where<C extends Object, K extends keyof C>(cT: {
|
|
23
|
+
new (...args: any[]): C;
|
|
24
|
+
}, statement: IStatement<C, K>): IJoiningQuery;
|
|
25
|
+
And<C extends Object, K extends keyof C>(cT: {
|
|
26
|
+
new (...args: any[]): C;
|
|
27
|
+
}, statement: IStatement<C, K>): IJoiningQuery;
|
|
28
|
+
Or<C extends Object, K extends keyof C>(cT: {
|
|
29
|
+
new (...args: any[]): C;
|
|
30
|
+
}, statement: IStatement<C, K>): IJoiningQuery;
|
|
31
|
+
Select<C extends Object>(cT: {
|
|
32
|
+
new (...args: any[]): C;
|
|
33
|
+
}): IJoinSelectable<C>;
|
|
34
|
+
}
|
|
35
|
+
export interface IJoinSelectable<T> {
|
|
36
|
+
ToListAsync(): Promise<T[]>;
|
|
37
|
+
Join<K extends keyof T>(key: K): IJoinSelectable<T>;
|
|
38
|
+
OrderBy<K extends keyof T>(key: K): IJoinSelectable<T>;
|
|
39
|
+
OrderDescendingBy<K extends keyof T>(key: K): IJoinSelectable<T>;
|
|
7
40
|
}
|
|
8
41
|
//# sourceMappingURL=IDBContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDBContext.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBContext.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"IDBContext.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBContext.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,GAAI,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACzF,mBAAmB,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,YAAY,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,qBAAqB;IAElC,IAAI,CAAC,GAAG,IAAI,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,MAAM,CAAA;KAAC,EAAE,GAAI,aAAa,CAAC;CACtE;AAED,MAAM,WAAW,aAAa;IAE1B,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,IAAI,EAAG,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,IAAI,EAAG,MAAM,CAAC,GAAI,aAAa,CAAC;IAC3J,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAK,aAAa,CAAC;IAC5H,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAK,aAAa,CAAC;IAC1H,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAK,aAAa,CAAC;IACzH,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;CACnF;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAE9B,WAAW,IAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7B,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IACzD,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;CACtE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDBManager.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBManager.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,aAAa,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD,cAAc,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD,UAAU,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,WAAW,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C,WAAW,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D,YAAY,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D,uBAAuB,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
|
|
1
|
+
{"version":3,"file":"IDBManager.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBManager.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,eAAe,IAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAErC,aAAa,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD,cAAc,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD,UAAU,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,WAAW,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C,WAAW,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D,YAAY,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D,uBAAuB,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import IStatement from "./IStatement";
|
|
2
|
-
export default interface IDBSet<T> {
|
|
2
|
+
export default interface IDBSet<T extends Object> {
|
|
3
3
|
AddAsync(obj: T): Promise<T>;
|
|
4
4
|
UpdateAsync(obj: T): Promise<T>;
|
|
5
5
|
DeleteAsync(obj: T): Promise<T>;
|
|
@@ -12,5 +12,24 @@ export default interface IDBSet<T> {
|
|
|
12
12
|
Limit(limit: number): IDBSet<T>;
|
|
13
13
|
ToListAsync(): Promise<T[]>;
|
|
14
14
|
FirstOrDefaultAsync(): Promise<T | undefined>;
|
|
15
|
+
CleanQueryTree(): void;
|
|
16
|
+
}
|
|
17
|
+
export interface IFluentQueryableObject<T extends Object, R extends IDBSet<T>> {
|
|
18
|
+
WhereField<K extends keyof T>(field: K): IFluentField<T, K, R>;
|
|
19
|
+
WhereAsString(where: string): R;
|
|
20
|
+
AndField<K extends keyof T>(field: K): IFluentField<T, K, R>;
|
|
21
|
+
OrField<K extends keyof T>(field: K): IFluentField<T, K, R>;
|
|
22
|
+
AndLoadAll<K extends keyof T>(field: K): R;
|
|
23
|
+
}
|
|
24
|
+
export interface IFluentField<T extends Object, K extends keyof T, R extends IDBSet<T>> {
|
|
25
|
+
IsGreaterThan(value: T[K]): R;
|
|
26
|
+
IsEqualTo(value: T[K]): R;
|
|
27
|
+
IsNotEqualTo(value: T[K]): R;
|
|
28
|
+
IsSmallerThan(value: T[K]): R;
|
|
29
|
+
IsInsideIn(value: T[K][]): R;
|
|
30
|
+
Constains(value: T[K]): R;
|
|
31
|
+
StartsWith(value: T[K]): R;
|
|
32
|
+
EndsWith(value: T[K]): R;
|
|
33
|
+
IsNull(): R;
|
|
15
34
|
}
|
|
16
35
|
//# sourceMappingURL=IDBSet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDBSet.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBSet.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AAGtC,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"IDBSet.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBSet.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ export default class PGDBConnection implements IDBConnection {
|
|
|
5
5
|
DataBaseName: string;
|
|
6
6
|
UserName: string;
|
|
7
7
|
PassWord: string;
|
|
8
|
+
IsOpen: boolean;
|
|
8
9
|
private _conn;
|
|
9
10
|
private _database;
|
|
10
11
|
constructor(host: string, port: number, dababase: string, user: string, pass: string);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PGDBConnection.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,0CAA0C,CAAC;AAIrE,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,aAAa;IAEjD,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"PGDBConnection.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,0CAA0C,CAAC;AAIrE,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,aAAa;IAEjD,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,SAAS,CAAW;gBAEhB,IAAI,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM,EAAE,QAAQ,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM;IAWlF,UAAU,IAAK,cAAc;IAM7B,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAiCtB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC;IAiBpC,KAAK;IAoBC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB7C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAcpD"}
|
|
@@ -23,6 +23,7 @@ class PGDBConnection {
|
|
|
23
23
|
this._database = dababase;
|
|
24
24
|
this.UserName = user;
|
|
25
25
|
this.PassWord = pass;
|
|
26
|
+
this.IsOpen = false;
|
|
26
27
|
}
|
|
27
28
|
AsPostgres() {
|
|
28
29
|
this.DataBaseName = "postgres";
|
|
@@ -30,6 +31,8 @@ class PGDBConnection {
|
|
|
30
31
|
}
|
|
31
32
|
Open() {
|
|
32
33
|
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
if (this.IsOpen)
|
|
35
|
+
yield this.Close();
|
|
33
36
|
this._conn = new pg_1.default.Client({
|
|
34
37
|
host: this.HostName,
|
|
35
38
|
port: this.Port,
|
|
@@ -40,6 +43,7 @@ class PGDBConnection {
|
|
|
40
43
|
this.DataBaseName = this._database;
|
|
41
44
|
try {
|
|
42
45
|
yield this._conn.connect();
|
|
46
|
+
this.IsOpen = true;
|
|
43
47
|
resolve();
|
|
44
48
|
}
|
|
45
49
|
catch (err) {
|
|
@@ -61,6 +65,7 @@ class PGDBConnection {
|
|
|
61
65
|
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
62
66
|
try {
|
|
63
67
|
yield this._conn.end();
|
|
68
|
+
this.IsOpen = false;
|
|
64
69
|
resolve();
|
|
65
70
|
}
|
|
66
71
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PGDBConnection.js","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4CAAqB;AAGrB,yGAAiF;AACjF,+FAAuE;AAEvE,MAAqB,cAAc;
|
|
1
|
+
{"version":3,"file":"PGDBConnection.js","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import IDBContext from "../core/objects/interfaces/IDBContext";
|
|
1
|
+
import IDBContext, { IThreeQueryableObject, IJoiningQuery, IJoinSelectable } from "../core/objects/interfaces/IDBContext";
|
|
2
2
|
import IDBSet from "../core/objects/interfaces/IDBSet";
|
|
3
|
+
import IStatement from "../core/objects/interfaces/IStatement";
|
|
3
4
|
import PGDBManager from "./PGDBManager";
|
|
4
|
-
export default abstract class PGDBContext implements IDBContext {
|
|
5
|
+
export default abstract class PGDBContext implements IDBContext, IThreeQueryableObject {
|
|
5
6
|
protected _manager: PGDBManager;
|
|
6
7
|
private _mappedTypes;
|
|
7
8
|
constructor(manager: PGDBManager);
|
|
@@ -9,9 +10,44 @@ export default abstract class PGDBContext implements IDBContext {
|
|
|
9
10
|
IsMapped(type: {
|
|
10
11
|
new (...args: any[]): unknown;
|
|
11
12
|
}): boolean;
|
|
12
|
-
Collection<T>(cTor: {
|
|
13
|
+
Collection<T extends Object>(cTor: {
|
|
13
14
|
new (...args: any[]): T;
|
|
14
15
|
}): IDBSet<T> | undefined;
|
|
15
16
|
UpdateDatabaseAsync(): Promise<void>;
|
|
17
|
+
ExecuteNonQuery(query: string): Promise<void>;
|
|
18
|
+
ExecuteQuery(query: string): Promise<any>;
|
|
19
|
+
Join(...args: (new (...args: any[]) => Object)[]): IJoiningQuery;
|
|
16
20
|
}
|
|
21
|
+
export declare class JoiningQuery implements IJoiningQuery {
|
|
22
|
+
private _context;
|
|
23
|
+
private _stack;
|
|
24
|
+
private _onStatements;
|
|
25
|
+
constructor(context: PGDBContext, stack: (new (...args: any[]) => Object)[]);
|
|
26
|
+
On<C extends Object, U extends Object>(cT: {
|
|
27
|
+
new (...args: any[]): C;
|
|
28
|
+
}, cKey: keyof C, uT: {
|
|
29
|
+
new (...args: any[]): U;
|
|
30
|
+
}, uKey: keyof U): IJoiningQuery;
|
|
31
|
+
Where<C extends Object, K extends keyof C>(cT: new (...args: any[]) => C, statement: IStatement<C, K>): IJoiningQuery;
|
|
32
|
+
And<C extends Object, K extends keyof C>(cT: new (...args: any[]) => C, statement: IStatement<C, K>): IJoiningQuery;
|
|
33
|
+
Or<C extends Object, K extends keyof C>(cT: new (...args: any[]) => C, statement: IStatement<C, K>): IJoiningQuery;
|
|
34
|
+
Select<C extends Object>(cT: new (...args: any[]) => C): IJoinSelectable<C>;
|
|
35
|
+
private CheckIfTypeIsAllowed;
|
|
36
|
+
}
|
|
37
|
+
export declare class JoinSelectable<T extends Object> implements IJoinSelectable<T> {
|
|
38
|
+
private _context;
|
|
39
|
+
private _stack;
|
|
40
|
+
private _onStatements;
|
|
41
|
+
private _type;
|
|
42
|
+
constructor(cT: new (...args: any[]) => T, context: PGDBContext, stack: IUnion[], onStack: [string, string][]);
|
|
43
|
+
Join<K extends keyof T>(key: K): IJoinSelectable<T>;
|
|
44
|
+
OrderBy<K extends keyof T>(key: K): IJoinSelectable<T>;
|
|
45
|
+
OrderDescendingBy<K extends keyof T>(key: K): IJoinSelectable<T>;
|
|
46
|
+
ToListAsync(): Promise<T[]>;
|
|
47
|
+
}
|
|
48
|
+
interface IUnion {
|
|
49
|
+
Type: unknown;
|
|
50
|
+
Key?: string;
|
|
51
|
+
}
|
|
52
|
+
export {};
|
|
17
53
|
//# sourceMappingURL=PGDBContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PGDBContext.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBContext.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PGDBContext.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.JoinSelectable = exports.JoiningQuery = void 0;
|
|
16
|
+
const SchemasDecorators_1 = __importDefault(require("../core/decorators/SchemasDecorators"));
|
|
17
|
+
const Type_1 = __importDefault(require("../core/design/Type"));
|
|
18
|
+
const ConstraintFailException_1 = __importDefault(require("../core/exceptions/ConstraintFailException"));
|
|
19
|
+
const InvalidOperationException_1 = __importDefault(require("../core/exceptions/InvalidOperationException"));
|
|
15
20
|
const PGDBSet_1 = __importDefault(require("./PGDBSet"));
|
|
21
|
+
const PGSetHelper_1 = __importDefault(require("./PGSetHelper"));
|
|
16
22
|
class PGDBContext {
|
|
17
23
|
constructor(manager) {
|
|
18
24
|
this._manager = manager;
|
|
@@ -52,6 +58,219 @@ class PGDBContext {
|
|
|
52
58
|
}
|
|
53
59
|
});
|
|
54
60
|
}
|
|
61
|
+
ExecuteNonQuery(query) {
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
yield this._manager.ExecuteNonQuery(query);
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
ExecuteQuery(query) {
|
|
67
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
return yield this._manager.Execute(query);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
Join(...args) {
|
|
72
|
+
return new JoiningQuery(this, args);
|
|
73
|
+
}
|
|
55
74
|
}
|
|
56
75
|
exports.default = PGDBContext;
|
|
76
|
+
class JoiningQuery {
|
|
77
|
+
constructor(context, stack) {
|
|
78
|
+
this._stack = [];
|
|
79
|
+
this._onStatements = [];
|
|
80
|
+
this._context = context;
|
|
81
|
+
this._stack.push(...stack.map(s => { return { Type: s }; }));
|
|
82
|
+
let notMappedTypes = this._stack.filter(s => this._context.Collection(s.Type) == undefined);
|
|
83
|
+
if (notMappedTypes.length > 0) {
|
|
84
|
+
this._stack = [];
|
|
85
|
+
throw new InvalidOperationException_1.default(`The type ${notMappedTypes[0].Type.name} is not mapped`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
On(cT, cKey, uT, uKey) {
|
|
89
|
+
this.CheckIfTypeIsAllowed(cT);
|
|
90
|
+
this.CheckIfTypeIsAllowed(cT);
|
|
91
|
+
let leftIndex = this._stack.findIndex(s => s.Type == cT);
|
|
92
|
+
let rightIndex = this._stack.findIndex(s => s.Type == uT);
|
|
93
|
+
if (rightIndex - leftIndex != 1)
|
|
94
|
+
throw new InvalidOperationException_1.default(`The On statement must follow the same order than Join`);
|
|
95
|
+
this._onStatements.push([cKey.toString(), uKey.toString()]);
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
Where(cT, statement) {
|
|
99
|
+
this.CheckIfTypeIsAllowed(cT);
|
|
100
|
+
let set = this._context.Collection(cT);
|
|
101
|
+
set.Where(statement);
|
|
102
|
+
return this;
|
|
103
|
+
}
|
|
104
|
+
And(cT, statement) {
|
|
105
|
+
this.CheckIfTypeIsAllowed(cT);
|
|
106
|
+
let set = this._context.Collection(cT);
|
|
107
|
+
set.And(statement);
|
|
108
|
+
return this;
|
|
109
|
+
}
|
|
110
|
+
Or(cT, statement) {
|
|
111
|
+
this.CheckIfTypeIsAllowed(cT);
|
|
112
|
+
let set = this._context.Collection(cT);
|
|
113
|
+
set.Or(statement);
|
|
114
|
+
return this;
|
|
115
|
+
}
|
|
116
|
+
Select(cT) {
|
|
117
|
+
return new JoinSelectable(cT, this._context, this._stack, this._onStatements);
|
|
118
|
+
}
|
|
119
|
+
CheckIfTypeIsAllowed(cT) {
|
|
120
|
+
let set = this._context.Collection(cT);
|
|
121
|
+
if (!set)
|
|
122
|
+
throw new InvalidOperationException_1.default(`The type ${cT.name} is not mapped`);
|
|
123
|
+
let index = this._stack.findIndex(s => s.Type == cT);
|
|
124
|
+
if (index == -1)
|
|
125
|
+
throw new InvalidOperationException_1.default(`The type ${cT.name} is not inside the Join list`);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
exports.JoiningQuery = JoiningQuery;
|
|
129
|
+
class JoinSelectable {
|
|
130
|
+
constructor(cT, context, stack, onStack) {
|
|
131
|
+
this._stack = [];
|
|
132
|
+
this._onStatements = [];
|
|
133
|
+
this._type = cT;
|
|
134
|
+
this._context = context;
|
|
135
|
+
this._stack = stack;
|
|
136
|
+
this._onStatements = onStack;
|
|
137
|
+
}
|
|
138
|
+
Join(key) {
|
|
139
|
+
var _a;
|
|
140
|
+
(_a = this._context.Collection(this._type)) === null || _a === void 0 ? void 0 : _a.Join(key);
|
|
141
|
+
return this;
|
|
142
|
+
}
|
|
143
|
+
OrderBy(key) {
|
|
144
|
+
var _a;
|
|
145
|
+
(_a = this._context.Collection(this._type)) === null || _a === void 0 ? void 0 : _a.OrderBy(key);
|
|
146
|
+
return this;
|
|
147
|
+
}
|
|
148
|
+
OrderDescendingBy(key) {
|
|
149
|
+
var _a;
|
|
150
|
+
(_a = this._context.Collection(this._type)) === null || _a === void 0 ? void 0 : _a.OrderDescendingBy(key);
|
|
151
|
+
return this;
|
|
152
|
+
}
|
|
153
|
+
ToListAsync() {
|
|
154
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
155
|
+
if (this._stack.length > this._onStatements.length + 1)
|
|
156
|
+
throw new InvalidOperationException_1.default(`There is no enought On clausules to join all selected types`);
|
|
157
|
+
if (this._stack.length < this._onStatements.length + 1)
|
|
158
|
+
throw new InvalidOperationException_1.default(`There is more On clausules than join types selecteds`);
|
|
159
|
+
let selectedSideSet = this._context.Collection(this._type);
|
|
160
|
+
let leftSideType = this._stack[0].Type;
|
|
161
|
+
let selectedTable = Type_1.default.GetTableName(this._type);
|
|
162
|
+
let query = `select distinct "${selectedTable}".* from "${Type_1.default.GetTableName(leftSideType)}" `;
|
|
163
|
+
for (let i = 1; i < this._stack.length; i++) {
|
|
164
|
+
let rightSideType = this._stack[i].Type;
|
|
165
|
+
let leftSideTable = Type_1.default.GetTableName(leftSideType);
|
|
166
|
+
let rigthSideTable = Type_1.default.GetTableName(rightSideType);
|
|
167
|
+
let onStatement = this._onStatements[i - 1];
|
|
168
|
+
let leftSideField = onStatement[0];
|
|
169
|
+
let rightSideField = onStatement[1];
|
|
170
|
+
let leftSideIsArray = Type_1.default.GetDesingType(leftSideType, leftSideField) == Array;
|
|
171
|
+
let rightSideIsArray = Type_1.default.GetDesingType(rightSideType, rightSideField) == Array;
|
|
172
|
+
let rightSideTypeMap = Type_1.default.GetColumnNameAndType(rightSideType);
|
|
173
|
+
let leftSideTypeMap = Type_1.default.GetColumnNameAndType(leftSideType);
|
|
174
|
+
query += ` inner join "${rigthSideTable}" on `;
|
|
175
|
+
if ((leftSideIsArray && rightSideIsArray) || (!leftSideIsArray && !rightSideIsArray)) {
|
|
176
|
+
query += ` "${leftSideTable}".${Type_1.default.GetColumnName(leftSideType, leftSideField)} = "${rigthSideTable}".${Type_1.default.GetColumnName(rightSideType, rightSideField)} `;
|
|
177
|
+
}
|
|
178
|
+
else if (leftSideIsArray && !rightSideIsArray) {
|
|
179
|
+
let relation = SchemasDecorators_1.default.GetRelationAttribute(leftSideType, leftSideField);
|
|
180
|
+
if (relation) {
|
|
181
|
+
let rType = relation.TypeBuilder();
|
|
182
|
+
let key = SchemasDecorators_1.default.ExtractPrimaryKey(rType);
|
|
183
|
+
if (!key)
|
|
184
|
+
throw new ConstraintFailException_1.default(`The type ${rType.name} was no one primary key field`);
|
|
185
|
+
let relationMap = Type_1.default.GetColumnNameAndType(rType);
|
|
186
|
+
let leftSideDBType = Type_1.default.CastType(relationMap.filter(s => s.Field == key)[0].Type);
|
|
187
|
+
let rightSideDBType = Type_1.default.CastType(rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Type);
|
|
188
|
+
let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
|
|
189
|
+
let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
|
|
190
|
+
if (leftSideDBType != rightSideDBType) {
|
|
191
|
+
throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
|
|
192
|
+
}
|
|
193
|
+
query += ` "${rigthSideTable}".${rightColumnName} = ANY("${leftSideTable}".${leftColumnName})`;
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
let dataType = SchemasDecorators_1.default.GetDataTypeAttribute(leftSideType, leftSideField);
|
|
197
|
+
if (!dataType) {
|
|
198
|
+
throw new InvalidOperationException_1.default(`Can not find the DataAttributeof ${leftSideType.name}.${leftSideField}`);
|
|
199
|
+
}
|
|
200
|
+
let elementType = Type_1.default.ExtractElementType(dataType);
|
|
201
|
+
if (!elementType)
|
|
202
|
+
throw new InvalidOperationException_1.default(`Can not determine the array element type of ${leftSideType.name}.${leftSideField}`);
|
|
203
|
+
let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
|
|
204
|
+
let rightSideDBType = Type_1.default.CastType(rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Type);
|
|
205
|
+
let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
|
|
206
|
+
let areNumbers = Type_1.default.IsNumber(Type_1.default.CastType(elementType)) && Type_1.default.IsNumber(rightSideDBType);
|
|
207
|
+
let areString = Type_1.default.IsText(Type_1.default.CastType(elementType)) && Type_1.default.IsText(rightSideDBType);
|
|
208
|
+
let areDate = Type_1.default.IsDate(Type_1.default.CastType(elementType)) && Type_1.default.IsDate(rightSideDBType);
|
|
209
|
+
let areArray = Type_1.default.IsArray(Type_1.default.CastType(elementType)) && Type_1.default.IsArray(rightSideDBType);
|
|
210
|
+
let areSameType = this._context["_manager"]["CastToPostgreSQLType"](elementType) == this._context["_manager"]["CastToPostgreSQLType"](rightSideDBType);
|
|
211
|
+
let areSerial = this._context["_manager"]["CastToPostgreSQLType"](elementType) == "serial" && this._context["_manager"]["CastToPostgreSQLType"](rightSideDBType) == "serial";
|
|
212
|
+
if (!(areNumbers || areString || areDate || areArray || areSameType || areSerial))
|
|
213
|
+
throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
|
|
214
|
+
query += ` "${rigthSideTable}".${rightColumnName} = ANY("${leftSideTable}".${leftColumnName})`;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
else if (rightSideIsArray && !leftSideIsArray) {
|
|
218
|
+
let relation = SchemasDecorators_1.default.GetRelationAttribute(rightSideType, rightSideField);
|
|
219
|
+
if (relation) {
|
|
220
|
+
let rType = relation.TypeBuilder();
|
|
221
|
+
let key = SchemasDecorators_1.default.ExtractPrimaryKey(rType);
|
|
222
|
+
if (!key)
|
|
223
|
+
throw new ConstraintFailException_1.default(`The type ${rType.name} was no one primary key field`);
|
|
224
|
+
let relationMap = Type_1.default.GetColumnNameAndType(rType);
|
|
225
|
+
let rightSideDBType = Type_1.default.CastType(relationMap.filter(s => s.Field == key)[0].Type);
|
|
226
|
+
let leftSideDBType = Type_1.default.CastType(rightSideTypeMap.filter(s => s.Field == leftSideField)[0].Type);
|
|
227
|
+
let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
|
|
228
|
+
let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
|
|
229
|
+
if (leftSideDBType != rightSideDBType) {
|
|
230
|
+
throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
|
|
231
|
+
}
|
|
232
|
+
query += ` "${leftSideTable}".${leftColumnName} = ANY("${rigthSideTable}".${rightColumnName})`;
|
|
233
|
+
}
|
|
234
|
+
else {
|
|
235
|
+
let dataType = SchemasDecorators_1.default.GetDataTypeAttribute(rightSideType, rightSideField);
|
|
236
|
+
if (!dataType) {
|
|
237
|
+
throw new InvalidOperationException_1.default(`Can not find the DataAttributeof ${rightSideType.name}.${rightSideField}`);
|
|
238
|
+
}
|
|
239
|
+
let elementType = Type_1.default.ExtractElementType(dataType);
|
|
240
|
+
if (!elementType)
|
|
241
|
+
throw new InvalidOperationException_1.default(`Can not determine the array element type of ${rightSideType.name}.${rightSideField}`);
|
|
242
|
+
let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
|
|
243
|
+
let leftSideDBType = Type_1.default.CastType(leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Type);
|
|
244
|
+
let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
|
|
245
|
+
let areNumbers = Type_1.default.IsNumber(Type_1.default.CastType(elementType)) && Type_1.default.IsNumber(leftSideDBType);
|
|
246
|
+
let areString = Type_1.default.IsText(Type_1.default.CastType(elementType)) && Type_1.default.IsText(leftSideDBType);
|
|
247
|
+
let areDate = Type_1.default.IsDate(Type_1.default.CastType(elementType)) && Type_1.default.IsDate(leftSideDBType);
|
|
248
|
+
let areArray = Type_1.default.IsArray(Type_1.default.CastType(elementType)) && Type_1.default.IsArray(leftSideDBType);
|
|
249
|
+
let areSameType = this._context["_manager"]["CastToPostgreSQLType"](elementType) == this._context["_manager"]["CastToPostgreSQLType"](leftSideDBType);
|
|
250
|
+
let areSerial = this._context["_manager"]["CastToPostgreSQLType"](elementType) == "serial" && this._context["_manager"]["CastToPostgreSQLType"](leftSideDBType) == "serial";
|
|
251
|
+
if (!(areNumbers || areString || areDate || areArray || areSameType || areSerial))
|
|
252
|
+
throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
|
|
253
|
+
query += ` "${leftSideTable}".${leftColumnName} = ANY("${rigthSideTable}".${rightColumnName})`;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
leftSideType = this._stack[i].Type;
|
|
257
|
+
}
|
|
258
|
+
let where = "";
|
|
259
|
+
for (let type of this._stack) {
|
|
260
|
+
let set = this._context.Collection(type.Type);
|
|
261
|
+
let statements = set["_statements"];
|
|
262
|
+
for (let s of statements) {
|
|
263
|
+
let operation = s.StatementType.toString();
|
|
264
|
+
if (operation == "where" && where.length > 0)
|
|
265
|
+
operation = "and";
|
|
266
|
+
where += ` ${operation} ${set["EvaluateStatement"](s)}`;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
PGSetHelper_1.default.InjectSQL(selectedSideSet, query);
|
|
270
|
+
PGSetHelper_1.default.InjectWhere(selectedSideSet, where);
|
|
271
|
+
return yield selectedSideSet.ToListAsync();
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
exports.JoinSelectable = JoinSelectable;
|
|
57
276
|
//# sourceMappingURL=PGDBContext.js.map
|