mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
/* MIGRATION TO CREATE TRANSACTION_LINK TABLE */
|
|
|
|
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
|
|
export async function upgrade(queryFn: (query: string, values?: any[]) => Promise<Array<any>>) {
|
|
await queryFn(`
|
|
CREATE TABLE \`transaction_links\` (
|
|
\`id\` int UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
\`userId\` int UNSIGNED NOT NULL,
|
|
\`amount\` DECIMAL(40,20) NOT NULL,
|
|
\`hold_available_amount\` DECIMAL(40,20) NOT NULL,
|
|
\`memo\` varchar(255) NOT NULL,
|
|
\`code\` varchar(24) NOT NULL,
|
|
\`createdAt\` datetime NOT NULL,
|
|
\`deletedAt\` datetime DEFAULT NULL,
|
|
\`validUntil\` datetime NOT NULL,
|
|
\`showEmail\` boolean NOT NULL DEFAULT false,
|
|
\`redeemedAt\` datetime,
|
|
\`redeemedBy\` int UNSIGNED,
|
|
PRIMARY KEY (\`id\`)
|
|
) ENGINE = InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
`)
|
|
}
|
|
|
|
export async function downgrade(queryFn: (query: string, values?: any[]) => Promise<Array<any>>) {
|
|
await queryFn(`DROP TABLE \`transaction_links\`;`)
|
|
}
|