stalker.models.budget.Invoice

Inheritance diagram of stalker.models.budget.Invoice
class stalker.models.budget.Invoice(budget=None, client=None, amount=0, unit=None, **kwargs)

Bases: stalker.models.entity.Entity, stalker.models.mixins.AmountMixin, stalker.models.mixins.UnitMixin

Holds information about invoices

Invoices are part of Budgets. The main purpose of invoices are to track the Payments. It is a very primitive entity. It is by no means designed to hold real financial information (at least for now).

Parameters:
  • client (Client) – The Client instance that shows the payer for this invoice.
  • budget (Budget) – The Budget instance that owns this invoice.
  • float amount (int) – The amount of this invoice. Without the Invoice.unit attribute it is meaningless. This can not be skipped.
  • unit (str) – The unit of the issued amount. This can not be skipped.
__init__(budget=None, client=None, amount=0, unit=None, **kwargs)

Methods

__init__([budget, client, amount, unit])

Attributes

amount
budget
budget_id
client
client_id
created_by The User who has created this object.
created_by_id The id of the User who has created this entity.
date_created A datetime.datetime instance showing the creation date and time of this object.
date_updated A datetime.datetime instance showing the update date and time of this object.
description Description of this object.
entity_groups
entity_id
entity_type
generic_data This attribute can hold any kind of data which exists in SOM.
generic_text This attribute can hold any text.
html_class
html_style
id
invoice_id
metadata
name Name of this object
nice_name Nice name of this object.
notes All the Notess attached to this entity.
payments
plural_class_name the plural name of this class
query
tags A list of tags attached to this object.
thumbnail
thumbnail_id
tjp_id returns TaskJuggler compatible id
to_tjp renders a TaskJuggler compliant string used for TaskJuggler integration.
type The type of the object.
type_id The id of the Type of this entity.
unit
updated_by The User who has updated this object.
updated_by_id The id of the User who has updated this entity.
created_by

The User who has created this object.

created_by_id

The id of the User who has created this entity.

date_created

A datetime.datetime instance showing the creation date and time of this object.

date_updated

A datetime.datetime instance showing the update date and time of this object.

description

Description of this object.

generic_data

This attribute can hold any kind of data which exists in SOM.

generic_text

This attribute can hold any text.

name

Name of this object

nice_name

Nice name of this object.

It has the same value with the name (contextually) but with a different format like, all the white spaces replaced by underscores (“_”), all the CamelCase form will be expanded by underscore (_) characters and it is always lower case.

notes

All the Notess attached to this entity.

It is a list of Note instances or an empty list, setting it to None will raise a TypeError.

plural_class_name

the plural name of this class

tags

A list of tags attached to this object.

It is a list of Tag instances which shows the tags of this object

tjp_id

returns TaskJuggler compatible id

to_tjp

renders a TaskJuggler compliant string used for TaskJuggler integration. Needs to be overridden in inherited classes.

type

The type of the object.

It is a Type instance with a proper Type.target_entity_type.

type_id

The id of the Type of this entity. Mainly used by SQLAlchemy to create a Many-to-One relates between SimpleEntities and Types.

updated_by

The User who has updated this object.

updated_by_id

The id of the User who has updated this entity.