File tree Expand file tree Collapse file tree 17 files changed +205
-1
lines changed Expand file tree Collapse file tree 17 files changed +205
-1
lines changed Original file line number Diff line number Diff line change @@ -913,7 +913,19 @@ export async function generateModelString(
913
913
const model = await this.selectFromQuery.selectAll().execute()
914
914
return model.map((modelItem: ${ modelName } Model) => modelItem[field])
915
915
}
916
-
916
+
917
+ async max(field: keyof ${ modelName } Model): Promise<number> {
918
+ return await this.selectFromQuery
919
+ .select(sql\`MAX(\${sql.raw(field as string)}) \`)
920
+ .executeTakeFirst()
921
+ }
922
+
923
+ async min(field: keyof ${ modelName } Model): Promise<number> {
924
+ return await this.selectFromQuery
925
+ .select(sql\`MIN(\${sql.raw(field as string)}) \`)
926
+ .executeTakeFirst()
927
+ }
928
+
917
929
static async get(): Promise<${ modelName } Model[]> {
918
930
const instance = new ${ modelName } Model(null)
919
931
Original file line number Diff line number Diff line change @@ -249,6 +249,18 @@ export class AccessTokenModel {
249
249
return model . map ( ( modelItem : AccessTokenModel ) => modelItem [ field ] )
250
250
}
251
251
252
+ async max ( field : keyof AccessTokenModel ) : Promise < number > {
253
+ return await this . selectFromQuery
254
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
255
+ . executeTakeFirst ( )
256
+ }
257
+
258
+ async min ( field : keyof AccessTokenModel ) : Promise < number > {
259
+ return await this . selectFromQuery
260
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
261
+ . executeTakeFirst ( )
262
+ }
263
+
252
264
static async get ( ) : Promise < AccessTokenModel [ ] > {
253
265
const instance = new AccessTokenModel ( null )
254
266
Original file line number Diff line number Diff line change @@ -262,6 +262,18 @@ export class DeploymentModel {
262
262
return model . map ( ( modelItem : DeploymentModel ) => modelItem [ field ] )
263
263
}
264
264
265
+ async max ( field : keyof DeploymentModel ) : Promise < number > {
266
+ return await this . selectFromQuery
267
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
268
+ . executeTakeFirst ( )
269
+ }
270
+
271
+ async min ( field : keyof DeploymentModel ) : Promise < number > {
272
+ return await this . selectFromQuery
273
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
274
+ . executeTakeFirst ( )
275
+ }
276
+
265
277
static async get ( ) : Promise < DeploymentModel [ ] > {
266
278
const instance = new DeploymentModel ( null )
267
279
Original file line number Diff line number Diff line change @@ -239,6 +239,18 @@ export class ErrorModel {
239
239
return model . map ( ( modelItem : ErrorModel ) => modelItem [ field ] )
240
240
}
241
241
242
+ async max ( field : keyof ErrorModel ) : Promise < number > {
243
+ return await this . selectFromQuery
244
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
245
+ . executeTakeFirst ( )
246
+ }
247
+
248
+ async min ( field : keyof ErrorModel ) : Promise < number > {
249
+ return await this . selectFromQuery
250
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
251
+ . executeTakeFirst ( )
252
+ }
253
+
242
254
static async get ( ) : Promise < ErrorModel [ ] > {
243
255
const instance = new ErrorModel ( null )
244
256
Original file line number Diff line number Diff line change @@ -239,6 +239,18 @@ export class FailedJobModel {
239
239
return model . map ( ( modelItem : FailedJobModel ) => modelItem [ field ] )
240
240
}
241
241
242
+ async max ( field : keyof FailedJobModel ) : Promise < number > {
243
+ return await this . selectFromQuery
244
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
245
+ . executeTakeFirst ( )
246
+ }
247
+
248
+ async min ( field : keyof FailedJobModel ) : Promise < number > {
249
+ return await this . selectFromQuery
250
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
251
+ . executeTakeFirst ( )
252
+ }
253
+
242
254
static async get ( ) : Promise < FailedJobModel [ ] > {
243
255
const instance = new FailedJobModel ( null )
244
256
Original file line number Diff line number Diff line change @@ -239,6 +239,18 @@ export class JobModel {
239
239
return model . map ( ( modelItem : JobModel ) => modelItem [ field ] )
240
240
}
241
241
242
+ async max ( field : keyof JobModel ) : Promise < number > {
243
+ return await this . selectFromQuery
244
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
245
+ . executeTakeFirst ( )
246
+ }
247
+
248
+ async min ( field : keyof JobModel ) : Promise < number > {
249
+ return await this . selectFromQuery
250
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
251
+ . executeTakeFirst ( )
252
+ }
253
+
242
254
static async get ( ) : Promise < JobModel [ ] > {
243
255
const instance = new JobModel ( null )
244
256
Original file line number Diff line number Diff line change @@ -272,6 +272,18 @@ export class PaymentMethodModel {
272
272
return model . map ( ( modelItem : PaymentMethodModel ) => modelItem [ field ] )
273
273
}
274
274
275
+ async max ( field : keyof PaymentMethodModel ) : Promise < number > {
276
+ return await this . selectFromQuery
277
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
278
+ . executeTakeFirst ( )
279
+ }
280
+
281
+ async min ( field : keyof PaymentMethodModel ) : Promise < number > {
282
+ return await this . selectFromQuery
283
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
284
+ . executeTakeFirst ( )
285
+ }
286
+
275
287
static async get ( ) : Promise < PaymentMethodModel [ ] > {
276
288
const instance = new PaymentMethodModel ( null )
277
289
Original file line number Diff line number Diff line change @@ -243,6 +243,18 @@ export class PostModel {
243
243
return model . map ( ( modelItem : PostModel ) => modelItem [ field ] )
244
244
}
245
245
246
+ async max ( field : keyof PostModel ) : Promise < number > {
247
+ return await this . selectFromQuery
248
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
249
+ . executeTakeFirst ( )
250
+ }
251
+
252
+ async min ( field : keyof PostModel ) : Promise < number > {
253
+ return await this . selectFromQuery
254
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
255
+ . executeTakeFirst ( )
256
+ }
257
+
246
258
static async get ( ) : Promise < PostModel [ ] > {
247
259
const instance = new PostModel ( null )
248
260
Original file line number Diff line number Diff line change @@ -249,6 +249,18 @@ export class ProductModel {
249
249
return model . map ( ( modelItem : ProductModel ) => modelItem [ field ] )
250
250
}
251
251
252
+ async max ( field : keyof ProductModel ) : Promise < number > {
253
+ return await this . selectFromQuery
254
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
255
+ . executeTakeFirst ( )
256
+ }
257
+
258
+ async min ( field : keyof ProductModel ) : Promise < number > {
259
+ return await this . selectFromQuery
260
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
261
+ . executeTakeFirst ( )
262
+ }
263
+
252
264
static async get ( ) : Promise < ProductModel [ ] > {
253
265
const instance = new ProductModel ( null )
254
266
Original file line number Diff line number Diff line change @@ -236,6 +236,18 @@ export class ProjectModel {
236
236
return model . map ( ( modelItem : ProjectModel ) => modelItem [ field ] )
237
237
}
238
238
239
+ async max ( field : keyof ProjectModel ) : Promise < number > {
240
+ return await this . selectFromQuery
241
+ . select ( sql `MAX(${ sql . raw ( field as string ) } ) ` )
242
+ . executeTakeFirst ( )
243
+ }
244
+
245
+ async min ( field : keyof ProjectModel ) : Promise < number > {
246
+ return await this . selectFromQuery
247
+ . select ( sql `MIN(${ sql . raw ( field as string ) } ) ` )
248
+ . executeTakeFirst ( )
249
+ }
250
+
239
251
static async get ( ) : Promise < ProjectModel [ ] > {
240
252
const instance = new ProjectModel ( null )
241
253
You can’t perform that action at this time.
0 commit comments