36 lines
1.3 KiB
Rust
36 lines
1.3 KiB
Rust
use std::{error::Error, fmt};
|
|
|
|
#[derive(Clone, Debug, PartialEq, Eq)]
|
|
pub enum CreativeAgentError {
|
|
MissingSessionId,
|
|
MissingOwnerUserId,
|
|
MissingMessageId,
|
|
MissingMessageText,
|
|
MissingTemplateSelection,
|
|
MissingCostRange,
|
|
MissingTargetSessionId,
|
|
InvalidStageTransition,
|
|
TemplateNotConfirmed,
|
|
UnsupportedTargetPlayType,
|
|
}
|
|
|
|
impl fmt::Display for CreativeAgentError {
|
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
|
let message = match self {
|
|
Self::MissingSessionId => "creative session_id 缺失",
|
|
Self::MissingOwnerUserId => "creative owner_user_id 缺失",
|
|
Self::MissingMessageId => "creative message_id 缺失",
|
|
Self::MissingMessageText => "creative message text 缺失",
|
|
Self::MissingTemplateSelection => "拼图模板选择缺失",
|
|
Self::MissingCostRange => "拼图模板积分范围缺失",
|
|
Self::MissingTargetSessionId => "目标拼图 session 缺失",
|
|
Self::InvalidStageTransition => "创意 Agent 阶段迁移不合法",
|
|
Self::TemplateNotConfirmed => "拼图模板未确认,不能创建草稿",
|
|
Self::UnsupportedTargetPlayType => "Phase 1 只允许绑定拼图 target",
|
|
};
|
|
write!(f, "{message}")
|
|
}
|
|
}
|
|
|
|
impl Error for CreativeAgentError {}
|