From c608a8e159ff75e08fd32eb37ef43b8bdf083c22 Mon Sep 17 00:00:00 2001 From: morteza-mortezai Date: Thu, 26 Feb 2026 10:07:05 +0330 Subject: [PATCH] update --- database/migrations/.snapshot-postgres.json | 24 +++++++------------ .../migrations/Migration20260226063544.ts | 19 +++++++++++++++ .../delivery/entities/delivery.entity.ts | 8 +++---- 3 files changed, 31 insertions(+), 20 deletions(-) create mode 100644 database/migrations/Migration20260226063544.ts diff --git a/database/migrations/.snapshot-postgres.json b/database/migrations/.snapshot-postgres.json index c5c67b1..1bd60f9 100644 --- a/database/migrations/.snapshot-postgres.json +++ b/database/migrations/.snapshot-postgres.json @@ -1413,15 +1413,13 @@ }, "delivery_fee": { "name": "delivery_fee", - "type": "numeric(10,0)", + "type": "int", "unsigned": false, "autoincrement": false, "primary": false, "nullable": false, - "precision": 10, - "scale": 0, "default": "0", - "mappedType": "decimal" + "mappedType": "integer" }, "delivery_fee_type": { "name": "delivery_fee_type", @@ -1439,39 +1437,33 @@ }, "per_kilometer_fee": { "name": "per_kilometer_fee", - "type": "numeric(10,0)", + "type": "int", "unsigned": false, "autoincrement": false, "primary": false, "nullable": true, - "precision": 10, - "scale": 0, "default": "0", - "mappedType": "decimal" + "mappedType": "integer" }, "distance_based_min_cost": { "name": "distance_based_min_cost", - "type": "numeric(10,0)", + "type": "int", "unsigned": false, "autoincrement": false, "primary": false, "nullable": true, - "precision": 10, - "scale": 0, "default": "0", - "mappedType": "decimal" + "mappedType": "integer" }, "min_order_price": { "name": "min_order_price", - "type": "numeric(10,0)", + "type": "int", "unsigned": false, "autoincrement": false, "primary": false, "nullable": false, - "precision": 10, - "scale": 0, "default": "0", - "mappedType": "decimal" + "mappedType": "integer" }, "description": { "name": "description", diff --git a/database/migrations/Migration20260226063544.ts b/database/migrations/Migration20260226063544.ts new file mode 100644 index 0000000..8aa2542 --- /dev/null +++ b/database/migrations/Migration20260226063544.ts @@ -0,0 +1,19 @@ +import { Migration } from '@mikro-orm/migrations'; + +export class Migration20260226063544 extends Migration { + + override async up(): Promise { + this.addSql(`alter table "deliveries" alter column "delivery_fee" type int using ("delivery_fee"::int);`); + this.addSql(`alter table "deliveries" alter column "per_kilometer_fee" type int using ("per_kilometer_fee"::int);`); + this.addSql(`alter table "deliveries" alter column "distance_based_min_cost" type int using ("distance_based_min_cost"::int);`); + this.addSql(`alter table "deliveries" alter column "min_order_price" type int using ("min_order_price"::int);`); + } + + override async down(): Promise { + this.addSql(`alter table "deliveries" alter column "delivery_fee" type numeric(10,0) using ("delivery_fee"::numeric(10,0));`); + this.addSql(`alter table "deliveries" alter column "per_kilometer_fee" type numeric(10,0) using ("per_kilometer_fee"::numeric(10,0));`); + this.addSql(`alter table "deliveries" alter column "distance_based_min_cost" type numeric(10,0) using ("distance_based_min_cost"::numeric(10,0));`); + this.addSql(`alter table "deliveries" alter column "min_order_price" type numeric(10,0) using ("min_order_price"::numeric(10,0));`); + } + +} diff --git a/src/modules/delivery/entities/delivery.entity.ts b/src/modules/delivery/entities/delivery.entity.ts index b1ae9da..c96e8b9 100644 --- a/src/modules/delivery/entities/delivery.entity.ts +++ b/src/modules/delivery/entities/delivery.entity.ts @@ -11,19 +11,19 @@ export class Delivery extends BaseEntity { @ManyToOne(() => Restaurant) restaurant!: Restaurant; - @Property({ type: 'decimal', precision: 10, scale: 0, default: 0 }) + @Property({ type: 'number', default: 0 }) deliveryFee: number = 0; @Enum(() => DeliveryFeeTypeEnum) deliveryFeeType: DeliveryFeeTypeEnum = DeliveryFeeTypeEnum.FIXED; - @Property({ type: 'decimal', precision: 10, scale: 0, default: 0 }) + @Property({ type: 'number', default: 0 }) perKilometerFee: number | null = null; - @Property({ type: 'decimal', precision: 10, scale: 0, default: 0 }) + @Property({ type: 'number', default: 0 }) distanceBasedMinCost: number | null = null; - @Property({ type: 'decimal', precision: 10, scale: 0, default: 0 }) + @Property({ type: 'number', default: 0 }) minOrderPrice: number = 0; @Property({ nullable: true })