order number
This commit is contained in:
@@ -2999,9 +2999,9 @@
|
||||
},
|
||||
"order_number": {
|
||||
"name": "order_number",
|
||||
"type": "serial",
|
||||
"unsigned": true,
|
||||
"autoincrement": true,
|
||||
"type": "int",
|
||||
"unsigned": false,
|
||||
"autoincrement": false,
|
||||
"primary": false,
|
||||
"nullable": false,
|
||||
"mappedType": "integer"
|
||||
@@ -3065,6 +3065,16 @@
|
||||
"primary": false,
|
||||
"unique": true
|
||||
},
|
||||
{
|
||||
"columnNames": [
|
||||
"order_number"
|
||||
],
|
||||
"composite": false,
|
||||
"keyName": "orders_order_number_unique",
|
||||
"constraint": true,
|
||||
"primary": false,
|
||||
"unique": true
|
||||
},
|
||||
{
|
||||
"keyName": "orders_user_id_index",
|
||||
"columnNames": [
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
import { Migration } from '@mikro-orm/migrations';
|
||||
|
||||
export class Migration20260405052112 extends Migration {
|
||||
|
||||
override async up(): Promise<void> {
|
||||
this.addSql(`alter table "orders" alter column "order_number" type int using ("order_number"::int);`);
|
||||
this.addSql(`alter table "orders" alter column "order_number" drop default;`);
|
||||
this.addSql(`alter table "orders" add constraint "orders_order_number_unique" unique ("order_number");`);
|
||||
}
|
||||
|
||||
override async down(): Promise<void> {
|
||||
this.addSql(`alter table "orders" drop constraint "orders_order_number_unique";`);
|
||||
|
||||
this.addSql(`alter table "orders" alter column "order_number" type int using ("order_number"::int);`);
|
||||
this.addSql(`create sequence if not exists "orders_order_number_seq";`);
|
||||
this.addSql(`select setval('orders_order_number_seq', (select max("order_number") from "orders"));`);
|
||||
this.addSql(`alter table "orders" alter column "order_number" set default nextval('orders_order_number_seq');`);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -6,7 +6,8 @@ import {
|
||||
Enum,
|
||||
PrimaryKey,
|
||||
OptionalProps,
|
||||
OneToOne
|
||||
OneToOne,
|
||||
Opt
|
||||
} from '@mikro-orm/core';
|
||||
import { User } from '../../user/entities/user.entity';
|
||||
import { ulid } from 'ulid';
|
||||
@@ -21,9 +22,9 @@ import { OrderPrint } from './print.entity';
|
||||
@Entity({ tableName: 'orders' })
|
||||
@Index({ properties: ['user'] })
|
||||
export class Order extends BaseEntity {
|
||||
[OptionalProps]?: 'createdAt' | 'deletedAt' | 'orderNumber'
|
||||
[OptionalProps]?: 'createdAt' | 'deletedAt'
|
||||
|
||||
@ManyToOne(() => InvoiceItem,{nullable:true})
|
||||
@ManyToOne(() => InvoiceItem, { nullable: true })
|
||||
invoiceItem?: InvoiceItem
|
||||
|
||||
@ManyToOne(() => Product, { nullable: true })
|
||||
@@ -53,9 +54,9 @@ export class Order extends BaseEntity {
|
||||
|
||||
@Property({
|
||||
type: 'int',
|
||||
autoincrement: true
|
||||
unique: true
|
||||
})
|
||||
orderNumber: number;
|
||||
orderNumber: number & Opt;
|
||||
|
||||
|
||||
@Enum(() => OrderStatusEnum)
|
||||
|
||||
Reference in New Issue
Block a user