Class: Quickbooks::Model::Invoice
Constant Summary
collapse
- REST_RESOURCE =
'invoice'
- XML_COLLECTION_NODE =
"Invoice"
- XML_NODE =
"Invoice"
- EMAIL_STATUS_NEED_TO_SEND =
'NeedToSend'
Instance Method Summary
collapse
#auto_doc_number!
Methods inherited from BaseModel
attribute_names, #attributes, attrs_with_types, #ensure_line_items_initialization, #inspect, inspect, reference_setters, resource_for_collection, resource_for_singular, to_xml_big_decimal, #to_xml_inject_ns, #to_xml_ns
Methods included from Validator
#line_item_size
Constructor Details
#initialize(*args) ⇒ Invoice
Returns a new instance of Invoice.
63
64
65
66
|
# File 'lib/quickbooks/model/invoice.rb', line 63
def initialize(*args)
ensure_line_items_initialization
super
end
|
Instance Method Details
#billing_email_address=(email_address_string) ⇒ Object
76
77
78
|
# File 'lib/quickbooks/model/invoice.rb', line 76
def billing_email_address=(email_address_string)
self.bill_email = EmailAddress.new(email_address_string)
end
|
#email_status_for_delivery? ⇒ Boolean
85
86
87
|
# File 'lib/quickbooks/model/invoice.rb', line 85
def email_status_for_delivery?
email_status == EMAIL_STATUS_NEED_TO_SEND
end
|
#existence_of_customer_ref ⇒ Object
90
91
92
93
94
|
# File 'lib/quickbooks/model/invoice.rb', line 90
def existence_of_customer_ref
if customer_ref.nil? || (customer_ref && customer_ref.value == 0)
errors.add(:customer_ref, "CustomerRef is required and must be a non-zero value.")
end
end
|
#required_bill_email_if_email_delivery ⇒ Object
68
69
70
71
72
73
74
|
# File 'lib/quickbooks/model/invoice.rb', line 68
def required_bill_email_if_email_delivery
return unless email_status_for_delivery?
if bill_email.nil?
errors.add(:bill_email, "BillEmail is required if EmailStatus=NeedToSend")
end
end
|
#wants_billing_email_sent! ⇒ Object
81
82
83
|
# File 'lib/quickbooks/model/invoice.rb', line 81
def wants_billing_email_sent!
self.email_status = EMAIL_STATUS_NEED_TO_SEND
end
|