add customer

This commit is contained in:
Ken Yasue
2025-03-25 06:36:23 +01:00
parent 9aef2ad891
commit 4e9d81924a
15 changed files with 671 additions and 3 deletions

View File

@ -1,13 +1,14 @@
import { DataSource, DataSourceOptions } from 'typeorm';
import { User } from './entities/User';
import { Post } from './entities/Post';
import { Customer } from './entities/Customer';
import path from 'path';
// Default configuration for SQLite (development/testing)
const sqliteConfig: DataSourceOptions = {
type: 'sqlite',
database: path.join(process.cwd(), 'data', 'database.sqlite'),
entities: [User, Post],
entities: [User, Post, Customer],
synchronize: true, // Set to false in production
logging: process.env.NODE_ENV === 'development',
};
@ -20,7 +21,7 @@ const mysqlConfig: DataSourceOptions = {
username: process.env.DB_USERNAME || 'root',
password: process.env.DB_PASSWORD || '',
database: process.env.DB_DATABASE || 'kantancms',
entities: [User, Post],
entities: [User, Post, Customer],
synchronize: false, // Always false in production
logging: process.env.NODE_ENV === 'development',
};
@ -33,7 +34,7 @@ const postgresConfig: DataSourceOptions = {
username: process.env.DB_USERNAME || 'postgres',
password: process.env.DB_PASSWORD || '',
database: process.env.DB_DATABASE || 'kantancms',
entities: [User, Post],
entities: [User, Post, Customer],
synchronize: false, // Always false in production
logging: process.env.NODE_ENV === 'development',
};

View File

@ -0,0 +1,22 @@
import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn } from 'typeorm';
@Entity('customers')
export class Customer {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column()
name: string;
@Column()
url: string;
@Column()
email: string;
@CreateDateColumn()
createdAt: Date;
@UpdateDateColumn()
modifiedAt: Date;
}

View File

@ -34,3 +34,4 @@ export const getDataSource = async () => {
// Export entities - Post must be exported after User to resolve circular dependency
export * from './entities/User';
export * from './entities/Post';
export * from './entities/Customer';