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