Format code with Black and isort for CI/CD compliance
- Apply Black formatting to all Python files in core and stiftung modules - Fix import statement ordering with isort - Ensure all code meets automated quality standards - Resolve CI/CD pipeline formatting failures - Maintain consistent code style across the entire codebase
This commit is contained in:
@@ -1,93 +1,94 @@
|
||||
from django.core.management.base import BaseCommand
|
||||
|
||||
from stiftung.models import AppConfiguration
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
help = 'Initialize default app configuration settings'
|
||||
help = "Initialize default app configuration settings"
|
||||
|
||||
def handle(self, *args, **options):
|
||||
# Paperless Integration Settings
|
||||
paperless_settings = [
|
||||
{
|
||||
'key': 'paperless_api_url',
|
||||
'display_name': 'Paperless API URL',
|
||||
'description': 'The base URL for your Paperless-NGX API (e.g., http://paperless.example.com:8000)',
|
||||
'value': 'http://192.168.178.167:30070',
|
||||
'default_value': 'http://192.168.178.167:30070',
|
||||
'setting_type': 'url',
|
||||
'category': 'paperless',
|
||||
'order': 1
|
||||
"key": "paperless_api_url",
|
||||
"display_name": "Paperless API URL",
|
||||
"description": "The base URL for your Paperless-NGX API (e.g., http://paperless.example.com:8000)",
|
||||
"value": "http://192.168.178.167:30070",
|
||||
"default_value": "http://192.168.178.167:30070",
|
||||
"setting_type": "url",
|
||||
"category": "paperless",
|
||||
"order": 1,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_api_token',
|
||||
'display_name': 'Paperless API Token',
|
||||
'description': 'The authentication token for Paperless API access',
|
||||
'value': '',
|
||||
'default_value': '',
|
||||
'setting_type': 'text',
|
||||
'category': 'paperless',
|
||||
'order': 2
|
||||
"key": "paperless_api_token",
|
||||
"display_name": "Paperless API Token",
|
||||
"description": "The authentication token for Paperless API access",
|
||||
"value": "",
|
||||
"default_value": "",
|
||||
"setting_type": "text",
|
||||
"category": "paperless",
|
||||
"order": 2,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_destinataere_tag',
|
||||
'display_name': 'Destinatäre Tag Name',
|
||||
'description': 'The tag name used to identify Destinatäre documents in Paperless',
|
||||
'value': 'Stiftung_Destinatäre',
|
||||
'default_value': 'Stiftung_Destinatäre',
|
||||
'setting_type': 'tag',
|
||||
'category': 'paperless',
|
||||
'order': 3
|
||||
"key": "paperless_destinataere_tag",
|
||||
"display_name": "Destinatäre Tag Name",
|
||||
"description": "The tag name used to identify Destinatäre documents in Paperless",
|
||||
"value": "Stiftung_Destinatäre",
|
||||
"default_value": "Stiftung_Destinatäre",
|
||||
"setting_type": "tag",
|
||||
"category": "paperless",
|
||||
"order": 3,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_destinataere_tag_id',
|
||||
'display_name': 'Destinatäre Tag ID',
|
||||
'description': 'The numeric ID of the Destinatäre tag in Paperless',
|
||||
'value': '210',
|
||||
'default_value': '210',
|
||||
'setting_type': 'tag_id',
|
||||
'category': 'paperless',
|
||||
'order': 4
|
||||
"key": "paperless_destinataere_tag_id",
|
||||
"display_name": "Destinatäre Tag ID",
|
||||
"description": "The numeric ID of the Destinatäre tag in Paperless",
|
||||
"value": "210",
|
||||
"default_value": "210",
|
||||
"setting_type": "tag_id",
|
||||
"category": "paperless",
|
||||
"order": 4,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_land_tag',
|
||||
'display_name': 'Land & Pächter Tag Name',
|
||||
'description': 'The tag name used to identify Land and Pächter documents in Paperless',
|
||||
'value': 'Stiftung_Land_und_Pächter',
|
||||
'default_value': 'Stiftung_Land_und_Pächter',
|
||||
'setting_type': 'tag',
|
||||
'category': 'paperless',
|
||||
'order': 5
|
||||
"key": "paperless_land_tag",
|
||||
"display_name": "Land & Pächter Tag Name",
|
||||
"description": "The tag name used to identify Land and Pächter documents in Paperless",
|
||||
"value": "Stiftung_Land_und_Pächter",
|
||||
"default_value": "Stiftung_Land_und_Pächter",
|
||||
"setting_type": "tag",
|
||||
"category": "paperless",
|
||||
"order": 5,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_land_tag_id',
|
||||
'display_name': 'Land & Pächter Tag ID',
|
||||
'description': 'The numeric ID of the Land & Pächter tag in Paperless',
|
||||
'value': '204',
|
||||
'default_value': '204',
|
||||
'setting_type': 'tag_id',
|
||||
'category': 'paperless',
|
||||
'order': 6
|
||||
"key": "paperless_land_tag_id",
|
||||
"display_name": "Land & Pächter Tag ID",
|
||||
"description": "The numeric ID of the Land & Pächter tag in Paperless",
|
||||
"value": "204",
|
||||
"default_value": "204",
|
||||
"setting_type": "tag_id",
|
||||
"category": "paperless",
|
||||
"order": 6,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_admin_tag',
|
||||
'display_name': 'Administration Tag Name',
|
||||
'description': 'The tag name used to identify Administration documents in Paperless',
|
||||
'value': 'Stiftung_Administration',
|
||||
'default_value': 'Stiftung_Administration',
|
||||
'setting_type': 'tag',
|
||||
'category': 'paperless',
|
||||
'order': 7
|
||||
"key": "paperless_admin_tag",
|
||||
"display_name": "Administration Tag Name",
|
||||
"description": "The tag name used to identify Administration documents in Paperless",
|
||||
"value": "Stiftung_Administration",
|
||||
"default_value": "Stiftung_Administration",
|
||||
"setting_type": "tag",
|
||||
"category": "paperless",
|
||||
"order": 7,
|
||||
},
|
||||
{
|
||||
'key': 'paperless_admin_tag_id',
|
||||
'display_name': 'Administration Tag ID',
|
||||
'description': 'The numeric ID of the Administration tag in Paperless',
|
||||
'value': '216',
|
||||
'default_value': '216',
|
||||
'setting_type': 'tag_id',
|
||||
'category': 'paperless',
|
||||
'order': 8
|
||||
}
|
||||
"key": "paperless_admin_tag_id",
|
||||
"display_name": "Administration Tag ID",
|
||||
"description": "The numeric ID of the Administration tag in Paperless",
|
||||
"value": "216",
|
||||
"default_value": "216",
|
||||
"setting_type": "tag_id",
|
||||
"category": "paperless",
|
||||
"order": 8,
|
||||
},
|
||||
]
|
||||
|
||||
created_count = 0
|
||||
@@ -95,26 +96,25 @@ class Command(BaseCommand):
|
||||
|
||||
for setting_data in paperless_settings:
|
||||
setting, created = AppConfiguration.objects.get_or_create(
|
||||
key=setting_data['key'],
|
||||
defaults=setting_data
|
||||
key=setting_data["key"], defaults=setting_data
|
||||
)
|
||||
|
||||
|
||||
if created:
|
||||
created_count += 1
|
||||
self.stdout.write(
|
||||
self.style.SUCCESS(f'Created setting: {setting.display_name}')
|
||||
self.style.SUCCESS(f"Created setting: {setting.display_name}")
|
||||
)
|
||||
else:
|
||||
# Update existing setting with new defaults if needed
|
||||
if not setting.description:
|
||||
setting.description = setting_data['description']
|
||||
setting.description = setting_data["description"]
|
||||
setting.save()
|
||||
updated_count += 1
|
||||
|
||||
self.stdout.write(
|
||||
self.style.SUCCESS(
|
||||
f'Configuration initialized successfully! '
|
||||
f'Created {created_count} new settings, updated {updated_count} existing settings.'
|
||||
f"Configuration initialized successfully! "
|
||||
f"Created {created_count} new settings, updated {updated_count} existing settings."
|
||||
)
|
||||
)
|
||||
self.stdout.write(
|
||||
|
||||
Reference in New Issue
Block a user