@ptc-org/nestjs-query-typeorm 4.3.0 → 4.3.1
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ptc-org/nestjs-query-typeorm",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.1",
|
|
4
4
|
"description": "Typeorm adapter for @ptc-org/nestjs-query-core",
|
|
5
5
|
"author": "doug-martin <doug@dougamartin.com>",
|
|
6
6
|
"homepage": "https://github.com/tripss/nestjs-query#readme",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"@nestjs/typeorm": "^9.0.0 || ^10.0.0",
|
|
31
31
|
"class-transformer": "^0.5",
|
|
32
32
|
"typeorm": "^0.3.15",
|
|
33
|
-
"@ptc-org/nestjs-query-core": "4.3.
|
|
33
|
+
"@ptc-org/nestjs-query-core": "4.3.1",
|
|
34
34
|
"reflect-metadata": "0.1.13"
|
|
35
35
|
},
|
|
36
36
|
"repository": {
|
|
@@ -13,6 +13,7 @@ declare enum AggregateFuncs {
|
|
|
13
13
|
*/
|
|
14
14
|
export declare class AggregateBuilder<Entity> {
|
|
15
15
|
readonly repo: Repository<Entity>;
|
|
16
|
+
private readonly isPostgres;
|
|
16
17
|
constructor(repo: Repository<Entity>);
|
|
17
18
|
static asyncConvertToAggregateResponse<Entity>(responsePromise: Promise<Record<string, unknown>[]>): Promise<AggregateResponse<Entity>[]>;
|
|
18
19
|
static getAggregateSelects<Entity>(query: AggregateQuery<Entity>): string[];
|
|
@@ -4,6 +4,7 @@ exports.AggregateBuilder = void 0;
|
|
|
4
4
|
const common_1 = require("@nestjs/common");
|
|
5
5
|
const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
|
|
6
6
|
const camel_case_1 = require("camel-case");
|
|
7
|
+
const DriverUtils_1 = require("typeorm/driver/DriverUtils");
|
|
7
8
|
var AggregateFuncs;
|
|
8
9
|
(function (AggregateFuncs) {
|
|
9
10
|
AggregateFuncs["AVG"] = "AVG";
|
|
@@ -20,6 +21,7 @@ const AGG_REGEXP = /(AVG|SUM|COUNT|MAX|MIN|GROUP_BY)_(.*)/;
|
|
|
20
21
|
class AggregateBuilder {
|
|
21
22
|
constructor(repo) {
|
|
22
23
|
this.repo = repo;
|
|
24
|
+
this.isPostgres = DriverUtils_1.DriverUtils.isPostgresFamily(repo.manager.connection.driver);
|
|
23
25
|
}
|
|
24
26
|
// eslint-disable-next-line @typescript-eslint/no-shadow
|
|
25
27
|
static async asyncConvertToAggregateResponse(responsePromise) {
|
|
@@ -115,14 +117,27 @@ class AggregateBuilder {
|
|
|
115
117
|
const groupByAlias = AggregateBuilder.getGroupByAlias(aggregatedField.field);
|
|
116
118
|
if (this.isAggregateQueryGroupByField(aggregatedField)) {
|
|
117
119
|
let query = `DATE(${col})`;
|
|
118
|
-
if (
|
|
119
|
-
|
|
120
|
+
if (this.isPostgres) {
|
|
121
|
+
if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.YEAR) {
|
|
122
|
+
query = `DATE(TO_CHAR(${col}, 'YYYY-01-01'))`;
|
|
123
|
+
}
|
|
124
|
+
else if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.MONTH) {
|
|
125
|
+
query = `DATE(TO_CHAR(${col}, 'YYYY-mm-01'))`;
|
|
126
|
+
}
|
|
127
|
+
else if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.WEEK) {
|
|
128
|
+
query = `TO_DATE(TO_CHAR(${col}, 'YYYY-WW-01'), 'YYYY-WW-01')`;
|
|
129
|
+
}
|
|
120
130
|
}
|
|
121
|
-
else
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
131
|
+
else {
|
|
132
|
+
if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.YEAR) {
|
|
133
|
+
query = `DATE(DATE_FORMAT(${col}, '%Y-01-01'))`;
|
|
134
|
+
}
|
|
135
|
+
else if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.MONTH) {
|
|
136
|
+
query = `DATE(DATE_FORMAT(${col}, '%Y-%m-01'))`;
|
|
137
|
+
}
|
|
138
|
+
else if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.WEEK) {
|
|
139
|
+
query = `STR_TO_DATE(DATE_FORMAT(${col}, '%X-%V-01'), '%X-%V-%w')`;
|
|
140
|
+
}
|
|
126
141
|
}
|
|
127
142
|
return [query, groupByAlias];
|
|
128
143
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregate.builder.js","sourceRoot":"","sources":["../../../../../packages/query-typeorm/src/query/aggregate.builder.ts"],"names":[],"mappings":";;;AAAA,2CAAoD;AACpD,kEAMmC;AACnC,2CAAsC;
|
|
1
|
+
{"version":3,"file":"aggregate.builder.js","sourceRoot":"","sources":["../../../../../packages/query-typeorm/src/query/aggregate.builder.ts"],"names":[],"mappings":"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"}
|