Skip to main content

Character and Corporation statistics, including detailed information on ESS, Ratting, Trading, Mining, and other activities.

Project description

Ledger module for AllianceAuth.

Release Licence Python Django pre-commit.ci status Code style: black Tests codecov

ko-fi

Character and Corporation PvE statistics, including detailed information on ESS, Ratting, Trading, Mining, and other activities.


Features

  • Statistics
    • Graphical Statistics
    • Yearly, Monthly, Daily, Hourly
    • Current Day
  • Character Ledger
    • Graphical Overview for each Character
      • Graphical Statistics
    • Ratting
    • Encounter Surveillance System Payouts
    • Mining
    • Trading
    • Costs
  • Corporation Ledger
    • Graphical Overview for each Member
      • Graphical Statistics
    • Ratting Tax
    • Encounter Surveillance System Tax
    • Industry Tax
  • Alliance Ledger
    • Graphical Overview for each Corporation
    • Ratting Tax
    • Encounter Surveillance System Tax
  • Planetary Ledger
    • Graphical Overview for each Planet
      • Graphical Statistics
    • Notification if Extractor expire
    • Switchable Notification for each Planet
    • Products Overview
  • Events Calender

Upcoming

  • Corporation Administration
  • Status Update System for each Section
  • Costs for Corporation Ledger

Installation

[!NOTE] AA Ledger needs at least Alliance Auth v4.6.0 Please make sure to update your Alliance Auth before you install this APP

Step 0 - Check dependencies are installed

Step 1 - Install the Package

Make sure you're in your virtual environment (venv) of your Alliance Auth then install the pakage.

pip install aa-ledger

Step 2 - Configure Alliance Auth

Configure your Alliance Auth settings (local.py) as follows:

  • Add 'ledger', to INSTALLED_APPS

Step 3 - Add the Scheduled Tasks

To set up the Scheduled Tasks add following code to your local.py

CELERYBEAT_SCHEDULE["ledger_character_audit_update_subset_characters"] = {
    "task": "ledger.tasks.update_subset_characters",
    "schedule": crontab(minute="15,45"),
}
CELERYBEAT_SCHEDULE["ledger_corporation_audit_update_subset_corporations"] = {
    "task": "ledger.tasks.update_subset_corporations",
    "schedule": crontab(minute="15,45"),
}
CELERYBEAT_SCHEDULE["ledger_check_planetary_alarms"] = {
    "task": "ledger.tasks.check_planetary_alarms",
    "schedule": crontab(minute=0, hour="*/3"),
}

Step 3.1 - (Optional) Add own Logger File

To set up the Logger add following code to your local.py Ensure that you have writing permission in logs folder.

LOGGING["handlers"]["ledger_file"] = {
    "level": "INFO",
    "class": "logging.handlers.RotatingFileHandler",
    "filename": os.path.join(BASE_DIR, "log/ledger.log"),
    "formatter": "verbose",
    "maxBytes": 1024 * 1024 * 5,
    "backupCount": 5,
}
LOGGING["loggers"]["extensions.ledger"] = {
    "handlers": ["ledger_file"],
    "level": "DEBUG",
}

Step 4 - Migration to AA

python manage.py collectstatic
python manage.py migrate

Step 5 - Setting up Permissions

With the Following IDs you can set up the permissions for the Ledger

[!IMPORTANT] Character, Corporation, Alliance Ledger only show Data from User has access to advanced_access give User access to see own Corporations he is in

ID Description
basic_access Can access the Ledger module All Members with the Permission can access the Ledger.
advanced_access Can access Corporation and Alliance Ledger Can see Corporation & Alliance Ledger.
manage_access Can Manage Ledger Can add/manage Corporations, Alliances.
char_audit_manager Has Access to all characters for own Corp Can see all Characters from Corps he is
char_audit_admin_manager Has Access to all Characters Can see all Characters.
corp_audit_manager Has Access to own Corporations Can see own Corporations.
corp_audit_admin_manager Has Access to all Corporations Can see all Corporations.

Step 6 - (Optional) Settings

The Following Settings can be setting up in the local.py

  • LEDGER_APP_NAME: "YOURNAME" - Set the name of the APP
  • LEDGER_TASKS_TIME_LIMIT: 7200 - Defines the time (in seconds) a task will timeout

Advanced Settings: Stale Status for Each Section

  • LEDGER_STALE_TYPES = { "wallet_journal": 30, "wallet_division": 30, "mining_ledger": 30, "planets": 30, "planets_details": 30, } - Defines the stale status duration (in minutes) for each section.

Highlights

ledger1

ledger2

ledger3

ledger4

ledger5

ledger6

[!NOTE] Contributing You want to improve the project? Just Make a Pull Request with the Guidelines. We Using pre-commit

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aa_ledger-0.9.0.tar.gz (3.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aa_ledger-0.9.0-py3-none-any.whl (3.8 MB view details)

Uploaded Python 3

File details

Details for the file aa_ledger-0.9.0.tar.gz.

File metadata

  • Download URL: aa_ledger-0.9.0.tar.gz
  • Upload date:
  • Size: 3.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for aa_ledger-0.9.0.tar.gz
Algorithm Hash digest
SHA256 ecabb723916c4a7e56d65b48cc3b8475ac3327d1e49a4f039b10ec750698af15
MD5 560d54e634df22fe0a022a5d3e0845c7
BLAKE2b-256 d14ee32fdf475c5dd2a74936a1e4340b277055f9a8bda90b0c1e4baa77d02a50

See more details on using hashes here.

File details

Details for the file aa_ledger-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: aa_ledger-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for aa_ledger-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 94556110984901dbdb3ac8d2b919b7abe8e126aa69df1b3de503c951c7f7a160
MD5 2f59dae4b983edc14d827e7ffc6f9104
BLAKE2b-256 79c73b326997296a55b3b9ad7b829ae42238239779374cd94c4886f64e7bf6d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page