分配計画を運搬計画に再設計: 軽トラ1回分を基本単位とする運搬回モデルを導入
実運用のワークフロー(複数施肥計画混在・軽トラ複数回・肥料指定)に合わせ、 旧 DistributionPlan/Group/GroupField を DeliveryPlan/Group/GroupField/Trip/TripItem に置き換え。 施肥計画への直接FK廃止→年度ベースで全施肥計画を横断。 回ごとの日付記録、圃場の回間移動、対象肥料フィルタ、回ごとPDF出力に対応。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
from django.contrib import admin
|
||||
from .models import Fertilizer, FertilizationPlan, FertilizationEntry, DistributionPlan, DistributionGroup, DistributionGroupField
|
||||
from .models import (
|
||||
Fertilizer, FertilizationPlan, FertilizationEntry,
|
||||
DeliveryPlan, DeliveryGroup, DeliveryGroupField, DeliveryTrip, DeliveryTripItem,
|
||||
)
|
||||
|
||||
|
||||
@admin.register(Fertilizer)
|
||||
@@ -19,25 +22,41 @@ class FertilizationPlanAdmin(admin.ModelAdmin):
|
||||
inlines = [FertilizationEntryInline]
|
||||
|
||||
|
||||
class DistributionGroupFieldInline(admin.TabularInline):
|
||||
model = DistributionGroupField
|
||||
class DeliveryGroupFieldInline(admin.TabularInline):
|
||||
model = DeliveryGroupField
|
||||
extra = 0
|
||||
readonly_fields = ['distribution_plan']
|
||||
readonly_fields = ['delivery_plan']
|
||||
|
||||
|
||||
class DistributionGroupInline(admin.TabularInline):
|
||||
model = DistributionGroup
|
||||
class DeliveryGroupInline(admin.TabularInline):
|
||||
model = DeliveryGroup
|
||||
extra = 0
|
||||
|
||||
|
||||
@admin.register(DistributionPlan)
|
||||
class DistributionPlanAdmin(admin.ModelAdmin):
|
||||
list_display = ['name', 'fertilization_plan', 'created_at']
|
||||
list_filter = ['fertilization_plan__year']
|
||||
inlines = [DistributionGroupInline]
|
||||
class DeliveryTripItemInline(admin.TabularInline):
|
||||
model = DeliveryTripItem
|
||||
extra = 0
|
||||
|
||||
|
||||
@admin.register(DistributionGroup)
|
||||
class DistributionGroupAdmin(admin.ModelAdmin):
|
||||
list_display = ['name', 'distribution_plan', 'order']
|
||||
inlines = [DistributionGroupFieldInline]
|
||||
class DeliveryTripInline(admin.TabularInline):
|
||||
model = DeliveryTrip
|
||||
extra = 0
|
||||
|
||||
|
||||
@admin.register(DeliveryPlan)
|
||||
class DeliveryPlanAdmin(admin.ModelAdmin):
|
||||
list_display = ['name', 'year', 'created_at']
|
||||
list_filter = ['year']
|
||||
inlines = [DeliveryGroupInline, DeliveryTripInline]
|
||||
|
||||
|
||||
@admin.register(DeliveryGroup)
|
||||
class DeliveryGroupAdmin(admin.ModelAdmin):
|
||||
list_display = ['name', 'delivery_plan', 'order']
|
||||
inlines = [DeliveryGroupFieldInline]
|
||||
|
||||
|
||||
@admin.register(DeliveryTrip)
|
||||
class DeliveryTripAdmin(admin.ModelAdmin):
|
||||
list_display = ['delivery_plan', 'order', 'name', 'date']
|
||||
inlines = [DeliveryTripItemInline]
|
||||
|
||||
Reference in New Issue
Block a user