summaryrefslogtreecommitdiff
path: root/include/administration.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/administration.hpp')
-rw-r--r--include/administration.hpp43
1 files changed, 33 insertions, 10 deletions
diff --git a/include/administration.hpp b/include/administration.hpp
index e74b49c..6123df4 100644
--- a/include/administration.hpp
+++ b/include/administration.hpp
@@ -332,6 +332,29 @@ typedef struct
list_t invoices;
} administration;
+// Add/Update result codes.
+typedef enum {
+
+ A_ERR_GENERIC = 0,
+ A_ERR_SUCCESS = 1ULL << 0,
+ A_ERR_NOT_FOUND = 1ULL << 1,
+
+ A_ERR_MISSING_DESCRIPTION = 1ULL << 2,
+ A_ERR_CODE_EXISTS = 1ULL << 3,
+ A_ERR_MISSING_BILLING_ITEMS = 1ULL << 4,
+ A_ERR_INVALID_ADDRESSEE = 1ULL << 5,
+ A_ERR_INVALID_CUSTOMER = 1ULL << 6,
+ A_ERR_INVALID_SUPPLIER = 1ULL << 7,
+ A_ERR_MISSING_NAME = 1ULL << 8,
+ A_ERR_MISSING_CITY = 1ULL << 9,
+ A_ERR_MISSING_POSTAL = 1ULL << 10,
+ A_ERR_MISSING_ADDRESS1 = 1ULL << 11,
+ A_ERR_MISSING_COUNTRYCODE = 1ULL << 12,
+ A_ERR_MISSING_TAXID = 1ULL << 13,
+ A_ERR_MISSING_BUSINESSID = 1ULL << 14,
+ A_ERR_MAX_ITEMS_REACHED = 1ULL << 15,
+} a_err;
+
// Setup functions.
// =======================
void administration_create_empty(char* save_file);
@@ -389,28 +412,28 @@ u32 administration_contact_get_all(contact* buffer);
// =======================
u32 administration_project_count();
project administration_project_create_empty();
-bool administration_project_import(project data);
-bool administration_project_add(project data);
-bool administration_project_update(project data);
-bool administration_project_remove(project data);
+a_err administration_project_import(project data);
+a_err administration_project_add(project data);
+a_err administration_project_update(project data);
+a_err administration_project_remove(project data);
void administration_project_cancel(project data);
-bool administration_project_is_valid(project data);
+a_err administration_project_is_valid(project data);
char* administration_project_get_status_string(project data);
u32 administration_project_get_all(project* buffer);
u32 administration_project_get_partial_list(u32 page_index, u32 page_size, project* buffer);
-bool administration_project_get_by_id(project* buffer, char* id);
+a_err administration_project_get_by_id(project* buffer, char* id);
// Tax bracket functions.
// =======================
u32 administration_tax_bracket_count();
country_tax_bracket administration_tax_bracket_create_empty();
-bool administration_tax_bracket_import(country_tax_bracket data);
-bool administration_tax_bracket_add(country_tax_bracket data);
-bool administration_tax_bracket_update(country_tax_bracket data);
+a_err administration_tax_bracket_import(country_tax_bracket data);
+a_err administration_tax_bracket_add(country_tax_bracket data);
+a_err administration_tax_bracket_update(country_tax_bracket data);
-bool administration_tax_bracket_get_by_id(country_tax_bracket* buffer, char* id);
+a_err administration_tax_bracket_get_by_id(country_tax_bracket* buffer, char* id);
u32 administration_tax_bracket_get_all(country_tax_bracket* buffer);
u32 administration_tax_bracket_get_by_country(country_tax_bracket* buffer, char* country_code);