feat(scum): rebuild plugin-owned management data
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
SELECT
|
||||
'active-quest:' || CAST(quest.id AS TEXT) AS taskRecordId,
|
||||
'active-quest' AS taskKind,
|
||||
CAST(quest.user_profile_id AS TEXT) AS userProfileId,
|
||||
CAST(quest.map_id AS TEXT) AS mapId,
|
||||
CAST(quest.id AS TEXT) AS trackingDataSetId,
|
||||
quest.quest_data_asset_path AS dataAssetPath,
|
||||
tracking.sequence_index AS sequenceIndex,
|
||||
CASE WHEN EXISTS (SELECT 1 FROM tracked_quest tracked WHERE tracked.quest_id = quest.id) THEN 1 ELSE 0 END AS isTracked,
|
||||
'active' AS state,
|
||||
quest.completion_deadline AS completionDeadline
|
||||
FROM active_quest quest
|
||||
JOIN tracking_data_set tracking ON tracking.id = quest.id
|
||||
WHERE (:userProfileId IS NULL OR CAST(quest.user_profile_id AS TEXT) = :userProfileId)
|
||||
UNION ALL
|
||||
SELECT
|
||||
'active-task:' || CAST(task.id AS TEXT), 'active-task', CAST(task.user_profile_id AS TEXT), CAST(task.map_id AS TEXT),
|
||||
CAST(task.id AS TEXT), available.task_data_asset_path, tracking.sequence_index,
|
||||
CASE WHEN EXISTS (SELECT 1 FROM tracked_quest tracked WHERE tracked.quest_id = task.id) THEN 1 ELSE 0 END,
|
||||
'active', NULL
|
||||
FROM active_task task
|
||||
JOIN tracking_data_set tracking ON tracking.id = task.id
|
||||
JOIN available_task available ON available.id = task.available_task_id
|
||||
WHERE (:userProfileId IS NULL OR CAST(task.user_profile_id AS TEXT) = :userProfileId)
|
||||
UNION ALL
|
||||
SELECT
|
||||
'available-task:' || CAST(available.id AS TEXT), 'available-task', CAST(available.user_profile_id AS TEXT), CAST(available.map_id AS TEXT),
|
||||
NULL, available.task_data_asset_path, NULL, 0,
|
||||
CASE WHEN available.was_ever_completed = 1 THEN 'completed-before' ELSE 'available' END, NULL
|
||||
FROM available_task available
|
||||
WHERE (:userProfileId IS NULL OR CAST(available.user_profile_id AS TEXT) = :userProfileId)
|
||||
LIMIT COALESCE(:limit, 500)
|
||||
Reference in New Issue
Block a user