zugferd_code_lists/zugferd_2_3_3/
enum1001.rs

1#![allow(non_camel_case_types)]
2
3#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
4pub enum Enum1001 {
5    /// Request for payment
6    ///
7    /// Invoice
8    RequestForPayment,
9    /// Debit note related to goods or services
10    ///
11    /// Invoice
12    DebitNoteRelatedToGoodsOrServices,
13    /// Credit note related to goods or services
14    ///
15    /// Credit Note
16    CreditNoteRelatedToGoodsOrServices,
17    /// Metered services invoice
18    ///
19    /// Invoice
20    MeteredServicesInvoice,
21    /// Credit note related to financial adjustments
22    ///
23    /// Credit Note
24    CreditNoteRelatedToFinancialAdjustments,
25    /// Debit note related to financial adjustments
26    ///
27    /// Invoice
28    DebitNoteRelatedToFinancialAdjustments,
29    /// Tax notification
30    ///
31    /// Invoice
32    TaxNotification,
33    /// Invoicing data sheet
34    ///
35    /// Invoice
36    InvoicingDataSheet,
37    /// Direct payment valuation
38    ///
39    /// Invoice
40    DirectPaymentValuation,
41    /// Provisional payment valuation
42    ///
43    /// Invoice
44    ProvisionalPaymentValuation,
45    /// Payment valuation
46    ///
47    /// Invoice
48    PaymentValuation,
49    /// Interim application for payment
50    ///
51    /// Invoice
52    InterimApplicationForPayment,
53    /// Final payment request based on completion of work
54    ///
55    /// Invoice
56    FinalPaymentRequestBasedOnCompletionWork,
57    /// Payment request for completed units
58    ///
59    /// Invoice
60    PaymentRequestForCompletedUnits,
61    /// Self billed credit note
62    ///
63    /// Credit Note
64    SelfBilledCreditNote,
65    /// Consolidated credit note - goods and services
66    ///
67    /// Credit Note
68    ConsolidatedCreditNoteGoodsAndServices,
69    /// Price variation invoice
70    ///
71    /// Invoice
72    PriceVariationInvoice,
73    /// Credit note for price variation
74    ///
75    /// Credit Note
76    CreditNoteForPriceVariation,
77    /// Delcredere credit note
78    ///
79    /// Credit Note
80    DelcredereCreditNote,
81    /// Proforma invoice
82    ///
83    /// Invoice
84    ProformaInvoice,
85    /// Partial invoice
86    ///
87    /// Invoice
88    PartialInvoice,
89    /// Commercial invoice which includes a packing list
90    ///
91    /// Invoice
92    CommercialInvoiceWhichIncludesAPackingList,
93    /// Commercial invoice
94    ///
95    /// Invoice
96    CommercialInvoice,
97    /// Credit note
98    ///
99    /// Credit Note
100    CreditNote,
101    /// Commission note
102    ///
103    /// Invoice
104    CommissionNote,
105    /// Debit note
106    ///
107    /// Invoice
108    DebitNote,
109    /// Corrected invoice
110    ///
111    /// Invoice
112    CorrectedInvoice,
113    /// Consolidated invoice
114    ///
115    /// Invoice
116    ConsolidatedInvoice,
117    /// Prepayment invoice
118    ///
119    /// Invoice
120    PrepaymentInvoice,
121    /// Hire invoice
122    ///
123    /// Invoice
124    HireInvoice,
125    /// Tax invoice
126    ///
127    /// Invoice
128    TaxInvoice,
129    /// Self-billed invoice
130    ///
131    /// Invoice
132    SelfBilledInvoice,
133    /// Delcredere invoice
134    ///
135    /// Invoice
136    DelcredereInvoice,
137    /// Factored invoice
138    ///
139    /// Invoice
140    FactoredInvoice,
141    /// Lease invoice
142    ///
143    /// Invoice
144    LeaseInvoice,
145    /// Consignment invoice
146    ///
147    /// Invoice
148    ConsignmentInvoice,
149    /// Factored credit note
150    ///
151    /// Credit Note
152    FactoredCreditNote,
153    /// Optical Character Reading (OCR) payment credit note
154    ///
155    /// Credit Note
156    OpticalCharacterReadingOcrPaymentCreditNote,
157    /// Debit advice
158    ///
159    /// Invoice
160    DebitAdvice,
161    /// Reversal of debit
162    ///
163    /// Invoice
164    ReversalDebit,
165    /// Reversal of credit
166    ///
167    /// Credit Note
168    ReversalCredit,
169    ///  Self-billed corrective invoice, invoice type, Corrected
170    ///
171    /// Invoice
172    SelfBilledCorrectiveInvoiceInvoiceTypeCorrected,
173    ///  Factored Corrective Invoice, invoice type, Corrected
174    ///
175    /// Invoice
176    FactoredCorrectiveInvoiceInvoiceTypeCorrected,
177    ///  Self billed Factored corrective invoice, invoice type, Corrected
178    ///
179    /// Invoice
180    SelfBilledFactoredCorrectiveInvoiceInvoiceTypeCorrected,
181    ///  Self Prepayment invoice, invoice type, Original
182    ///
183    /// Invoice
184    SelfPrepaymentInvoiceInvoiceTypeOriginal,
185    ///  Self billed factored invoice, invoice type, Original
186    ///
187    /// Invoice
188    SelfBilledFactoredInvoiceInvoiceTypeOriginal,
189    ///  Self billet factored Credit Note, Credit note type, Corrected
190    ///
191    /// Credit Note
192    SelfBilletFactoredCreditNoteCreditNoteTypeCorrected,
193    ///  Prepayment credit note, credit note type, Corrected
194    ///
195    /// Credit Note
196    PrepaymentCreditNoteCreditNoteTypeCorrected,
197    /// Self billed debit note
198    ///
199    /// Invoice
200    SelfBilledDebitNote,
201    /// Forwarder's credit note
202    ///
203    /// Credit Note
204    ForwardersCreditNote,
205    /// Forwarder's invoice discrepancy report
206    ///
207    /// Invoice
208    ForwardersInvoiceDiscrepancyReport,
209    /// Insurer's invoice
210    ///
211    /// Invoice
212    InsurersInvoice,
213    /// Forwarder's invoice
214    ///
215    /// Invoice
216    ForwardersInvoice,
217    /// Port charges documents
218    ///
219    /// Invoice
220    PortChargesDocuments,
221    /// Invoice information for accounting purposes
222    ///
223    /// Invoice
224    InvoiceInformationForAccountingPurposes,
225    /// Freight invoice
226    ///
227    /// Invoice
228    FreightInvoice,
229    /// Claim notification
230    ///
231    /// Invoice
232    ClaimNotification,
233    /// Consular invoice
234    ///
235    /// Invoice
236    ConsularInvoice,
237    /// Partial construction invoice
238    ///
239    /// Invoice
240    PartialConstructionInvoice,
241    /// Partial final construction invoice
242    ///
243    /// Invoice
244    PartialFinalConstructionInvoice,
245    /// Final construction invoice
246    ///
247    /// Invoice
248    FinalConstructionInvoice,
249    /// Customs invoice
250    ///
251    /// Invoice
252    CustomsInvoice,
253}
254
255impl crate::Code for Enum1001 {
256    fn code(&self) -> &str {
257        match self {
258            Enum1001::RequestForPayment => "71",
259            Enum1001::DebitNoteRelatedToGoodsOrServices => "80",
260            Enum1001::CreditNoteRelatedToGoodsOrServices => "81",
261            Enum1001::MeteredServicesInvoice => "82",
262            Enum1001::CreditNoteRelatedToFinancialAdjustments => "83",
263            Enum1001::DebitNoteRelatedToFinancialAdjustments => "84",
264            Enum1001::TaxNotification => "102",
265            Enum1001::InvoicingDataSheet => "130",
266            Enum1001::DirectPaymentValuation => "202",
267            Enum1001::ProvisionalPaymentValuation => "203",
268            Enum1001::PaymentValuation => "204",
269            Enum1001::InterimApplicationForPayment => "211",
270            Enum1001::FinalPaymentRequestBasedOnCompletionWork => "218",
271            Enum1001::PaymentRequestForCompletedUnits => "219",
272            Enum1001::SelfBilledCreditNote => "261",
273            Enum1001::ConsolidatedCreditNoteGoodsAndServices => "262",
274            Enum1001::PriceVariationInvoice => "295",
275            Enum1001::CreditNoteForPriceVariation => "296",
276            Enum1001::DelcredereCreditNote => "308",
277            Enum1001::ProformaInvoice => "325",
278            Enum1001::PartialInvoice => "326",
279            Enum1001::CommercialInvoiceWhichIncludesAPackingList => "331",
280            Enum1001::CommercialInvoice => "380",
281            Enum1001::CreditNote => "381",
282            Enum1001::CommissionNote => "382",
283            Enum1001::DebitNote => "383",
284            Enum1001::CorrectedInvoice => "384",
285            Enum1001::ConsolidatedInvoice => "385",
286            Enum1001::PrepaymentInvoice => "386",
287            Enum1001::HireInvoice => "387",
288            Enum1001::TaxInvoice => "388",
289            Enum1001::SelfBilledInvoice => "389",
290            Enum1001::DelcredereInvoice => "390",
291            Enum1001::FactoredInvoice => "393",
292            Enum1001::LeaseInvoice => "394",
293            Enum1001::ConsignmentInvoice => "395",
294            Enum1001::FactoredCreditNote => "396",
295            Enum1001::OpticalCharacterReadingOcrPaymentCreditNote => "420",
296            Enum1001::DebitAdvice => "456",
297            Enum1001::ReversalDebit => "457",
298            Enum1001::ReversalCredit => "458",
299            Enum1001::SelfBilledCorrectiveInvoiceInvoiceTypeCorrected => "471",
300            Enum1001::FactoredCorrectiveInvoiceInvoiceTypeCorrected => "472",
301            Enum1001::SelfBilledFactoredCorrectiveInvoiceInvoiceTypeCorrected => "473",
302            Enum1001::SelfPrepaymentInvoiceInvoiceTypeOriginal => "500",
303            Enum1001::SelfBilledFactoredInvoiceInvoiceTypeOriginal => "501",
304            Enum1001::SelfBilletFactoredCreditNoteCreditNoteTypeCorrected => "502",
305            Enum1001::PrepaymentCreditNoteCreditNoteTypeCorrected => "503",
306            Enum1001::SelfBilledDebitNote => "527",
307            Enum1001::ForwardersCreditNote => "532",
308            Enum1001::ForwardersInvoiceDiscrepancyReport => "553",
309            Enum1001::InsurersInvoice => "575",
310            Enum1001::ForwardersInvoice => "623",
311            Enum1001::PortChargesDocuments => "633",
312            Enum1001::InvoiceInformationForAccountingPurposes => "751",
313            Enum1001::FreightInvoice => "780",
314            Enum1001::ClaimNotification => "817",
315            Enum1001::ConsularInvoice => "870",
316            Enum1001::PartialConstructionInvoice => "875",
317            Enum1001::PartialFinalConstructionInvoice => "876",
318            Enum1001::FinalConstructionInvoice => "877",
319            Enum1001::CustomsInvoice => "935",
320        }
321    }
322}
323
324impl crate::Description for Enum1001 {
325    fn description(&self) -> &str {
326        match self {
327            Enum1001::RequestForPayment => "Request for payment",
328            Enum1001::DebitNoteRelatedToGoodsOrServices => {
329                "Debit note related to goods or services"
330            }
331            Enum1001::CreditNoteRelatedToGoodsOrServices => {
332                "Credit note related to goods or services"
333            }
334            Enum1001::MeteredServicesInvoice => "Metered services invoice",
335            Enum1001::CreditNoteRelatedToFinancialAdjustments => {
336                "Credit note related to financial adjustments"
337            }
338            Enum1001::DebitNoteRelatedToFinancialAdjustments => {
339                "Debit note related to financial adjustments"
340            }
341            Enum1001::TaxNotification => "Tax notification",
342            Enum1001::InvoicingDataSheet => "Invoicing data sheet",
343            Enum1001::DirectPaymentValuation => "Direct payment valuation",
344            Enum1001::ProvisionalPaymentValuation => "Provisional payment valuation",
345            Enum1001::PaymentValuation => "Payment valuation",
346            Enum1001::InterimApplicationForPayment => "Interim application for payment",
347            Enum1001::FinalPaymentRequestBasedOnCompletionWork => {
348                "Final payment request based on completion of work"
349            }
350            Enum1001::PaymentRequestForCompletedUnits => "Payment request for completed units",
351            Enum1001::SelfBilledCreditNote => "Self billed credit note",
352            Enum1001::ConsolidatedCreditNoteGoodsAndServices => {
353                "Consolidated credit note - goods and services"
354            }
355            Enum1001::PriceVariationInvoice => "Price variation invoice",
356            Enum1001::CreditNoteForPriceVariation => "Credit note for price variation",
357            Enum1001::DelcredereCreditNote => "Delcredere credit note",
358            Enum1001::ProformaInvoice => "Proforma invoice",
359            Enum1001::PartialInvoice => "Partial invoice",
360            Enum1001::CommercialInvoiceWhichIncludesAPackingList => {
361                "Commercial invoice which includes a packing list"
362            }
363            Enum1001::CommercialInvoice => "Commercial invoice",
364            Enum1001::CreditNote => "Credit note",
365            Enum1001::CommissionNote => "Commission note",
366            Enum1001::DebitNote => "Debit note",
367            Enum1001::CorrectedInvoice => "Corrected invoice",
368            Enum1001::ConsolidatedInvoice => "Consolidated invoice",
369            Enum1001::PrepaymentInvoice => "Prepayment invoice",
370            Enum1001::HireInvoice => "Hire invoice",
371            Enum1001::TaxInvoice => "Tax invoice",
372            Enum1001::SelfBilledInvoice => "Self-billed invoice",
373            Enum1001::DelcredereInvoice => "Delcredere invoice",
374            Enum1001::FactoredInvoice => "Factored invoice",
375            Enum1001::LeaseInvoice => "Lease invoice",
376            Enum1001::ConsignmentInvoice => "Consignment invoice",
377            Enum1001::FactoredCreditNote => "Factored credit note",
378            Enum1001::OpticalCharacterReadingOcrPaymentCreditNote => {
379                "Optical Character Reading (OCR) payment credit note"
380            }
381            Enum1001::DebitAdvice => "Debit advice",
382            Enum1001::ReversalDebit => "Reversal of debit",
383            Enum1001::ReversalCredit => "Reversal of credit",
384            Enum1001::SelfBilledCorrectiveInvoiceInvoiceTypeCorrected => {
385                " Self-billed corrective invoice, invoice type, Corrected"
386            }
387            Enum1001::FactoredCorrectiveInvoiceInvoiceTypeCorrected => {
388                " Factored Corrective Invoice, invoice type, Corrected"
389            }
390            Enum1001::SelfBilledFactoredCorrectiveInvoiceInvoiceTypeCorrected => {
391                " Self billed Factored corrective invoice, invoice type, Corrected"
392            }
393            Enum1001::SelfPrepaymentInvoiceInvoiceTypeOriginal => {
394                " Self Prepayment invoice, invoice type, Original"
395            }
396            Enum1001::SelfBilledFactoredInvoiceInvoiceTypeOriginal => {
397                " Self billed factored invoice, invoice type, Original"
398            }
399            Enum1001::SelfBilletFactoredCreditNoteCreditNoteTypeCorrected => {
400                " Self billet factored Credit Note, Credit note type, Corrected"
401            }
402            Enum1001::PrepaymentCreditNoteCreditNoteTypeCorrected => {
403                " Prepayment credit note, credit note type, Corrected"
404            }
405            Enum1001::SelfBilledDebitNote => "Self billed debit note",
406            Enum1001::ForwardersCreditNote => "Forwarder's credit note",
407            Enum1001::ForwardersInvoiceDiscrepancyReport => {
408                "Forwarder's invoice discrepancy report"
409            }
410            Enum1001::InsurersInvoice => "Insurer's invoice",
411            Enum1001::ForwardersInvoice => "Forwarder's invoice",
412            Enum1001::PortChargesDocuments => "Port charges documents",
413            Enum1001::InvoiceInformationForAccountingPurposes => {
414                "Invoice information for accounting purposes"
415            }
416            Enum1001::FreightInvoice => "Freight invoice",
417            Enum1001::ClaimNotification => "Claim notification",
418            Enum1001::ConsularInvoice => "Consular invoice",
419            Enum1001::PartialConstructionInvoice => "Partial construction invoice",
420            Enum1001::PartialFinalConstructionInvoice => "Partial final construction invoice",
421            Enum1001::FinalConstructionInvoice => "Final construction invoice",
422            Enum1001::CustomsInvoice => "Customs invoice",
423        }
424    }
425}
426
427impl crate::FromCode for Enum1001 {
428    fn from_code(code: &str) -> Option<Self>
429    where
430        Self: Sized,
431    {
432        match code {
433            "71" => Some(Enum1001::RequestForPayment),
434            "80" => Some(Enum1001::DebitNoteRelatedToGoodsOrServices),
435            "81" => Some(Enum1001::CreditNoteRelatedToGoodsOrServices),
436            "82" => Some(Enum1001::MeteredServicesInvoice),
437            "83" => Some(Enum1001::CreditNoteRelatedToFinancialAdjustments),
438            "84" => Some(Enum1001::DebitNoteRelatedToFinancialAdjustments),
439            "102" => Some(Enum1001::TaxNotification),
440            "130" => Some(Enum1001::InvoicingDataSheet),
441            "202" => Some(Enum1001::DirectPaymentValuation),
442            "203" => Some(Enum1001::ProvisionalPaymentValuation),
443            "204" => Some(Enum1001::PaymentValuation),
444            "211" => Some(Enum1001::InterimApplicationForPayment),
445            "218" => Some(Enum1001::FinalPaymentRequestBasedOnCompletionWork),
446            "219" => Some(Enum1001::PaymentRequestForCompletedUnits),
447            "261" => Some(Enum1001::SelfBilledCreditNote),
448            "262" => Some(Enum1001::ConsolidatedCreditNoteGoodsAndServices),
449            "295" => Some(Enum1001::PriceVariationInvoice),
450            "296" => Some(Enum1001::CreditNoteForPriceVariation),
451            "308" => Some(Enum1001::DelcredereCreditNote),
452            "325" => Some(Enum1001::ProformaInvoice),
453            "326" => Some(Enum1001::PartialInvoice),
454            "331" => Some(Enum1001::CommercialInvoiceWhichIncludesAPackingList),
455            "380" => Some(Enum1001::CommercialInvoice),
456            "381" => Some(Enum1001::CreditNote),
457            "382" => Some(Enum1001::CommissionNote),
458            "383" => Some(Enum1001::DebitNote),
459            "384" => Some(Enum1001::CorrectedInvoice),
460            "385" => Some(Enum1001::ConsolidatedInvoice),
461            "386" => Some(Enum1001::PrepaymentInvoice),
462            "387" => Some(Enum1001::HireInvoice),
463            "388" => Some(Enum1001::TaxInvoice),
464            "389" => Some(Enum1001::SelfBilledInvoice),
465            "390" => Some(Enum1001::DelcredereInvoice),
466            "393" => Some(Enum1001::FactoredInvoice),
467            "394" => Some(Enum1001::LeaseInvoice),
468            "395" => Some(Enum1001::ConsignmentInvoice),
469            "396" => Some(Enum1001::FactoredCreditNote),
470            "420" => Some(Enum1001::OpticalCharacterReadingOcrPaymentCreditNote),
471            "456" => Some(Enum1001::DebitAdvice),
472            "457" => Some(Enum1001::ReversalDebit),
473            "458" => Some(Enum1001::ReversalCredit),
474            "471" => Some(Enum1001::SelfBilledCorrectiveInvoiceInvoiceTypeCorrected),
475            "472" => Some(Enum1001::FactoredCorrectiveInvoiceInvoiceTypeCorrected),
476            "473" => Some(Enum1001::SelfBilledFactoredCorrectiveInvoiceInvoiceTypeCorrected),
477            "500" => Some(Enum1001::SelfPrepaymentInvoiceInvoiceTypeOriginal),
478            "501" => Some(Enum1001::SelfBilledFactoredInvoiceInvoiceTypeOriginal),
479            "502" => Some(Enum1001::SelfBilletFactoredCreditNoteCreditNoteTypeCorrected),
480            "503" => Some(Enum1001::PrepaymentCreditNoteCreditNoteTypeCorrected),
481            "527" => Some(Enum1001::SelfBilledDebitNote),
482            "532" => Some(Enum1001::ForwardersCreditNote),
483            "553" => Some(Enum1001::ForwardersInvoiceDiscrepancyReport),
484            "575" => Some(Enum1001::InsurersInvoice),
485            "623" => Some(Enum1001::ForwardersInvoice),
486            "633" => Some(Enum1001::PortChargesDocuments),
487            "751" => Some(Enum1001::InvoiceInformationForAccountingPurposes),
488            "780" => Some(Enum1001::FreightInvoice),
489            "817" => Some(Enum1001::ClaimNotification),
490            "870" => Some(Enum1001::ConsularInvoice),
491            "875" => Some(Enum1001::PartialConstructionInvoice),
492            "876" => Some(Enum1001::PartialFinalConstructionInvoice),
493            "877" => Some(Enum1001::FinalConstructionInvoice),
494            "935" => Some(Enum1001::CustomsInvoice),
495            _ => None,
496        }
497    }
498}