実運用のワークフロー(複数施肥計画混在・軽トラ複数回・肥料指定)に合わせ、 旧 DistributionPlan/Group/GroupField を DeliveryPlan/Group/GroupField/Trip/TripItem に置き換え。 施肥計画への直接FK廃止→年度ベースで全施肥計画を横断。 回ごとの日付記録、圃場の回間移動、対象肥料フィルタ、回ごとPDF出力に対応。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
63 lines
1.6 KiB
Python
63 lines
1.6 KiB
Python
from django.contrib import admin
|
|
from .models import (
|
|
Fertilizer, FertilizationPlan, FertilizationEntry,
|
|
DeliveryPlan, DeliveryGroup, DeliveryGroupField, DeliveryTrip, DeliveryTripItem,
|
|
)
|
|
|
|
|
|
@admin.register(Fertilizer)
|
|
class FertilizerAdmin(admin.ModelAdmin):
|
|
list_display = ['name', 'maker', 'capacity_kg', 'nitrogen_pct']
|
|
|
|
|
|
class FertilizationEntryInline(admin.TabularInline):
|
|
model = FertilizationEntry
|
|
extra = 0
|
|
|
|
|
|
@admin.register(FertilizationPlan)
|
|
class FertilizationPlanAdmin(admin.ModelAdmin):
|
|
list_display = ['name', 'year', 'variety']
|
|
list_filter = ['year']
|
|
inlines = [FertilizationEntryInline]
|
|
|
|
|
|
class DeliveryGroupFieldInline(admin.TabularInline):
|
|
model = DeliveryGroupField
|
|
extra = 0
|
|
readonly_fields = ['delivery_plan']
|
|
|
|
|
|
class DeliveryGroupInline(admin.TabularInline):
|
|
model = DeliveryGroup
|
|
extra = 0
|
|
|
|
|
|
class DeliveryTripItemInline(admin.TabularInline):
|
|
model = DeliveryTripItem
|
|
extra = 0
|
|
|
|
|
|
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]
|