192 lines
4.1 KiB
Go
192 lines
4.1 KiB
Go
package storage
|
|
|
|
var (
|
|
Repo *Repository
|
|
)
|
|
|
|
type Storage interface {
|
|
Migrate(table interface{}, tableName string)
|
|
|
|
GetAllPersons() []*DB_Person
|
|
GetPersonsCount() int
|
|
|
|
GetPerson(personId string) *DB_Person
|
|
GetPersonByDisplay(displayName string) *DB_Person
|
|
GetPersonByDiscordID(discordId string) *DB_Person
|
|
SavePerson(person *DB_Person)
|
|
DeletePerson(personId string)
|
|
|
|
TotalVBucks() int
|
|
|
|
SaveProfile(profile *DB_Profile)
|
|
DeleteProfile(profileId string)
|
|
|
|
SaveItem(item *DB_Item)
|
|
BulkCreateItems(items *[]DB_Item)
|
|
DeleteItem(itemId string)
|
|
|
|
SaveVariant(variant *DB_VariantChannel)
|
|
DeleteVariant(variantId string)
|
|
|
|
SaveQuest(quest *DB_Quest)
|
|
DeleteQuest(questId string)
|
|
|
|
SaveLoot(loot *DB_Loot)
|
|
DeleteLoot(lootId string)
|
|
|
|
SaveGift(gift *DB_Gift)
|
|
DeleteGift(giftId string)
|
|
|
|
SaveAttribute(attribute *DB_PAttribute)
|
|
DeleteAttribute(attributeId string)
|
|
|
|
SaveLoadout(loadout *DB_Loadout)
|
|
DeleteLoadout(loadoutId string)
|
|
|
|
SaveTemporaryCode(code *DB_TemporaryCode)
|
|
DeleteTemporaryCode(codeId string)
|
|
|
|
SaveDiscordPerson(person *DB_DiscordPerson)
|
|
DeleteDiscordPerson(personId string)
|
|
}
|
|
|
|
type Repository struct {
|
|
Storage Storage
|
|
}
|
|
|
|
func NewStorage(s Storage) *Repository {
|
|
return &Repository{
|
|
Storage: s,
|
|
}
|
|
}
|
|
|
|
func (r *Repository) GetPersonFromDB(personId string) *DB_Person {
|
|
storagePerson := r.Storage.GetPerson(personId)
|
|
if storagePerson != nil {
|
|
return storagePerson
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
func (r *Repository) GetPersonByDisplayFromDB(displayName string) *DB_Person {
|
|
storagePerson := r.Storage.GetPersonByDisplay(displayName)
|
|
if storagePerson != nil {
|
|
return storagePerson
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
func (r *Repository) GetPersonByDiscordIDFromDB(discordId string) *DB_Person {
|
|
storagePerson := r.Storage.GetPersonByDiscordID(discordId)
|
|
if storagePerson != nil {
|
|
return storagePerson
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
func (r *Repository) GetAllPersons() []*DB_Person {
|
|
return r.Storage.GetAllPersons()
|
|
}
|
|
|
|
func (r *Repository) GetPersonsCount() int {
|
|
return r.Storage.GetPersonsCount()
|
|
}
|
|
|
|
func (r *Repository) TotalVBucks() int {
|
|
return r.Storage.TotalVBucks()
|
|
}
|
|
|
|
func (r *Repository) SavePerson(person *DB_Person) {
|
|
r.Storage.SavePerson(person)
|
|
}
|
|
|
|
func (r *Repository) DeletePerson(personId string) {
|
|
r.Storage.DeletePerson(personId)
|
|
}
|
|
|
|
func (r *Repository) SaveProfile(profile *DB_Profile) {
|
|
r.Storage.SaveProfile(profile)
|
|
}
|
|
|
|
func (r *Repository) DeleteProfile(profileId string) {
|
|
r.Storage.DeleteProfile(profileId)
|
|
}
|
|
|
|
func (r *Repository) SaveItem(item *DB_Item) {
|
|
r.Storage.SaveItem(item)
|
|
}
|
|
|
|
func (r *Repository) BulkCreateItems(items *[]DB_Item) {
|
|
r.Storage.BulkCreateItems(items)
|
|
}
|
|
|
|
func (r *Repository) DeleteItem(itemId string) {
|
|
r.Storage.DeleteItem(itemId)
|
|
}
|
|
|
|
func (r *Repository) SaveVariant(variant *DB_VariantChannel) {
|
|
r.Storage.SaveVariant(variant)
|
|
}
|
|
|
|
func (r *Repository) DeleteVariant(variantId string) {
|
|
r.Storage.DeleteVariant(variantId)
|
|
}
|
|
|
|
func (r *Repository) SaveQuest(quest *DB_Quest) {
|
|
r.Storage.SaveQuest(quest)
|
|
}
|
|
|
|
func (r *Repository) DeleteQuest(questId string) {
|
|
r.Storage.DeleteQuest(questId)
|
|
}
|
|
|
|
func (r *Repository) SaveLoot(loot *DB_Loot) {
|
|
r.Storage.SaveLoot(loot)
|
|
}
|
|
|
|
func (r *Repository) DeleteLoot(lootId string) {
|
|
r.Storage.DeleteLoot(lootId)
|
|
}
|
|
|
|
func (r *Repository) SaveGift(gift *DB_Gift) {
|
|
r.Storage.SaveGift(gift)
|
|
}
|
|
|
|
func (r *Repository) DeleteGift(giftId string) {
|
|
r.Storage.DeleteGift(giftId)
|
|
}
|
|
|
|
func (r *Repository) SaveAttribute(attribute *DB_PAttribute) {
|
|
r.Storage.SaveAttribute(attribute)
|
|
}
|
|
|
|
func (r *Repository) DeleteAttribute(attributeId string) {
|
|
r.Storage.DeleteAttribute(attributeId)
|
|
}
|
|
|
|
func (r *Repository) SaveLoadout(loadout *DB_Loadout) {
|
|
r.Storage.SaveLoadout(loadout)
|
|
}
|
|
|
|
func (r *Repository) DeleteLoadout(loadoutId string) {
|
|
r.Storage.DeleteLoadout(loadoutId)
|
|
}
|
|
|
|
func (r *Repository) SaveTemporaryCode(code *DB_TemporaryCode) {
|
|
r.Storage.SaveTemporaryCode(code)
|
|
}
|
|
|
|
func (r *Repository) DeleteTemporaryCode(codeId string) {
|
|
r.Storage.DeleteTemporaryCode(codeId)
|
|
}
|
|
|
|
func (r *Repository) SaveDiscordPerson(person *DB_DiscordPerson) {
|
|
r.Storage.SaveDiscordPerson(person)
|
|
}
|
|
|
|
func (r *Repository) DeleteDiscordPerson(personId string) {
|
|
r.Storage.DeleteDiscordPerson(personId)
|
|
} |