Close DDD cleanup and tests-support closure
This commit is contained in:
@@ -1,3 +1,41 @@
|
||||
//! 背包领域事件过渡落位。
|
||||
//! 背包领域事件。
|
||||
//!
|
||||
//! 用于表达物品获得、物品消耗、装备变化和槽位投影变化等事实。
|
||||
|
||||
use crate::domain::InventoryEquipmentSlot;
|
||||
use serde::{Deserialize, Serialize};
|
||||
#[cfg(feature = "spacetime-types")]
|
||||
use spacetimedb::SpacetimeType;
|
||||
|
||||
#[cfg_attr(feature = "spacetime-types", derive(SpacetimeType))]
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
pub enum InventoryDomainEvent {
|
||||
ItemGranted(InventoryItemGrantedEvent),
|
||||
ItemConsumed(InventoryItemConsumedEvent),
|
||||
EquipmentChanged(InventoryEquipmentChangedEvent),
|
||||
}
|
||||
|
||||
#[cfg_attr(feature = "spacetime-types", derive(SpacetimeType))]
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
pub struct InventoryItemGrantedEvent {
|
||||
pub slot_id: String,
|
||||
pub runtime_session_id: String,
|
||||
pub actor_user_id: String,
|
||||
pub occurred_at_micros: i64,
|
||||
}
|
||||
|
||||
#[cfg_attr(feature = "spacetime-types", derive(SpacetimeType))]
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
pub struct InventoryItemConsumedEvent {
|
||||
pub slot_id: String,
|
||||
pub quantity: u32,
|
||||
pub occurred_at_micros: i64,
|
||||
}
|
||||
|
||||
#[cfg_attr(feature = "spacetime-types", derive(SpacetimeType))]
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
pub struct InventoryEquipmentChangedEvent {
|
||||
pub slot_id: String,
|
||||
pub equipment_slot: InventoryEquipmentSlot,
|
||||
pub occurred_at_micros: i64,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user