up
This commit is contained in:
@@ -5,7 +5,7 @@ export class Migration20260626140000 extends Migration {
|
|||||||
override async up(): Promise<void> {
|
override async up(): Promise<void> {
|
||||||
this.addSql(`
|
this.addSql(`
|
||||||
alter table "invoices"
|
alter table "invoices"
|
||||||
add column "confirm_status" text check ("confirm_status" in ('pending', 'confirmed')) not null default 'pending';
|
add column "confirm_status" text check ("confirm_status" in ('pending', 'partially_confirmed', 'confirmed')) not null default 'pending';
|
||||||
`);
|
`);
|
||||||
|
|
||||||
this.addSql(`
|
this.addSql(`
|
||||||
@@ -55,14 +55,21 @@ export class Migration20260626140000 extends Migration {
|
|||||||
AND deleted_at IS NULL;
|
AND deleted_at IS NULL;
|
||||||
|
|
||||||
SELECT CASE
|
SELECT CASE
|
||||||
WHEN EXISTS (
|
WHEN NOT EXISTS (
|
||||||
SELECT 1
|
SELECT 1
|
||||||
FROM invoice_items
|
FROM invoice_items
|
||||||
WHERE invoice_id = v_invoice_id
|
WHERE invoice_id = v_invoice_id
|
||||||
AND deleted_at IS NULL
|
AND deleted_at IS NULL
|
||||||
AND confirmed_at IS NOT NULL
|
AND confirmed_at IS NOT NULL
|
||||||
|
) THEN 'pending'
|
||||||
|
WHEN NOT EXISTS (
|
||||||
|
SELECT 1
|
||||||
|
FROM invoice_items
|
||||||
|
WHERE invoice_id = v_invoice_id
|
||||||
|
AND deleted_at IS NULL
|
||||||
|
AND confirmed_at IS NULL
|
||||||
) THEN 'confirmed'
|
) THEN 'confirmed'
|
||||||
ELSE 'pending'
|
ELSE 'partially_confirmed'
|
||||||
END
|
END
|
||||||
INTO v_confirm_status;
|
INTO v_confirm_status;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@
|
|||||||
"db:update": "npx mikro-orm schema:update --run --config ./src/config/mikro-orm.config.dev.ts ",
|
"db:update": "npx mikro-orm schema:update --run --config ./src/config/mikro-orm.config.dev.ts ",
|
||||||
"db:drop": "npx mikro-orm schema:drop --run --config ./src/config/mikro-orm.config.dev.ts",
|
"db:drop": "npx mikro-orm schema:drop --run --config ./src/config/mikro-orm.config.dev.ts",
|
||||||
"db:refresh": "npm run db:drop && npm run db:create ",
|
"db:refresh": "npm run db:drop && npm run db:create ",
|
||||||
"db:reset": "npm run db:drop && npm run db:create && npm run db:seed",
|
"db:reset": "npm run db:drop && npm run db:create && npm run migration:up && npm run db:seed",
|
||||||
"db:seed": "npx mikro-orm seeder:run --config ./src/config/mikro-orm.config.dev.ts",
|
"db:seed": "npx mikro-orm seeder:run --config ./src/config/mikro-orm.config.dev.ts",
|
||||||
"build": "nest build",
|
"build": "nest build",
|
||||||
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
|
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
|
||||||
|
|||||||
@@ -80,8 +80,8 @@ export class Invoice extends BaseEntity {
|
|||||||
balance: number & Opt;
|
balance: number & Opt;
|
||||||
|
|
||||||
|
|
||||||
@Enum({ items: () => InvoiceConfirmStatusEnum, persist: false })
|
@Enum(() => InvoiceConfirmStatusEnum)
|
||||||
confirmStatus!: InvoiceConfirmStatusEnum & Opt;
|
confirmStatus: InvoiceConfirmStatusEnum = InvoiceConfirmStatusEnum.PENDING;
|
||||||
|
|
||||||
@Property({ type: 'boolean', default: false })
|
@Property({ type: 'boolean', default: false })
|
||||||
enableTax?: boolean = false
|
enableTax?: boolean = false
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
export enum InvoiceConfirmStatusEnum {
|
export enum InvoiceConfirmStatusEnum {
|
||||||
PENDING = 'pending',
|
PENDING = 'pending',
|
||||||
|
PARTIALLY_CONFIRMED = 'partially_confirmed',
|
||||||
CONFIRMED = 'confirmed',
|
CONFIRMED = 'confirmed',
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,32 +13,32 @@ export const adminsData: AdminData[] = [
|
|||||||
roleName: 'admin',
|
roleName: 'admin',
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
// {
|
||||||
phone: '09121724095',
|
// phone: '09121724095',
|
||||||
firstName: 'آقای',
|
// firstName: 'آقای',
|
||||||
lastName: 'نواعتقاد',
|
// lastName: 'نواعتقاد',
|
||||||
roleName: 'admin',
|
// roleName: 'admin',
|
||||||
|
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
phone: '09185290775',
|
// phone: '09185290775',
|
||||||
firstName: 'حمید',
|
// firstName: 'حمید',
|
||||||
lastName: 'ضرقامی',
|
// lastName: 'ضرقامی',
|
||||||
roleName: 'admin',
|
// roleName: 'admin',
|
||||||
|
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
phone: '09180000000',
|
// phone: '09180000000',
|
||||||
firstName: 'ندا',
|
// firstName: 'ندا',
|
||||||
lastName: 'سعیدی',
|
// lastName: 'سعیدی',
|
||||||
roleName: 'designer',
|
// roleName: 'designer',
|
||||||
|
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
phone: '09184317567',
|
// phone: '09184317567',
|
||||||
firstName: 'حسابداری',
|
// firstName: 'حسابداری',
|
||||||
lastName: 'ح',
|
// lastName: 'ح',
|
||||||
roleName: 'accountant',
|
// roleName: 'accountant',
|
||||||
|
|
||||||
},
|
// },
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user