parent
c3c82e805b
commit
d6db7324e6
@ -0,0 +1,39 @@ |
|||||||
|
// |
||||||
|
// ClubV1.swift |
||||||
|
// PadelClub |
||||||
|
// |
||||||
|
// Created by Laurent Morvillier on 07/02/2024. |
||||||
|
// |
||||||
|
|
||||||
|
import Foundation |
||||||
|
import LeStorage |
||||||
|
|
||||||
|
class ClubV1 : ModelObject, Storable, MigrationSource { |
||||||
|
|
||||||
|
static func resourceName() -> String { return "clubs" } |
||||||
|
|
||||||
|
var id: String = Store.randomId() |
||||||
|
var name: String |
||||||
|
|
||||||
|
init(name: String) { |
||||||
|
self.name = name |
||||||
|
} |
||||||
|
|
||||||
|
var tournaments: [Tournament] { |
||||||
|
return Store.main.filter { $0.club_id == self.id } |
||||||
|
} |
||||||
|
|
||||||
|
override func deleteDependencies() throws { |
||||||
|
try Store.main.deleteDependencies(items: self.tournaments) |
||||||
|
} |
||||||
|
|
||||||
|
// MARK: - MigrationSource |
||||||
|
|
||||||
|
typealias Destination = Club |
||||||
|
|
||||||
|
func migrate() -> Club { |
||||||
|
return Club(name: self.name, address: "3 impasse des chevreuils") |
||||||
|
// return Club(name: self.name, address: "3 impasse des chevreuils") |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,34 @@ |
|||||||
|
// |
||||||
|
// Tournament_v1.swift |
||||||
|
// PadelClub |
||||||
|
// |
||||||
|
// Created by Laurent Morvillier on 07/02/2024. |
||||||
|
// |
||||||
|
|
||||||
|
import Foundation |
||||||
|
import LeStorage |
||||||
|
|
||||||
|
class TournamentV1 : ModelObject, Storable, MigrationSource { |
||||||
|
|
||||||
|
static func resourceName() -> String { "tournaments" } |
||||||
|
|
||||||
|
var id: String = Store.randomId() |
||||||
|
var name: String |
||||||
|
var club_id: String |
||||||
|
|
||||||
|
init(name: String, club_id: String) { |
||||||
|
self.name = name |
||||||
|
self.club_id = club_id |
||||||
|
} |
||||||
|
|
||||||
|
var club: Club? { return self.findById(self.club_id) } |
||||||
|
|
||||||
|
// MARK: - MigrationSource |
||||||
|
|
||||||
|
typealias Destination = TournamentV2 |
||||||
|
|
||||||
|
func migrate() -> TournamentV2 { |
||||||
|
return TournamentV2(name: self.name, club_id: self.club_id, category: 0) |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,36 @@ |
|||||||
|
// |
||||||
|
// TournamentV2.swift |
||||||
|
// PadelClub |
||||||
|
// |
||||||
|
// Created by Laurent Morvillier on 07/02/2024. |
||||||
|
// |
||||||
|
|
||||||
|
import Foundation |
||||||
|
import LeStorage |
||||||
|
|
||||||
|
class TournamentV2 : ModelObject, Storable, MigrationSource { |
||||||
|
|
||||||
|
static func resourceName() -> String { "tournaments" } |
||||||
|
|
||||||
|
var id: String = Store.randomId() |
||||||
|
var name: String |
||||||
|
var club_id: String |
||||||
|
var category: Int |
||||||
|
|
||||||
|
init(name: String, club_id: String, category: Int) { |
||||||
|
self.name = name |
||||||
|
self.club_id = club_id |
||||||
|
self.category = category |
||||||
|
} |
||||||
|
|
||||||
|
var club: Club? { return self.findById(self.club_id) } |
||||||
|
|
||||||
|
// MARK: - MigrationSource |
||||||
|
|
||||||
|
typealias Destination = Tournament |
||||||
|
|
||||||
|
func migrate() -> Tournament { |
||||||
|
return Tournament(name: self.name, club_id: self.club_id, category: 0, playerCount: 12) |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
Loading…
Reference in new issue