Files
caliverse_server/ServerCommon/1. Define/BusinessLog/Domain/BeaconCreateLogInfo.cs
2025-05-01 07:20:41 +09:00

173 lines
5.7 KiB
C#

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;
}
}