fhirbolt_model/generated/r5/resources/
payment_notice.rs

1// Generated on 2023-05-17 by fhirbolt-codegen v0.10.0
2#[doc = "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."]
3#[derive(Debug, Clone, PartialEq)]
4pub struct PaymentNotice {
5    #[doc = "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes."]
6    pub r#id: Option<super::super::types::Id>,
7    #[doc = "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource."]
8    pub r#meta: Option<Box<super::super::types::Meta>>,
9    #[doc = "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc."]
10    pub r#implicit_rules: Option<super::super::types::Uri>,
11    #[doc = "The base language in which the resource is written."]
12    pub r#language: Option<super::super::types::Code>,
13    #[doc = "A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety."]
14    pub r#text: Option<Box<super::super::types::Narrative>>,
15    #[doc = "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, nor can they have their own independent transaction scope. This is allowed to be a Parameters resource if and only if it is referenced by a resource that provides context/meaning."]
16    pub r#contained: Vec<super::super::Resource>,
17    #[doc = "May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."]
18    pub r#extension: Vec<super::super::types::Extension>,
19    #[doc = "May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)."]
20    pub r#modifier_extension: Vec<super::super::types::Extension>,
21    #[doc = "A unique identifier assigned to this payment notice."]
22    pub r#identifier: Vec<super::super::types::Identifier>,
23    #[doc = "The status of the resource instance."]
24    pub r#status: super::super::types::Code,
25    #[doc = "Reference of resource for which payment is being made."]
26    pub r#request: Option<Box<super::super::types::Reference>>,
27    #[doc = "Reference of response to resource for which payment is being made."]
28    pub r#response: Option<Box<super::super::types::Reference>>,
29    #[doc = "The date when this resource was created."]
30    pub r#created: super::super::types::DateTime,
31    #[doc = "The party who reports the payment notice."]
32    pub r#reporter: Option<Box<super::super::types::Reference>>,
33    #[doc = "A reference to the payment which is the subject of this notice."]
34    pub r#payment: Option<Box<super::super::types::Reference>>,
35    #[doc = "The date when the above payment action occurred."]
36    pub r#payment_date: Option<super::super::types::Date>,
37    #[doc = "The party who will receive or has received payment that is the subject of this notification."]
38    pub r#payee: Option<Box<super::super::types::Reference>>,
39    #[doc = "The party who is notified of the payment status."]
40    pub r#recipient: Box<super::super::types::Reference>,
41    #[doc = "The amount sent to the payee."]
42    pub r#amount: Box<super::super::types::Money>,
43    #[doc = "A code indicating whether payment has been sent or cleared."]
44    pub r#payment_status: Option<Box<super::super::types::CodeableConcept>>,
45}
46#[allow(clippy::derivable_impls)]
47impl Default for PaymentNotice {
48    fn default() -> Self {
49        Self {
50            r#id: Default::default(),
51            r#meta: Default::default(),
52            r#implicit_rules: Default::default(),
53            r#language: Default::default(),
54            r#text: Default::default(),
55            r#contained: Default::default(),
56            r#extension: Default::default(),
57            r#modifier_extension: Default::default(),
58            r#identifier: Default::default(),
59            r#status: super::super::types::Code {
60                id: Some("$invalid".to_string()),
61                ..Default::default()
62            },
63            r#request: Default::default(),
64            r#response: Default::default(),
65            r#created: super::super::types::DateTime {
66                id: Some("$invalid".to_string()),
67                ..Default::default()
68            },
69            r#reporter: Default::default(),
70            r#payment: Default::default(),
71            r#payment_date: Default::default(),
72            r#payee: Default::default(),
73            r#recipient: Box::new(super::super::types::Reference {
74                id: Some("$invalid".to_string()),
75                ..Default::default()
76            }),
77            r#amount: Box::new(super::super::types::Money {
78                id: Some("$invalid".to_string()),
79                ..Default::default()
80            }),
81            r#payment_status: Default::default(),
82        }
83    }
84}