def get_league_positions(self, query: MutableMapping[str, Any], context: PipelineContext = None) -> LeaguePositionsDto: platform = query["platform"].value summonerId = query["summoner.id"] positions = self._one(self._session().query(SQLLeaguePositions) \ .filter_by(platformId=platform) \ .filter_by(summonerId=summonerId)) dto = positions.to_dto() dto["region"] = Platform(dto["platformId"]).region.value return dto
def to_dto(self): dto = super().to_dto() # Change rank back to string representation dto["rank"] = league_division[int(dto["rank"])] if dto["miniSeries"] is None: dto.pop("miniSeries") dto["region"] = Platform(self.league.platformId).region dto["leagueName"] = self.league.name dto["queueType"] = self.league.queue dto["tier"] = league_tiers[self.league.tier] return dto
def to_dto(self): dto = super().to_dto() dto["observers"] = {"encryptionKey": dto["encryptionKey"]} dto["region"] = Platform(dto.pop("platformId")).region.value return dto