Remove included filesize formatter and use Django's instead.

This commit is contained in:
Roberto Rosario
2015-08-20 00:36:58 -04:00
parent d9cc8520b1
commit e4fead68b9
3 changed files with 35 additions and 59 deletions

View File

@@ -1,9 +1,9 @@
from __future__ import absolute_import, unicode_literals
from django.db.models import Avg, Count, Max, Min
from django.template.defaultfilters import filesizeformat
from django.utils.translation import ugettext_lazy as _
from django.db.models import Avg, Count, Min, Max
from common.utils import pretty_size, pretty_size_10
from statistics.classes import Statistic
from .models import Document, DocumentType, DocumentPage, DocumentVersion
@@ -44,23 +44,27 @@ class DocumentStatistics(Statistic):
def get_results(self):
results = []
results.extend([
_('Document types: %d') % DocumentType.objects.count(),
])
results.extend(
[
_('Document types: %d') % DocumentType.objects.count(),
]
)
document_stats = DocumentVersion.objects.annotate(
page_count=Count('pages')
).aggregate(Min('page_count'), Max('page_count'), Avg('page_count'))
results.extend([
_(
'Minimum amount of pages per document: %d'
) % (document_stats['page_count__min'] or 0),
_(
'Maximum amount of pages per document: %d'
) % (document_stats['page_count__max'] or 0),
_(
'Average amount of pages per document: %f'
) % (document_stats['page_count__avg'] or 0),
])
results.extend(
[
_(
'Minimum amount of pages per document: %d'
) % (document_stats['page_count__min'] or 0),
_(
'Maximum amount of pages per document: %d'
) % (document_stats['page_count__max'] or 0),
_(
'Average amount of pages per document: %f'
) % (document_stats['page_count__avg'] or 0),
]
)
return results
@@ -71,23 +75,21 @@ class DocumentUsageStatistics(Statistic):
total_db_documents = Document.objects.only('pk',).count()
results.extend([
_('Documents in database: %d') % total_db_documents,
])
results.extend(
[
_('Documents in database: %d') % total_db_documents,
]
)
try:
total_storage_documents, storage_used_space = storage_count()
results.append(_('Documents in storage: %d') %
total_storage_documents)
results.append(
_('Documents in storage: %d') % total_storage_documents
)
results.append(
_(
'Space used in storage: %(base_2)s (base 2), %(base_10)s '
'(base 10), %(bytes)d bytes'
) % {
'base_2': pretty_size(storage_used_space),
'base_10': pretty_size_10(storage_used_space),
'bytes': storage_used_space
}
'Space used in storage: %s'
) % filesizeformat(storage_used_space)
)
except NotImplementedError:
pass