github.com/tada-team/tdproto@v1.51.57/billing_enquiry.go (about)

     1  package tdproto
     2  
     3  import "time"
     4  
     5  const (
     6  	EnquiryTypeUnspecified EnquiryType = "ENQUIRY_TYPE_UNSPECIFIED"
     7  	EnquiryTypeRenewal     EnquiryType = "ENQUIRY_TYPE_RENEWAL"
     8  	EnquiryTypeBasic       EnquiryType = "ENQUIRY_TYPE_BASIC"
     9  	EnquiryTypeExtension   EnquiryType = "ENQUIRY_TYPE_EXTENSION"
    10  
    11  	PaymentTypeUnspecified                  PaymentType = "PAYMENT_TYPE_UNSPECIFIED"
    12  	PaymentTypePaperDocumentManagement      PaymentType = "PAYMENT_TYPE_PAPER_DOCUMENT_MANAGEMENT"
    13  	PaymentTypeElectronicDocumentManagement PaymentType = "PAYMENT_TYPE_ELECTRONIC_DOCUMENT_MANAGEMENT"
    14  	PaymentTypeBankCard                     PaymentType = "PAYMENT_TYPE_BANK_CARD"
    15  	PaymentTypeTechnical                    PaymentType = "PAYMENT_TYPE_TECHNICAL"
    16  
    17  	EnquiryStatusUnspecified EnquiryStatus = "ENQUIRY_STATUS_UNSPECIFIED"
    18  	EnquiryStatusWaiting     EnquiryStatus = "ENQUIRY_STATUS_WAITING"
    19  	EnquiryStatusCancelled   EnquiryStatus = "ENQUIRY_STATUS_CANCELLED"
    20  	EnquiryStatusActive      EnquiryStatus = "ENQUIRY_STATUS_ACTIVE"
    21  	EnquiryStatusExpired     EnquiryStatus = "ENQUIRY_STATUS_EXPIRED"
    22  	EnquiryStatusDone        EnquiryStatus = "ENQUIRY_STATUS_DONE"
    23  
    24  	EnquiryPaymentStatusUnspecified         EnquiryPaymentStatus = "ENQUIRY_PAYMENT_STATUS"
    25  	EnquiryPaymentStatusWaitingConfirmation EnquiryPaymentStatus = "ENQUIRY_PAYMENT_STATUS_WAITING_CONFIRMATION"
    26  	EnquiryPaymentStatusWaitingCrediting    EnquiryPaymentStatus = "ENQUIRY_PAYMENT_STATUS_WAITING_CREDITING"
    27  	EnquiryPaymentStatusPaid                EnquiryPaymentStatus = "ENQUIRY_PAYMENT_STATUS_PAID"
    28  )
    29  
    30  type EnquiryType string
    31  type PaymentType string
    32  type EnquiryStatus string
    33  type EnquiryPaymentStatus string
    34  
    35  type Enquiry struct {
    36  	Id                       string  `json:"id"`
    37  	PersonalAccountId        string  `json:"personal_account_id"`
    38  	SelectableWorkplaceCount uint32  `json:"selectable_workplace_count"`
    39  	Amount                   float64 `json:"amount"`
    40  
    41  	TariffName         string  `json:"tariff_name"`
    42  	WorkplacePrice     float64 `json:"workplace_price"`
    43  	PeriodDays         uint32  `json:"period_days"`
    44  	FreeWorkplaceCount uint32  `json:"free_workplace_count"`
    45  
    46  	ActivationDate   *time.Time `json:"activation_date,omitempty"`
    47  	DeactivationDate *time.Time `json:"deactivation_date,omitempty"`
    48  	CreatedAt        *time.Time `json:"created_at,omitempty"`
    49  	CreditedAt       *time.Time `json:"credited_at,omitempty"`
    50  	ActuallyPaidAt   *time.Time `json:"actually_paid_at,omitempty"`
    51  	FixationPaidAt   *time.Time `json:"fixation_paid_at,omitempty"`
    52  	ExpirationDate   *time.Time `json:"expiration_date,omitempty"`
    53  	ExpiredAt        *time.Time `json:"expired_at,omitempty"`
    54  	ActivateAt       *time.Time `json:"activate_at,omitempty"`
    55  	DeactivateAt     *time.Time `json:"deactivate_at,omitempty"`
    56  
    57  	EnquiryType   EnquiryType          `json:"enquiry_type"`
    58  	Status        EnquiryStatus        `json:"status"`
    59  	PaymentStatus EnquiryPaymentStatus `json:"payment_status"`
    60  	PaymentType   PaymentType          `json:"payment_type"`
    61  
    62  	FileName string `json:"file_name,omitempty"`
    63  	MediaUrl string `json:"media_url,omitempty"`
    64  }
    65  
    66  type EnquiryCreateRequest struct {
    67  	SelectableTariffId       string `json:"selectable_tariff_id"`
    68  	SelectableWorkplaceCount uint32 `json:"selectable_workplace_count"`
    69  	CounterpartyId           string `json:"counterparty_id"`
    70  }
    71  
    72  type EnquiryCreateResponse struct {
    73  	Enquiry
    74  }
    75  
    76  type EnquiryGetListRequest struct {
    77  	DateCreateFrom   *time.Time    `json:"date_create_from,omitempty"`
    78  	DateCreateTo     *time.Time    `json:"date_create_to,omitempty"`
    79  	DateActivateTo   *time.Time    `json:"date_activate_to,omitempty"`
    80  	DateDeactivateTo *time.Time    `json:"date_deactivate_to,omitempty"`
    81  	Status           EnquiryStatus `json:"status,omitempty"`
    82  	Limit            *uint32       `json:"limit,omitempty"`
    83  	Offset           *uint32       `json:"offset,omitempty"`
    84  }
    85  
    86  type EnquiryGetListResponse struct {
    87  	PaginatedBillingEnquiries
    88  }