23 lines
779 B
Python
23 lines
779 B
Python
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='*'))
|