// @generated
// This file is @generated by prost-build.
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OrderLog {
    #[prost(int64, tag="1")]
    pub id: i64,
    /// 로그시각
    #[prost(message, optional, tag="2")]
    pub log_time: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
    /// 로그종류
    #[prost(string, tag="3")]
    pub log_type: ::prost::alloc::string::String,
    /// 이벤트
    #[prost(string, tag="4")]
    pub event_type: ::prost::alloc::string::String,
    /// 체결수량
    #[prost(double, tag="5")]
    pub execution_quantity: f64,
    /// 체결가격
    #[prost(double, tag="6")]
    pub execution_price: f64,
    /// 주문번호
    #[prost(int64, tag="10")]
    pub order_id: i64,
    /// 원주문번호
    #[prost(string, tag="11")]
    pub original_order_id: ::prost::alloc::string::String,
    /// 신규/정정/취소
    #[prost(string, tag="12")]
    pub action: ::prost::alloc::string::String,
    /// 방향 (Ask, Bid)
    #[prost(string, tag="13")]
    pub side: ::prost::alloc::string::String,
    /// 펀드코드
    #[prost(string, tag="14")]
    pub fund_code: ::prost::alloc::string::String,
    /// 장운영코드
    #[prost(string, tag="15")]
    pub market_operation_code: ::prost::alloc::string::String,
    /// 종목코드
    #[prost(string, tag="16")]
    pub product_code: ::prost::alloc::string::String,
    /// 종목명
    #[prost(string, tag="17")]
    pub product_name: ::prost::alloc::string::String,
    /// 주문가격
    #[prost(double, tag="18")]
    pub order_price: f64,
    /// 주문수량
    #[prost(double, tag="19")]
    pub order_quantity: f64,
    /// 미체결
    #[prost(double, tag="20")]
    pub unfilled: f64,
    /// 체결
    #[prost(double, tag="21")]
    pub filled: f64,
    /// 상태
    #[prost(string, tag="22")]
    pub status: ::prost::alloc::string::String,
    /// 차입
    #[prost(bool, tag="23")]
    pub borrowed: bool,
    /// 자동정정
    #[prost(bool, tag="24")]
    pub auto: bool,
    /// 거래소접수여부
    #[prost(bool, tag="25")]
    pub accepted: bool,
    /// LP여부
    #[prost(bool, tag="26")]
    pub lp: bool,
    /// 차입매도2/일반매도1/매수0
    #[prost(int32, tag="27")]
    pub ask_type_type: i32,
    /// PT코드
    #[prost(int32, tag="28")]
    pub program_type: i32,
    /// 태그
    #[prost(string, tag="29")]
    pub tag: ::prost::alloc::string::String,
    /// 체결확인시점상대가격
    #[prost(double, tag="30")]
    pub original_price: f64,
    /// 사번
    #[prost(int32, tag="31")]
    pub user_code: i32,
    /// IP
    #[prost(string, tag="32")]
    pub user_trimmed_ip: ::prost::alloc::string::String,
    /// SMP 타입
    #[prost(int32, tag="34")]
    pub smp_type: i32,
    /// 서버 IP
    #[prost(string, tag="35")]
    pub server_ip: ::prost::alloc::string::String,
    /// 주문생성
    #[prost(message, optional, tag="40")]
    pub create_time: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
    /// 거래소송신
    #[prost(message, optional, tag="41")]
    pub submit_time: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
    /// 거래소수신
    #[prost(message, optional, tag="42")]
    pub process_time: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
    /// 체결알림시각
    #[prost(message, optional, tag="43")]
    pub last_trade_notify_time: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
}
/// ListOrderLogsRequest payload
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListOrderLogsRequest {
    /// The maximum number of order logs to return. The service may return fewer than
    /// this value.
    /// If unspecified, at most 50 rows will be returned.
    /// The maximum value is 1024; values above 1024 will be coerced to 1024.
    #[prost(int32, tag="1")]
    pub page_size: i32,
    /// Token of the page to retrieve. If not specified, the first
    /// page of results will be returned. Use the value obtained from
    /// `next_page_token` in the previous response to request
    /// the next page of results.
    ///
    /// When paginating, all other parameters provided to `ListOrderLogs` must match
    /// the call that provided the page token.
    #[prost(string, tag="2")]
    pub page_token: ::prost::alloc::string::String,
    /// Available Sequence and Operator
    /// * start_date
    ///    * `>`, `>=`, `=`, `<=`, `<`
    /// * end_date
    ///    * `>`, `>=`, `=`, `<=`, `<`
    /// * order_id
    ///    * `equal`
    /// * original_order_id
    ///    * `equal`
    /// * fund_code
    ///    * `equal`
    /// * product_code
    ///    * `equal`
    ///
    /// Examples
    /// * filter=start_date>"2025-01-01T00" AND end_date<"2025-01-31T23"
    /// * filter=fund_code="0159" AND product_code="A005930"
    #[prost(string, tag="3")]
    pub filter: ::prost::alloc::string::String,
}
/// ListOrderLogsResponse response
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListOrderLogsResponse {
    /// The list of rows that matched the query.
    #[prost(message, repeated, tag="1")]
    pub order_logs: ::prost::alloc::vec::Vec<OrderLog>,
    /// Pagination token used to retrieve the next page of results.
    /// Pass the content of this string as the `page_token` attribute of
    /// the next request. `next_page_token` is not returned for the last
    /// page.
    #[prost(string, tag="2")]
    pub next_page_token: ::prost::alloc::string::String,
}
include!("log_sync.v1.order_log.tonic.rs");
include!("log_sync.v1.order_log.serde.rs");
// @@protoc_insertion_point(module)