Files
hostpanel/ssh_manager/migrations/0013_invoice_invoiceitem.py
ilkeral f4ee7a2d0b yeni
2025-08-08 07:24:25 +03:00

58 lines
3.7 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Generated by Django 5.2.4 on 2025-07-24 19:21
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('ssh_manager', '0012_sshcredential_connection_status_and_more'),
]
operations = [
migrations.CreateModel(
name='Invoice',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('invoice_number', models.CharField(max_length=50, unique=True, verbose_name='Fatura No')),
('issue_date', models.DateField(verbose_name='Düzenleme Tarihi')),
('due_date', models.DateField(verbose_name='Son Ödeme Tarihi')),
('status', models.CharField(choices=[('draft', 'Taslak'), ('sent', 'Gönderildi'), ('paid', 'Ödendi'), ('overdue', 'Gecikti'), ('cancelled', 'İptal Edildi')], default='draft', max_length=20, verbose_name='Durum')),
('payment_method', models.CharField(choices=[('bank_transfer', 'Banka Havalesi'), ('credit_card', 'Kredi Kartı'), ('cash', 'Nakit'), ('other', 'Diğer')], default='bank_transfer', max_length=20, verbose_name='Ödeme Yöntemi')),
('subtotal', models.DecimalField(decimal_places=2, default=0, max_digits=10, verbose_name='Ara Toplam')),
('tax_amount', models.DecimalField(decimal_places=2, default=0, max_digits=10, verbose_name='KDV Tutarı')),
('total_amount', models.DecimalField(decimal_places=2, default=0, max_digits=10, verbose_name='Toplam Tutar')),
('discount', models.DecimalField(decimal_places=2, default=0, max_digits=10, verbose_name='İndirim')),
('notes', models.TextField(blank=True, null=True, verbose_name='Notlar')),
('payment_notes', models.TextField(blank=True, null=True, verbose_name='Ödeme Notları')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('customer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='invoices', to='ssh_manager.customer', verbose_name='Müşteri')),
],
options={
'verbose_name': 'Fatura',
'verbose_name_plural': 'Faturalar',
'ordering': ['-issue_date', '-id'],
},
),
migrations.CreateModel(
name='InvoiceItem',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('description', models.CharField(max_length=255, verbose_name='ıklama')),
('quantity', models.DecimalField(decimal_places=2, default=1, max_digits=10, verbose_name='Miktar')),
('unit_price', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='Birim Fiyat')),
('tax_rate', models.DecimalField(decimal_places=2, default=18, max_digits=5, verbose_name='KDV Oranı (%)')),
('amount', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='Tutar')),
('invoice', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='items', to='ssh_manager.invoice', verbose_name='Fatura')),
('project', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ssh_manager.project', verbose_name='İlişkili Proje')),
],
options={
'verbose_name': 'Fatura Kalemi',
'verbose_name_plural': 'Fatura Kalemleri',
'ordering': ['id'],
},
),
]