Skip to content

Commit 3afb12f

Browse files
committed
Added QuestDateRange
1 parent 1551d18 commit 3afb12f

File tree

5 files changed

+55
-0
lines changed

5 files changed

+55
-0
lines changed

app/core/raw.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@
141141
MstMap,
142142
MstMapGimmick,
143143
MstMasterMission,
144+
MstQuestDateRange,
144145
MstShop,
145146
MstShopRelease,
146147
MstShopScript,
@@ -1730,3 +1731,10 @@ async def get_gacha_entity(conn: AsyncConnection, gacha_id: int) -> GachaEntity:
17301731
raise HTTPException(status_code=404, detail="Banner not found")
17311732

17321733
return gacha_entity
1734+
1735+
1736+
async def get_quest_date_range(
1737+
conn: AsyncConnection, range_id: int
1738+
) -> list[MstQuestDateRange]:
1739+
ranges = await fetch.get_all(conn, MstQuestDateRange, range_id)
1740+
return ranges

app/db/helpers/fetch.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@
9797
mstMapGimmick,
9898
mstMasterMission,
9999
mstQuest,
100+
mstQuestDateRange,
100101
mstShop,
101102
mstShopRelease,
102103
mstShopScript,
@@ -234,6 +235,7 @@
234235
MstMapGimmick,
235236
MstMasterMission,
236237
MstQuest,
238+
MstQuestDateRange,
237239
MstShop,
238240
MstShopRelease,
239241
MstShopScript,
@@ -605,6 +607,11 @@ async def get_one(
605607
mstEventSvt.c.eventId,
606608
mstEventSvt.c.svtId,
607609
),
610+
MstQuestDateRange: (
611+
mstQuestDateRange,
612+
mstQuestDateRange.c.id,
613+
mstQuestDateRange.c.idx,
614+
),
608615
}
609616

610617
TFetchAll = TypeVar("TFetchAll", bound=BaseModelORJson)

app/models/raw.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2373,6 +2373,16 @@
23732373
)
23742374

23752375

2376+
mstQuestDateRange = Table(
2377+
"mstQuestDateRange",
2378+
metadata,
2379+
Column("id", Integer, index=True),
2380+
Column("idx", Integer),
2381+
Column("openedAt", Integer),
2382+
Column("closedAt", Integer),
2383+
)
2384+
2385+
23762386
mstQuestExtension = Table(
23772387
"mstQuestExtension",
23782388
metadata,
@@ -2948,6 +2958,7 @@
29482958
[mstQuestRestriction, mstQuestRestrictionInfo, mstRestriction],
29492959
[mstQuestPhasePresent],
29502960
[mstQuestPhaseIndividuality],
2961+
[mstQuestDateRange],
29512962
[mstQuestExtension],
29522963
[mstStage],
29532964
[mstStageRemap],

app/routers/raw.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
ItemEntity,
2828
MasterMissionEntity,
2929
MstEventAlloutBattle,
30+
MstQuestDateRange,
3031
MstSvtScript,
3132
MysticCodeEntity,
3233
QuestEntity,
@@ -980,3 +981,24 @@ async def get_gacha(
980981
async with get_db(region) as conn:
981982
gacha_entity = await raw.get_gacha_entity(conn, gacha_id)
982983
return item_response(gacha_entity)
984+
985+
986+
@router.get(
987+
"/{region}/quest-date-range/{range_id}",
988+
summary="Get Quest Date Range data",
989+
response_description="Quest Date Range entity",
990+
response_model=list[MstQuestDateRange],
991+
response_model_exclude_unset=True,
992+
responses=get_error_code([404]),
993+
)
994+
@cache()
995+
async def get_quest_date_range(
996+
region: Region,
997+
range_id: int,
998+
) -> Response:
999+
"""
1000+
Get Quest Date Range info from ID
1001+
"""
1002+
async with get_db(region) as conn:
1003+
ranges = await raw.get_quest_date_range(conn, range_id)
1004+
return list_response(ranges)

app/schemas/raw.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1983,6 +1983,13 @@ class MstQuestConsumeItem(BaseModelORJson):
19831983
questId: int # 94032410
19841984

19851985

1986+
class MstQuestDateRange(BaseModelORJson):
1987+
id: int
1988+
idx: int
1989+
openedAt: int
1990+
closedAt: int
1991+
1992+
19861993
class MstQuestExtension(BaseModelORJson):
19871994
questId: int
19881995
subType: int

0 commit comments

Comments
 (0)