초기커밋

This commit is contained in:
2025-05-01 07:20:41 +09:00
commit 98bb2e3c5c
2747 changed files with 646947 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Nettention.Proud;
using ServerBase;
using MODULE_ID = System.UInt32;
namespace ServerCommon;
//=============================================================================================
//
//=============================================================================================
public abstract partial class ProudNetListener : ListenSessionBase, IModule
{
public ServerLogicBase getServerLogicBase() => m_server_logic_base;
public ModuleContext getModuleContext() => m_module_context;
}

View File

@@ -0,0 +1,58 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ServerCommon;
//=============================================================================================
// Meta 데이터를 특정 데이터 타입으로 복사해주는 인터페이스
//
// author : kangms
//
//=============================================================================================
public interface ICopyDocFromMeta
{
bool copyDocFromMeta(MetaAssets.IMetaData customMeta);
}
public interface ICopyEntityAttributeFromMeta
{
bool copyEntityAttributeFromMeta(MetaAssets.IMetaData customMeta);
}
//=============================================================================================
// Inventory 관련 인터페이스
//
// author : kangms
//
//=============================================================================================
public interface IWithInventoryAccessor
{
void clearItemAll();
List<ItemBase> getHasItemBases();
ServerErrorCode tryEquipWithItemBase(string slotType, ItemBase itemBase);
ServerErrorCode tryUnequipWithItemBase(string slotType, out ItemBase? itemBase);
void onWriteLog();
string toBasicString();
}
//=============================================================================================
// Quest 관련 인터페이스
//
// author : kangms
//
//=============================================================================================
public interface IQuestScriptValidator
{
public void init();
}

View File

@@ -0,0 +1,213 @@
using System.Collections.Concurrent;
using Axion.Collections.Concurrent;
using Google.Protobuf.WellKnownTypes;
using MetaAssets;
using ServerCore; using ServerBase;
namespace ServerCommon;
//파일럿이라 무시하고 이쪽에 넣는다...
public class BattleInstancesObject
{
public EBattleObjectType m_type = EBattleObjectType.None;
public string m_anchor_guid { get; set; } = string.Empty;
public DateTime m_active_time { get; set; } = DateTimeHelper.Current;
public bool m_is_active { get; set; } = true;
public BattleInstancesObject(EBattleObjectType type, string guid)
{
m_type = type;
m_anchor_guid = guid;
}
public BattleInstancesObject(EBattleObjectType type, string guid, bool isActive)
{
m_type = type;
m_anchor_guid = guid;
m_is_active = isActive;
}
}
public class BattleObjectPodStorage : BattleInstancesObject
{
//private ECombatPodType m_combat_pod_type { get; } = ECombatPodType.Storage;
public Int32 m_reward_cnt { get; set; } = 0;
public BattleObjectPodStorage(string anchorGuid) : base(EBattleObjectType.Pod_Combat, anchorGuid)
{
}
}
public class BattleObjectEmpty : BattleInstancesObject
{
public BattleObjectEmpty() : base(EBattleObjectType.None, string.Empty)
{
}
}
public class BattleObjectPodCombat : BattleInstancesObject
{
private ECombatPodType m_combat_pod_type { get; } = ECombatPodType.Pod;
public string m_source_storage_anchor_guid { get; set; } = string.Empty; //pod 발생된 스토리지의 anchor guid
public PodCombatStateType m_state { get; set; } = PodCombatStateType.Active; //warn : 이름 바꾸려면 클라랑 협의
public DateTime m_state_change_time { get; set; } = DateTimeHelper.Current; //이게 상태에 따라 획득한 시간으로도 쓴다.
public Pos m_currenct_Pos { get; set; } = new();
public string m_current_occupier_guid { get; set; } = string.Empty;
public DateTime m_occupied_time { get; set; } = DateTimeHelper.Current; //이게 상태에 따라 획득한 시간으로도 쓴다.
public BattleObjectPodCombat(): base(EBattleObjectType.Pod_Combat, string.Empty, false)
{
}
public BattleObjectPodCombat(string anchorGuid, string sourceAnchorGuid, DateTime startTime) : base(EBattleObjectType.Pod_Combat, anchorGuid, false)
{
m_source_storage_anchor_guid = sourceAnchorGuid;
m_state = PodCombatStateType.Active;
m_active_time = startTime;
init();
}
public void init()
{
m_is_active = true;
}
public void changeDropState( Pos pos)
{
m_state = PodCombatStateType.Dropped;
m_state_change_time = DateTimeHelper.Current;
m_currenct_Pos = pos;
m_current_occupier_guid = string.Empty;
}
public void setDeactive()
{
m_state = PodCombatStateType.DeActive;
m_state_change_time = DateTimeHelper.Current;
m_currenct_Pos = new();
m_current_occupier_guid = String.Empty;
}
public void setActive(DateTime t)
{
m_state = PodCombatStateType.Active;
m_state_change_time = t;
m_active_time = t;
m_currenct_Pos = new();
m_current_occupier_guid = String.Empty;
m_occupied_time = DateTimeHelper.Current;
}
}
public class BattleObjectPickupPod : BattleInstancesObject
{
//public bool m_has_reward = false;
public BattleObjectPickupPod(string anchorGuid) : base(EBattleObjectType.Pod_Box, anchorGuid)
{
}
// public BattleObjectPickupPod(string anchorGuid, bool isActive) : base(EBattleObjectType.Pod_Box, anchorGuid)
// {
// m_is_active = isActive;
// }
public BattleObjectPickupPod clone()
{
BattleObjectPickupPod new_pod = new(m_anchor_guid);
new_pod.m_type = m_type;
new_pod.m_active_time = m_active_time;
new_pod.m_is_active = m_is_active;
return new_pod;
}
}
public class BattleObjectWeapon : BattleInstancesObject
{
//뭐가 필요할까?
public BattleObjectWeapon(string anchorGuid) : base(EBattleObjectType.Weapon, anchorGuid)
{
}
public BattleObjectWeapon clone()
{
BattleObjectWeapon new_weapon = new(m_anchor_guid);
new_weapon.m_type = m_type;
new_weapon.m_active_time = m_active_time;
new_weapon.m_is_active = m_is_active;
return new_weapon;
}
}
public class BattleObjectBuff : BattleInstancesObject
{
//뭐가 필요할까?
public BattleObjectBuff(string anchorGuid) : base(EBattleObjectType.Buff, anchorGuid)
{
}
public BattleObjectBuff clone()
{
BattleObjectBuff new_buff = new(m_anchor_guid);
new_buff.m_type = m_type;
new_buff.m_active_time = m_active_time;
new_buff.m_is_active = m_is_active;
return new_buff;
}
}
public class BattleTacticalBoardInfo
{
//누굴 죽이고 누구한테 죽였는지는 로그를 남긴다.
public string m_user_guid { get; private set; } = string.Empty;
public Int32 m_kill_count { get; set; } = 0;
public Int32 m_Death_count { get; set; } = 0;
public Int32 m_Pod_count { get; set; } = 0;
public BattleTacticalBoardInfo(string userGuid)
{
m_user_guid = userGuid;
}
public BattleTacticalBoardInfo clone()
{
BattleTacticalBoardInfo new_info = new(m_user_guid);
new_info.m_kill_count = m_kill_count;
new_info.m_Death_count = m_Death_count;
new_info.m_Pod_count = m_Pod_count;
return new_info;
}
}
public class PickupPodGeneratedInfo
{
public int m_group_id { get; set; } = 0;
public int m_idx { get; set; } = 0;
public string m_anchor_guid { get; set; } = string.Empty; //픽업포드 anchor_guid
public string m_before_anchor_guid { get; set; } = string.Empty; //이전에 활성화 됏던 anchor_guid
public DateTime m_next_generate_time { get; set; } = DateTimeHelper.Current; //다음 보상 받을 시간
public PickupPodGeneratedInfo(int groupId, int idx, string newAnchorGuid, string beforeAnchorGuid, DateTime nextGenerateTime)
{
m_group_id = groupId;
m_idx = idx;
m_anchor_guid = newAnchorGuid;
m_before_anchor_guid = beforeAnchorGuid;
m_next_generate_time = nextGenerateTime;
}
public PickupPodGeneratedInfo clone()
{
PickupPodGeneratedInfo clone = new(m_group_id, m_idx, m_anchor_guid, m_before_anchor_guid, m_next_generate_time);
return clone;
}
}

View File

@@ -0,0 +1,78 @@
using MetaAssets;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattleObjectInteractionLogInfo : ILogInvoker.IInfo
{
[JsonProperty("interaction_user_guid")]
public string m_interaction_user_guid { get; set; } = string.Empty;
[JsonProperty("interaction_user_nickname")]
public string m_interaction_user_nickname { get; set; } = string.Empty;
[JsonProperty("interaction_anchor_guid")]
public string m_interaction_anchor_guid { get; set; } = string.Empty;
[JsonProperty("room_id")]
public string m_room_id { get; set; } = string.Empty;
[JsonProperty("battle_object_type")]
public EBattleObjectType m_battle_object_type { get; set; } = EBattleObjectType.None;
[JsonProperty("pod_type")]
public ECombatPodType m_pod_type { get; set; } = ECombatPodType.None;
[JsonProperty("has_pod_combat")]
public bool m_has_pod_combat { get; set; } = false;
[JsonProperty("pod_combat_pos")]
public Pos m_pod_combat_pos { get; set; } = new();
[JsonProperty("pod_combat_state")]
public PodCombatStateType m_pod_combat_state { get; set; } = PodCombatStateType.None;
[JsonProperty("next_active_time")]
public DateTime m_object_next_active_time = DateTimeHelper.Current;
[JsonProperty("is_active")]
public bool m_is_active = false;
[JsonProperty("reward")]
public List<MetaAssets.Reward> m_rewards = new();
public BattleObjectInteractionLogInfo()
{
}
public BattleObjectInteractionLogInfo(ILogInvoker parent, BattleObjectInteractionLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setLogInfo(logInfo);
}
}
private void setLogInfo(BattleObjectInteractionLogInfo logInfo)
{
m_interaction_user_guid = logInfo.m_interaction_user_guid;
m_interaction_user_nickname = logInfo.m_interaction_user_nickname;
m_interaction_anchor_guid = logInfo.m_interaction_anchor_guid;
m_room_id = logInfo.m_room_id;
m_battle_object_type = logInfo.m_battle_object_type;
m_pod_type = logInfo.m_pod_type;
m_has_pod_combat = logInfo.m_has_pod_combat;
m_pod_combat_pos = logInfo.m_pod_combat_pos;
m_pod_combat_state = logInfo.m_pod_combat_state;
m_object_next_active_time = logInfo.m_object_next_active_time;
m_is_active = logInfo.m_is_active;
m_rewards = logInfo.m_rewards;
}
}

View File

@@ -0,0 +1,52 @@
using MetaAssets;
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattleObjectLogInfo
{
[JsonProperty("anchor_guid")]
public string m_anchor_guid { get; set; } = string.Empty;
[JsonProperty("battle_object_type")]
public EBattleObjectType m_battle_object_type { get; set; } = EBattleObjectType.None;
[JsonProperty("active_time")]
public DateTime m_active_time { get; set; } = DateTimeHelper.Current;
}
public class BattleObjectStateUpdateLogInfo : ILogInvoker.IInfo
{
[JsonProperty("room_id")]
public string m_room_id { get; set; } = string.Empty;
[JsonProperty("object_infos")]
public List<BattleObjectLogInfo> m_infos { get; set; } = new();
public BattleObjectStateUpdateLogInfo()
{
}
public BattleObjectStateUpdateLogInfo(ILogInvoker parent, BattleObjectStateUpdateLogInfo logInfo) : base(parent)
{
if (null != logInfo)
{
setLogInfo(logInfo);
}
}
private void setLogInfo(BattleObjectStateUpdateLogInfo logInfo)
{
m_room_id = logInfo.m_room_id;
m_infos = logInfo.m_infos;
}
}

View File

@@ -0,0 +1,46 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattlePodCombatRewardLogInfo : ILogInvoker.IInfo
{
[JsonProperty("room_id")]
public string m_room_id { get; set; } = string.Empty;
[JsonProperty("round")]
public int m_round { get; set; } = 0;
[JsonProperty("round_state")]
public BattleRoundStateType m_round_state { get; set; } = BattleRoundStateType.None;
[JsonProperty("rewarded_user_guid")]
public string m_rewarded_user_guid { get; set; } = string.Empty;
[JsonProperty("rewarded_user_nickname")]
public string m_rewarded_user_nickname { get; set; } = string.Empty;
[JsonProperty("charged_step")]
public int m_charged_step { get; set; } = 0;
[JsonProperty("rewarded_step")]
public int m_rewarded_step { get; set; } = 0;
[JsonProperty("rewards")]
public List<MetaAssets.Reward> m_rewards { get; set; } = new();
public BattlePodCombatRewardLogInfo(ILogInvoker parent, string roomId, int round, BattleRoundStateType roundSate, string rewardUserGuid, string rewardUserNickname
, int chargedStep, int rewardedStep, List<MetaAssets.Reward> rewards) : base(parent)
{
m_room_id = roomId;
m_round = round;
m_round_state = roundSate;
m_rewarded_user_guid = rewardUserGuid;
m_rewarded_user_nickname = rewardUserNickname;
m_charged_step = chargedStep;
m_rewarded_step = rewardedStep;
m_rewards.AddRange(rewards);
}
}

View File

@@ -0,0 +1,34 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon;
public class BattleRespawnLogInfo : ILogInvoker.IInfo
{
[JsonProperty("room_id")] public string m_room_id { get; set; } = string.Empty;
[JsonProperty("round")] public int m_round { get; set; } = 0;
[JsonProperty("round_state")] public BattleRoundStateType m_round_state { get; set; } = BattleRoundStateType.None;
[JsonProperty("user_guid")] public string m_user_guid { get; set; } = string.Empty;
[JsonProperty("user_nickname")] public string m_user_nickname { get; set; } = string.Empty;
[JsonProperty("respawn_anchor_guid")] public string m_respawn_anchor_guid { get; set; } = string.Empty;
[JsonProperty("m_next_available_respawn_time_at_this_anchor")]
public DateTime m_next_available_respawn_time_at_this_anchor { get; set; } = DateTimeHelper.Current;
public BattleRespawnLogInfo(ILogInvoker parent, string roomId, int round, BattleRoundStateType roundState, string userGuid, string userNickname, string respawnAnchorGuid, DateTime nextAvailableRespawnTimeAtThisAnchor)
: base(parent)
{
m_room_id = roomId;
m_round = round;
m_round_state = roundState;
m_user_guid = userGuid;
m_user_nickname = userNickname;
m_respawn_anchor_guid = respawnAnchorGuid;
m_next_available_respawn_time_at_this_anchor = nextAvailableRespawnTimeAtThisAnchor;
}
}

View File

@@ -0,0 +1,28 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattleRoomJoinSuccessLogInfo : ILogInvoker.IInfo
{
[JsonProperty("join_user_guid")]
public string m_join_user_guid { get; set; } = string.Empty;
[JsonProperty("join_user_nickname")]
public string m_join_user_nickname { get; set; } = string.Empty;
[JsonProperty("room_id")]
public string m_room_id { get; set; } = string.Empty;
[JsonProperty("join_round")]
public int m_join_round { get; set; } = 0;
public BattleRoomJoinSuccessLogInfo(ILogInvoker parent, string joinUserGuid, string joinUserNickname, string roomId, int joinRound) : base(parent)
{
m_join_user_guid = joinUserGuid;
m_join_user_nickname = joinUserNickname;
m_room_id = roomId;
m_join_round = joinRound;
}
}

View File

@@ -0,0 +1,41 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattleRoomPlayerDeadLogInfo : ILogInvoker.IInfo
{
[JsonProperty("dead_user_guid")]
public string m_dead_user_guid { get; set; } = string.Empty;
[JsonProperty("dead_user_nickname")]
public string m_dead_user_nickname { get; set; } = string.Empty;
[JsonProperty("killer_guid")]
public string m_killer_guid { get; set; } = string.Empty;
[JsonProperty("killer_nickname")]
public string m_killer_nickname { get; set; } = string.Empty;
[JsonProperty("room_id")]
public string m_room_id { get; set; } = string.Empty;
[JsonProperty("round")]
public int m_round { get; set; } = 0; //죽은 시점의 라운드
[JsonProperty("has_pod_combat")]
public bool m_has_pod_combat { get; set; } = false;
public BattleRoomPlayerDeadLogInfo(ILogInvoker parent, string deadUserGuid, string deadUserNickname, string killerGuid, string killerNickname
, string roomId, int round, bool hasPodCombat)
: base(parent)
{
m_dead_user_guid = deadUserGuid;
m_dead_user_nickname = deadUserNickname;
m_killer_guid = killerGuid;
m_killer_nickname = killerNickname;
m_room_id = roomId;
m_round = round;
m_has_pod_combat = hasPodCombat;
}
}

View File

