Enrich external API failure audit metadata

This commit is contained in:
kdletters
2026-05-28 15:42:46 +08:00
parent 2cd2b9704b
commit f1fb92aa29
40 changed files with 315 additions and 152 deletions

View File

@@ -1,5 +1,5 @@
use crate::*;
use crate::puzzle::{PuzzleWorkProfileRow, puzzle_work_profile};
use crate::*;
use module_custom_world::CustomWorldPublicationStatus;
use module_puzzle::PuzzlePublicationStatus;
@@ -93,7 +93,9 @@ fn update_work_visibility_tx(
update_wooden_fish_work_visibility(ctx, &profile_id, input.visible)
}
SOURCE_TYPE_MATCH3D => update_match3d_work_visibility(ctx, &profile_id, input.visible),
SOURCE_TYPE_SQUARE_HOLE => update_square_hole_work_visibility(ctx, &profile_id, input.visible),
SOURCE_TYPE_SQUARE_HOLE => {
update_square_hole_work_visibility(ctx, &profile_id, input.visible)
}
SOURCE_TYPE_VISUAL_NOVEL => {
update_visual_novel_work_visibility(ctx, &profile_id, input.visible)
}
@@ -158,7 +160,9 @@ fn puzzle_work_visibility_snapshot(row: &PuzzleWorkProfileRow) -> AdminWorkVisib
subtitle: "拼图关卡".to_string(),
cover_image_src: row.cover_image_src.clone(),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -234,7 +238,9 @@ fn custom_world_work_visibility_snapshot(row: &CustomWorldProfile) -> AdminWorkV
subtitle: row.subtitle.clone(),
cover_image_src: row.cover_image_src.clone(),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -287,7 +293,9 @@ fn jump_hop_work_visibility_snapshot(row: &JumpHopWorkProfileRow) -> AdminWorkVi
subtitle: "跳一跳".to_string(),
cover_image_src: Some(row.cover_image_src.clone()).filter(|value| !value.is_empty()),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -342,7 +350,9 @@ fn wooden_fish_work_visibility_snapshot(
subtitle: "敲木鱼".to_string(),
cover_image_src: Some(row.cover_image_src.clone()).filter(|value| !value.is_empty()),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -395,7 +405,9 @@ fn match3d_work_visibility_snapshot(row: &Match3DWorkProfileRow) -> AdminWorkVis
subtitle: "抓大鹅".to_string(),
cover_image_src: Some(row.cover_image_src.clone()).filter(|value| !value.is_empty()),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -450,7 +462,9 @@ fn square_hole_work_visibility_snapshot(
subtitle: "方洞挑战".to_string(),
cover_image_src: Some(row.cover_image_src.clone()).filter(|value| !value.is_empty()),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -505,7 +519,9 @@ fn visual_novel_work_visibility_snapshot(
subtitle: "视觉小说".to_string(),
cover_image_src: Some(row.cover_image_src.clone()).filter(|value| !value.is_empty()),
visible: row.visible,
published_at_micros: row.published_at.map(|value| value.to_micros_since_unix_epoch()),
published_at_micros: row
.published_at
.map(|value| value.to_micros_since_unix_epoch()),
updated_at_micros: sort_time,
}
}
@@ -544,10 +560,10 @@ fn update_big_fish_work_visibility(
Ok(snapshot)
}
fn big_fish_work_visibility_snapshot(
row: &BigFishCreationSession,
) -> AdminWorkVisibilitySnapshot {
let published_at = row.published_at.map(|value| value.to_micros_since_unix_epoch());
fn big_fish_work_visibility_snapshot(row: &BigFishCreationSession) -> AdminWorkVisibilitySnapshot {
let published_at = row
.published_at
.map(|value| value.to_micros_since_unix_epoch());
let updated_at = timestamp_sort_micros(row.published_at, row.updated_at);
AdminWorkVisibilitySnapshot {
source_type: SOURCE_TYPE_BIG_FISH.to_string(),