Fix grouping by version

This commit is contained in:
Кокос Артем Николаевич
2026-01-21 10:15:48 +07:00
parent 86041df76c
commit 9b28bf21e7
5 changed files with 9 additions and 8 deletions

View File

@@ -1 +1 @@
__version__ = "1.0.0"
__version__ = "0.1.1"

View File

@@ -2,6 +2,7 @@ from typing import List, Optional, Dict, Tuple
from redminelib import Redmine
from redminelib.resources import Issue
from .config import Config
from .utils import get_version
def fetch_issues_with_spent_time(from_date: str, to_date: str) -> Optional[List[Tuple[Issue, float]]]:
@@ -51,6 +52,7 @@ def fetch_issues_with_spent_time(from_date: str, to_date: str) -> Optional[List[
total_hours = spent_time.get(issue.id, 0.0)
result.append((issue, total_hours))
# Сортируем по проекту (Redmine API уже сортирует, но для надёжности)
result.sort(key=lambda x: str(x[0].project))
# Сортируем по (проект, версия)
result.sort(key=lambda x: (str(x[0].project), get_version(x[0])))
return result

View File

@@ -1,5 +1,6 @@
from typing import List, Tuple
from redminelib.resources import Issue
from .utils import get_version
STATUS_TRANSLATION = {
@@ -15,10 +16,6 @@ STATUS_TRANSLATION = {
}
def get_version(issue: Issue) -> str:
return str(getattr(issue, 'fixed_version', '<N/A>'))
def hours_to_human(hours: float) -> str:
if hours <= 0:
return ""

View File

@@ -0,0 +1,2 @@
def get_version(issue) -> str:
return str(getattr(issue, 'fixed_version', '<N/A>'))