Skip to content

Complete Database Schema

mermaid
erDiagram
    a_cart_articles {
        int cart_id
        int article_id
        double quantity
        int quantity_unit_id
    }
    a_carts {
        int id
        int user_id
        string token
        datetime created_at
        datetime updated_at
    }
    e_assignees {
        int contact_id
        int task_id
    }
    e_attachment_versions {
        int id
        int attachment_id
        datetime created_at
    }
    e_attachments {
        int id
        int user_id
        int task_id
        string filename
    }
    e_comments {
        int id
        int task_id
        int user_id
        text content
        datetime created_at
        datetime updated_at
    }
    e_custom_schedules {
        int id
        text working_days
        string start_time
        string end_time
    }
    e_label_locales {
        int id
        int label_id
        string title
        string locale
    }
    e_labels {
        int id
        string function
        tinyint system
        datetime created_at
        datetime updated_at
    }
    e_milestones {
        int id
        int user_id
        string title
        text description
        date starts_at
        date ends_at
        datetime created_at
        datetime updated_at
    }
    e_task_labels {
        int task_id
        int label_id
    }
    e_tasks {
        int id
        int parent_id
        int creator_id
        int milestone_id
        int estimated_time
        string title
        text description
        datetime created_at
        datetime updated_at
    }
    e_workflows {
        int id
        tinyint system
        text label_ids
    }
    la_article_categories {
        int article_id
        int category_id
    }
    la_article_locales {
        int id
        int article_id
        string title
        text description
        string locale
    }
    la_articles {
        int id
        tinyint type
        datetime created_at
        datetime updated_at
    }
    la_categories {
        int id
        datetime created_at
        datetime updated_at
    }
    la_category_locales {
        int id
        int category_id
        string title
        text description
        string locale
    }
    la_option_locales {
        int id
        int option_id
        string name
        string locale
    }
    la_options {
        int id
    }
    la_properties {
        int id
        tinyint type
        tinyint public
        tinyint system
    }
    la_property_locales {
        int id
        int property_id
        string name
        string locale
    }
    la_property_options {
        int property_id
        int option_id
    }
    lc_addresses {
        int id
        int contact_id
        int city_id
        tinyint default
        text line_1
        text line_2
        decimal lat
        decimal long
    }
    lc_cities {
        int id
        int country_id
        tinyint status
    }
    lc_city_locales {
        int id
        int city_id
        string name
        string locale
    }
    lc_color_locales {
        int id
        string color_id
        string name
        string locale
    }
    lc_colors {
        string id
    }
    lc_contacts {
        int id
        int user_id
        int timezone_id
        string name
        string job
        string image
        string gender
        tinyint marital_status
        date birthdate
        datetime created_at
        datetime updated_at
    }
    lc_countries {
        int id
        int currency_id
        string code
        tinyint status
    }
    lc_country_locales {
        int id
        int country_id
        string name
        string locale
    }
    lc_country_timezones {
        int country_id
        int timezone_id
    }
    lc_emails {
        int id
        int contact_id
        string address
        tinyint default
    }
    lc_measurement_unit_locales {
        int id
        int measurement_unit_id
        string locale
        string name
        string symbol
    }
    lc_measurement_units {
        int id
        string type
        int base_id
        decimal factor
        tinyint custom
        datetime deleted_at
    }
    lc_phones {
        int id
        int contact_id
        string number
        tinyint default
    }
    lc_timezones {
        int id
        string identifier
    }
    le_bank_accounts {
        int id
        int contact_id
        string bank
        string name
        string number
        string iban
        string swift
        datetime created_at
        datetime updated_at
    }
    le_currencies {
        int id
        string name
        string code
        string symbol
        string format
        string exchange_rate
        tinyint active
        datetime created_at
        datetime updated_at
    }
    le_order_histories {
        int id
        int order_id
        text event
        datetime time
        datetime created_at
    }
    le_order_lines {
        int id
        int order_id
        int article_id
        double quantity
        int quantity_unit_id
        double price
        double discount
        string discount_type
    }
    le_orders {
        int id
        int contact_id
        int shipping_address_id
        int billing_address_id
        double amount
        tinyint paid
        datetime delivered_at
        datetime created_at
        datetime updated_at
    }
    le_refunds {
        int id
        int refundable_id
        string refundable_type
        double amount
        tinyint paid
        datetime returned_at
        datetime created_at
        datetime updated_at
    }
    le_transactions {
        int id
        int transferable_id
        string transferable_type
        string type
        double amount
        datetime created_at
    }
    o_execution_consumptions {
        int id
        int plan_execution_id
        int article_id
        double quantity
        int quantity_unit_id
        datetime created_at
        datetime updated_at
    }
    o_execution_logs {
        int id
        int user_id
        int plan_execution_id
        tinyint status
        text note
        datetime created_at
    }
    o_plan_consumptions {
        int id
        int product_plan_id
        int article_id
        double quantity
        int quantity_unit_id
        datetime created_at
        datetime updated_at
    }
    o_plan_executions {
        int id
        int user_id
        int product_plan_id
        string plan_log_id
        tinyint status
        text note
        datetime created_at
        datetime updated_at
    }
    o_product_plans {
        int id
        int user_id
        int article_id
        double quantity
        int quantity_unit_id
    }
    o_purchase_histories {
        int id
        int purchase_id
        text event
        datetime time
        datetime created_at
    }
    o_purchase_lines {
        int id
        int purchase_id
        int article_id
        double quantity
        int quantity_unit_id
        double price
    }
    o_purchases {
        int id
        int contact_id
        int bank_account_id
        double amount
        tinyint paid
        datetime received_at
        datetime created_at
        datetime updated_at
    }
    r_applicables {
        int applicant_id
        string applicable_type
        bigint applicable_id
    }
    r_applicants {
        int id
        int country_id
        int degree_id
        int degree_date
        tinyint tenure
        datetime recruited_at
        datetime created_at
        datetime updated_at
    }
    r_contact_shifts {
        int contact_id
        int shift_id
        tinyint weekday
    }
    r_degree_locales {
        int id
        int degree_id
        string locale
        string name
    }
    r_degrees {
        int id
    }
    r_department_locales {
        int id
        int department_id
        string locale
        string name
    }
    r_departments {
        int id
        datetime created_at
        datetime updated_at
    }
    r_documents {
        int id
        int applicant_id
        string title
        string filename
        datetime created_at
        datetime updated_at
    }
    r_leaves {
        int id
        int contact_id
        string type
        tinyint status
        date starts_at
        date ends_at
        datetime created_at
        datetime updated_at
    }
    r_notices {
        int id
        int author_id
        int contact_id
        int payroll_payment_id
        string type
        text content
        datetime created_at
        datetime updated_at
    }
    r_payment_components {
        int payroll_payment_id
        int payroll_component_id
        double amount
    }
    r_payroll_component_locales {
        int id
        int payroll_component_id
        string title
        string locale
    }
    r_payroll_components {
        int id
        string type
    }
    r_payroll_payments {
        int id
        int salary_id
        int bank_account_id
        tinyint units
        datetime paid_at
        datetime created_at
        datetime updated_at
    }
    r_punches {
        bigint id
        int contact_id
        int shift_id
        string type
        smallint latency
        datetime created_at
    }
    r_salaries {
        int id
        string type
        datetime created_at
        datetime updated_at
    }
    r_salary_components {
        int salary_id
        int payroll_component_id
        double amount
    }
    r_shifts {
        int id
        string start
        string end
    }
    r_subordinates {
        string id
        int manager_id
        int contact_id
        int department_id
    }
    r_vacancies {
        int id
        int department_id
        tinyint active
        datetime created_at
        datetime updated_at
    }
    r_vacancy_locales {
        int id
        int vacancy_id
        string locale
        string title
        text description
    }
    s_model_has_permissions {
        bigint permission_id
        string model_type
        bigint model_id
    }
    s_model_has_roles {
        bigint role_id
        string model_type
        bigint model_id
    }
    s_permissions {
        bigint id
        string name
        string guard_name
        datetime created_at
        datetime updated_at
    }
    s_role_has_permissions {
        bigint permission_id
        bigint role_id
    }
    s_role_locales {
        bigint id
        bigint role_id
        string title
        string locale
    }
    s_roles {
        bigint id
        string name
        string guard_name
        datetime created_at
        datetime updated_at
    }
    s_users {
        int id
        string username
        string password
        string image
        datetime created_at
        datetime updated_at
    }
    la_articles ||--o{ a_cart_articles : ""
    a_carts ||--o{ a_cart_articles : ""
    lc_measurement_units ||--o{ a_cart_articles : ""
    s_users ||--o{ a_carts : ""
    lc_contacts ||--o{ e_assignees : ""
    e_tasks ||--o{ e_assignees : ""
    e_attachments ||--o{ e_attachment_versions : ""
    e_tasks ||--o{ e_attachments : ""
    s_users ||--o{ e_attachments : ""
    e_tasks ||--o{ e_comments : ""
    s_users ||--o{ e_comments : ""
    lc_contacts ||--o{ e_custom_schedules : ""
    e_labels ||--o{ e_label_locales : ""
    s_users ||--o{ e_milestones : ""
    e_labels ||--o{ e_task_labels : ""
    e_tasks ||--o{ e_task_labels : ""
    s_users ||--o{ e_tasks : ""
    e_milestones ||--o{ e_tasks : ""
    e_tasks ||--o{ e_tasks : ""
    e_labels ||--o{ e_workflows : ""
    la_articles ||--o{ la_article_categories : ""
    la_categories ||--o{ la_article_categories : ""
    la_articles ||--o{ la_article_locales : ""
    la_categories ||--o{ la_category_locales : ""
    la_options ||--o{ la_option_locales : ""
    la_properties ||--o{ la_property_locales : ""
    la_options ||--o{ la_property_options : ""
    la_properties ||--o{ la_property_options : ""
    lc_cities ||--o{ lc_addresses : ""
    lc_contacts ||--o{ lc_addresses : ""
    lc_countries ||--o{ lc_cities : ""
    lc_cities ||--o{ lc_city_locales : ""
    lc_colors ||--o{ lc_color_locales : ""
    lc_timezones ||--o{ lc_contacts : ""
    s_users ||--o{ lc_contacts : ""
    le_currencies ||--o{ lc_countries : ""
    lc_countries ||--o{ lc_country_locales : ""
    lc_countries ||--o{ lc_country_timezones : ""
    lc_timezones ||--o{ lc_country_timezones : ""
    lc_contacts ||--o{ lc_emails : ""
    lc_measurement_units ||--o{ lc_measurement_unit_locales : ""
    lc_measurement_units ||--o{ lc_measurement_units : ""
    lc_contacts ||--o{ lc_phones : ""
    lc_contacts ||--o{ le_bank_accounts : ""
    le_orders ||--o{ le_order_histories : ""
    la_articles ||--o{ le_order_lines : ""
    le_orders ||--o{ le_order_lines : ""
    lc_measurement_units ||--o{ le_order_lines : ""
    lc_addresses ||--o{ le_orders : ""
    lc_contacts ||--o{ le_orders : ""
    la_articles ||--o{ o_execution_consumptions : ""
    o_plan_executions ||--o{ o_execution_consumptions : ""
    lc_measurement_units ||--o{ o_execution_consumptions : ""
    o_plan_executions ||--o{ o_execution_logs : ""
    s_users ||--o{ o_execution_logs : ""
    la_articles ||--o{ o_plan_consumptions : ""
    o_product_plans ||--o{ o_plan_consumptions : ""
    lc_measurement_units ||--o{ o_plan_consumptions : ""
    o_product_plans ||--o{ o_plan_executions : ""
    s_users ||--o{ o_plan_executions : ""
    la_articles ||--o{ o_product_plans : ""
    lc_measurement_units ||--o{ o_product_plans : ""
    s_users ||--o{ o_product_plans : ""
    o_purchases ||--o{ o_purchase_histories : ""
    la_articles ||--o{ o_purchase_lines : ""
    o_purchases ||--o{ o_purchase_lines : ""
    lc_measurement_units ||--o{ o_purchase_lines : ""
    le_bank_accounts ||--o{ o_purchases : ""
    lc_contacts ||--o{ o_purchases : ""
    r_applicants ||--o{ r_applicables : ""
    lc_countries ||--o{ r_applicants : ""
    r_degrees ||--o{ r_applicants : ""
    lc_contacts ||--o{ r_applicants : ""
    lc_contacts ||--o{ r_contact_shifts : ""
    r_shifts ||--o{ r_contact_shifts : ""
    r_degrees ||--o{ r_degree_locales : ""
    r_departments ||--o{ r_department_locales : ""
    r_applicants ||--o{ r_documents : ""
    lc_contacts ||--o{ r_leaves : ""
    lc_contacts ||--o{ r_notices : ""
    r_payroll_payments ||--o{ r_notices : ""
    r_payroll_components ||--o{ r_payment_components : ""
    r_payroll_payments ||--o{ r_payment_components : ""
    r_payroll_components ||--o{ r_payroll_component_locales : ""
    le_bank_accounts ||--o{ r_payroll_payments : ""
    r_salaries ||--o{ r_payroll_payments : ""
    r_shifts ||--o{ r_punches : ""
    lc_contacts ||--o{ r_punches : ""
    lc_contacts ||--o{ r_salaries : ""
    r_payroll_components ||--o{ r_salary_components : ""
    r_salaries ||--o{ r_salary_components : ""
    lc_contacts ||--o{ r_subordinates : ""
    r_departments ||--o{ r_subordinates : ""
    r_departments ||--o{ r_vacancies : ""
    r_vacancies ||--o{ r_vacancy_locales : ""
    s_permissions ||--o{ s_model_has_permissions : ""
    s_roles ||--o{ s_model_has_roles : ""
    s_permissions ||--o{ s_role_has_permissions : ""
    s_roles ||--o{ s_role_has_permissions : ""
    s_roles ||--o{ s_role_locales : ""

Built with ❤️ using Laravel and VitePress