Create user

This commit is contained in:
Hugo Falcao
2022-04-17 20:32:51 -03:00
commit 60dc95bac8
80 changed files with 10187 additions and 0 deletions

34
src/models/Follow.ts Normal file
View File

@@ -0,0 +1,34 @@
import {
Entity,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
OneToOne,
JoinColumn,
ManyToOne,
ManyToMany,
} from 'typeorm';
import User from './User';
@Entity('follows')
class Follow {
@PrimaryGeneratedColumn('increment')
id_follow: string;
@ManyToOne(() => User, { eager: true })
@JoinColumn({ name: 'user_id_following' })
user_following: User;
@ManyToOne(() => User, { eager: true })
@JoinColumn({ name: 'user_id_followed' })
user_followed: User;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
export default Follow;

36
src/models/Inventario.ts Normal file
View File

@@ -0,0 +1,36 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
OneToOne,
JoinColumn,
} from 'typeorm';
import User from './User';
import Item from './Item';
@Entity('inventario')
class Inventario {
@PrimaryGeneratedColumn('increment')
id_inventario: string;
@OneToOne(() => Item, { eager: true })
@JoinColumn({ name: 'item_id' })
item: Item;
@OneToOne(() => User, { eager: true })
@JoinColumn({ name: 'user_id' })
user: User;
@Column()
ativo: boolean;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
export default Inventario;

33
src/models/Item.ts Normal file
View File

@@ -0,0 +1,33 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
} from 'typeorm';
@Entity('items')
class Item {
@PrimaryGeneratedColumn('increment')
id_item: number;
@Column()
nome: string;
@Column()
tipo: string;
@Column()
asset: string;
@Column()
preco: number;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
export default Item;

27
src/models/Publication.ts Normal file
View File

@@ -0,0 +1,27 @@
import {
Entity,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
OneToOne,
JoinColumn,
} from 'typeorm';
import Tournament from './Tournament';
@Entity('publications')
class Publication {
@PrimaryGeneratedColumn('uuid')
id_publication: string;
@OneToOne(() => Tournament, { eager: true })
@JoinColumn({ name: 'tournament_id' })
tournament: Tournament;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
export default Publication;

42
src/models/Social.ts Normal file
View File

@@ -0,0 +1,42 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
JoinColumn,
PrimaryColumn,
OneToOne,
} from 'typeorm';
import User from './User';
@Entity('socials')
class Social {
@PrimaryGeneratedColumn('increment')
id_social: string;
@OneToOne(() => User)
@JoinColumn({ name: 'user_id' })
user: User;
@Column()
telegram: string;
@Column()
facebook: string;
@Column()
twitter: string;
@Column()
twitch: string;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
export default Social;

46
src/models/Tournament.ts Normal file
View File

@@ -0,0 +1,46 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
JoinColumn,
OneToOne,
} from 'typeorm';
import User from './User';
@Entity('tournaments')
class Tournament {
@PrimaryGeneratedColumn('uuid')
id_tournament: string;
@Column()
name: string;
@Column()
game: string;
@Column()
description: string;
@Column()
password: string;
@CreateDateColumn()
ended_at: Date;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
@OneToOne(() => User, { eager: true })
@JoinColumn({ name: 'user_id' })
user: User;
@Column()
number_participants: number;
}
export default Tournament;

View File

@@ -0,0 +1,47 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
JoinColumn,
OneToOne,
} from 'typeorm';
import Tournament from './Tournament';
@Entity('tournamentColumns')
class TournamentColumns {
@PrimaryGeneratedColumn('increment')
id_tournamentColumns: number;
@OneToOne(() => Tournament, { eager: true })
@JoinColumn({ name: 'tournament_id' })
tournament: Tournament;
@Column()
column1: string;
@Column()
column2: string;
@Column()
column3: string;
@Column()
column4: string;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
@Column()
tournament_initialized: boolean;
@Column()
tournament_ended: boolean;
}
export default TournamentColumns;

View File

@@ -0,0 +1,43 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
JoinColumn,
OneToOne,
} from 'typeorm';
import Tournament from './Tournament';
import User from './User';
@Entity('tournamentParticipants')
class TournamentParticipants {
@PrimaryGeneratedColumn('increment')
id_tournamentParticipants: string;
@OneToOne(() => Tournament, { eager: true })
@JoinColumn({ name: 'tournament_id' })
tournament: Tournament;
@OneToOne(() => User, { eager: true })
@JoinColumn({ name: 'user_id' })
user: User;
@Column()
user_accepted_invite: boolean;
@Column()
invite_refused: boolean;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
@Column()
user_kicked: boolean;
}
export default TournamentParticipants;

39
src/models/User.ts Normal file
View File

@@ -0,0 +1,39 @@
import {
Entity,
Column,
PrimaryGeneratedColumn,
CreateDateColumn,
UpdateDateColumn,
} from 'typeorm';
@Entity('users')
class User {
@PrimaryGeneratedColumn('uuid')
id_user: string;
@Column()
name: string;
@Column()
email: string;
@Column()
birth_date: Date;
@Column()
password: string;
@Column()
avatar_image: string;
@Column()
bio: string;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
export default User;