E-1 完了サマリー

実施内容
#	変更内容	ファイル
1	OfficialChusankanField に 11 フィールド追加(17列化)	models.py
2	中山間インポート: 17 列すべて読み込み対応	views.py
3	共済インポート: 面積カラム名不一致バグ修正 + a→m2 変換(×100)	views.py
4	シリアライザに 11 フィールド追加	serializers.py
5	共済 PDF: A4 縦、表形式、@page 設定、ページ番号、中国語除去	kyosai_template.html
6	中山間 PDF: A4 横、表形式、@page 設定、ページ番号、中国語除去	chusankan_template.html
7	PDF 生成ロジック: フラットテーブル、null 安全、prefetch_related	reports/views.py
8	既存データ再インポート(共済面積修正 + 中山間 17 列埋め)	—
9	Playwright E2E テスト 11 件全 PASS	verify-fixes.spec.ts
追加発見・修正したバグ
共済 ODS の 本地面積 (m2) カラム名にスペースが含まれ、インポート時に面積が全件 0 になっていた
面積の単位がアール(a)であることが判明。m2 への変換 (×100) を追加
PDF は http://localhost:3000/reports からダウンロードして確認できます。
This commit is contained in:
Akira
2026-02-17 15:27:14 +09:00
parent 85362d40c9
commit d70b5ee551
13 changed files with 584 additions and 192 deletions

View File

@@ -0,0 +1,78 @@
# Generated by Django 5.0 on 2026-02-17 06:01
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('fields', '0005_c2_kyosai_unique_together_c4_area_to_m2_integer'),
]
operations = [
migrations.AddField(
model_name='officialchusankanfield',
name='base_amount',
field=models.IntegerField(blank=True, null=True, verbose_name='基本金額'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='branch_num',
field=models.CharField(blank=True, max_length=20, null=True, verbose_name='枝番'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='chusankan_flag',
field=models.CharField(blank=True, max_length=10, null=True, verbose_name='中山間フラグ'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='land_type',
field=models.CharField(blank=True, max_length=20, null=True, verbose_name='地目'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='manager',
field=models.CharField(blank=True, max_length=100, null=True, verbose_name='協定管理者'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='original_crop',
field=models.CharField(blank=True, max_length=100, null=True, verbose_name='作付け品目'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='owner',
field=models.CharField(blank=True, max_length=100, null=True, verbose_name='所有者'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='planting_area',
field=models.IntegerField(blank=True, null=True, verbose_name='植栽面積(m2)'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='slope',
field=models.CharField(blank=True, max_length=20, null=True, verbose_name='傾斜度'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='smart_agri_addition',
field=models.IntegerField(blank=True, null=True, verbose_name='スマート農業加算額'),
),
migrations.AddField(
model_name='officialchusankanfield',
name='steep_slope_addition',
field=models.IntegerField(blank=True, null=True, verbose_name='超急傾斜加算額'),
),
migrations.AlterField(
model_name='officialchusankanfield',
name='area',
field=models.IntegerField(default=0, verbose_name='農地面積(m2)'),
),
migrations.AlterField(
model_name='officialchusankanfield',
name='payment_amount',
field=models.IntegerField(blank=True, null=True, verbose_name='交付金額'),
),
]