using Newtonsoft.Json; namespace ServerCommon; public class CaliumRollUpResponse : EchoSystemBaseResponse { [JsonProperty("data")] public List? m_list { get; set; } = new(); } public class RollUpData { // Epoch 값 [JsonProperty("seq")] public int m_epoch { get; set; } // 회차 적용 날짜 ( yyyyMMdd ) [JsonProperty("ymd")] public int m_date { get; set; } // 교환소 총 발행량 [JsonProperty("calium_exchange_volume")] public double m_exchange_volume { get; set; } // 컨버터 배정 수량 [JsonProperty("calium_convertor_volume")] public double m_convertor_volume { get; set; } // 재원저장소 적재량 ( 교환소 ) [JsonProperty("calium_get_repository_volume")] public double m_exchange_repo_volume { get; set; } // 재원저장소 적재량 ( 교환소 외 ) [JsonProperty("extra_get_repository_volume")] public double m_extra_exchange_repo_volume { get; set; } // 적재량 합계 [JsonProperty("total_repository_volume")] public double m_total_repo_volume { get; set; } // 차감 수량 [JsonProperty("repo_confirm_total_amount")] public double m_confirm_total_amount { get; set; } // 재원저장소 적재량(누적) [JsonProperty("stack_repository_count")] public double m_stack_repo_count { get; set; } // 당일 발행량 합계 [JsonProperty("total_today_get_volume")] public double m_today_total_volume { get; set; } // 타입별 당일 소각량 합계 [JsonProperty("total_today_calium_burn")] public Dictionary m_today_total_burn { get; set; } = new(); // 당일 소각량 합계 [JsonProperty("total_today_burn_volume")] public double m_today_total_burn_volume { get; set; } // 당일 유통 공급량 [JsonProperty("total_today_circ_volume")] public double m_today_total_circ_volume { get; set; } // 누적 발행량 [JsonProperty("stack_volume")] public double m_stack_volume { get; set; } // 교환 가중치 [JsonProperty("swap_rate")] public double m_daily_inflation_rate { get; set; } // 롤업 트랜젝션 상태 [JsonProperty("tx_state_info")] public RollUpState m_rollup_state { get; set; } = new(); // 생성일자 [JsonProperty("create_time")] public DateTime m_create_time { get; set; } // 갱신일자 [JsonProperty("update_time")] public DateTime m_update_time { get; set; } // Web2 롤업 여부 (최초 롤업) [JsonProperty("is_web2_data")] public bool m_is_web2_data { get; set; } // 지연확정 여부 [JsonProperty("is_delay_confirm")] public bool m_is_delay_confirm { get; set; } // 전일자 롤업 필드 캐시 [JsonProperty("previous")] public PreviousRollUpData m_previous_roll_up { get; set; } = new(); // 컨버터 배정 누적 수량 [JsonProperty("stack_convertor_volume")] public double m_stack_converter_volume { get; set; } // 기본 배정 물량 [JsonProperty("standard_alloc_amount")] public double m_standard_alloc_amount { get; set; } // ObjectId [JsonProperty("ccvid")] public string m_ccv_id { get; set; } = string.Empty; // 컨버터 변환율 [JsonProperty("converter_pod_rate")] public double m_daily_converter_rate { get; set; } } public class RollUpState { // Pending 결과 : string.Empty - 전송대기 / pending - 결과 대기 / success - 성공 [JsonProperty("state")] public string m_state { get; set; } = string.Empty; // 트랜젝션 id [JsonProperty("hash")] public string m_hash { get; set; } = string.Empty; } public class PreviousRollUpData { [JsonProperty("total_today_circ_volume")] public double m_today_total_circ_volume { get; set; } [JsonProperty("stack_volume")] public double m_stack_volume { get; set; } [JsonProperty("swap_rate")] public double m_daily_inflation_rate { get; set; } [JsonProperty("stack_convertor_volume")] public double m_stack_converter_volume { get; set; } [JsonProperty("missing_volume")] public double m_missing_volume { get; set; } }