Clean arch
This commit is contained in:
22
redmine_reporter/client.py
Normal file
22
redmine_reporter/client.py
Normal file
@@ -0,0 +1,22 @@
|
||||
from redminelib import Redmine
|
||||
from typing import List, Any
|
||||
|
||||
|
||||
class RedmineClient:
|
||||
def __init__(self, url: str, username: str, password: str):
|
||||
self._redmine = Redmine(url.strip(), username=username, password=password)
|
||||
|
||||
def get_current_user_id(self) -> int:
|
||||
return self._redmine.user.get('current').id
|
||||
|
||||
def get_time_entries(self, user_id: int, from_date: str, to_date: str) -> List[Any]:
|
||||
return list(self._redmine.time_entry.filter(
|
||||
user_id=user_id,
|
||||
from_date=from_date,
|
||||
to_date=to_date
|
||||
))
|
||||
|
||||
def get_issues_by_ids(self, issue_ids: List[str]) -> List[Any]:
|
||||
if not issue_ids:
|
||||
return []
|
||||
return list(self._redmine.issue.filter(issue_id=",".join(issue_ids), status_id='*'))
|
||||
Reference in New Issue
Block a user