shippingservice/delhivery/migrations/0001_initial.py
vignesh 6e3bbee5c8
All checks were successful
Deploy Beta (NATIVE) / deploy (push) Successful in 31s
feat: add Delhivery shipping service integration and API documentation
2026-10-10 19:39:18 +05:30

69 lines
4 KiB
Python

# Generated by Django 6.1 on 2026-10-10 14:01
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='DelhiveryActivityLog',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('action_name', models.CharField(max_length=100)),
('endpoint_url', models.CharField(max_length=500)),
('http_method', models.CharField(default='POST', max_length=10)),
('request_headers', models.TextField(blank=True, default='')),
('request_body', models.TextField(blank=True, default='')),
('response_status_code', models.IntegerField(default=200)),
('response_body', models.TextField(blank=True, default='')),
('execution_time_ms', models.FloatField(default=0.0)),
('status', models.CharField(choices=[('SUCCESS', 'Success (2xx)'), ('ERROR', 'Error (4xx/5xx)'), ('WARNING', 'Warning')], default='SUCCESS', max_length=20)),
('timestamp', models.DateTimeField(auto_now_add=True)),
('notes', models.TextField(blank=True, default='')),
],
options={
'ordering': ['-timestamp'],
},
),
migrations.CreateModel(
name='DelhiveryCredential',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('client_name', models.CharField(default='Default Delhivery Client', max_length=100)),
('api_token', models.CharField(help_text='Delhivery Production API Token Key', max_length=255)),
('base_url', models.URLField(default='https://track.delhivery.com')),
('is_active', models.BooleanField(default=True)),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
],
),
migrations.CreateModel(
name='DelhiveryShipment',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('waybill', models.CharField(db_index=True, max_length=100, unique=True)),
('order_number', models.CharField(db_index=True, max_length=100)),
('vendor', models.CharField(default='DELHIVERY', max_length=50)),
('payment_mode', models.CharField(choices=[('COD', 'Cash On Delivery'), ('Prepaid', 'Prepaid'), ('Pickup', 'Reverse Pickup')], default='Prepaid', max_length=20)),
('shipping_mode', models.CharField(choices=[('Surface', 'Surface Logistics'), ('Express', 'Express Logistics')], default='Surface', max_length=20)),
('status', models.CharField(choices=[('MANIFESTED', 'Manifested'), ('IN_TRANSIT', 'In Transit'), ('OUT_FOR_DELIVERY', 'Out For Delivery'), ('DELIVERED', 'Delivered'), ('CANCELLED', 'Cancelled'), ('RTO', 'Return To Origin'), ('NDR', 'Non-Delivery Exception'), ('FAILED', 'Failed')], default='MANIFESTED', max_length=30)),
('current_tracking_status', models.CharField(blank=True, default='', max_length=100)),
('consignee_name', models.CharField(max_length=150)),
('consignee_phone', models.CharField(max_length=20)),
('consignee_pincode', models.CharField(max_length=10)),
('pickup_location_name', models.CharField(blank=True, default='', max_length=100)),
('raw_response', models.TextField(blank=True, default='')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
],
options={
'ordering': ['-created_at'],
},
),
]