UNPKG

@jfln/marvin-db

Version:

biblioteca de objetos para normalizar o acesso a um banco mongo db

98 lines (79 loc) 2.13 kB
import {Entity, Property, Enum} from '@mikro-orm/core' import {BaseEntity} from '../BaseEntity' import {Greeting} from '../../interfaces/Greeting.interface' @Entity({tableName: 'setting-geral'}) export class SettingsGeral extends BaseEntity { @Property() color: string @Property() prefix: string @Property() greetingShow: boolean @Property() memesShow: boolean @Property() lastTicketVerifyNumber: number @Property() xpMultiplier: number @Property({type: 'json'}) greetings: Greeting[] public setColor(color: string): SettingsGeral { this.color = color return this } public setPrefix(prefix: string): SettingsGeral { this.prefix = prefix return this } public setGreetingShow(greetingShow: boolean): SettingsGeral { this.greetingShow = greetingShow return this } public setMemesShow(memesShow: boolean): SettingsGeral { this.memesShow = memesShow return this } public setLastTicketVerifyNumber( lastTicketVerifyNumber: number, ): SettingsGeral { this.lastTicketVerifyNumber = lastTicketVerifyNumber return this } public setXpMultiplier(xpMultiplier: number): SettingsGeral { this.xpMultiplier = xpMultiplier return this } public setGreetings(greetings: Greeting[]): SettingsGeral { this.greetings = greetings return this } public addGreeting(greeting: Greeting): SettingsGeral { this.greetings.push(greeting) return this } public removeGreeting(greeting: Greeting): SettingsGeral { this.greetings = this.greetings.filter( g => g.greeting !== greeting.greeting, ) return this } constructor( guildId: string, color: string, prefix: string, greetingShow: boolean, memesShow: boolean, lastTicketVerifyNumber: number, xpMultiplier: number, greetings: Greeting[], ) { super(guildId) this.color = color this.prefix = prefix this.greetingShow = greetingShow this.memesShow = memesShow this.lastTicketVerifyNumber = lastTicketVerifyNumber this.xpMultiplier = xpMultiplier this.greetings = greetings } }