def _getQueryModel(self, cmap: dict) -> QueryModel: qm = QueryModel() for name in cmap: if cmap[name] is not None: if isinstance(cmap[name], list): qm.cand(name, cmap[name], Operator.IN) else: qm.cand(name, cmap[name], Operator.EQ) return qm
def _getQueryModel(self, **kwargs) -> QueryModel: qm = QueryModel() if kwargs["teams"] is not None: qm.cstart("teams", kwargs["teams"], Operator.IN) cmap = { "season": kwargs["seasons"] if "seasons" in kwargs else None, "season_type": kwargs["season_types"] if "season_types" in kwargs else None, "week": kwargs["weeks"] if "weeks" in kwargs else None, "finished": kwargs["finished"] if "finished" in kwargs else None } for name in cmap: if cmap[name] is not None: qm.cand(name, cmap[name], Operator.IN) return qm
def _getQueryModel(self, **kwargs) -> QueryModel: qm = QueryModel() if kwargs["teams"] is not None: qm.cstart("team", kwargs["teams"], Operator.IN) if "include_previous_teams" in kwargs and kwargs["include_previous_teams"]: qm.cor("previous_teams", kwargs["teams"], Operator.IN) cmap = { "last_name": kwargs["last_names"] if "last_names" in kwargs else None, "first_name": kwargs["first_names"] if "first_names" in kwargs else None, "profile_id": kwargs["profile_ids"] if "profile_ids" in kwargs else None } for name in cmap: if cmap[name] is not None: qm.cand(name, cmap[name], Operator.IN) return qm
async def sync(self) -> List[dict]: logging.info("Syncing {} data...".format(self._entity_name)) cur = await self.find() if len(cur) > 0: gsidqm = QueryModel() gsidqm.sinclude(["gsis_id"]) cgsidd = await self.find(qm=gsidqm) cgsids = list(set([r["gsis_id"] for r in cgsidd])) schqm = QueryModel() schqm.cstart("finished", True) if len(cgsids) > 0: schqm.cand("gsis_id", cgsids, Operator.NIN) sch = await self._scheduleManager.find(qm=schqm) else: sch = await self._scheduleManager.find() return await self.save(self._queryAPI(sch))
def _getQueryModel(self, **kwargs) -> QueryModel: qm = QueryModel() if "teams" in kwargs and kwargs["teams"] is not None: qm.cstart("team", kwargs["teams"], Operator.IN) if "include_previous_teams" in kwargs and kwargs[ "include_previous_teams"]: qm.cor("previous_teams", kwargs["teams"], Operator.IN) cmap = { "position": kwargs["positions"] if "positions" in kwargs else None, "last_name": kwargs["last_names"] if "last_names" in kwargs else None, "first_name": kwargs["first_names"] if "first_names" in kwargs else None, "profile_id": kwargs["profile_ids"] if "profile_ids" in kwargs else None } for name in cmap: if cmap[name] is not None: qm.cand(name, cmap[name], Operator.IN) if "player_abbreviations" in kwargs and kwargs[ "player_abbreviations"] is not None: paqm = QueryModel() for pabb in kwargs["player_abbreviations"]: if not (pabb is None or pabb == ""): curqm = QueryModel() fi, ln = util.parseNameAbbreviation(pabb) if not (fi is None and ln is None): if fi is not None: curqm.cstart("first_name", fi, Operator.REGEX, "i") curqm.cand("last_name", ln, Operator.REGEX, "i") paqm.cor(query_model=curqm) qm.cand(query_model=paqm) return qm