Spaces:
Sleeping
Sleeping
ktsn-ud commited on
Commit ·
14b78aa
1
Parent(s): 414e0d3
企画種別(テント企画など)を取得できるように追加
Browse files- app/main.py +1 -0
- app/repositories/projects_repository.py +9 -0
- app/repositories/query.sql +1 -0
- schemas/projects.py +6 -0
app/main.py
CHANGED
|
@@ -116,6 +116,7 @@ def get_summary_data():
|
|
| 116 |
projectId=project.projectId,
|
| 117 |
circleName=project.circleName,
|
| 118 |
name=project.name,
|
|
|
|
| 119 |
category=project.category,
|
| 120 |
day1=project.day1,
|
| 121 |
day2=project.day2,
|
|
|
|
| 116 |
projectId=project.projectId,
|
| 117 |
circleName=project.circleName,
|
| 118 |
name=project.name,
|
| 119 |
+
projectType=project.projectType,
|
| 120 |
category=project.category,
|
| 121 |
day1=project.day1,
|
| 122 |
day2=project.day2,
|
app/repositories/projects_repository.py
CHANGED
|
@@ -39,6 +39,14 @@ class ProjectsRepository:
|
|
| 39 |
"""
|
| 40 |
行からProjectオブジェクトを生成する
|
| 41 |
"""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 42 |
CATEGORY_MAP = {
|
| 43 |
"PERFORMANCE": "パフォーマンス",
|
| 44 |
"FOOD": "飲食",
|
|
@@ -77,6 +85,7 @@ class ProjectsRepository:
|
|
| 77 |
circleName=row["circleName"],
|
| 78 |
circleNameKana=row["circleNameKana"],
|
| 79 |
name=row["name"],
|
|
|
|
| 80 |
category=CATEGORY_MAP.get(row["category"], "その他"),
|
| 81 |
day1=row["day1"],
|
| 82 |
day2=row["day2"],
|
|
|
|
| 39 |
"""
|
| 40 |
行からProjectオブジェクトを生成する
|
| 41 |
"""
|
| 42 |
+
PROJECT_TYPE_MAP = {
|
| 43 |
+
"TENT": "テント企画",
|
| 44 |
+
"ROOM": "部屋企画",
|
| 45 |
+
"STAGE": "ステージ企画",
|
| 46 |
+
"STPER": "ストリートパフォーマンス企画",
|
| 47 |
+
"FREE": "自由企画",
|
| 48 |
+
"MIDFES": "中夜祭企画",
|
| 49 |
+
}
|
| 50 |
CATEGORY_MAP = {
|
| 51 |
"PERFORMANCE": "パフォーマンス",
|
| 52 |
"FOOD": "飲食",
|
|
|
|
| 85 |
circleName=row["circleName"],
|
| 86 |
circleNameKana=row["circleNameKana"],
|
| 87 |
name=row["name"],
|
| 88 |
+
projectType=PROJECT_TYPE_MAP.get(row["projectType"], "-"),
|
| 89 |
category=CATEGORY_MAP.get(row["category"], "その他"),
|
| 90 |
day1=row["day1"],
|
| 91 |
day2=row["day2"],
|
app/repositories/query.sql
CHANGED
|
@@ -3,6 +3,7 @@ SELECT
|
|
| 3 |
c.name AS `circleName`,
|
| 4 |
c.name_kana AS `circleNameKana`,
|
| 5 |
cp.name AS `name`,
|
|
|
|
| 6 |
cp.category AS `category`,
|
| 7 |
cp.`firstDay` AS `day1`,
|
| 8 |
cp.`secondDay` AS `day2`,
|
|
|
|
| 3 |
c.name AS `circleName`,
|
| 4 |
c.name_kana AS `circleNameKana`,
|
| 5 |
cp.name AS `name`,
|
| 6 |
+
cp.projectType AS `projectType`,
|
| 7 |
cp.category AS `category`,
|
| 8 |
cp.`firstDay` AS `day1`,
|
| 9 |
cp.`secondDay` AS `day2`,
|
schemas/projects.py
CHANGED
|
@@ -32,6 +32,7 @@ class Project(BaseModel):
|
|
| 32 |
- `circleName`: 団体名
|
| 33 |
- `circleNameKana`: 団体名読み仮名
|
| 34 |
- `name`: 企画名
|
|
|
|
| 35 |
- `category`: 企画ジャンル
|
| 36 |
- `day1`: 1日目の実施有無
|
| 37 |
- `day2`: 2日目の実施有無
|
|
@@ -49,6 +50,7 @@ class Project(BaseModel):
|
|
| 49 |
circleName: str
|
| 50 |
circleNameKana: str
|
| 51 |
name: str
|
|
|
|
| 52 |
category: Literal[
|
| 53 |
"パフォーマンス", "飲食", "物販", "展示", "参加型", "音楽", "その他"
|
| 54 |
]
|
|
@@ -70,6 +72,7 @@ class ProjectSummary(BaseModel):
|
|
| 70 |
- `projectId`: 企画ID (unique)
|
| 71 |
- `circleName`: 団体名
|
| 72 |
- `name`: 企画名
|
|
|
|
| 73 |
- `category`: 企画ジャンル
|
| 74 |
- `day1`: 1日目の実施有無
|
| 75 |
- `day2`: 2日目の実施有無
|
|
@@ -84,6 +87,7 @@ class ProjectSummary(BaseModel):
|
|
| 84 |
projectId: str
|
| 85 |
circleName: str
|
| 86 |
name: str
|
|
|
|
| 87 |
category: Literal[
|
| 88 |
"パフォーマンス", "飲食", "物販", "展示", "参加型", "音楽", "その他"
|
| 89 |
]
|
|
@@ -103,6 +107,7 @@ class ProjectDetail(BaseModel):
|
|
| 103 |
- `projectId`: 企画ID (unique)
|
| 104 |
- `circleName`: 団体名
|
| 105 |
- `name`: 企画名
|
|
|
|
| 106 |
- `category`: 企画ジャンル
|
| 107 |
- `day1`: 1日目の実施有無
|
| 108 |
- `day2`: 2日目の実施有無
|
|
@@ -119,6 +124,7 @@ class ProjectDetail(BaseModel):
|
|
| 119 |
projectId: str
|
| 120 |
circleName: str
|
| 121 |
name: str
|
|
|
|
| 122 |
category: Literal[
|
| 123 |
"パフォーマンス", "飲食", "物販", "展示", "参加型", "音楽", "その他"
|
| 124 |
]
|
|
|
|
| 32 |
- `circleName`: 団体名
|
| 33 |
- `circleNameKana`: 団体名読み仮名
|
| 34 |
- `name`: 企画名
|
| 35 |
+
- `projectType`: 企画種別
|
| 36 |
- `category`: 企画ジャンル
|
| 37 |
- `day1`: 1日目の実施有無
|
| 38 |
- `day2`: 2日目の実施有無
|
|
|
|
| 50 |
circleName: str
|
| 51 |
circleNameKana: str
|
| 52 |
name: str
|
| 53 |
+
projectType: str
|
| 54 |
category: Literal[
|
| 55 |
"パフォーマンス", "飲食", "物販", "展示", "参加型", "音楽", "その他"
|
| 56 |
]
|
|
|
|
| 72 |
- `projectId`: 企画ID (unique)
|
| 73 |
- `circleName`: 団体名
|
| 74 |
- `name`: 企画名
|
| 75 |
+
- `projectType`: 企画種別
|
| 76 |
- `category`: 企画ジャンル
|
| 77 |
- `day1`: 1日目の実施有無
|
| 78 |
- `day2`: 2日目の実施有無
|
|
|
|
| 87 |
projectId: str
|
| 88 |
circleName: str
|
| 89 |
name: str
|
| 90 |
+
projectType: str
|
| 91 |
category: Literal[
|
| 92 |
"パフォーマンス", "飲食", "物販", "展示", "参加型", "音楽", "その他"
|
| 93 |
]
|
|
|
|
| 107 |
- `projectId`: 企画ID (unique)
|
| 108 |
- `circleName`: 団体名
|
| 109 |
- `name`: 企画名
|
| 110 |
+
- `projectType`: 企画種別
|
| 111 |
- `category`: 企画ジャンル
|
| 112 |
- `day1`: 1日目の実施有無
|
| 113 |
- `day2`: 2日目の実施有無
|
|
|
|
| 124 |
projectId: str
|
| 125 |
circleName: str
|
| 126 |
name: str
|
| 127 |
+
projectType: str
|
| 128 |
category: Literal[
|
| 129 |
"パフォーマンス", "飲食", "物販", "展示", "参加型", "音楽", "その他"
|
| 130 |
]
|