forked from erp-dev/erp
feat: shipment_delivery
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
("shipment", "0012_replace_cancelled_at_with_status_modified_at_and_add_approved_by"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="ShipmentDelivery",
|
||||
fields=[
|
||||
("id", models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")),
|
||||
("created_at", models.DateTimeField(auto_now_add=True, verbose_name="创建时间")),
|
||||
("updated_at", models.DateTimeField(auto_now=True, verbose_name="更新时间")),
|
||||
("status", models.IntegerField(choices=[(1, "待送货"), (2, "送货中"), (3, "已送达")], db_index=True, default=1, verbose_name="状态")),
|
||||
("driver_name", models.CharField(db_index=True, max_length=100, verbose_name="司机名")),
|
||||
("vehicle_trip", models.CharField(db_index=True, max_length=100, verbose_name="车次")),
|
||||
("started_at", models.DateTimeField(blank=True, null=True, verbose_name="开始送货时间")),
|
||||
("delivered_at", models.DateTimeField(blank=True, null=True, verbose_name="送达时间")),
|
||||
("created_by", models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="created_shipment_deliveries", to=settings.AUTH_USER_MODEL, verbose_name="创建人")),
|
||||
("merchant", models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name="shipment_deliveries", to="basic_info.merchant", verbose_name="所属商户")),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "送货单",
|
||||
"verbose_name_plural": "送货单",
|
||||
"db_table": "shipment_delivery",
|
||||
"ordering": ["-created_at", "-id"],
|
||||
},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipment",
|
||||
name="address",
|
||||
field=models.CharField(blank=True, default="", max_length=255, verbose_name="地址"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipment",
|
||||
name="contact_name",
|
||||
field=models.CharField(blank=True, default="", max_length=100, verbose_name="联系人"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipment",
|
||||
name="contact_phone",
|
||||
field=models.CharField(blank=True, default="", max_length=50, verbose_name="联系电话"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipment",
|
||||
name="delivery",
|
||||
field=models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
related_name="shipments",
|
||||
to="shipment.shipmentdelivery",
|
||||
verbose_name="送货单",
|
||||
),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="internal_remark",
|
||||
field=models.CharField(blank=True, default="", max_length=200, verbose_name="内部备注"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="remark",
|
||||
field=models.CharField(blank=True, default="", max_length=200, verbose_name="备注"),
|
||||
),
|
||||
]
|
||||
25
shipment/migrations/0014_shipmentdelivery_operator.py
Normal file
25
shipment/migrations/0014_shipmentdelivery_operator.py
Normal file
@@ -0,0 +1,25 @@
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("basic_info", "0025_customer_uniq_customer_merchant_name"),
|
||||
("shipment", "0013_shipmentdelivery_shipment_delivery"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="operator",
|
||||
field=models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
related_name="operated_shipment_deliveries",
|
||||
to="basic_info.employee",
|
||||
verbose_name="操作人",
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -0,0 +1,50 @@
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("shipment", "0014_shipmentdelivery_operator"),
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="cancelled_at",
|
||||
field=models.DateTimeField(blank=True, null=True, verbose_name="取消时间"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="cancelled_by",
|
||||
field=models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
related_name="cancelled_shipment_deliveries",
|
||||
to=settings.AUTH_USER_MODEL,
|
||||
verbose_name="取消人",
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="shipmentdelivery",
|
||||
name="status",
|
||||
field=models.IntegerField(
|
||||
choices=[(1, "待送货"), (2, "送货中"), (3, "已送达"), (4, "已取消")],
|
||||
db_index=True,
|
||||
default=1,
|
||||
verbose_name="状态",
|
||||
),
|
||||
),
|
||||
migrations.AlterModelOptions(
|
||||
name="shipmentdelivery",
|
||||
options={
|
||||
"ordering": ["-created_at", "-id"],
|
||||
"permissions": [("cancel_shipmentdelivery", "Can cancel shipment delivery")],
|
||||
"verbose_name": "送货单",
|
||||
"verbose_name_plural": "送货单",
|
||||
},
|
||||
),
|
||||
]
|
||||
@@ -0,0 +1,21 @@
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("shipment", "0015_shipmentdelivery_cancel_fields_and_permission"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="contact_phone",
|
||||
field=models.CharField(blank=True, default="", max_length=50, verbose_name="联系电话"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="shipmentdelivery",
|
||||
name="vehicle_capacity",
|
||||
field=models.CharField(blank=True, default="", max_length=100, verbose_name="车辆容量"),
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user