@@ -0,0 +1,60 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattleRoundingExistUsers
{
[JsonProperty("user_guid")] public string m_user_guid { get; set; } = string.Empty;
[JsonProperty("user_nickname")] public string m_user_nickname { get; set; } = string.Empty;
public BattleRoundingExistUsers(string userGuid, string nickname)
{
m_user_guid = userGuid;
m_user_nickname = nickname;
}
}
public class BattleRoundingUpdateLogInfo : ILogInvoker.IInfo
{
[JsonProperty("room_id")]
public string m_room_id { get; set; } = string.Empty;
[JsonProperty("ended_round")]
public int m_ended_round { get; set; } = 0;
[JsonProperty("round_state")]
public BattleRoundStateType m_round_state { get; set; } = BattleRoundStateType.None;
[JsonProperty("exist_users")]
public List<BattleRoundingExistUsers> m_exist_users { get; set; } = new();
public BattleRoundingUpdateLogInfo(ILogInvoker parent, string roomId, int endedRound, BattleRoundStateType roundSate, List<BattleRoundingExistUsers> users) : base(parent)
{
m_room_id = roomId;
m_ended_round = endedRound;
m_round_state = roundSate;
m_exist_users.AddRange(users);
}
// public BattleRoundingUpdateLogInfo(string roomId, int endedRound, BattleRoundStateType roundSate, List<BattleRoundingExistUsers> users,
// string rewardUserGuid, string rewardUserNickname, List<MetaAssets.Reward> rewards)
// {
// m_room_id = roomId;
// m_ended_round = endedRound;
// m_round_state = roundSate;
// m_exist_users.AddRange(users);
// m_rewarded_user_guid = rewardUserGuid;
// m_rewarded_user_nickname = rewardUserNickname;
// m_rewards.AddRange(rewards);
// }
}

View File

@@ -0,0 +1,72 @@
using System.Collections.Concurrent;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BattleSnapshotLogInfo : ILogInvoker.IInfo
{
[JsonProperty("room_id")] public string m_room_id { get; set; } = string.Empty;
[JsonProperty("snapshot_load_type")] public string m_snapshot_load_type { get; set; } = string.Empty;
[JsonProperty("play_mode")]
public BattlePlayMode m_play_mode { get; set; } = BattlePlayMode.None;
[JsonProperty("event_start_time")]
public DateTime m_battle_instance_event_start_time { get; set; } = DateTimeHelper.Current;
[JsonProperty("reward_group_id")]
public Int32 m_pod_combat_reward_group_id { get; set; } = 1;
[JsonProperty("ffa_id")]
public Int32 m_pod_combat_ffa_id { get; set; } = 1;
[JsonProperty("hot_time")]
public Int32 m_hot_time_reward { get; set; } = 1;
[JsonProperty("round_count")]
public Int32 m_round_count { get; set; } = 8;
[JsonProperty("respawns")]
public ConcurrentDictionary<string, DateTime> m_respawns {get; set;} = new ();
[JsonProperty("pod_storages")]
public ConcurrentDictionary<string, BattleObjectPodStorage> m_pod_storages {get; set;} = new ();
[JsonProperty("pod_combat")]
public BattleObjectPodCombat m_pod_combat {get; set;} = new ();
[JsonProperty("pickup_pods")]
public ConcurrentDictionary<string, BattleObjectPickupPod> m_pickup_pods {get; set;} = new ();
[JsonProperty("pickup_pods_generation_info")] public List<PickupPodGeneratedInfo> m_pickup_pod_generated_info { get; set; } = new();
[JsonProperty("weapons")]
public ConcurrentDictionary<string, BattleObjectWeapon> m_weapons {get; set;} = new ();
[JsonProperty("buffs")]
public ConcurrentDictionary<string, BattleObjectBuff> m_buffs {get; set;} = new ();
[JsonProperty("state")] public BattleRoundStateType m_round_state_type { get; set; } = BattleRoundStateType.Rounding;
[JsonProperty("round")] public int m_current_round { get; set; } = 1;
[JsonProperty("state_start_time")] public DateTime m_current_state_start_time { get; set; } = DateTimeHelper.Current;
[JsonProperty("charged_step")] public int m_charged_step { get; set; } = 0;
[JsonProperty("rewarded_step")] public int m_rewarded_step { get; set; } = 0;
[JsonProperty("tactical_board")] public ConcurrentDictionary<string, BattleTacticalBoardInfo> m_tactical_board = new();
public BattleSnapshotLogInfo(ILogInvoker parent, string roomId, string loadType)
: base(parent)
{
m_room_id = roomId;
m_snapshot_load_type = loadType;
}
}

View File

@@ -0,0 +1,47 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using ANCHOR_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class AIChatLogData : ILogInvoker.IInfo
{
public AIChatLogData()
: base()
{ }
[JsonProperty]
public string AIChatURL { get; set; } = string.Empty;
[JsonProperty]
public string AIChatBodyParamJson { get; set; } = string.Empty;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(AIChatLogData logData)
{
AIChatURL = logData.AIChatURL;
AIChatBodyParamJson = logData.AIChatBodyParamJson;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public AIChatLogData(ILogInvoker parent, AIChatLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,25 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class AddFriendLogInfo : ILogInvoker.IInfo
{
[JsonProperty("my_guid")]
public string m_my_guid { get; private set; } = string.Empty;
[JsonProperty("my_friend_guid")]
public string m_friend_guid { get; private set; } = string.Empty;
public AddFriendLogInfo(ILogInvoker parent, string myGuid, string friendGuid)
: base(parent)
{
m_my_guid = myGuid;
m_friend_guid = friendGuid;
}
}

View File

@@ -0,0 +1,56 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class AddressLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int WorldMetaId { get; set; }
[JsonProperty]
public int LandMetaId { get; set; }
[JsonProperty]
public int BuildingMetaId { get; set; }
[JsonProperty]
public int Floor { get; set; }
[JsonProperty]
public int InstanceMetaId { get; set; }
[JsonProperty]
public string MyhomeGuid { get; set; } = string.Empty;
[JsonProperty]
public string OwnerGuid { get; set; } = string.Empty;
public AddressLogInfo()
: base()
{ }
public AddressLogInfo(ILogInvoker parent, AddressLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setAddressInfo(logParam);
}
}
public void setAddressInfo(AddressLogInfo logInfo)
{
WorldMetaId = logInfo.WorldMetaId;
LandMetaId = logInfo.LandMetaId;
BuildingMetaId = logInfo.BuildingMetaId;
Floor = logInfo.Floor;
InstanceMetaId = logInfo.InstanceMetaId;
MyhomeGuid = logInfo.MyhomeGuid;
OwnerGuid = logInfo.OwnerGuid;
}
}

View File

@@ -0,0 +1,112 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
using ACCOUNT_ID = System.String;
using ACCOUNT_ID_STRING = System.String;
using USER_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class AuthLoginOutLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public ACCOUNT_ID AccountId { get; set; } = string.Empty;
[JsonProperty]
public ACCOUNT_ID_STRING AccountIdString { get; set; } = string.Empty;
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
[JsonProperty]
public string AuthWebAccessToken { get; set; } = string.Empty;
[JsonProperty]
public DeviceType DeviceType { get; set; } = DeviceType.None;
[JsonProperty]
public string DeviceDetailType { get; set; } = string.Empty;
[JsonProperty]
public PlatformType PlatformType { get; set; } = PlatformType.None;
[JsonProperty]
public string PlatformDetailType { get; set; } = string.Empty;
[JsonProperty]
public OsType OsType { get; set; } = OsType.None;
[JsonProperty]
public string OsDetailType { get; set; } = string.Empty;
[JsonProperty]
public LanguageType LanguageType { get; set; } = LanguageType.None;
[JsonProperty]
public string Ip { get; set; } = string.Empty;
[JsonProperty]
public LoginMethodType LoginMethodType { get; set; } = LoginMethodType.None;
[JsonProperty]
public LoginFailureReasonType LoginFailureReasonType { get; set; } = LoginFailureReasonType.None;
[JsonProperty]
public string LoginFailureDetailType { get; set; } = string.Empty;
[JsonProperty]
public LogoutReasonType LogoutReasonType { get; set; } = LogoutReasonType.None;
[JsonProperty]
public DateTime LoginTime { get; set; } = DateTimeHelper.MinTime;
[JsonProperty]
public DateTime LogoutTime { get; set; } = DateTimeHelper.MinTime;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public AuthLoginOutLogInfo()
: base()
{ }
public void setInfo(AuthLoginOutLogInfo logInfo)
{
AccountId = logInfo.AccountId;
AccountIdString = logInfo.AccountIdString;
UserGuid = logInfo.UserGuid;
AuthWebAccessToken = logInfo.AuthWebAccessToken;
DeviceType = logInfo.DeviceType;
DeviceDetailType = logInfo.DeviceDetailType;
PlatformType = logInfo.PlatformType;
PlatformDetailType = logInfo.PlatformDetailType;
OsType = logInfo.OsType;
OsDetailType = logInfo.OsDetailType;
LanguageType = logInfo.LanguageType;
Ip = logInfo.Ip;
LoginMethodType = logInfo.LoginMethodType;
LoginFailureReasonType = logInfo.LoginFailureReasonType;
LoginFailureDetailType = logInfo.LoginFailureDetailType;
LoginTime = logInfo.LoginTime;
LogoutReasonType = logInfo.LogoutReasonType;
LogoutTime = logInfo.LogoutTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public AuthLoginOutLogInfo(ILogInvoker parent, DateTime processTime, AuthLoginOutLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
if (parent.getLogActionType() == LogActionType.LoginToUserAuth.ToString())
{
LoginTime = processTime;
}
else if (parent.getLogActionType() == LogActionType.UserLogout.ToString())
{
LogoutTime = processTime;
}
}
}
}

View File

