@experteam-mx/ngx-services
Version:
Angular common services for Experteam apps
174 lines (173 loc) • 4.76 kB
TypeScript
import { LaravelModel } from './api.models';
import { IdentificationType } from './api-catalog.interfaces';
export interface Document extends LaravelModel {
document_type_range_id: number;
document_number: number;
document_prefix: string;
document_suffix: string;
document_number_original: number;
document_prefix_original: string;
document_suffix_original: string;
customer_id: number;
customer_company_name: string;
customer_email: string;
customer_address_line1: string;
customer_identification_number: string;
customer_identification_type_id: number;
provider_name: string;
provider_identification_number: number;
document_authorization_number: string;
provider_extra_fields: {
phone: string;
fax: string;
};
document_id: number;
created_at: string;
updated_at: string;
transaction_id: string;
extra_fields: {
observation: string;
document_date: string;
};
customer_address_line2: string;
customer_address_line3: string;
customer_postal_code: string;
customer_state: string;
customer_county_name: string;
customer_city_name: string;
customer_country_id: number;
status: number;
user_id: number;
customer_full_name: string;
customer_phone_code: string;
customer_phone_number: string;
gmt_offset: string;
customer_type_id: number;
customer_extra_fields: string;
installation_id: number;
exchange: number;
authorization_numbers: string;
extra_fields_json: string;
provider_extra_fields_json: string;
document_type_range: DocumentTypeRange;
items: DocumentItem[];
document_payments: DocumentPayment[];
payments: Payment[];
}
export interface DocumentTypeRange extends LaravelModel {
id: number;
provider_id: number;
model_type: string;
model_id: number;
init_number: number;
final_number: number;
current_number: number;
used_numbers: number;
min_until_mail: number;
prefix: string;
sap_prefix: string;
suffix: string;
sap_suffix: string;
external_generated: boolean;
authorization_number: string;
environment: string;
is_manual: boolean;
auto_activation: boolean;
activation_key: string;
authorization_label: string;
valid_since: string;
valid_until: string;
created_at: string;
updated_at: string;
is_active: boolean;
country_document_type_id: number;
}
export interface DocumentItem extends LaravelModel {
id: number;
document_id: number;
details: {
account: number;
country_reference_currency_id: number;
customer_company_name: string;
};
model_origin: string;
model_type: string;
model_id: number;
quantity: number;
unit_price: number;
subtotal: number;
tax_detail: {};
total: number;
created_at: string;
updated_at: string;
discount: 0;
details_json: string;
}
export interface DocumentPayment extends LaravelModel {
id: number;
document_id: number;
payment_id: number;
amount: number;
created_at: string;
updated_at: string;
payment: Payment;
}
export interface Payment extends LaravelModel {
id: number;
amount: number;
country_reference_currency_id: number;
exchange: number;
company_country_payment_type_id: number;
due_date: string;
received: number;
status: number;
details: {};
created_at: string;
updated_at: string;
transaction_id: string;
gmt_offset: string;
country_payment_type_id: number;
opening_id: number;
installation_id: number;
details_json: {};
payment_adjustment: {};
pivot: {
document_id: number;
payment_id: number;
amount: number;
};
}
export interface Customer extends LaravelModel {
identification_number: number;
company_name: string;
full_name: string;
email: string;
phone_code: string;
phone_number: number;
birth_date: string;
postal_code: number;
state: string;
county_name: string;
city_name: string;
address_line1: string;
address_line2: string;
address_line3: string;
company_id: number;
identification_type_id: number;
extra_fields: {
[key: string]: string;
};
country_id: number;
customer_type_id: number;
}
export interface CustomerType extends LaravelModel {
country_id: number;
identification_type_customer_types: IdentificationTypeCustomer[];
name: string;
}
export interface IdentificationTypeCustomer extends LaravelModel {
customer_type_id: number;
identification_type_id: number;
customer_id: number | null;
identificationType: IdentificationType;
}