Files
erp-efintel-2026-portainer/OOP_models_patch.py
T
2026-09-07 18:44:32 -03:00

31 lines
1.7 KiB
Python

import re
with open('expenses/models.py', 'r', encoding='utf-8') as f:
content = f.read()
# Clean Project
content = re.sub(r'\s+name = models\.CharField\(max_length=200, verbose_name="Nombre del Proyecto/Centro"\)', '', content)
content = re.sub(r'\s+description = models\.TextField\(blank=True, verbose_name="Descripción"\)', '', content)
content = re.sub(r'\s+created_at = models\.DateTimeField\(auto_now_add=True, verbose_name="Fecha de Creación"\)', '', content)
content = re.sub(r'\s+updated_at = models\.DateTimeField\(auto_now=True, verbose_name="Última Modificación"\)', '', content)
# Replace Category inheritance and clean
content = content.replace("class Category(models.Model):", "class Category(CatalogModel):")
content = re.sub(r'\s+code = models\.CharField\(max_length=10, unique=True, verbose_name="Código de Categoría"\)', '', content)
content = re.sub(r'\s+name = models\.CharField\(max_length=100, verbose_name="Nombre de Categoría"\)', '', content)
content = re.sub(r'\s+description = models\.TextField\(blank=True, verbose_name="Descripción"\)', '', content)
# Replace Vendor
content = content.replace("class Vendor(models.Model):", "class Vendor(TimeStampedModel):")
# Remove Vendor created_at/updated_at
content = re.sub(r'\s+created_at = models\.DateTimeField\(auto_now_add=True\)\n\s+updated_at = models\.DateTimeField\(auto_now=True\)', '', content)
# Replace ProjectPhase
content = content.replace("class ProjectPhase(models.Model):", "class ProjectPhase(TimeStampedModel):")
# Replace Expense
content = content.replace("class Expense(models.Model):", "class Expense(TimeStampedModel):")
with open('expenses/models.py', 'w', encoding='utf-8') as f:
f.write(content)