47 lines
1.4 KiB
C#
47 lines
1.4 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 CHARACTER_GUID = System.String;
|
|
using META_TYPE = System.String;
|
|
|
|
|
|
namespace ServerCommon.BusinessLogDomain;
|
|
|
|
public static class CharacterBusinessLogHelper
|
|
{
|
|
public static async Task<(Result, CharacterLogInfo?)> toCharacterLogInfo(this CharacterAttribute characterAttribute)
|
|
{
|
|
var result = new Result();
|
|
|
|
(result, var character_base_doc) = await characterAttribute.toDocBase(false);
|
|
NullReferenceCheckHelper.throwIfNull(character_base_doc, () => $"character_base_doc is null !!!");
|
|
if (result.isFail())
|
|
{
|
|
return (result, null);
|
|
}
|
|
|
|
var character_base_attrib = character_base_doc.getAttrib<CharacterBaseAttrib>();
|
|
NullReferenceCheckHelper.throwIfNull(character_base_attrib, () => $"character_base_attrib is null !!!");
|
|
|
|
var character_log_info = new CharacterLogInfo();
|
|
character_log_info.setLogProperty( character_base_attrib.CharacterGuid
|
|
, character_base_doc.getPK(), character_base_doc.getSK()
|
|
, character_base_attrib.ApperanceProfileValue.CustomValues
|
|
);
|
|
|
|
return await Task.FromResult((result, character_log_info));
|
|
}
|
|
}
|