fix: full fun of migrations from start
This commit is contained in:
parent
0582cb3af7
commit
c849b8eb18
3 changed files with 84 additions and 10 deletions
|
@ -6,7 +6,9 @@ export class NewsletterColumnType1744351418751 implements MigrationInterface {
|
|||
name = "NewsletterColumnType1744351418751";
|
||||
|
||||
public async up(queryRunner: QueryRunner): Promise<void> {
|
||||
let newsletters = await queryRunner.manager.getRepository("newsletter").find();
|
||||
let newsletters = await queryRunner.manager
|
||||
.getRepository("newsletter")
|
||||
.find({ select: { id: true, newsletterTitle: true, newsletterSignatur: true } });
|
||||
|
||||
await queryRunner.dropColumn("newsletter", "newsletterTitle");
|
||||
await queryRunner.dropColumn("newsletter", "newsletterSignatur");
|
||||
|
@ -24,7 +26,9 @@ export class NewsletterColumnType1744351418751 implements MigrationInterface {
|
|||
}
|
||||
|
||||
public async down(queryRunner: QueryRunner): Promise<void> {
|
||||
let newsletters = await queryRunner.manager.getRepository("newsletter").find();
|
||||
let newsletters = await queryRunner.manager
|
||||
.getRepository("newsletter")
|
||||
.find({ select: { id: true, newsletterTitle: true, newsletterSignatur: true } });
|
||||
|
||||
await queryRunner.dropColumn("newsletter", "newsletterTitle");
|
||||
await queryRunner.dropColumn("newsletter", "newsletterSignatur");
|
||||
|
|
|
@ -2,9 +2,9 @@ import { MigrationInterface, QueryRunner, TableColumn } from "typeorm";
|
|||
import {
|
||||
education_table,
|
||||
member_educations_table,
|
||||
member_view_mysql,
|
||||
member_view_postgres,
|
||||
member_view_sqlite,
|
||||
member_view2_mysql,
|
||||
member_view2_postgres,
|
||||
member_view2_sqlite,
|
||||
} from "./baseSchemaTables/member";
|
||||
import { getDefaultByORM, getTypeByORM } from "./ormHelper";
|
||||
import { DB_TYPE } from "../env.defaults";
|
||||
|
@ -21,9 +21,9 @@ export class MemberExtendData1748953828644 implements MigrationInterface {
|
|||
);
|
||||
|
||||
await queryRunner.dropView("member_view");
|
||||
if (DB_TYPE == "postgres") await queryRunner.createView(member_view_postgres, true);
|
||||
else if (DB_TYPE == "mysql") await queryRunner.createView(member_view_mysql, true);
|
||||
else if (DB_TYPE == "sqlite") await queryRunner.createView(member_view_sqlite, true);
|
||||
if (DB_TYPE == "postgres") await queryRunner.createView(member_view2_postgres, true);
|
||||
else if (DB_TYPE == "mysql") await queryRunner.createView(member_view2_mysql, true);
|
||||
else if (DB_TYPE == "sqlite") await queryRunner.createView(member_view2_sqlite, true);
|
||||
}
|
||||
|
||||
public async down(queryRunner: QueryRunner): Promise<void> {
|
||||
|
|
|
@ -267,7 +267,6 @@ export const member_view_mysql = new View({
|
|||
SELECT
|
||||
\`member\`.\`id\` AS \`id\`,
|
||||
\`member\`.\`internalId\` AS \`internalId\`,
|
||||
\`member\`.\`note\` AS \`note\`,
|
||||
\`member\`.\`firstname\` AS \`firstname\`,
|
||||
\`member\`.\`lastname\` AS \`lastname\`,
|
||||
\`member\`.\`nameaffix\` AS \`nameaffix\`,
|
||||
|
@ -297,7 +296,6 @@ export const member_view_postgres = new View({
|
|||
SELECT
|
||||
"member"."id" AS "id",
|
||||
"member"."internalId" AS "internalId",
|
||||
"member"."note" AS "note",
|
||||
"member"."firstname" AS "firstname",
|
||||
"member"."lastname" AS "lastname",
|
||||
"member"."nameaffix" AS "nameaffix",
|
||||
|
@ -312,6 +310,78 @@ export const member_view_postgres = new View({
|
|||
});
|
||||
|
||||
export const member_view_sqlite = new View({
|
||||
name: "member_view",
|
||||
expression: `
|
||||
SELECT
|
||||
member.id AS id,
|
||||
member.internalId AS internalId,
|
||||
member.firstname AS firstname,
|
||||
member.lastname AS lastname,
|
||||
member.nameaffix AS nameaffix,
|
||||
member.birthdate AS birthdate,
|
||||
salutation.salutation AS salutation,
|
||||
(strftime('%Y', 'now') - strftime('%Y', member.birthdate) - (strftime('%m-%d', 'now') < strftime('%m-%d', member.birthdate))) AS todayAge,
|
||||
FLOOR(strftime('%Y', 'now') - strftime('%Y', member.birthdate)) AS ageThisYear,
|
||||
(strftime('%Y', 'now') - strftime('%Y', member.birthdate)) || ' years ' ||
|
||||
(strftime('%m', 'now') - strftime('%m', member.birthdate)) || ' months ' ||
|
||||
(strftime('%d', 'now') - strftime('%d', member.birthdate)) || ' days'
|
||||
AS exactAge
|
||||
FROM member member
|
||||
LEFT JOIN salutation salutation ON salutation.id=member.salutationId
|
||||
`,
|
||||
});
|
||||
|
||||
export const member_view2_mysql = new View({
|
||||
name: "member_view",
|
||||
expression: `
|
||||
SELECT
|
||||
\`member\`.\`id\` AS \`id\`,
|
||||
\`member\`.\`internalId\` AS \`internalId\`,
|
||||
\`member\`.\`note\` AS \`note\`,
|
||||
\`member\`.\`firstname\` AS \`firstname\`,
|
||||
\`member\`.\`lastname\` AS \`lastname\`,
|
||||
\`member\`.\`nameaffix\` AS \`nameaffix\`,
|
||||
\`member\`.\`birthdate\` AS \`birthdate\`,
|
||||
\`salutation\`.\`salutation\` AS \`salutation\`,
|
||||
TIMESTAMPDIFF(YEAR, \`member\`.\`birthdate\`, CURDATE()) AS \`todayAge\`,
|
||||
YEAR(CURDATE()) - YEAR(\`member\`.\`birthdate\`) AS \`ageThisYear\`,
|
||||
CONCAT(
|
||||
TIMESTAMPDIFF(YEAR, \`member\`.\`birthdate\`, CURDATE()), ' years ',
|
||||
TIMESTAMPDIFF(MONTH, \`member\`.\`birthdate\`, CURDATE()) % 12, ' months ',
|
||||
TIMESTAMPDIFF(DAY,
|
||||
DATE_ADD(
|
||||
\`member\`.\`birthdate\`,
|
||||
INTERVAL TIMESTAMPDIFF(MONTH, \`member\`.\`birthdate\`, CURDATE()) MONTH
|
||||
),
|
||||
CURDATE()
|
||||
), ' days'
|
||||
) AS \`exactAge\`
|
||||
FROM \`member\` \`member\`
|
||||
LEFT JOIN \`salutation\` \`salutation\` ON \`salutation\`.\`id\`=\`member\`.\`salutationId\`
|
||||
`,
|
||||
});
|
||||
|
||||
export const member_view2_postgres = new View({
|
||||
name: "member_view",
|
||||
expression: `
|
||||
SELECT
|
||||
"member"."id" AS "id",
|
||||
"member"."internalId" AS "internalId",
|
||||
"member"."note" AS "note",
|
||||
"member"."firstname" AS "firstname",
|
||||
"member"."lastname" AS "lastname",
|
||||
"member"."nameaffix" AS "nameaffix",
|
||||
"member"."birthdate" AS "birthdate",
|
||||
"salutation"."salutation" AS "salutation",
|
||||
DATE_PART('year', AGE(CURRENT_DATE, member.birthdate)) AS "todayAge",
|
||||
EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM member.birthdate) AS "ageThisYear",
|
||||
AGE(CURRENT_DATE, member.birthdate) AS "exactAge"
|
||||
FROM "member" "member"
|
||||
LEFT JOIN "salutation" "salutation" ON "salutation"."id"="member"."salutationId"
|
||||
`,
|
||||
});
|
||||
|
||||
export const member_view2_sqlite = new View({
|
||||
name: "member_view",
|
||||
expression: `
|
||||
SELECT
|
||||
|
|
Loading…
Add table
Reference in a new issue