due: number;
};
-export const FriendlyUnitNames = new Map<Unit, string>();
-FriendlyUnitNames.set(Unit.SOLDIERS, 'Soldiers');
-FriendlyUnitNames.set(Unit.ATTACKERS, 'Attackers');
-FriendlyUnitNames.set(Unit.DEFENDERS, 'Defenders');
-FriendlyUnitNames.set(Unit.SPECIAL_ATTACKERS, 'Special Attackers');
-FriendlyUnitNames.set(Unit.SPECIAL_DEFENDERS, 'Special Defenders');
+export type UnitTrainingQueueWithName = {
+ display: string;
+} & UnitTrainingQueue;
export class UnitTrainingQueueRepository extends Repository<UnitTrainingQueue> {
constructor() {
return data;
}
- list(owner: string): Promise<UnitTrainingQueue[]> {
- return this.FindAll({owner}).orderBy('due');
+ list(owner: string): Promise<UnitTrainingQueueWithName[]> {
+ return this.db.raw(`select q.*, u.display from unit_training_queue q join units u on u.slug = q.unit_type where owner = ? order by due`, owner);
}
-}
\ No newline at end of file
+}