70 lines
3.7 KiB
Python
70 lines
3.7 KiB
Python
|
|
# Generated by Django 5.1.15 on 2026-08-23 21:57
|
||
|
|
|
||
|
|
import django.db.models.deletion
|
||
|
|
from django.conf import settings
|
||
|
|
from django.db import migrations, models
|
||
|
|
|
||
|
|
|
||
|
|
class Migration(migrations.Migration):
|
||
|
|
|
||
|
|
initial = True
|
||
|
|
|
||
|
|
dependencies = [
|
||
|
|
('banker', '0002_structuredtemplate_structuredtemplatefield'),
|
||
|
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||
|
|
]
|
||
|
|
|
||
|
|
operations = [
|
||
|
|
migrations.CreateModel(
|
||
|
|
name='OrderStage',
|
||
|
|
fields=[
|
||
|
|
('id', models.CharField(max_length=36, primary_key=True, serialize=False)),
|
||
|
|
('label', models.CharField(max_length=150, verbose_name='عنوان مرحله')),
|
||
|
|
('sort_order', models.PositiveIntegerField(default=0, verbose_name='ترتیب')),
|
||
|
|
('updated_at', models.DateTimeField(auto_now=True)),
|
||
|
|
('template', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='order_stages', to='banker.messagetemplate', verbose_name='قالب پیامک این مرحله')),
|
||
|
|
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='order_stages', to=settings.AUTH_USER_MODEL)),
|
||
|
|
],
|
||
|
|
options={
|
||
|
|
'verbose_name': 'مرحله\u200cی پیگیری سفارش',
|
||
|
|
'verbose_name_plural': 'مراحل پیگیری سفارش',
|
||
|
|
'ordering': ['sort_order'],
|
||
|
|
},
|
||
|
|
),
|
||
|
|
migrations.CreateModel(
|
||
|
|
name='Order',
|
||
|
|
fields=[
|
||
|
|
('id', models.CharField(max_length=36, primary_key=True, serialize=False)),
|
||
|
|
('customer_name', models.CharField(max_length=150, verbose_name='نام مشتری')),
|
||
|
|
('customer_phone', models.CharField(max_length=20, verbose_name='شماره مشتری')),
|
||
|
|
('tracking_code', models.CharField(blank=True, max_length=100, verbose_name='کد پیگیری پستی')),
|
||
|
|
('is_completed', models.BooleanField(default=False, verbose_name='تکمیل\u200cشده')),
|
||
|
|
('created_at', models.DateTimeField(auto_now_add=True)),
|
||
|
|
('updated_at', models.DateTimeField(auto_now=True)),
|
||
|
|
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='orders', to=settings.AUTH_USER_MODEL)),
|
||
|
|
('current_stage', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='orders', to='orders.orderstage')),
|
||
|
|
],
|
||
|
|
options={
|
||
|
|
'verbose_name': 'سفارش',
|
||
|
|
'verbose_name_plural': 'سفارش\u200cها',
|
||
|
|
'ordering': ['-updated_at'],
|
||
|
|
},
|
||
|
|
),
|
||
|
|
migrations.CreateModel(
|
||
|
|
name='OrderStageLog',
|
||
|
|
fields=[
|
||
|
|
('id', models.CharField(max_length=36, primary_key=True, serialize=False)),
|
||
|
|
('stage_label', models.CharField(max_length=150, verbose_name='عنوان مرحله')),
|
||
|
|
('message_body', models.TextField(blank=True, verbose_name='متن پیامک ارسالی')),
|
||
|
|
('created_at', models.DateTimeField(auto_now_add=True)),
|
||
|
|
('order', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stage_logs', to='orders.order')),
|
||
|
|
('stage', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='orders.orderstage')),
|
||
|
|
],
|
||
|
|
options={
|
||
|
|
'verbose_name': 'تاریخچه\u200cی مرحله\u200cی سفارش',
|
||
|
|
'verbose_name_plural': 'تاریخچه\u200cی مراحل سفارش',
|
||
|
|
'ordering': ['created_at'],
|
||
|
|
},
|
||
|
|
),
|
||
|
|
]
|