@@ -0,0 +1,172 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using UGC_NPC_META_GUID = System.String;
using OWNER_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class BeaconCreateLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public UGC_NPC_META_GUID UgcNpcMetaGuid { get; set; } = string.Empty;
[JsonProperty]
public string UgcNpcPK { get; set; } = string.Empty;
[JsonProperty]
public string UgcNpcSK { get; set; } = string.Empty;
[JsonProperty]
public string UgcNpcNickname { get; set; } = string.Empty;
[JsonProperty]
public string Title { get; set; } = string.Empty;
[JsonProperty]
public string Greeting { get; set; } = string.Empty;
[JsonProperty]
public string Introduction { get; set; } = string.Empty;
[JsonProperty]
public string Description { get; set; } = string.Empty;
[JsonProperty]
public string WorldScenario { get; set; } = string.Empty;
[JsonProperty]
public META_ID DefaultSocialActionMetaId { get; set; } = 0;
[JsonProperty]
public List<META_ID> HabitSocialActionMetaIds { get; set; } = new List<META_ID>();
[JsonProperty]
public List<META_ID> DialogueSocialActionMetaIds { get; set; } = new List<META_ID>();
[JsonProperty]
public List<META_ID> HashTagMetaIds { get; set; } = new();
[JsonProperty]
public META_ID BodyItemMetaId { get; set; } = 0;
[JsonProperty]
public OwnerEntityType OwnerEntityType { get; set; } = OwnerEntityType.None;
[JsonProperty]
public OWNER_GUID OwnerGuid { get; set; } = string.Empty;
[JsonProperty]
public LanguageType LanguageType { get; set; } = LanguageType.None;
[JsonProperty]
public DateTime CreatedTime { get; set; } = DateTimeHelper.MinTime;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public BeaconCreateLogInfo()
: base()
{
}
public void setInfo(BeaconCreateLogInfo logInfo)
{
ArgumentNullReferenceCheckHelper.throwIfNull(logInfo, () => $"logInfo is null !!!");
UgcNpcMetaGuid = logInfo.UgcNpcMetaGuid;
UgcNpcPK = logInfo.UgcNpcPK;
UgcNpcSK = logInfo.UgcNpcSK;
UgcNpcNickname = logInfo.UgcNpcNickname;
Title = logInfo.Title;
Greeting = logInfo.Greeting;
Introduction = logInfo.Introduction;
Description = logInfo.Description;
WorldScenario = logInfo.WorldScenario;
DefaultSocialActionMetaId = logInfo.DefaultSocialActionMetaId;
HabitSocialActionMetaIds = logInfo.HabitSocialActionMetaIds.ToList();
DialogueSocialActionMetaIds = logInfo.DialogueSocialActionMetaIds.ToList();
HashTagMetaIds = logInfo.HashTagMetaIds.ToList();
BodyItemMetaId = logInfo.BodyItemMetaId;
OwnerEntityType = logInfo.OwnerEntityType;
OwnerGuid = logInfo.OwnerGuid;
LanguageType = logInfo.LanguageType;
CreatedTime = logInfo.CreatedTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public BeaconCreateLogInfo(ILogInvoker parent, DateTime createdTime, BeaconCreateLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
CreatedTime = createdTime;
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( UGC_NPC_META_GUID ugcNpcMetaGuid
, string ugcNpcPK, string ugcNpcSK
, string ugcNpcNickname
, string title, string greeting, string introduction, string description, string worldScenario
, META_ID defaultSocialActionMetaId, List<META_ID> habitSocialActionMetaIds, List<META_ID> dialogueSocialActionMetaIds
, List<META_ID> hashTagMetaIds
, META_ID bodyItemMetaId
, OwnerEntityType ownerEntityType, OWNER_GUID ownerGuid, LanguageType languageType
, DateTime createdTime )
{
ArgumentNullReferenceCheckHelper.throwIfNull(habitSocialActionMetaIds, () => $"habitSocialActionMetaIds is null !!!");
ArgumentNullReferenceCheckHelper.throwIfNull(dialogueSocialActionMetaIds, () => $"dialogueSocialActionMetaIds is null !!!");
ArgumentNullReferenceCheckHelper.throwIfNull(hashTagMetaIds, () => $"hashTagMetaIds is null !!!");
UgcNpcMetaGuid = ugcNpcMetaGuid;
UgcNpcPK = ugcNpcPK;
UgcNpcSK = ugcNpcSK;
UgcNpcNickname = ugcNpcNickname;
Title = title;
Greeting = greeting;
Introduction = introduction;
Description = description;
WorldScenario = worldScenario;
DefaultSocialActionMetaId = defaultSocialActionMetaId;
HabitSocialActionMetaIds = habitSocialActionMetaIds;
DialogueSocialActionMetaIds = dialogueSocialActionMetaIds;
HashTagMetaIds = hashTagMetaIds;
BodyItemMetaId = bodyItemMetaId;
OwnerEntityType = ownerEntityType;
OwnerGuid = ownerGuid;
LanguageType = languageType;
CreatedTime = createdTime;
}
}

View File

@@ -0,0 +1,140 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using UGC_NPC_META_GUID = System.String;
using OWNER_GUID = System.String;
using ANCHOR_META_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class BeaconLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public UGC_NPC_META_GUID UgcNpcMetaGuid { get; set; } = string.Empty;
[JsonProperty]
public string UgcNpcPK { get; set; } = string.Empty;
[JsonProperty]
public string UgcNpcSK { get; set; } = string.Empty;
[JsonProperty]
public string UgcNpcNickname { get; set; } = string.Empty;
[JsonProperty]
public OwnerEntityType OwnerEntityType { get; set; } = OwnerEntityType.None;
[JsonProperty]
public OWNER_GUID OwnerGuid { get; set; } = string.Empty;
[JsonProperty]
public LanguageType LanguageType { get; set; } = LanguageType.None;
[JsonProperty]
public EntityStateType State { get; set; } = EntityStateType.None;
[JsonProperty]
public ANCHOR_META_GUID AnchorMetaGuid { get; set; } = string.Empty;
[JsonProperty]
public META_ID MetaIdOfEntityStateType { get; set; } = 0;
[JsonProperty]
public string LocatedInstanceGuid { get; set; } = string.Empty;
[JsonProperty]
public META_ID LocatedInstanceMetaId { get; set; } = 0;
[JsonProperty]
public bool IsRegisteredAiChatServer { get; set; } = false;
[JsonProperty]
private EntityPos CurrentPos = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public BeaconLogInfo()
: base()
{
}
public void setInfo(BeaconLogInfo logInfo)
{
ArgumentNullReferenceCheckHelper.throwIfNull(logInfo, () => $"logInfo is null !!!");
UgcNpcMetaGuid = logInfo.UgcNpcMetaGuid;
UgcNpcPK = logInfo.UgcNpcPK;
UgcNpcSK = logInfo.UgcNpcSK;
UgcNpcNickname = logInfo.UgcNpcNickname;
OwnerEntityType = logInfo.OwnerEntityType;
OwnerGuid = logInfo.OwnerGuid;
LanguageType = logInfo.LanguageType;
State = logInfo.State;
AnchorMetaGuid = logInfo.AnchorMetaGuid;
MetaIdOfEntityStateType = logInfo.MetaIdOfEntityStateType;
LocatedInstanceGuid = logInfo.LocatedInstanceGuid;
LocatedInstanceMetaId = logInfo.LocatedInstanceMetaId;
IsRegisteredAiChatServer = logInfo.IsRegisteredAiChatServer;
CurrentPos = logInfo.CurrentPos;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public BeaconLogInfo(ILogInvoker parent, BeaconLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( UGC_NPC_META_GUID ugcNpcMetaGuid
, string ugcNpcPK, string ugcNpcSK
, string ugcNpcNickname
, OwnerEntityType ownerEntityType, OWNER_GUID ownerGuid, LanguageType languageType
, EntityStateType state
, ANCHOR_META_GUID anchorMetaGuid
, META_ID metaIdOfEntityStateType, string locatedInstanceGuid, META_ID locatedInstanceMetaId
, bool isRegisteredAiChatServer
, EntityPos currentPos)
{
ArgumentNullReferenceCheckHelper.throwIfNull(currentPos, () => $"currentPos is null !!!");
UgcNpcMetaGuid = ugcNpcMetaGuid;
UgcNpcPK = ugcNpcPK;
UgcNpcSK = ugcNpcSK;
UgcNpcNickname = ugcNpcNickname;
OwnerEntityType = ownerEntityType;
OwnerGuid = ownerGuid;
LanguageType = languageType;
State = state;
AnchorMetaGuid = anchorMetaGuid;
MetaIdOfEntityStateType = metaIdOfEntityStateType;
LocatedInstanceGuid = locatedInstanceGuid;
LocatedInstanceMetaId = locatedInstanceMetaId;
IsRegisteredAiChatServer = isRegisteredAiChatServer;
CurrentPos = currentPos;
}
}

View File

@@ -0,0 +1,77 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using ANCHOR_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class BeaconShopLogData : ILogInvoker.IInfo
{
public BeaconShopLogData()
: base()
{ }
[JsonProperty]
public string ItemGuid { get; set; } = string.Empty;
[JsonProperty]
public int TagId { get; set; } = 0;
[JsonProperty]
public string BeaconGuid { get; set; } = string.Empty;
[JsonProperty]
public string BeaconNickName { get; set; } = string.Empty;
[JsonProperty]
public string BeaconTitle { get; set; } = string.Empty;
[JsonProperty]
public int BeaconBodyItemMetaId { get; set; } = 0;
[JsonProperty]
public double PriceForUnit { get; set; } = 0;
[JsonProperty]
public int Amount { get; set; } = 0;
[JsonProperty]
public string OwnerGuid { get; set; } = string.Empty;
[JsonProperty]
public string OwnerNickName { get; set; } = string.Empty;
[JsonProperty]
public string BeaconMyHomeGuid { get; set; } = string.Empty;
[JsonProperty]
public DateTime SellingFinishTime { get; set; } = new();
[JsonProperty]
public string BuyerGuid { get; set; } = string.Empty;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(BeaconShopLogData logData)
{
TagId = logData.TagId;
BeaconGuid = logData.BeaconGuid;
BeaconNickName = logData.BeaconNickName;
BeaconTitle = logData.BeaconTitle;
BeaconBodyItemMetaId = logData.BeaconBodyItemMetaId;
PriceForUnit = logData.PriceForUnit;
Amount = logData.Amount;
OwnerGuid = logData.OwnerGuid;
OwnerNickName = logData.OwnerNickName;
BeaconMyHomeGuid = logData.BeaconMyHomeGuid;
SellingFinishTime = logData.SellingFinishTime;
BuyerGuid = logData.BuyerGuid;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public BeaconShopLogData(ILogInvoker parent, BeaconShopLogData itemParam)
: base(parent)
{
setItemInfo(itemParam);
}
}

View File

@@ -0,0 +1,53 @@
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
using META_ID = System.UInt32;
using USER_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class BeaconShopSoldPriceLogData : ILogInvoker.IInfo
{
public BeaconShopSoldPriceLogData()
: base()
{ }
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
[JsonProperty]
public BEACON_GUID BeaconGuid { get; set; } = string.Empty;
[JsonProperty]
public double deltaPrice { get; set; } = 0;
[JsonProperty]
public double deltaTaxPrice { get; set; } = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(BeaconShopSoldPriceLogData logData)
{
UserGuid = logData.UserGuid;
BeaconGuid = logData.BeaconGuid;
deltaPrice = logData.deltaPrice;
deltaTaxPrice = logData.deltaTaxPrice;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public BeaconShopSoldPriceLogData(ILogInvoker parent, BeaconShopSoldPriceLogData itemParam)
: base(parent)
{
setItemInfo(itemParam);
}
}

View File

@@ -0,0 +1,66 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using USER_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class BeaconShopSoldRecordLogData : ILogInvoker.IInfo
{
public BeaconShopSoldRecordLogData()
: base()
{ }
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
[JsonProperty]
public BEACON_GUID BeaconGuid { get; set; } = string.Empty;
[JsonProperty]
public META_ID ItemMetaId { get; set; } = 0;
[JsonProperty]
public string BuyerNickName { get; set; } = string.Empty;
[JsonProperty]
public double PriceForUnit { get; set; } = 0;
[JsonProperty]
public int Amount { get; set; } = 0;
[JsonProperty]
public DateTime SalesTime { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(BeaconShopSoldRecordLogData logData)
{
UserGuid = logData.UserGuid;
BeaconGuid = logData.BeaconGuid;
ItemMetaId = logData.ItemMetaId;
BuyerNickName = logData.BuyerNickName;
PriceForUnit = logData.PriceForUnit;
Amount = logData.Amount;
SalesTime = logData.SalesTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public BeaconShopSoldRecordLogData(ILogInvoker parent, BeaconShopSoldRecordLogData itemParam)
: base(parent)
{
setItemInfo(itemParam);
}
}

View File

@@ -0,0 +1,52 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using ANCHOR_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class BuffLogData : ILogInvoker.IInfo
{
public BuffLogData()
: base()
{ }
[JsonProperty("buff_meta_id")]
public META_ID BuffMetaID { get; set; } = 0;
[JsonProperty("buff_start_time")]
public DateTime BuffStartTime { get; set; } = new();
[JsonProperty("buff_end_time")]
public DateTime BuffEndTime { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(BuffLogData logData)
{
BuffMetaID = logData.BuffMetaID;
BuffStartTime = logData.BuffStartTime;
BuffEndTime = logData.BuffEndTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public BuffLogData(ILogInvoker parent, BuffLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,60 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BuildingLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int BuildingMetaId { get; set; }
[JsonProperty]
public string OwnerGuid { get; set; } = string.Empty;
[JsonProperty]
public CurrencyType RentalCurrencyType { get; set; } = CurrencyType.None;
[JsonProperty]
public double RentalCurrencyAmount { get; set; } = 0;
[JsonProperty]
public bool IsRentalOpen { get; set; } = false;
public BuildingLogInfo()
: base()
{ }
public BuildingLogInfo(ILogInvoker parent, BuildingLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setBuildingInfo(logParam);
}
}
public void setBuildingInfo(BuildingLogInfo logInfo)
{
BuildingMetaId = logInfo.BuildingMetaId;
OwnerGuid = logInfo.OwnerGuid;
RentalCurrencyType = logInfo.RentalCurrencyType;
RentalCurrencyAmount = logInfo.RentalCurrencyAmount;
IsRentalOpen = logInfo.IsRentalOpen;
}
public void setLogProperty(int buildingMetaId, string ownerGuid, CurrencyType currencyType, double currencyAmount, bool isRentalOpen)
{
BuildingMetaId = buildingMetaId;
OwnerGuid = ownerGuid;
RentalCurrencyType = currencyType;
RentalCurrencyAmount = currencyAmount;
IsRentalOpen = isRentalOpen;
}
}

View File

@@ -0,0 +1,67 @@

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class BuildingProfitLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int BuildingMetaId { get; set; }
[JsonProperty]
public int Floor { get; set; }
[JsonProperty]
public CurrencyType CurrencyType { get; set; } = CurrencyType.None;
[JsonProperty]
public AmountDeltaType AmountDeltaType { get; private set; } = AmountDeltaType.None;
[JsonProperty]
public double DeltaAmount { get; private set; } = 0.0d;
[JsonProperty]
public double CurrencyAmount { get; private set; } = 0.0d;
public BuildingProfitLogInfo()
: base()
{ }
public BuildingProfitLogInfo(ILogInvoker parent, BuildingProfitLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setBuildingInfo(logParam);
}
}
public void setBuildingInfo(BuildingProfitLogInfo logInfo)
{
BuildingMetaId = logInfo.BuildingMetaId;
Floor = logInfo.Floor;
CurrencyType = logInfo.CurrencyType;
AmountDeltaType = logInfo.AmountDeltaType;
DeltaAmount = logInfo.DeltaAmount;
CurrencyAmount = logInfo.CurrencyAmount;
}
public void setLogProperty(int buildingMetaId, int floor, CurrencyType currencyType, AmountDeltaType amountDeltaType, double deltaAmount, double currencyAmount)
{
BuildingMetaId = buildingMetaId;
Floor = floor;
CurrencyType = currencyType;
AmountDeltaType = amountDeltaType;
DeltaAmount = deltaAmount;
CurrencyAmount = currencyAmount;
}
}

View File

@@ -0,0 +1,40 @@
using ThirdParty.Json.LitJson;
using ServerCore;
using ServerBase;
using ServerCommon;
using ServerCommon.BusinessLogDomain;
using MetaAssets;
namespace ServerCommon.BusinessLogDomain;
public class CaliumConverterFailLogData : ILogInvoker.IInfo
{
public CaliumConverterFailLogData(double delta) : base()
{
CaliumDelta = delta;
}
[JsonProperty] public string? Message { get; set; }
[JsonProperty] public double CaliumDelta { get; set; }
[JsonProperty] public DateTime FailTime { get; set; } = DateTimeHelper.Current;
public void setInfo(CaliumConverterFailLogData log)
{
Message = log.Message;
CaliumDelta = log.CaliumDelta;
FailTime = log.FailTime;
}
public CaliumConverterFailLogData(ILogInvoker parent, CaliumConverterFailLogData failLog)
: base(parent)
{
if (null != failLog)
{
setInfo(failLog);
}
}
}

View File

@@ -0,0 +1,36 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class CaliumConverterLogData : ILogInvoker.IInfo
{
public CaliumConverterLogData() : base() {}
[JsonProperty] public double CurrentDailyCalium { get; set; }
[JsonProperty] public double CurrentTotalCalium { get; set; }
[JsonProperty] public double DeltaDailyCalium { get; set; }
[JsonProperty] public double DeltaTotalCalium { get; set; }
[JsonProperty] public AmountDeltaType AmountDeltaType { get; set; } = AmountDeltaType.None;
public void setInfo(CaliumConverterLogData log)
{
CurrentDailyCalium = log.CurrentDailyCalium;
CurrentTotalCalium = log.CurrentTotalCalium;
DeltaDailyCalium = log.DeltaDailyCalium;
DeltaTotalCalium = log.DeltaTotalCalium;
AmountDeltaType = log.AmountDeltaType;
}
public CaliumConverterLogData(ILogInvoker parent, CaliumConverterLogData failLog)
: base(parent)
{
if (null != failLog)
{
setInfo(failLog);
}
}
}

View File

@@ -0,0 +1,38 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class CaliumEchoSystemFailLogData : ILogInvoker.IInfo
{
public CaliumEchoSystemFailLogData() : base() {}
[JsonProperty] public string FailCode { get; set; } = string.Empty;
[JsonProperty] public List<string> FailMessages { get; set; } = new();
[JsonProperty] public bool ReTry { get; set; } = false;
[JsonProperty] public DateTime FailTime { get; set; } = DateTimeHelper.Current;
[JsonProperty] public CaliumEventData? EventData { get; set; }
public void setInfo(CaliumEchoSystemFailLogData log)
{
FailCode = log.FailCode;
FailMessages = log.FailMessages;
ReTry = log.ReTry;
FailTime = log.FailTime;
EventData = EventData;
}
public CaliumEchoSystemFailLogData(ILogInvoker parent, CaliumEchoSystemFailLogData failLog)
: base(parent)
{
if (null != failLog)
{
setInfo(failLog);
}
}
}

View File

@@ -0,0 +1,44 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using ANCHOR_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class CartLogData : ILogInvoker.IInfo
{
public CartLogData()
: base()
{ }
[JsonProperty]
public List<(META_ID,int)> deltaItemDataList { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(CartLogData logData)
{
deltaItemDataList = logData.deltaItemDataList;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CartLogData(ILogInvoker parent, CartLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,26 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon;
public class ChangeDanceEntityState : ILogInvoker.IInfo
{
[JsonProperty] public EntityStateType m_origin_type { get; set; } = EntityStateType.None;
[JsonProperty] public EntityStateType m_change_type { get; set; } = EntityStateType.None;
[JsonProperty] public string m_meta_guid { get; set; } = string.Empty;
[JsonProperty] public UInt32 m_meta_id { get; set; } = 0;
public ChangeDanceEntityState(ILogInvoker parent, EntityStateType originType, EntityStateType changeType, string metaGuid, UInt32 metaId)
: base(parent)
{
m_origin_type = originType;
m_change_type = changeType;
m_meta_guid = metaGuid;
m_meta_id = m_meta_id;
}
}

View File

@@ -0,0 +1,93 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using CHARACTER_GUID = System.String;
using META_TYPE = System.String;
namespace ServerCommon.BusinessLogDomain;
public class CharacterCreateLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public CHARACTER_GUID CharacterGuid { get; set; } = string.Empty;
[JsonProperty]
public string CharacterPK { get; set; } = string.Empty;
[JsonProperty]
public string CharacterSK { get; set; } = string.Empty;
[JsonProperty]
public META_TYPE CharacterCreateMetaType { get; set; } = string.Empty;
[JsonProperty]
public META_ID CharacterCreateMetaId { get; set; } = 0;
[JsonProperty]
public DateTime CreatedTime { get; set; } = DateTimeHelper.MinTime;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public CharacterCreateLogInfo()
: base()
{
}
public void setInfo(CharacterCreateLogInfo logInfo)
{
ArgumentNullReferenceCheckHelper.throwIfNull(logInfo, () => $"logInfo is null !!!");
CharacterGuid = logInfo.CharacterGuid;
CharacterPK = logInfo.CharacterPK;
CharacterSK = logInfo.CharacterSK;
CharacterCreateMetaType = logInfo.CharacterCreateMetaType;
CharacterCreateMetaId = logInfo.CharacterCreateMetaId;
CreatedTime = logInfo.CreatedTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CharacterCreateLogInfo(ILogInvoker parent, DateTime processTime, CharacterCreateLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setInfo(logParam);
CreatedTime = processTime;
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( CHARACTER_GUID charGuid
, string charPK, string charSK
, META_TYPE charCreateMetaType
, META_ID charCreateMetaId
, DateTime createdTime )
{
CharacterGuid = charGuid;
CharacterPK = charPK;
CharacterSK = charSK;
CharacterCreateMetaType = charCreateMetaType;
CharacterCreateMetaId = charCreateMetaId;
CreatedTime = createdTime;
}
}

View File

@@ -0,0 +1,80 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using CHARACTER_GUID = System.String;
using META_TYPE = System.String;
namespace ServerCommon.BusinessLogDomain;
public class CharacterLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public CHARACTER_GUID CharacterGuid { get; set; } = string.Empty;
[JsonProperty]
public string CharacterPK { get; set; } = string.Empty;
[JsonProperty]
public string CharacterSK { get; set; } = string.Empty;
[JsonProperty]
public List<int> CustomAppearance { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public CharacterLogInfo()
: base()
{
}
public void setInfo(CharacterLogInfo logInfo)
{
ArgumentNullReferenceCheckHelper.throwIfNull(logInfo, () => $"logInfo is null !!!");
CharacterGuid = logInfo.CharacterGuid;
CharacterPK = logInfo.CharacterPK;
CharacterSK = logInfo.CharacterSK;
CustomAppearance = logInfo.CustomAppearance;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CharacterLogInfo(ILogInvoker parent, CharacterLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setInfo(logParam);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( CHARACTER_GUID charGuid
, string charPK, string charSK
, List<int> customAppearance )
{
CharacterGuid = charGuid;
CharacterPK = charPK;
CharacterSK = charSK;
CustomAppearance = customAppearance;
}
}

View File

@@ -0,0 +1,41 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class CharacterProfileLogData : ILogInvoker.IInfo
{
public CharacterProfileLogData()
: base()
{ }
[JsonProperty]
public string SNSLick { get; set; } = string.Empty;
[JsonProperty]
public string Message { get; set; } = string.Empty;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(CharacterProfileLogData logData)
{
SNSLick = logData.SNSLick;
Message = logData.Message;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CharacterProfileLogData(ILogInvoker parent, CharacterProfileLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,47 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class ChatLogData : ILogInvoker.IInfo
{
public ChatLogData()
: base()
{ }
[JsonProperty]
public string TargetUser { get; set; } = string.Empty;
[JsonProperty]
public string ChatMessage { get; set; } = string.Empty;
[JsonProperty]
public int cellPosX { get; set; } = 0;
[JsonProperty]
public int cellPosY { get; set; } = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(ChatLogData logData)
{
TargetUser = logData.TargetUser;
ChatMessage = logData.ChatMessage;
cellPosX = logData.cellPosX;
cellPosY = logData.cellPosY;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public ChatLogData(ILogInvoker parent, ChatLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,34 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class CheatClaimResetLogInfo : ILogInvoker.IInfo
{
[JsonProperty("claim_type")]
public MetaAssets.ClaimType claim_type { get; private set; } = MetaAssets.ClaimType.None;
[JsonProperty("claim_id")]
public Int32 claim_id { get; set; } = 0;
[JsonProperty("active_reward_idx")]
public int ActiveRewardIdx { get; set; } = 0;
public CheatClaimResetLogInfo(ILogInvoker parent) : base(parent)
{
}
public static CheatClaimResetLogInfo creatCheatClaimResetLogInfo(ILogInvoker parent, MetaAssets.ClaimType claimType, Int32 claimId, Int32 ActiveRewardIdx)
{
CheatClaimResetLogInfo log_info = new CheatClaimResetLogInfo(parent);
log_info.claim_type = claimType;
log_info.claim_id = claimId;
log_info.ActiveRewardIdx = ActiveRewardIdx;
return log_info;
}
}

View File

@@ -0,0 +1,36 @@
using System;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon;
public class CheatClaimRewardableLogInfo : ILogInvoker.IInfo
{
[JsonProperty("claim_type")]
public MetaAssets.ClaimType claim_type { get; private set; } = MetaAssets.ClaimType.None;
[JsonProperty("claim_id")]
public Int32 claim_id { get; set; } = 0;
[JsonProperty("active_reward_idx")]
public int ActiveRewardIdx { get; set; } = 0;
public CheatClaimRewardableLogInfo(ILogInvoker parent) : base(parent)
{
}
public static CheatClaimRewardableLogInfo creatCheatClaimRewardableLogInfo(ILogInvoker parent, MetaAssets.ClaimType claimType, Int32 claimId, Int32 ActiveRewardIdx)
{
CheatClaimRewardableLogInfo log_info = new CheatClaimRewardableLogInfo(parent);
log_info.claim_type = claimType;
log_info.claim_id = claimId;
log_info.ActiveRewardIdx = ActiveRewardIdx;
return log_info;
}
}

View File

@@ -0,0 +1,26 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class ClaimRewardLogInfo : ILogInvoker.IInfo
{
[JsonProperty("claim_id")]
public long ClaimId { get; private set; } = 0;
[JsonProperty("claim_type")]
public int ClaimType { get; private set; } = 0;
[JsonProperty("reward_data_id")]
public int RewardDataId { get; private set; } = 0;
public ClaimRewardLogInfo(ILogInvoker parent, long claimId, int claimType, int rewardDataId) : base(parent)
{
ClaimId = claimId;
ClaimType = claimType;
RewardDataId = rewardDataId;
}
}

View File

@@ -0,0 +1,59 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using ANCHOR_GUID = System.String;
using BEACON_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class CraftLogData : ILogInvoker.IInfo
{
public CraftLogData()
: base()
{ }
[JsonProperty("anchor_guid")]
public ANCHOR_GUID AnchorGuid { get; set; } = string.Empty;
[JsonProperty("craft_meta_id")]
public META_ID CraftMetaId { get; set; } = 0;
[JsonProperty("craft_start_time")]
public DateTime CraftStartTime { get; set; } = new();
[JsonProperty("craft_finish_time")]
public DateTime CraftFinishTime { get; set; } = new();
[JsonProperty("beacon_guid")]
public BEACON_GUID BeaconGuid { get; set; } = string.Empty;
[JsonProperty("craft_count")]
public int CraftCount { get; set; } = 1;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(CraftLogData logData)
{
AnchorGuid = logData.AnchorGuid;
CraftMetaId = logData.CraftMetaId;
CraftStartTime = logData.CraftStartTime;
CraftFinishTime = logData.CraftFinishTime;
BeaconGuid = logData.BeaconGuid;
CraftCount = logData.CraftCount;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CraftLogData(ILogInvoker parent, CraftLogData itemParam)
: base(parent)
{
setItemInfo(itemParam);
}
}

View File

@@ -0,0 +1,46 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using USER_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class CraftHelpLogData : ILogInvoker.IInfo
{
public CraftHelpLogData()
: base()
{ }
[JsonProperty("help_user_guids")]
public List<USER_GUID> HelpUserGuids { get; set; } = new();
[JsonProperty("helped_user_guids")]
public List<USER_GUID> HelpedUserGuids { get; set; } = new();
[JsonProperty("craft_help_updateday")]
public DateTime CraftHelpUpdateDay { get; set; } = DateTime.UtcNow;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(CraftHelpLogData logData)
{
HelpUserGuids = logData.HelpUserGuids;
HelpedUserGuids = logData.HelpedUserGuids;
CraftHelpUpdateDay = logData.CraftHelpUpdateDay;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CraftHelpLogData(ILogInvoker parent, CraftHelpLogData itemParam)
: base(parent)
{
setItemInfo(itemParam);
}
}

View File

@@ -0,0 +1,40 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain;
public class CraftRecipeLogData : ILogInvoker.IInfo
{
public CraftRecipeLogData()
: base()
{ }
[JsonProperty]
public META_ID recipe_meta_id { get; set; } = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(CraftRecipeLogData logData)
{
recipe_meta_id = logData.recipe_meta_id;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CraftRecipeLogData(ILogInvoker parent, CraftRecipeLogData itemParam)
: base(parent)
{
setItemInfo(itemParam);
}
}

View File

@@ -0,0 +1,28 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class CurrencyInfo : ILogInvoker.IInfo
{
[JsonProperty]
public CurrencyType CurrencyType { get; private set; } = CurrencyType.Gold;
[JsonProperty]
public AmountDeltaType AmountDeltaType { get; private set; } = AmountDeltaType.None;
[JsonProperty]
public double DeltaAmount { get; private set; } = 0.0;
[JsonProperty]
public double CurrencyAmount { get; private set; } = 0.0;
public CurrencyInfo(ILogInvoker parent, CurrencyType currencyType, AmountDeltaType deltaType, double deltaAmount, double currencyAmount)
: base(parent)
{
CurrencyType = currencyType;
AmountDeltaType = deltaType;
DeltaAmount = deltaAmount;
CurrencyAmount = currencyAmount;
}
}

View File

@@ -0,0 +1,84 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using OWNER_GUID = System.String;
using META_TYPE = System.String;
namespace ServerCommon.BusinessLogDomain;
public class CustomDefineUiLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public OwnerEntityType OwnerEntityType { get; set; } = OwnerEntityType.None;
[JsonProperty]
public OWNER_GUID OwnerGuid { get; set; } = string.Empty;
[JsonProperty]
public string CustomDefineUiPK { get; set; } = string.Empty;
[JsonProperty]
public string CustomDefineUiSK { get; set; } = string.Empty;
[JsonProperty]
public string UiKey { get; set; } = string.Empty;
[JsonProperty]
public string CustomDefinedUi { get; set; } = string.Empty;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public CustomDefineUiLogInfo()
: base()
{
}
public void setInfo(CustomDefineUiLogInfo logInfo)
{
OwnerEntityType = logInfo.OwnerEntityType;
OwnerGuid = logInfo.OwnerGuid;
CustomDefineUiPK = logInfo.CustomDefineUiPK;
CustomDefineUiSK = logInfo.CustomDefineUiSK;
UiKey = logInfo.UiKey;
CustomDefinedUi = logInfo.CustomDefinedUi;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public CustomDefineUiLogInfo(ILogInvoker parent, CustomDefineUiLogInfo logInfo)
: base(parent)
{
setInfo(logInfo);
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( OwnerEntityType ownerEntityType, OWNER_GUID ownerGuid
, string customDefineUiPK, string customDefineUiSK
, string uiKey, string customDefinedUi )
{
OwnerEntityType = ownerEntityType;
OwnerGuid = ownerGuid;
CustomDefineUiPK = customDefineUiPK;
CustomDefineUiSK = customDefineUiSK;
UiKey = uiKey;
CustomDefinedUi = customDefinedUi;
}
}

View File

@@ -0,0 +1,29 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class DailyRefreshLogData : ILogInvoker.IInfo
{
[JsonProperty] public DateTime CurrentTime { get; set; } = DateTimeHelper.Current;
public DailyRefreshLogData()
{
CurrentTime = DateTimeHelper.Current;
}
public DailyRefreshLogData(ILogInvoker parent, DailyRefreshLogData logParam)
: base(parent)
{
setLog(logParam);
}
public void setLog(DailyRefreshLogData logData)
{
CurrentTime = logData.CurrentTime;
}
}

View File

@@ -0,0 +1,24 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon;
public class DeleteFriendLogInfo : ILogInvoker.IInfo
{
[JsonProperty("my_guid")]
public string m_my_guid { get; private set; } = string.Empty;
[JsonProperty("my_friend_guid")]
public string m_friend_guid { get; private set; } = string.Empty;
public DeleteFriendLogInfo(ILogInvoker parent, string myGuid, string friendGuid) : base(parent)
{
m_my_guid = myGuid;
m_friend_guid = friendGuid;
}
}

View File

@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class EmptyLogInfo : ILogInvoker.IInfo
{
public EmptyLogInfo(ILogInvoker parent) : base(parent)
{
}
}

View File

@@ -0,0 +1,25 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class EscapePositionLogInfo : ILogInvoker.IInfo
{
[JsonProperty("current_pos")]
public Pos m_current_pos { get; private set; } = new Pos();
[JsonProperty("nearest_pos")]
public Pos m_nearest_start_pos { get; private set; } = new Pos();
public EscapePositionLogInfo(ILogInvoker parent, Pos currentPos, Pos nearestStartPos) : base(parent)
{
m_current_pos = currentPos;
m_nearest_start_pos = nearestStartPos;
}
}

View File

@@ -0,0 +1,151 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Numerics;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using USER_GUID = System.String;
using ANCHOR_META_GUID = System.String;
using LOCATION_UNIQUE_ID = System.String;
using FARMING_ENTITY_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class FarmingLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public ANCHOR_META_GUID AnchorMetaGuid { get; set; } = string.Empty;
[JsonProperty]
public string FarmingPK { get; set; } = string.Empty;
[JsonProperty]
public string FarmingSK { get; set; } = string.Empty;
[JsonProperty]
public LOCATION_UNIQUE_ID LocationUniqueId { get; set; } = string.Empty;
[JsonProperty]
public META_ID FarmingPropMetaId { get; set; } = 0;
// 파밍 효과를 요청한 USER_GUID
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
// 파밍에 배치된 엔티티의 종류
[JsonProperty]
public FarmingSummonedEntityType FarmingSummonedEntityType { get; set; } = FarmingSummonedEntityType.None;
[JsonProperty] // FarmingSummonedEntityType.User: UserGuid, FarmingSummonedEntityType.Beacon: UgcNpcMetaGuid:
public FARMING_ENTITY_GUID FarmingEntityGuid { get; set; } = string.Empty;
[JsonProperty]
public FarmingStateType FarmingState { get; set; } = FarmingStateType.None;
[JsonProperty]
public UInt32 FarmingActionUseFeePrice { get; set; } = 0;
[JsonProperty]
public Int16 FarmingActionReqTryCount { get; set; } = 0;
[JsonProperty]
public Int16 CompletedRewardCount { get; set; } = 0;
[JsonProperty]
public DateTime FarmingStartTime { get; set; } = DateTimeHelper.MinTime;
[JsonProperty]
public DateTime FarmingEndTime { get; set; } = DateTimeHelper.MinTime;
[JsonProperty]
public DateTime FarmingRespawnTime { get; set; } = DateTimeHelper.MinTime;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public FarmingLogInfo()
: base()
{
}
public void setInfo(FarmingLogInfo logInfo)
{
AnchorMetaGuid = logInfo.AnchorMetaGuid;
FarmingPK = logInfo.FarmingPK;
FarmingSK = logInfo.FarmingSK;
LocationUniqueId = logInfo.LocationUniqueId;
FarmingPropMetaId = logInfo.FarmingPropMetaId;
UserGuid = logInfo.UserGuid;
FarmingSummonedEntityType = logInfo.FarmingSummonedEntityType;
FarmingEntityGuid = logInfo.FarmingEntityGuid;
FarmingState = logInfo.FarmingState;
FarmingActionUseFeePrice = logInfo.FarmingActionUseFeePrice;
FarmingActionReqTryCount = logInfo.FarmingActionReqTryCount;
CompletedRewardCount = logInfo.CompletedRewardCount;
FarmingStartTime = logInfo.FarmingStartTime;
FarmingEndTime = logInfo.FarmingEndTime;
FarmingRespawnTime = logInfo.FarmingRespawnTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public FarmingLogInfo(ILogInvoker parent, FarmingLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( ANCHOR_META_GUID anchorMetaGuid
, string farmingPK, string farmingSK
, LOCATION_UNIQUE_ID locationUniqueId
, META_ID farmingPropMetaId
, USER_GUID userGuid
, FarmingSummonedEntityType farmingSummonedEntityType, FARMING_ENTITY_GUID farmingEntityGuid
, FarmingStateType farmingState
, UInt32 farmingActionUseFeePrice, short farmingActionReqTryCount, short completedRewardCount
, DateTime farmingStartTime, DateTime farmingEndTime, DateTime farmingRespawnTime )
{
AnchorMetaGuid = anchorMetaGuid;
FarmingPK = farmingPK;
FarmingSK = farmingSK;
LocationUniqueId = locationUniqueId;
FarmingPropMetaId = farmingPropMetaId;
UserGuid = userGuid;
FarmingSummonedEntityType = farmingSummonedEntityType;
FarmingEntityGuid = farmingEntityGuid;
FarmingState = farmingState;
FarmingActionUseFeePrice = farmingActionUseFeePrice;
FarmingActionReqTryCount = farmingActionReqTryCount;
CompletedRewardCount = completedRewardCount;
FarmingStartTime = farmingStartTime;
FarmingEndTime = farmingEndTime;
FarmingRespawnTime = farmingRespawnTime;
}
}

View File

@@ -0,0 +1,116 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using USER_GUID = System.String;
using ANCHOR_META_GUID = System.String;
using LOCATION_UNIQUE_ID = System.String;
using FARMING_ENTITY_GUID = System.String;
using META_TYPE = System.String;
namespace ServerCommon.BusinessLogDomain;
public class FarmingRewardLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public ANCHOR_META_GUID AnchorMetaGuid { get; set; } = string.Empty;
[JsonProperty]
public string FarmingPK { get; set; } = string.Empty;
[JsonProperty]
public string FarmingSK { get; set; } = string.Empty;
[JsonProperty]
public LOCATION_UNIQUE_ID LocationUniqueId { get; set; } = string.Empty;
[JsonProperty]
public META_ID FarmingPropMetaId { get; set; } = 0;
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
[JsonProperty]
public FarmingSummonedEntityType FarmingSummonedEntityType { get; set; } = FarmingSummonedEntityType.None;
[JsonProperty]
public FARMING_ENTITY_GUID FarmingEntityGuid { get; set; } = string.Empty;
[JsonProperty]
public META_TYPE RewardMetaType { get; set; } = string.Empty;
[JsonProperty]
public META_ID RewardMetaId { get; set; } = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public FarmingRewardLogInfo()
: base()
{
}
public void setInfo(FarmingRewardLogInfo logInfo)
{
AnchorMetaGuid = logInfo.AnchorMetaGuid;
FarmingPK = logInfo.FarmingPK;
FarmingSK = logInfo.FarmingSK;
LocationUniqueId = logInfo.LocationUniqueId;
FarmingPropMetaId = logInfo.FarmingPropMetaId;
UserGuid = logInfo.UserGuid;
FarmingSummonedEntityType = logInfo.FarmingSummonedEntityType;
FarmingEntityGuid = logInfo.FarmingEntityGuid;
RewardMetaType = logInfo.RewardMetaType;
RewardMetaId = logInfo.RewardMetaId;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public FarmingRewardLogInfo(ILogInvoker parent, FarmingRewardLogInfo logInfo)
: base(parent)
{
setInfo(logInfo);
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( ANCHOR_META_GUID anchorMetaGuid
, string farmingPK, string farmingSK
, LOCATION_UNIQUE_ID locationUniqueId
, META_ID farmingPropMetaId
, USER_GUID userGuid
, FarmingSummonedEntityType farmingSummonedEntityType, FARMING_ENTITY_GUID farmingEntityGuid
, META_TYPE rewardMetaType, META_ID rewardMetaId )
{
AnchorMetaGuid = anchorMetaGuid;
FarmingPK = farmingPK;
FarmingSK = farmingSK;
LocationUniqueId = locationUniqueId;
FarmingPropMetaId = farmingPropMetaId;
UserGuid = userGuid;
FarmingSummonedEntityType = farmingSummonedEntityType;
FarmingEntityGuid = farmingEntityGuid;
RewardMetaType = rewardMetaType;
RewardMetaId = rewardMetaId;
}
}

View File

@@ -0,0 +1,25 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class FriendLogInfo : ILogInvoker.IInfo
{
[JsonProperty("my_guid")]
public string m_my_guid { get; private set; } = string.Empty;
[JsonProperty("my_friend_guid")]
public string m_friend_guid { get; private set; } = string.Empty;
public FriendLogInfo(ILogInvoker parent, string myGuid, string friendGuid)
: base(parent)
{
m_my_guid = myGuid;
m_friend_guid = friendGuid;
}
}

View File

@@ -0,0 +1,96 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using ACCOUNT_ID = System.String;
using ACCOUNT_ID_STRING = System.String;
using USER_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class GameLogInOutLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public ACCOUNT_ID AccountId { get; set; } = string.Empty;
[JsonProperty]
public ACCOUNT_ID_STRING AccountIdString { get; set; } = string.Empty;
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
[JsonProperty]
public string Otp { get; set; } = string.Empty;
[JsonProperty]
public string Ip { get; set; } = string.Empty;
[JsonProperty]
public LanguageType LanguageType { get; set; } = LanguageType.None;
[JsonProperty]
public string FromServerName { get; set; } = string.Empty;
[JsonProperty]
public string ToServerName { get; set; } = string.Empty;
[JsonProperty]
public LoginFailureReasonType LoginFailureReasonType { get; set; } = LoginFailureReasonType.None;
[JsonProperty]
public string LoginFailureDetailType { get; set; } = string.Empty;
[JsonProperty]
public LogoutReasonType LogoutReasonType { get; set; } = LogoutReasonType.None;
[JsonProperty]
public DateTime LoginTime { get; set; } = DateTimeHelper.MinTime;
[JsonProperty]
public DateTime LogoutTime { get; set; } = DateTimeHelper.MinTime;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public GameLogInOutLogInfo()
: base()
{ }
public void setInfo(GameLogInOutLogInfo logInfo)
{
ArgumentNullReferenceCheckHelper.throwIfNull(logInfo, () => "logInfo is null !!!");
AccountId = logInfo.AccountId;
AccountIdString = logInfo.AccountIdString;
UserGuid = logInfo.UserGuid;
Otp = logInfo.Otp;
Ip = logInfo.Ip;
LanguageType = logInfo.LanguageType;
FromServerName = logInfo.FromServerName;
ToServerName = logInfo.ToServerName;
LoginFailureReasonType = logInfo.LoginFailureReasonType;
LoginFailureDetailType = logInfo.LoginFailureDetailType;
LogoutReasonType = logInfo.LogoutReasonType;
LoginTime = logInfo.LoginTime;
LogoutTime = logInfo.LogoutTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public GameLogInOutLogInfo(ILogInvoker parent, DateTime processTime, GameLogInOutLogInfo logInfo)
: base(parent)
{
setInfo(logInfo);
if (parent.getLogActionType() == LogActionType.LoginToGame.ToString())
{
LoginTime = processTime;
}
else if (parent.getLogActionType() == LogActionType.UserLogout.ToString())
{
LogoutTime = processTime;
}
}
}

View File

@@ -0,0 +1,84 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using ACCOUNT_ID = System.String;
using ACCOUNT_ID_STRING = System.String;
using USER_GUID = System.String;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain
{
public class SnapShotItemLogInfo
{
[JsonProperty]
public META_ID ItemMetaId { get; set; } = 0;
[JsonProperty]
public UInt16 ItemStackCount { get; set; } = 0;
}
public class GameLogInOutSnapShotLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public ACCOUNT_ID AccountId { get; set; } = string.Empty;
[JsonProperty]
public ACCOUNT_ID_STRING AccountIdString { get; set; } = string.Empty;
[JsonProperty]
public USER_GUID UserGuid { get; set; } = string.Empty;
[JsonProperty]
public double Gold { get; set; } = 0;
[JsonProperty]
public double Sapphire { get; set; } = 0;
[JsonProperty]
public double Calium { get; set; } = 0;
[JsonProperty]
public double Ruby { get; set; } = 0;
[JsonProperty]
public List<SnapShotItemLogInfo> items { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public GameLogInOutSnapShotLogInfo()
: base()
{ }
public void setInfo(GameLogInOutSnapShotLogInfo logInfo)
{
ArgumentNullReferenceCheckHelper.throwIfNull(logInfo, () => "logInfo is null !!!");
AccountId = logInfo.AccountId;
AccountIdString = logInfo.AccountIdString;
UserGuid = logInfo.UserGuid;
Gold = logInfo.Gold;
Sapphire = logInfo.Sapphire;
Calium = logInfo.Calium;
Ruby = logInfo.Ruby;
items = logInfo.items;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public GameLogInOutSnapShotLogInfo(ILogInvoker parent, GameLogInOutSnapShotLogInfo itemParam)
: base(parent)
{
if (null != itemParam)
{
setInfo(itemParam);
}
}
}
}

View File

@@ -0,0 +1,34 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class InviteFriendToMyhomeLogInfo : ILogInvoker.IInfo
{
[JsonProperty("my_guid")]
public string m_my_guid { get; private set; } = string.Empty;
[JsonProperty("invite_result")]
public Dictionary<string, string> m_invite_result { get; private set; } = new();
public InviteFriendToMyhomeLogInfo(ILogInvoker parent, string myGuid, Dictionary<string, string> inviteResult)
: base(parent)
{
m_my_guid = myGuid;
m_invite_result = inviteResult;
}
}

View File

@@ -0,0 +1,142 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Principal;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
using MetaAssets;
using ITEM_GUID = System.String;
using OWNER_GUID = System.String;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain;
public class ItemLogInfo : ILogInvoker.IInfo
{
public ItemLogInfo()
: base()
{ }
[JsonProperty]
public ITEM_GUID ItemGUID { get; set; } = string.Empty;
[JsonProperty]
public OwnerEntityType OwnerEntityType { get; set; } = OwnerEntityType.None;
[JsonProperty]
public OWNER_GUID OwnerGuid { get; set; } = string.Empty;
[JsonProperty]
public string ItemPK { get; set; } = string.Empty;
[JsonProperty]
public string ItemSK { get; set; } = string.Empty;
[JsonProperty]
public CountDeltaType CountDeltaType { get; set; } = CountDeltaType.None;
[JsonProperty]
public int StackCount { get; set; } = 0;
[JsonProperty]
public int DeltaCount { get; set; } = 0;
[JsonProperty]
public META_ID ItemMID { get; set; } = 0;
[JsonProperty]
public string ItemName { get; set; } = string.Empty;
[JsonProperty]
public int Level { get; set; } = 0;
[JsonProperty]
public int DeltaLevel { get; set; } = 0;
[JsonProperty]
public string ItemTypeLarge { get; set; } = string.Empty;
[JsonProperty]
public string ItemTypeSmall { get; set; } = string.Empty;
[JsonProperty]
public List<int> Attribute { get; set; } = new List<int>();
[JsonProperty]
public List<int> OldAttributes { get; set; } = new List<int>();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(ItemLogInfo itemInfo)
{
ItemGUID = itemInfo.ItemGUID;
ItemPK = itemInfo.ItemPK;
ItemSK = itemInfo.ItemSK;
OwnerEntityType = itemInfo.OwnerEntityType;
OwnerGuid = itemInfo.OwnerGuid;
CountDeltaType = itemInfo.CountDeltaType;
StackCount = itemInfo.StackCount;
DeltaCount = itemInfo.DeltaCount;
ItemMID = itemInfo.ItemMID;
ItemName = itemInfo.ItemName;
Level = itemInfo.Level;
DeltaLevel = itemInfo.DeltaLevel;
ItemTypeLarge = itemInfo.ItemTypeLarge;
ItemTypeSmall = itemInfo.ItemTypeSmall;
Attribute = itemInfo.Attribute;
OldAttributes = itemInfo.OldAttributes;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public ItemLogInfo(ILogInvoker parent, ItemLogInfo itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( ITEM_GUID itemGuid
, string itemPK, string itemSK
, OwnerEntityType ownerEntityType
, OWNER_GUID ownerGuid
, CountDeltaType countDeltaType
, int stackCount
, int deltaCount
, META_ID itemMetaId
, string itemName
, int level
, int deltaLevel
, EItemLargeType itemTypeLarge
, EItemSmallType itemTypeSmall
, List<int> attributes
, List<int> oldAttributes )
{
ItemGUID = itemGuid;
OwnerEntityType = ownerEntityType;
OwnerGuid = ownerGuid;
ItemPK = itemPK;
ItemSK = itemSK;
CountDeltaType = countDeltaType;
StackCount = stackCount;
DeltaCount = deltaCount;
ItemMID = itemMetaId;
ItemName = itemName;
Level = level;
DeltaLevel = deltaLevel;
ItemTypeLarge = itemTypeLarge.ToString();
ItemTypeSmall = itemTypeSmall.ToString();
Attribute = attributes;
OldAttributes = oldAttributes;
}
}

View File

@@ -0,0 +1,28 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class ItemPurchase : ILogInvoker.IInfo
{
[JsonProperty]
public int NPCMID { get; private set; } = 0;
[JsonProperty]
public int ShopMID { get; private set; } = 0;
[JsonProperty]
public int ProductMID { get; private set; } = 0;
[JsonProperty]
public int ProductCount { get; private set; } = 0;
public ItemPurchase(ILogInvoker parent, int npcMID, int shopMID, int productMID, int productCount)
: base(parent)
{
NPCMID = npcMID;
ShopMID = shopMID;
ProductMID = productMID;
ProductCount = productCount;
}
}

View File

@@ -0,0 +1,25 @@

using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class KickFriendFromMyhomeLogInfo : ILogInvoker.IInfo
{
[JsonProperty("noti_members")]
public List<string> m_noti_members { get; private set; } = new();
[JsonProperty("eooro_members")]
public List<FriendErrorMember> m_error_members { get; private set; } = new();
public KickFriendFromMyhomeLogInfo(ILogInvoker parent, List<string> notiMembers, List<FriendErrorMember> errorMembers)
: base(parent)
{
m_noti_members = notiMembers;
m_error_members = errorMembers;
}
}

View File

@@ -0,0 +1,95 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
using LAND_AUCTION_NUMBER = System.Int32;
namespace ServerCommon.BusinessLogDomain
{
public class LandAuctionActivityLogInfo : ILogInvoker.IInfo
{
//=============================================================================================
// 랜드 경매 활성화 식별 정보
//=============================================================================================
[JsonProperty]
public META_ID LandMetaId { get; set; } = 0; // 경매 대상 LandData Meta Id
[JsonProperty]
public LAND_AUCTION_NUMBER AuctionNumber { get; set; } = 0; // 경매 번호
//=============================================================================================
// DB 식별 정보
//=============================================================================================
[JsonProperty]
public string LandAuctionActivityPK { get; set; } = string.Empty;
[JsonProperty]
public string LandAuctionActivitySK { get; set; } = string.Empty;
//=============================================================================================
// 활성화 시간 정보
//=============================================================================================
[JsonProperty]
public DateTime ActivityTime { get; set; } = DateTimeHelper.MinTime; // 경매 활성화 시간
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public LandAuctionActivityLogInfo()
: base()
{
}
public void setInfo(LandAuctionActivityLogInfo logInfo)
{
LandMetaId = logInfo.LandMetaId;
AuctionNumber = logInfo.AuctionNumber;
LandAuctionActivityPK = logInfo.LandAuctionActivityPK;
LandAuctionActivitySK = logInfo.LandAuctionActivitySK;
ActivityTime = logInfo.ActivityTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public LandAuctionActivityLogInfo(ILogInvoker parent, LandAuctionActivityLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( META_ID landMetaId, LAND_AUCTION_NUMBER auctionNumber
, string landAuctionRegistryPK, string landAuctionRegistrySK
, DateTime activityTime )
{
LandMetaId = landMetaId;
AuctionNumber = auctionNumber;
LandAuctionActivityPK = landAuctionRegistryPK;
LandAuctionActivitySK = landAuctionRegistrySK;
ActivityTime = activityTime;
}
}
}

View File

@@ -0,0 +1,159 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using MetaAssets;
using META_ID = System.UInt32;
using LAND_AUCTION_NUMBER = System.Int32;
using USER_GUID = System.String;
using USER_NICKNAME = System.String;
using System.Data;
namespace ServerCommon.BusinessLogDomain
{
public class LandAuctionBidLogInfo : ILogInvoker.IInfo
{
//=============================================================================================
// 랜드 경매 식별 정보
//=============================================================================================
[JsonProperty]
public META_ID LandMetaId { get; set; } = 0; // 경매 대상 LandData Meta Id
[JsonProperty]
public LAND_AUCTION_NUMBER AuctionNumber { get; set; } = 0; // 경매 번호
//=============================================================================================
// DB 식별 정보
//=============================================================================================
[JsonProperty]
public string LandAuctionHighestBidUserPK { get; set; } = string.Empty;
[JsonProperty]
public string LandAuctionHighestBidUserSK { get; set; } = string.Empty;
//=============================================================================================
// 입찰 정보
//=============================================================================================
[JsonProperty]
public LandAuctionBidType BidType { get; set; } = 0; // 입찰 종류
[JsonProperty]
public CurrencyType BidCurrencyType { get; set; } = 0; // 입찰 재화의 종류
//=============================================================================================
// 현재 최고 입찰자 정보
//=============================================================================================
[JsonProperty]
public double HighestBidPrice { get; set; } = 0; // 입찰 최고가
[JsonProperty]
public USER_GUID HighestBidUserGuid { get; set; } = string.Empty; // 입찰 최고가 유저 식별키
[JsonProperty]
public USER_NICKNAME HighestBidUserNickname { get; set; } = string.Empty; // 입찰 최고가 유저 닉네임
//=============================================================================================
// 일반 입찰 최고 입찰자 정보
//=============================================================================================
[JsonProperty]
public double NormalHighestBidPrice { get; set; } = 0; // 일반 입찰 최고가
[JsonProperty]
public USER_GUID NormalHighestBidUserGuid { get; set; } = string.Empty; // 일반 입찰 최고가 유저 식별키
[JsonProperty]
public USER_NICKNAME NormalHighestBidUserNickname { get; set; } = string.Empty; // 일반 입찰 최고가 유저 닉네임
//=============================================================================================
// 입찰 시간 정보
//=============================================================================================
[JsonProperty]
public DateTime BidTime { get; set; } = DateTimeHelper.MinTime; // 입찰 시간
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public LandAuctionBidLogInfo()
: base()
{
}
public void setInfo(LandAuctionBidLogInfo logInfo)
{
LandMetaId = logInfo.LandMetaId;
AuctionNumber = logInfo.AuctionNumber;
LandAuctionHighestBidUserPK = logInfo.LandAuctionHighestBidUserPK;
LandAuctionHighestBidUserSK = logInfo.LandAuctionHighestBidUserSK;
BidType = logInfo.BidType;
BidCurrencyType = logInfo.BidCurrencyType;
HighestBidPrice = logInfo.HighestBidPrice;
HighestBidUserGuid = logInfo.HighestBidUserGuid;
HighestBidUserNickname = logInfo.HighestBidUserNickname;
NormalHighestBidPrice = logInfo.NormalHighestBidPrice;
NormalHighestBidUserGuid = logInfo.NormalHighestBidUserGuid;
NormalHighestBidUserNickname = logInfo.NormalHighestBidUserNickname;
BidTime = logInfo.BidTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public LandAuctionBidLogInfo(ILogInvoker parent, LandAuctionBidLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( META_ID landMetaId, LAND_AUCTION_NUMBER auctionNumber
, string landAuctionHighestBidUserPK, string landAuctionHighestBidUserSK
, LandAuctionBidType bidType, CurrencyType bidCurrencyType
, double highestBidPrice, USER_GUID highestBidUserGuid, USER_NICKNAME highestBidUserNickname
, double normalHighestBidPrice, USER_GUID normalHighestBidUserGuid, USER_NICKNAME normalHighestBidUserNickname
, DateTime bidTime)
{
LandMetaId = landMetaId;
AuctionNumber = auctionNumber;
LandAuctionHighestBidUserPK = landAuctionHighestBidUserPK;
LandAuctionHighestBidUserSK = landAuctionHighestBidUserSK;
BidType = bidType;
BidCurrencyType = bidCurrencyType;
HighestBidPrice = highestBidPrice;
HighestBidUserGuid = highestBidUserGuid;
HighestBidUserNickname = highestBidUserNickname;
NormalHighestBidPrice = normalHighestBidPrice;
NormalHighestBidUserGuid = normalHighestBidUserGuid;
NormalHighestBidUserNickname = normalHighestBidUserNickname;
BidTime = bidTime;
}
}
}

View File

@@ -0,0 +1,143 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
using SESSION_ID = System.Int32;
using WORLD_ID = System.UInt32;
using META_ID = System.UInt32;
using ENTITY_GUID = System.String;
using ACCOUNT_ID = System.String;
using OWNER_GUID = System.String;
using USER_GUID = System.String;
using CHARACTER_GUID = System.String;
using ITEM_GUID = System.String;
using LAND_AUCTION_NUMBER = System.Int32;
namespace ServerCommon.BusinessLogDomain;
public class LandAuctionBidPriceRefundLogInfo : ILogInvoker.IInfo
{
//=============================================================================================
// 랜드 경매 식별 정보
//=============================================================================================
[JsonProperty("land_meta_id")]
public META_ID LandMetaId { get; set; } = 0;
[JsonProperty("auction_number")]
public LAND_AUCTION_NUMBER AuctionNumber { get; set; } = 0;
//=============================================================================================
// DB 식별 정보
//=============================================================================================
[JsonProperty]
public string LandAuctionRefundBidPricePK { get; set; } = string.Empty;
[JsonProperty]
public string LandAuctionRefundBidPriceSK { get; set; } = string.Empty;
//=============================================================================================
// 입찰 정보
//=============================================================================================
[JsonProperty("bid_user_guid")]
public USER_GUID BidUserGuid { get; set; } = string.Empty;
[JsonProperty("bid_type")]
public LandAuctionBidType BidType { get; set; } = 0;
[JsonProperty("bid_currency_typ")]
public CurrencyType BidCurrencyType { get; set; } = CurrencyType.None;
[JsonProperty("bid_price")]
public double BidPrice { get; set; } = 0;
//=============================================================================================
// 환급금 정보
//=============================================================================================
[JsonProperty("land_auction_result")]
public LandAuctionResult LandAuctionResult { get; set; } = LandAuctionResult.None; // 랜드 경매의 결과
[JsonProperty("refundable_normal_bid_price")]
public double RefundableNormalBidPrice { get; set; } = 0; // 본인의 일반 환급 가능한 입찰금
[JsonProperty("refundable_blind_bid_price")]
public double RefundableBlindBidPrice { get; set; } = 0; // 본인의 블라인드 환급 가능한 입찰금
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public LandAuctionBidPriceRefundLogInfo()
: base()
{
}
public void setInfo(LandAuctionBidPriceRefundLogInfo logInfo)
{
LandMetaId = logInfo.LandMetaId;
AuctionNumber = logInfo.AuctionNumber;
LandAuctionRefundBidPricePK = logInfo.LandAuctionRefundBidPricePK;
LandAuctionRefundBidPriceSK = logInfo.LandAuctionRefundBidPriceSK;
BidUserGuid = logInfo.BidUserGuid;
BidType = logInfo.BidType;
BidCurrencyType = logInfo.BidCurrencyType;
BidPrice = logInfo.BidPrice;
LandAuctionResult = logInfo.LandAuctionResult;
RefundableNormalBidPrice = logInfo.RefundableNormalBidPrice;
RefundableBlindBidPrice = logInfo.RefundableBlindBidPrice;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public LandAuctionBidPriceRefundLogInfo(ILogInvoker parent, LandAuctionBidPriceRefundLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( META_ID landMetaId, LAND_AUCTION_NUMBER auctionNumber
, string landAuctionRefundBidPricePK, string landAuctionRefundBidPriceSK
, USER_GUID bidUserGuid
, LandAuctionBidType bidType, CurrencyType bidCurrencyType, double bidPrice
, LandAuctionResult auctionResult
, double refundableNormalBidPrice, double refundableBlindBidPrice )
{
LandMetaId = landMetaId;
AuctionNumber = auctionNumber;
LandAuctionRefundBidPricePK = landAuctionRefundBidPricePK;
LandAuctionRefundBidPriceSK = landAuctionRefundBidPriceSK;
BidUserGuid = bidUserGuid;
BidType = bidType;
BidCurrencyType = bidCurrencyType;
BidPrice = bidPrice;
LandAuctionResult = auctionResult;
RefundableNormalBidPrice = refundableNormalBidPrice;
RefundableBlindBidPrice = refundableBlindBidPrice;
}
}

View File

@@ -0,0 +1,160 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using MetaAssets;
using META_ID = System.UInt32;
using LAND_AUCTION_NUMBER = System.Int32;
using USER_GUID = System.String;
using USER_NICKNAME = System.String;
namespace ServerCommon.BusinessLogDomain
{
public class LandAuctionLogInfo : ILogInvoker.IInfo
{
//=============================================================================================
// 랜드 경매 식별 정보
//=============================================================================================
[JsonProperty("land_meta_id")]
public META_ID LandMetaId { get; set; } = 0; // 경매 대상 LandData Meta Id
[JsonProperty("auction_number")]
public LAND_AUCTION_NUMBER AuctionNumber { get; set; } = 0; // 경매 번호
//=============================================================================================
// DB 식별 정보
//=============================================================================================
[JsonProperty]
public string LandAuctionRegistryPK { get; set; } = string.Empty;
[JsonProperty]
public string LandAuctionRegistrySK { get; set; } = string.Empty;
//=============================================================================================
// 랜드 경매 등록 정보
//=============================================================================================
[JsonProperty("bid_currency_type")]
public CurrencyType BidCurrencyType { get; set; } = 0; // 입찰 재화의 종류
[JsonProperty("bid_start_price")]
public double BidStartPrice { get; set; } = 0; // 입찰 시작가
[JsonProperty("auction_reservation_notice_start_time")]
public DateTime AuctionReservationNoticeStartTime { get; set; } = DateTimeHelper.MinTime; // 경매 예약 공지 시작 시간
[JsonProperty("auction_start_time")]
public DateTime AuctionStartTime { get; set; } = DateTimeHelper.MinTime; // 경매 시작 시간
[JsonProperty("auction_end_time")]
public DateTime AuctionEndTime { get; set; } = DateTimeHelper.MinTime; // 경매 종료 시간
[JsonProperty("is_cancel_auction")]
public bool IsCancelAuction { get; set; } = false; // 경매 취소 여부 (취소:true, 미취소:false)
[JsonProperty("registered_version_time")]
public DateTime RegisteredVersionTime { get; set; } = DateTimeHelper.MinTime; // 경매 등록 버전 정보 (시간), 랜드 경매 등록 정보가 변경되면 등록 버전 정보도 갱신 되어야 한다. !!!
//=============================================================================================
// 랜드 경매 진행 정보
//=============================================================================================
[JsonProperty("auction_state")]
public LandAuctionState LandAuctionState { get; set; } = LandAuctionState.None; // 경매 상태
[JsonProperty("auction_result")]
public LandAuctionResult LandAuctionResult { get; set; } = LandAuctionResult.None; // 경매 결과
[JsonProperty("winning_user_guid")]
public USER_GUID WinningUserGuid { get; set; } = string.Empty; // 경매 낙찰자의 식별키
[JsonProperty("winning_user_nickname")]
public USER_NICKNAME WinningUserNickname { get; set; } = string.Empty; // 경매 낙찰자의 닉네임
[JsonProperty("process_version_time")]
public DateTime ProcessVersionTime { get; set; } = DateTimeHelper.MinTime; // 경매 진행 버전 정보 (시간), 랜드 경매 진행 정보가 변경되면 진행 버전 정보도 갱신되어야 한다. !!!
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public LandAuctionLogInfo()
: base()
{
}
public void setInfo(LandAuctionLogInfo logInfo)
{
LandMetaId = logInfo.LandMetaId;
AuctionNumber = logInfo.AuctionNumber;
LandAuctionRegistryPK = logInfo.LandAuctionRegistryPK;
LandAuctionRegistrySK = logInfo.LandAuctionRegistrySK;
BidCurrencyType = logInfo.BidCurrencyType;
BidStartPrice = logInfo.BidStartPrice;
AuctionReservationNoticeStartTime = logInfo.AuctionReservationNoticeStartTime;
AuctionStartTime = logInfo.AuctionStartTime;
AuctionEndTime = logInfo.AuctionEndTime;
IsCancelAuction = logInfo.IsCancelAuction;
RegisteredVersionTime = logInfo.RegisteredVersionTime;
LandAuctionState = logInfo.LandAuctionState;
LandAuctionResult = logInfo.LandAuctionResult;
WinningUserGuid = logInfo.WinningUserGuid;
WinningUserNickname = logInfo.WinningUserNickname;
ProcessVersionTime = logInfo.ProcessVersionTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public LandAuctionLogInfo(ILogInvoker parent, LandAuctionLogInfo logInfo)
: base(parent)
{
if (null != logInfo)
{
setInfo(logInfo);
}
}
//=====================================================================================
// 로그 설정용 함수
//=====================================================================================
public void setLogProperty( META_ID landMetaId, LAND_AUCTION_NUMBER auctionNumber
, string landAuctionRegistryPK, string landAuctionRegistrySK
, CurrencyType bidCurrencyType, double bidStartPrice
, DateTime auctionReservationNoticeStartTime
, DateTime auctionStartTime, DateTime auctionEndTime, bool isCancelAuction
, DateTime registeredVersionTime
, LandAuctionState landAuctionState, LandAuctionResult landAuctionResult
, USER_GUID winningUserGuid, USER_NICKNAME winningUserNickname
, DateTime processVersionTime )
{
LandMetaId = landMetaId;
AuctionNumber = auctionNumber;
LandAuctionRegistryPK = landAuctionRegistryPK;
LandAuctionRegistrySK = landAuctionRegistrySK;
BidCurrencyType = bidCurrencyType;
BidStartPrice = bidStartPrice;
AuctionReservationNoticeStartTime = auctionReservationNoticeStartTime;
AuctionStartTime = auctionStartTime;
AuctionEndTime = auctionEndTime;
IsCancelAuction = isCancelAuction;
RegisteredVersionTime = registeredVersionTime;
LandAuctionState = landAuctionState;
LandAuctionResult = landAuctionResult;
WinningUserGuid = winningUserGuid;
WinningUserNickname = winningUserNickname;
ProcessVersionTime = processVersionTime;
}
}
}

View File

@@ -0,0 +1,41 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class LandLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int LandMetaId { get; set; }
[JsonProperty]
public string OwnerGuid { get; set; } = string.Empty;
public LandLogInfo()
: base()
{ }
public LandLogInfo(ILogInvoker parent, LandLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setLandInfo(logParam);
}
}
public void setLandInfo(LandLogInfo logInfo)
{
LandMetaId = logInfo.LandMetaId;
OwnerGuid = logInfo.OwnerGuid;
}
public void setLogProperty(int landMetaId, string ownerGuid)
{
LandMetaId = landMetaId;
OwnerGuid = ownerGuid;
}
}

View File

@@ -0,0 +1,81 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class MailLogData : ILogInvoker.IInfo
{
public MailLogData()
: base()
{ }
[JsonProperty]
public string MailGuid { get; set; } = string.Empty;
[JsonProperty]
public string Title { get; set; } = string.Empty;
[JsonProperty]
public string Text { get; set; } = string.Empty;
[JsonProperty]
public bool IsSystemMail { get; set; } = false;
[JsonProperty]
public bool IsReadMail { get; set; } = false;
[JsonProperty]
public bool IsGetItem { get; set; } = false;
[JsonProperty]
public string SenderNickname { get; set; } = string.Empty;
[JsonProperty]
public string SenderGuid { get; set; } = string.Empty;
[JsonProperty]
public string ReceiverNickname { get; set; } = string.Empty;
[JsonProperty]
public string ReceiverGuid { get; set; } = string.Empty;
[JsonProperty]
public DateTime CreateTime { get; set; } = new();
[JsonProperty]
public DateTime ExpireTime { get; set; } = new();
[JsonProperty]
public bool IsTextByMetaData { get; set; } = false;
[JsonProperty]
public string packageOrderId { get; set; } = string.Empty;
[JsonProperty]
public List<MailItem> ItemList { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(MailLogData logData)
{
MailGuid = logData.MailGuid;
Title = logData.Title;
Text = logData.Text;
IsSystemMail = logData.IsSystemMail;
IsReadMail = logData.IsReadMail;
IsGetItem = logData.IsGetItem;
SenderNickname = logData.SenderNickname;
SenderGuid = logData.SenderGuid;
ReceiverNickname = logData.ReceiverNickname;
ReceiverGuid = logData.ReceiverGuid;
CreateTime = logData.CreateTime;
ExpireTime = logData.ExpireTime;
IsTextByMetaData = logData.IsTextByMetaData;
packageOrderId = logData.packageOrderId;
ItemList.AddRange(logData.ItemList);
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public MailLogData(ILogInvoker parent, MailLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,53 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class MailExpiredLogData : ILogInvoker.IInfo
{
public MailExpiredLogData()
: base()
{ }
[JsonProperty]
public string OrderGuid { get; set; } = string.Empty;
[JsonProperty]
public int ProductMetaId { get; set; } = 0;
[JsonProperty]
public DateTime NextGiveTime { get; set; } = new();
[JsonProperty]
public DateTime ExpireTime { get; set; } = new();
[JsonProperty]
public DateTime CurrencyTime { get; set; } = new();
[JsonProperty]
public int RepeatLeftCount { get; set; } = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(MailExpiredLogData logData)
{
OrderGuid = logData.OrderGuid;
ProductMetaId = logData.ProductMetaId;
NextGiveTime = logData.NextGiveTime;
ExpireTime = logData.ExpireTime;
CurrencyTime = logData.CurrencyTime;
RepeatLeftCount = logData.RepeatLeftCount;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public MailExpiredLogData(ILogInvoker parent, MailExpiredLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,46 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class MailProfileLogData : ILogInvoker.IInfo
{
public MailProfileLogData()
: base()
{ }
[JsonProperty]
public Int32 SendMailCount { get; set; } = 0;
[JsonProperty]
public Int64 SendMailUpdateDay { get; set; } = 0;
[JsonProperty]
public Int32 LastSystemMailId { get; set; } = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(MailProfileLogData logData)
{
SendMailCount = logData.SendMailCount;
SendMailUpdateDay = logData.SendMailUpdateDay;
LastSystemMailId = logData.LastSystemMailId;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public MailProfileLogData(ILogInvoker parent, MailProfileLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class MyHomeLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public string MyhomeGuid { get; set; } = string.Empty;
[JsonProperty]
public int MyhomeMetaId { get; set; }
[JsonProperty]
public string MyhomeName { get; set; } = string.Empty;
public MyHomeLogInfo()
: base()
{ }
public MyHomeLogInfo(ILogInvoker parent, MyHomeLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setMyHomeInfo(logParam);
}
}
public void setMyHomeInfo(MyHomeLogInfo logInfo)
{
MyhomeGuid = logInfo.MyhomeGuid;
MyhomeMetaId = logInfo.MyhomeMetaId;
MyhomeName = logInfo.MyhomeName;
}
}

View File

@@ -0,0 +1,37 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class MyhomeExchangeLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public string UserGuid { get; set; } = string.Empty;
[JsonProperty]
public string OldMyhomeGuid { get; set; } = string.Empty;
[JsonProperty]
public string NewMyhomeGuid { get; set; } = string.Empty;
public MyhomeExchangeLogInfo()
: base()
{ }
public MyhomeExchangeLogInfo(ILogInvoker parent, MyhomeExchangeLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setMyhomeExchangeInfo(logParam);
}
}
public void setMyhomeExchangeInfo(MyhomeExchangeLogInfo logInfo)
{
UserGuid = logInfo.UserGuid;
OldMyhomeGuid = logInfo.OldMyhomeGuid;
NewMyhomeGuid = logInfo.NewMyhomeGuid;
}
}

View File

@@ -0,0 +1,37 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class MyhomeRenameLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public string MyhomeGuid { get; set; } = string.Empty;
[JsonProperty]
public string OldMyhomeName { get; set; } = string.Empty;
[JsonProperty]
public string NewMyhomeName { get; set; } = string.Empty;
public MyhomeRenameLogInfo()
: base()
{ }
public MyhomeRenameLogInfo(ILogInvoker parent, MyhomeRenameLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setMyhomeRenameInfo(logParam);
}
}
public void setMyhomeRenameInfo(MyhomeRenameLogInfo logInfo)
{
MyhomeGuid = logInfo.MyhomeGuid;
OldMyhomeName = logInfo.OldMyhomeName;
NewMyhomeName = logInfo.NewMyhomeName;
}
}

View File

@@ -0,0 +1,47 @@
using Newtonsoft.Json;
using ServerBase;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain;
public class PackageLastOrderRecordData : ILogInvoker.IInfo
{
public PackageLastOrderRecordData()
: base()
{ }
[JsonProperty]
public string orderGuid { get; set; } = string.Empty;
[JsonProperty]
public META_ID productMetaId { get; set; } = 0;
[JsonProperty]
public DateTime buyDateTime { get; set; } = new();
[JsonProperty]
public DateTime provideTime { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(PackageLastOrderRecordData logData)
{
orderGuid = logData.orderGuid;
productMetaId = logData.productMetaId;
buyDateTime = logData.buyDateTime;
provideTime = logData.provideTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public PackageLastOrderRecordData(ILogInvoker parent, PackageLastOrderRecordData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,50 @@
using Newtonsoft.Json;
using ServerBase;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain;
public class PackageRepeatData : ILogInvoker.IInfo
{
public PackageRepeatData()
: base()
{ }
[JsonProperty]
public string orderGuid { get; set; } = string.Empty;
[JsonProperty]
public META_ID productMetaId { get; set; } = 0;
[JsonProperty]
public int leftCount { get; set; } = 0;
[JsonProperty]
public DateTime nextGiveTime { get; set; } = new();
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(PackageRepeatData logData)
{
orderGuid = logData.orderGuid;
productMetaId = logData.productMetaId;
leftCount = logData.leftCount;
nextGiveTime = logData.nextGiveTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public PackageRepeatData(ILogInvoker parent, PackageRepeatData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,45 @@
using Newtonsoft.Json;
using ServerBase;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain;
public class PackageStateData : ILogInvoker.IInfo
{
public PackageStateData()
: base()
{ }
[JsonProperty]
public string orderGuid { get; set; } = string.Empty;
[JsonProperty]
public BillingStateType billingStateLogType { get; set; } = BillingStateType.none;
[JsonProperty]
public string errMsg { get; set; } = string.Empty;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(PackageStateData logData)
{
orderGuid = logData.orderGuid;
billingStateLogType = logData.billingStateLogType;
errMsg = logData.errMsg;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public PackageStateData(ILogInvoker parent, PackageStateData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,39 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class PartyInstanceLogData : ILogInvoker.IInfo
{
[JsonProperty] public string PartyGuid { get; set; } = string.Empty;
[JsonProperty] public int InstanceId { get; set; }
[JsonProperty] public string InstanceRoomId { get; set; } = string.Empty;
[JsonProperty] public int JoinMemberCount { get; set; }
[JsonProperty] public DateTime CreateTime { get; set; } = DateTimeHelper.Current;
[JsonProperty] public DateTime StartTime { get; set; }
[JsonProperty] public DateTime EndTime { get; set; }
public PartyInstanceLogData()
: base()
{ }
public PartyInstanceLogData(ILogInvoker parent, PartyInstanceLogData logParam)
: base(parent)
{
if (null != logParam)
{
setPartyInfo(logParam);
}
}
public void setPartyInfo(PartyInstanceLogData logData)
{
PartyGuid = logData.PartyGuid;
InstanceId = logData.InstanceId;
InstanceRoomId = logData.InstanceRoomId;
JoinMemberCount = logData.JoinMemberCount;
CreateTime = logData.CreateTime;
StartTime = logData.StartTime;
EndTime = logData.EndTime;
}
}

View File

@@ -0,0 +1,54 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class PartyLogData : ILogInvoker.IInfo
{
[JsonProperty]
public string PartyGuid { get; set; } = string.Empty;
[JsonProperty]
public string PartyName { get; set; } = string.Empty;
[JsonProperty]
public string PartyLeaderCharGuid { get; set; } = string.Empty;
[JsonProperty]
public int PartyMemberCount { get; set; }
[JsonProperty]
public DateTime CreatePartyTime { get; set; }
[JsonProperty]
public DateTime DestroyPartyTime { get; set; }
public PartyLogData()
: base()
{ }
public PartyLogData(ILogInvoker parent, PartyLogData logParam)
: base(parent)
{
if (null != logParam)
{
setPartyInfo(logParam);
}
}
public void setPartyInfo(PartyLogData logData)
{
PartyGuid = logData.PartyGuid;
PartyName = logData.PartyName;
PartyLeaderCharGuid = logData.PartyLeaderCharGuid;
PartyMemberCount = logData.PartyMemberCount;
CreatePartyTime = logData.CreatePartyTime;
DestroyPartyTime = logData.DestroyPartyTime;
}
}

View File

@@ -0,0 +1,32 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class PartyMemberLogData : ILogInvoker.IInfo
{
[JsonProperty] public string PartyGuid { get; set; } = string.Empty;
[JsonProperty] public string UserGuid { get; set; } = string.Empty;
[JsonProperty] public PartyMemberActionType PartyMemberActionType { get; set; } = PartyMemberActionType.None;
[JsonProperty] public DateTime PartyMemberActionTime { get; set; } = DateTimeHelper.Current;
public PartyMemberLogData()
: base()
{ }
public PartyMemberLogData(ILogInvoker parent, PartyMemberLogData logParam)
: base(parent)
{
if (null != logParam)
{
setPartyInfo(logParam);
}
}
public void setPartyInfo(PartyMemberLogData logData)
{
PartyGuid = logData.PartyGuid;
UserGuid = logData.UserGuid;
PartyMemberActionType = logData.PartyMemberActionType;
}
}

View File

@@ -0,0 +1,43 @@
using ServerCore; using ServerBase;
using ThirdParty.Json.LitJson;
namespace ServerCommon.BusinessLogDomain;
public class VoteResult
{
[JsonProperty] public int Agree { get; set; } = 0;
[JsonProperty] public int DisAgree { get; set; } = 0;
[JsonProperty] public int Abstain { get; set; } = 0;
}
public class PartyVoteLogData : ILogInvoker.IInfo
{
[JsonProperty] public string PartyGuid { get; set; } = string.Empty;
[JsonProperty] public string VoteTitle { get; set; } = string.Empty;
[JsonProperty] public DateTime StartVoteTime { get; set; } = DateTimeHelper.Current;
[JsonProperty] public DateTime EndVoteTime { get; set; }
[JsonProperty] public VoteResult VoteResult { get; set; } = new();
public PartyVoteLogData()
: base()
{ }
public PartyVoteLogData(ILogInvoker parent, PartyVoteLogData logParam)
: base(parent)
{
if (null != logParam)
{
setPartyInfo(logParam);
}
}
public void setPartyInfo(PartyVoteLogData logData)
{
PartyGuid = logData.PartyGuid;
VoteTitle = logData.VoteTitle;
StartVoteTime = logData.StartVoteTime;
EndVoteTime = logData.EndVoteTime;
VoteResult = logData.VoteResult;
}
}

View File

@@ -0,0 +1,59 @@
using Newtonsoft.Json;
using ServerBase;
using ServerCommon;
namespace BrokerCore.BrokerBusinessLog;
public class PlanetItemExchangeLogData : ILogInvoker.IInfo
{
[JsonProperty] public string? OrderId { get; set; } // 주문 ID
[JsonProperty] public string? OrderStatus { get; set; } // 주문 상태
[JsonProperty] public string PlanetId { get; set; } = string.Empty;
[JsonProperty] public string SeasonId { get; set; } = string.Empty;
[JsonProperty] public string ExchangeMetaId { get; set; } = string.Empty; // 교환 메타 ID
[JsonProperty] public int ExchangeMetaAmount { get; set; } // 교환 메타 개수
[JsonProperty] public string AccountId { get; set; } = string.Empty;
[JsonProperty] public string UserGuid { get; set; } = string.Empty;
[JsonProperty] public string Nickname { get; set; } = string.Empty;
[JsonProperty] public string CaliverseItemType { get; set; } = string.Empty;
[JsonProperty] public string CaliverseItemId { get; set; } = string.Empty;
[JsonProperty] public long CaliverseItemDeltaAmount { get; set; }
[JsonProperty] public string PlanetItemType { get; set; } = string.Empty;
[JsonProperty] public string PlanetItemId { get; set; } = string.Empty;
[JsonProperty] public long PlanetItemDeltaAmount { get; set; }
[JsonProperty] public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
[JsonProperty] public DateTime? CompletedAt { get; set; }
public PlanetItemExchangeLogData()
{
}
public PlanetItemExchangeLogData(ILogInvoker parent, PlanetItemExchangeLogData data) : base(parent)
{
setData(data);
}
private void setData(PlanetItemExchangeLogData data)
{
OrderId = data.OrderId;
OrderStatus = data.OrderStatus;
ExchangeMetaId = data.ExchangeMetaId;
ExchangeMetaAmount = data.ExchangeMetaAmount;
AccountId = data.AccountId;
UserGuid = data.UserGuid;
Nickname = data.Nickname;
PlanetId = data.PlanetId;
CaliverseItemType = data.CaliverseItemType;
CaliverseItemId = data.CaliverseItemId;
CaliverseItemDeltaAmount = data.CaliverseItemDeltaAmount;
PlanetItemType = data.PlanetItemType;
PlanetItemId = data.PlanetItemId;
PlanetItemDeltaAmount = data.PlanetItemDeltaAmount;
CreatedAt = data.CreatedAt;
CompletedAt = data.CompletedAt;
}
}

View File

@@ -0,0 +1,35 @@
using Newtonsoft.Json;
using ServerBase;
using ServerCommon;
namespace BrokerCore.BrokerBusinessLog;
//=========================================================================================
// Planet 컨텐츠 제공 업체 인증 로그
//=========================================================================================
public class PlanetProviderAuthLogData : ILogInvoker.IInfo
{
[JsonProperty] public string PlanetId { get; set; } = string.Empty;
[JsonProperty] public DateTime ExpireDateTime { get; set; }
// 최소 데이터 생성 시에 사용
public PlanetProviderAuthLogData()
{
}
// Invoker에 데이터를 넣을 때 사용함
public PlanetProviderAuthLogData(ILogInvoker logInvoker, PlanetProviderAuthLogData data) : base(logInvoker)
{
setData(data);
}
private void setData(PlanetProviderAuthLogData data)
{
this.PlanetId = data.PlanetId;
this.ExpireDateTime = data.ExpireDateTime;
}
}

View File

@@ -0,0 +1,35 @@
using Newtonsoft.Json;
using ServerBase;
using ServerCommon;
namespace BrokerCore.BrokerBusinessLog;
//=====================================================================================
// 플래닛 유저 인증 비즈니스 로그
//=====================================================================================
public class PlanetUserAuthLogData : ILogInvoker.IInfo
{
[JsonProperty] public string UserGuid { get; set; } = string.Empty;
[JsonProperty] public string AccountId { get; set; } = string.Empty;
[JsonProperty] public string Nickname { get; set; } = string.Empty;
public PlanetUserAuthLogData()
{
}
public PlanetUserAuthLogData(ILogInvoker invoker, PlanetUserAuthLogData data) : base(invoker)
{
setData(data);
}
private void setData( PlanetUserAuthLogData data)
{
UserGuid = data.UserGuid;
AccountId = data.AccountId;
Nickname = data.Nickname;
}
}

View File

@@ -0,0 +1,46 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class PositionLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public string PositionMoveType { get; set; } = string.Empty; // PositionMoveType
[JsonProperty]
public string ServerName { get; set; } = string.Empty;
[JsonProperty]
public string MapType { get; set; } = string.Empty; // MapFileType
[JsonProperty]
public int MapMId { get; set; } // MapFileType 에 따른 MetaId
[JsonProperty]
public string RoomId { get; set; } = string.Empty;
[JsonProperty]
public Pos Pos { get; set; } = new Pos();
public PositionLogInfo()
: base()
{ }
public PositionLogInfo(ILogInvoker parent, PositionLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setPositionInfo(logParam);
}
}
public void setPositionInfo(PositionLogInfo logInfo)
{
PositionMoveType = logInfo.PositionMoveType;
ServerName = logInfo.ServerName;
RoomId = logInfo.RoomId;
MapType = logInfo.MapType;
MapMId = logInfo.MapMId;
Pos = logInfo.Pos;
}
}

View File

@@ -0,0 +1,25 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class QuestAcceptByDialogueLogInfo : QuestIdLogInfo
{
[JsonProperty("dialogue")]
public string m_dialogue { get; private set; } = string.Empty;
[JsonProperty("dialogue_result")]
public string m_dialogue_result { get; private set; } = string.Empty;
public QuestAcceptByDialogueLogInfo(ILogInvoker parent, UInt32 questId, UInt32 questRevision, string dialogue, string dialogueResult) : base(parent, questId, questRevision)
{
m_dialogue = dialogue;
m_dialogue_result = dialogueResult;
}
}

View File

@@ -0,0 +1,15 @@
using MetaAssets;
using ServerBase;
namespace ServerCommon;
public class QuestAcceptLogInfo : QuestIdLogInfo
{
public EQuestType m_quest_type { get; private set; } = EQuestType.NONE;
public QuestAcceptLogInfo(ILogInvoker parent, UInt32 questId, UInt32 questRevision, EQuestType questType) : base(parent, questId, questRevision)
{
m_quest_type = questType;
}
}

View File

@@ -0,0 +1,16 @@
using MetaAssets;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class QuestDailyCheckLogInfo : ILogInvoker.IInfo
{
[JsonProperty("period_type")]
public OncePeriodRangeType period_type { get; set; } = OncePeriodRangeType.NONE;
[JsonProperty("sended_quest_check")]
public Dictionary<UInt32, DateTime> sended_quest_check { get; set; } = new();
}

View File

@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon;
public class QuestIdLogInfo : ILogInvoker.IInfo
{
[JsonProperty("quest_id")]
public UInt32 m_quest_id { get; private set; } = 0;
[JsonProperty("quest_revision")]
public UInt32 m_quest_revision { get; private set; } = new();
public QuestIdLogInfo(ILogInvoker parent, UInt32 questId, UInt32 questRevison)
: base(parent)
{
m_quest_id = questId;
m_quest_revision = questRevison;
}
}

View File

@@ -0,0 +1,42 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon;
public class QuestMailLogInfo : ILogInvoker.IInfo
{
[JsonProperty("quest_id")]
public UInt32 m_quest_id { get; private set; } = 0;
[JsonProperty("quest_revision")]
public UInt32 m_quest_revision { get; private set; } = 0;
[JsonProperty("is_read")]
public Int32 m_is_read { get; private set; } = 0;
[JsonProperty("create_time")]
public DateTime m_create_time { get; private set; } = DateTimeHelper.MaxTime;
[JsonProperty("expire_time")]
public DateTime m_expire_time { get; private set; } = DateTimeHelper.MaxTime;
[JsonProperty("log_type")]
public QuestMailLogType m_log_type { get; private set; } = QuestMailLogType.None;
public QuestMailLogInfo(ILogInvoker parent, QuestMailAttribute attribute, QuestMailLogType type) : base(parent)
{
m_quest_id = attribute.QuestId;
m_quest_revision = attribute.QuestRevision;
m_is_read = attribute.IsRead;
m_create_time = attribute.CreateTime;
m_expire_time = attribute.ExpireTime??DateTimeHelper.MaxTime;
m_log_type = type;
}
}
public enum QuestMailLogType
{
None = 0,
Create = 1,
Delete = 2,
}

View File

@@ -0,0 +1,21 @@
using Newtonsoft.Json;
using System.Threading.Tasks;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class QuestRewardLogInfo : QuestIdLogInfo
{
[JsonProperty("reward_group_id")]
public Int32 m_reward_group_id { get; private set; } = 0;
public QuestRewardLogInfo(ILogInvoker parent, UInt32 questId, UInt32 questRevision, Int32 rewardGroupId) : base(parent, questId, questRevision)
{
m_reward_group_id = rewardGroupId;
}
}

View File

@@ -0,0 +1,41 @@
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class QuestTaskUpdateLogInfo : QuestIdLogInfo
{
[JsonProperty("task")]
public Int32 m_task { get; private set; } = 0;
[JsonProperty("event_string")]
public List<string> m_event_string { get; private set; } = new();
[JsonProperty("rewards")]
public List<MetaAssets.Reward> m_rewards { get; private set; } = new();
[JsonProperty("delete_items")]
public List<ItemBase> m_delete_items { get; private set; } = new();
public QuestTaskUpdateLogInfo(ILogInvoker logInvoker, UInt32 questId, UInt32 questRevision)
: base(logInvoker, questId, questRevision)
{
}
public QuestTaskUpdateLogInfo(ILogInvoker logInvoker, UInt32 questId, UInt32 questRevision, Int32 task, List<string> eventString, List<MetaAssets.Reward> rewards, List<ItemBase> deletedItems)
: base(logInvoker, questId, questRevision)
{
m_task = task;
m_event_string = eventString;
m_rewards = rewards;
m_delete_items = deletedItems;
}
}

View File

@@ -0,0 +1,42 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class RandomBoxItemUseInfo : ILogInvoker.IInfo
{
[JsonProperty("UseItemGuid")]
public string m_use_item_guid { get; private set; } = string.Empty;
[JsonProperty("UseItemId")]
public int m_use_item_id { get; private set; } = 0;
[JsonProperty("UseItemNum")]
public int m_use_item_num { get; private set; } = 0;
[JsonProperty("Rewards")]
public List<MetaAssets.Reward> m_gacha_reward { get; private set; } = new();
public RandomBoxItemUseInfo(string itemGuid, int itemId, int num, MetaAssets.GachaMetaData gacha) : base()
{
m_use_item_guid = itemGuid;
m_use_item_id = itemId;
m_use_item_num = num;
m_gacha_reward.Add(gacha.Reward);
}
public RandomBoxItemUseInfo(ILogInvoker parent, RandomBoxItemUseInfo info) : base(parent)
{
setRandomBoxItemUseInfo(info);
}
private void setRandomBoxItemUseInfo(RandomBoxItemUseInfo info)
{
m_use_item_guid = info.m_use_item_guid;
m_use_item_id = info.m_use_item_id;
m_use_item_num = info.m_use_item_num;
m_gacha_reward = new();
m_gacha_reward.AddRange(info.m_gacha_reward);
}
}

View File

@@ -0,0 +1,60 @@
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class RenewalShopProductsLogInfo : ILogInvoker.IInfo
{
[JsonProperty("shop_id")]
public Int32 m_shop_id { get; set; }
[JsonProperty("max_count_id")]
public Int32 m_max_count { get; set; }
[JsonProperty("products")]
public List<ShopProductTradingMeterSubAttribute> m_shop_product_trading_meter_subs { get; private set; } = new();
[JsonProperty("current_renewal_count")]
public Int32 m_current_renewal_count { get; private set; } = 0;
[JsonProperty("currency_type")]
public Int32 m_currency_type { get; private set; } = 0;
[JsonProperty("currency_value")]
public Int32 m_currency_value { get; private set; } = 0;
public RenewalShopProductsLogInfo(ILogInvoker parent,
Int32 shopId,
Int32 maxCount,
Int32 currentRenewalCount,
Int32 currencyType,
Int32 currencyValue,
List<ShopProductTradingMeterSubAttribute> productTrandingMeters)
: base(parent)
{
m_shop_id = shopId;
m_max_count = maxCount;
m_current_renewal_count = currentRenewalCount;
m_currency_type = currencyType;
m_currency_value = currencyValue;
foreach (var sub in productTrandingMeters)
{
var data = new ShopProductTradingMeterSubAttribute
{
ProductId = sub.ProductId,
LeftCount = sub.LeftCount
};
m_shop_product_trading_meter_subs.Add(data);
}
}
}

View File

@@ -0,0 +1,65 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class RentalLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int LandMetaId { get; set; }
[JsonProperty]
public int BuildingMetaId { get; set; }
[JsonProperty]
public int Floor { get; set; }
[JsonProperty]
public string RenteeUserGuid { get; set; } = string.Empty;
[JsonProperty]
public string MyhomeGuid { get; set; } = string.Empty;
[JsonProperty]
public int RentalPeriod { get; set; }
[JsonProperty]
public DateTime RentalStartTime { get; set; } = new();
[JsonProperty]
public DateTime RentalFinishTime { get; set; } = new();
public RentalLogInfo()
: base()
{ }
public RentalLogInfo(ILogInvoker parent, RentalLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setRentalInfo(logParam);
}
}
public void setRentalInfo(RentalLogInfo logInfo)
{
LandMetaId = logInfo.LandMetaId;
BuildingMetaId = logInfo.BuildingMetaId;
Floor = logInfo.Floor;
RenteeUserGuid = logInfo.RenteeUserGuid;
MyhomeGuid = logInfo.MyhomeGuid;
RentalPeriod = logInfo.RentalPeriod;
RentalStartTime = logInfo.RentalStartTime;
RentalFinishTime = logInfo.RentalFinishTime;
}
public void setLogProperty(int landMetaId, int buildingMetaId, int floor, string renteeUserGuid, string myhomeGuid, int rentalPeriod, DateTime rentalStartTime, DateTime rentalFinishTime)
{
LandMetaId = landMetaId;
BuildingMetaId = buildingMetaId;
Floor = floor;
RenteeUserGuid = renteeUserGuid;
MyhomeGuid = myhomeGuid;
RentalPeriod = rentalPeriod;
RentalStartTime = rentalStartTime;
RentalFinishTime = rentalFinishTime;
}
}

View File

@@ -0,0 +1,25 @@
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon;
public class RepeatQuestLogInfo : ILogInvoker.IInfo
{
[JsonProperty("next_allocate_time")]
public DateTime m_next_allocate_time { get; private set; } = DateTimeHelper.MaxTime;
[JsonProperty("is_checking")]
public Int32 m_is_checking { get; private set; } = new();
public RepeatQuestLogInfo(ILogInvoker parent, DateTime nextAllocateTime, Int32 isChecking)
: base(parent)
{
m_next_allocate_time = nextAllocateTime;
m_is_checking = isChecking;
}
}

View File

@@ -0,0 +1,29 @@
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class ReplyInviteMyhomeLogInfo : ILogInvoker.IInfo
{
[JsonProperty("my_guid")]
public string m_my_guid { get; private set; } = string.Empty;
[JsonProperty("my_friend_guid")]
public string m_friend_guid { get; private set; } = string.Empty;
[JsonProperty("reply_value")]
public int m_reply_value { get; private set; } = 0;
public ReplyInviteMyhomeLogInfo(ILogInvoker parent, string myGuid, string friendGuid, Int32 replyValue)
: base(parent)
{
m_my_guid = myGuid;
m_friend_guid = friendGuid;
m_reply_value = replyValue;
}
}

View File

@@ -0,0 +1,59 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class SeasonPassLogData : ILogInvoker.IInfo
{
public SeasonPassLogData()
: base()
{ }
[JsonProperty]
public UInt32 Id { get; set; } = 0;
[JsonProperty]
public UInt32 Exp { get; set; } = 0;
[JsonProperty]
public int Grade { get; set; } = 0;
[JsonProperty]
public List<Int32> TakenRewards { get; set; } = new();
[JsonProperty]
public bool IsChargedPass { get; set; } = false;
[JsonProperty]
public int DeltaExp = 0;
[JsonProperty]
public int DeltaGrade = 0;
[JsonProperty]
public int TakeRewardGrade = 0;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(SeasonPassLogData logData)
{
Id = logData.Id;
Exp = logData.Exp;
Grade = logData.Grade;
TakenRewards = logData.TakenRewards;
IsChargedPass = logData.IsChargedPass;
DeltaExp = logData.DeltaExp;
DeltaGrade = logData.DeltaGrade;
TakeRewardGrade = logData.TakeRewardGrade;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public SeasonPassLogData(ILogInvoker parent, SeasonPassLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,59 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain
{
public class ShopLogData : ILogInvoker.IInfo
{
public ShopLogData()
: base()
{ }
[JsonProperty]
public META_ID ShopMId { get; set; } = 0;
[JsonProperty]
public META_ID ProductMId { get; set; } = 0;
[JsonProperty]
public Int32 ProductCount { get; set; } = 0;
[JsonProperty]
public DateTime TransactTime { get; set; } = DateTimeHelper.Current;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setInfo(ShopLogData logInfo)
{
ShopMId = logInfo.ShopMId;
ProductMId = logInfo.ProductMId;
ProductCount = logInfo.ProductCount;
TransactTime = logInfo.TransactTime;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public ShopLogData(ILogInvoker parent, ShopLogData logParam)
: base(parent)
{
if (null != logParam)
{
setInfo(logParam);
}
}
}
}

View File

@@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain
{
public class SocialActionLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int SocialActionMetaId { get; set; }
public SocialActionLogInfo()
: base()
{ }
public SocialActionLogInfo(ILogInvoker parent, SocialActionLogInfo logParam)
: base(parent)
{
setSocialActionInfo(logParam);
}
public void setSocialActionInfo(SocialActionLogInfo logInfo)
{
SocialActionMetaId = logInfo.SocialActionMetaId;
}
}
}

View File

@@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class SocialActionSlotExchangeLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public string UserGuid { get; set; } = string.Empty;
[JsonProperty]
public int SocialActionSlot { get; set; }
[JsonProperty]
public int OldSocialActionMetaId { get; set; }
[JsonProperty]
public int NewSocialActionMetaId { get; set; }
public SocialActionSlotExchangeLogInfo()
: base()
{ }
public SocialActionSlotExchangeLogInfo(ILogInvoker parent, SocialActionSlotExchangeLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setSocialActionInfo(logParam);
}
}
public void setSocialActionInfo(SocialActionSlotExchangeLogInfo logInfo)
{
UserGuid = logInfo.UserGuid;
SocialActionSlot = logInfo.SocialActionSlot;
OldSocialActionMetaId = logInfo.OldSocialActionMetaId;
NewSocialActionMetaId = logInfo.NewSocialActionMetaId;
}
}

View File

@@ -0,0 +1,64 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon.BusinessLogDomain
{
public class StageLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public string StageMoveType { get; set; } = string.Empty; // StageMoveType
[JsonProperty]
public string MapType { get; set; } = string.Empty; // MapFileType
[JsonProperty]
public int MapMId { get; set; } // MapFileType 에 따른 MetaId
[JsonProperty]
public string RoomId { get; set; } = string.Empty; // Channel : channelNo, Indun : roomId
[JsonProperty]
public int MaxJoinerCount { get; set; }
[JsonProperty]
public int JoinerCount { get; set; }
public StageLogInfo()
: base()
{ }
public StageLogInfo(ILogInvoker parent, StageLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setStageInfo(logParam);
}
}
public void setStageInfo(StageLogInfo logInfo)
{
StageMoveType = logInfo.StageMoveType;
MapType = logInfo.MapType;
MapMId = logInfo.MapMId;
RoomId = logInfo.RoomId;
MaxJoinerCount = logInfo.MaxJoinerCount;
JoinerCount = logInfo.JoinerCount;
}
public void setLogProperty(StageMoveType stageMoveType, MapFileType mapFileType, int mapMId, string roomId, int maxJoinerCount, int joinerCount)
{
StageMoveType = stageMoveType.ToString();
MapType = mapFileType.ToString();
MapMId = mapMId;
RoomId = roomId;
MaxJoinerCount = maxJoinerCount;
JoinerCount = joinerCount;
}
}
}

View File

@@ -0,0 +1,25 @@
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class SwitchingPropLogInfo : ILogInvoker.IInfo
{
[JsonProperty("quest_id")]
public UInt32 m_quest_id { get; set; } = 0;
[JsonProperty("prop_id")]
public Int32 m_prop_id { get; set; } = 0;
[JsonProperty("prop_state")]
public Int32 m_prop_state { get; set; } = 0;
public SwitchingPropLogInfo(ILogInvoker parent, UInt32 questId, Int32 propId, Int32 propState) : base(parent)
{
m_quest_id = questId;
m_prop_id = propId;
m_prop_state = propState;
}
}

View File

@@ -0,0 +1,47 @@
using Newtonsoft.Json;
using ServerBase;
using RESERVATION_GUID = System.String;
namespace ServerCommon.BusinessLogDomain;
public class TaskReservationLogData : ILogInvoker.IInfo
{
public TaskReservationLogData()
: base()
{ }
[JsonProperty]
public RESERVATION_GUID ReservationGuid { get; set; } = string.Empty;
[JsonProperty]
public TaskReservationActionType ReservationType { get; set; } = TaskReservationActionType.None;
[JsonProperty]
public string JsonValue { get; set; } = string.Empty;
//=====================================================================================
// 로그 생성용 객체 정의
//=====================================================================================
public void setItemInfo(TaskReservationLogData logData)
{
ReservationGuid = logData.ReservationGuid;
ReservationType = logData.ReservationType;
JsonValue = logData.JsonValue;
}
//=====================================================================================
// 로그 출력용 객체 정의
//=====================================================================================
public TaskReservationLogData(ILogInvoker parent, TaskReservationLogData itemParam)
: base(parent)
{
if (null != itemParam)
{
setItemInfo(itemParam);
}
}
}

View File

@@ -0,0 +1,56 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class TaxiLogInfo : ILogInvoker.IInfo
{
[JsonProperty]
public int TaxiMID { get; set; }
[JsonProperty]
public string TaxiType { get; set; } = string.Empty; // TaxiType
[JsonProperty]
public int Cost { get; set; }
[JsonProperty]
public int UnloadingWorldId { get; set; }
[JsonProperty]
public int UnloadingLandId { get; set; }
[JsonProperty]
public int UnloadingFloor { get; set; }
[JsonProperty]
public Pos UnloadingPos { get; set; } = new Pos();
public TaxiLogInfo()
: base()
{ }
public TaxiLogInfo(ILogInvoker parent, TaxiLogInfo logParam)
: base(parent)
{
if (null != logParam)
{
setTaxiInfo(logParam);
}
}
public void setTaxiInfo(TaxiLogInfo logInfo)
{
TaxiMID = logInfo.TaxiMID;
TaxiType = logInfo.TaxiType;
Cost = logInfo.Cost;
UnloadingWorldId = logInfo.UnloadingWorldId;
UnloadingLandId = logInfo.UnloadingLandId;
UnloadingFloor = logInfo.UnloadingFloor;
UnloadingPos = logInfo.UnloadingPos;
}
}

View File

@@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore; using ServerBase;
using META_ID = System.UInt32;
namespace ServerCommon.BusinessLogDomain
{
public class TestUserCreate: ILogInvoker.IInfo
{
[JsonProperty]
public META_ID TestUserCreateMId { get; set; }
}
}

View File

@@ -0,0 +1,29 @@
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public enum UgqAbortType
{
None = 0,
Self,
Revision_Changed,
}
public class UgqAbortLogInfo : QuestIdLogInfo
{
[JsonProperty("abort_type")]
public UgqAbortType m_abort_type { get; private set; } = UgqAbortType.None;
public UgqAbortLogInfo(ILogInvoker parent, UInt32 questId, UInt32 questRevision, UgqAbortType abortType)
: base(parent, questId, questRevision)
{
m_abort_type = abortType;
}
}

View File

@@ -0,0 +1,232 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class UgqApiUserActorLog : ILogActor
{
public ServerType ServerType { get; private set; } = ServerType.None;
public string UserGuid { get; private set; } = string.Empty;
public string UserNickname { get; private set; } = string.Empty;
public void initLogInfo(ServerType serverType
, string userGuid
, string userNickname)
{
ServerType = serverType;
UserGuid = userGuid;
UserNickname = userNickname;
}
public void setLogInfo(UgqApiUserActorLog logInfo)
{
ServerType = logInfo.ServerType;
UserGuid = logInfo.UserGuid;
UserNickname = logInfo.UserNickname;
}
public UgqApiUserActorLog()
{
}
public UgqApiUserActorLog(UgqApiUserActorLog logInfo)
{
setLogInfo(logInfo);
}
}
public class UgqApiAdminLog : ILogActor
{
public ServerType ServerType { get; private set; } = ServerType.None;
public string Username { get; private set; } = string.Empty;
public void initLogInfo(ServerType serverType
, string username)
{
ServerType = serverType;
Username = username;
}
public void setLogInfo(UgqApiAdminLog logInfo)
{
ServerType = logInfo.ServerType;
Username = logInfo.Username;
}
public UgqApiAdminLog()
{
}
public UgqApiAdminLog(UgqApiAdminLog logInfo)
{
setLogInfo(logInfo);
}
}
public enum UgqApiLoginType
{
DevelopmentApi,
NormalApi,
}
public class UgqApiLoginLogInfo : ILogInvokerEx.IInfo
{
[JsonProperty("type")]
UgqApiLoginType m_type;
public UgqApiLoginLogInfo(ILogInvoker parent, UgqApiLoginType type)
: base(parent)
{
m_type = type;
}
}
public class UgqApiLogoutLogInfo : ILogInvokerEx.IInfo
{
public UgqApiLogoutLogInfo(ILogInvoker parent)
: base(parent)
{
}
}
public class UgqApiQuestCraeteLogInfo : ILogInvokerEx.IInfo
{
[JsonProperty("quest_content_id")]
public string m_quest_content_id { get; private set; }
[JsonProperty("admin_username")]
public string m_admin_username { get; private set; }
public UgqApiQuestCraeteLogInfo(ILogInvoker parent, string quest_content_id, string admin_username)
: base(parent)
{
m_quest_content_id = quest_content_id;
m_admin_username = admin_username;
}
}
public class UgqApiAddSlotLogInfo : ILogInvokerEx.IInfo
{
[JsonProperty("additional_slots")]
public int m_additional_slots { get; private set; }
[JsonProperty("admin_username")]
public string m_admin_username { get; private set; }
public UgqApiAddSlotLogInfo(ILogInvoker parent, int additional_slots, string admin_username)
: base(parent)
{
m_additional_slots = additional_slots;
m_admin_username = admin_username;
}
}
public class UgqApiChangeStateLogInfo : ILogInvokerEx.IInfo
{
[JsonProperty("quest_content_id")]
public string m_quest_content_id { get; private set; }
[JsonProperty("from_state")]
public string m_from_state { get; private set; }
[JsonProperty("to_state")]
public string m_to_state { get; private set; }
[JsonProperty("quest_id")]
public long m_quest_id { get; private set; }
[JsonProperty("revision")]
public long m_revision { get; private set; }
[JsonProperty("admin_username")]
public string m_admin_username { get; private set; }
public UgqApiChangeStateLogInfo(ILogInvoker parent, string quest_content_id,
string from_state, string to_state,
long quest_id, long revision, string admin_username)
: base(parent)
{
m_quest_content_id = quest_content_id;
m_from_state = from_state;
m_to_state = to_state;
m_quest_id = quest_id;
m_revision = revision;
m_admin_username = admin_username;
}
}
public enum UgqCreatorPointReason
{
QuestCompleted = 1,
Admin = 2,
Development = 3,
}
public class UgqApiCreatorPointLogInfo : ILogInvokerEx.IInfo
{
[JsonProperty("amount")]
public double m_amount { get; private set; }
[JsonProperty("quest_id")]
public long m_quest_id { get; private set; }
[JsonProperty("revision")]
public long m_revision { get; private set; }
[JsonProperty("reason")]
public UgqCreatorPointReason m_reason { get; private set; }
[JsonProperty("admin_username")]
public string m_admin_username { get; private set; }
[JsonProperty("reason_detail")]
public string m_reason_detail { get; private set; }
public UgqApiCreatorPointLogInfo(ILogInvoker parent, double amount,
long quest_id, long revision,
string admin_username,
UgqCreatorPointReason reason, string reason_detail)
: base(parent)
{
m_amount = amount;
m_quest_id = quest_id;
m_revision = revision;
m_admin_username = admin_username;
m_reason = reason;
m_reason_detail = reason_detail;
}
}
public class UgqApiAdminLoginLogInfo : ILogInvokerEx.IInfo
{
[JsonProperty("username")]
public string m_username { get; private set; }
public UgqApiAdminLoginLogInfo(ILogInvoker parent, string username)
: base(parent)
{
m_username = username;
}
}
public class UgqApiEmptyLogInfo : ILogInvokerEx.IInfo
{
public UgqApiEmptyLogInfo(ILogInvoker parent)
: base(parent)
{
}
}

View File

@@ -0,0 +1,16 @@
using Newtonsoft.Json;
using ServerCore; using ServerBase;
namespace ServerCommon;
public class UgqDailyRewardLogInfo : ILogInvoker.IInfo
{
[JsonProperty("ugq_daily_reward_count")]
public Dictionary<UgqGradeType, Int32> ugq_daily_reward_count { get; set; } = new();
[JsonProperty("next_refresh_time")]
public DateTime next_refresh_time { get; set; } = DateTimeHelper.Current;
}

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using ServerCore;
using ServerBase;
namespace ServerCommon.BusinessLogDomain;
public class UgqReportLogInfo : QuestIdLogInfo
{
[JsonProperty("report")]
public string m_report { get; private set; } = string.Empty;
public UgqReportLogInfo(ILogInvoker parent, UInt32 questId, UInt32 questRevision, string report)
: base(parent, questId, questRevision)
{
m_report = report;
}
}

Some files were not shown because too many files have changed in this diff Show More