Giter VIP home page Giter VIP logo

lola-sumup's People

Contributors

jcornaz avatar renovate[bot] avatar ursjoss avatar

Stargazers

 avatar

Watchers

 avatar  avatar

lola-sumup's Issues

Extend accounting report

Extend accoung report with an additional column 10930/10100. It has the same values as 20051/10930 and has the purpose of using the correct accounts for the payment to Mittagtisch.

Simplify tests

  • use test instead of rstest for simple tests
  • re-evaluate how to assert data frames with a more helpful output in case of failing tests
  • use test fixtures for intermediate data frame (see here)

Make intermediate file an XLSX instead of CSV

This will resolve a few open issues:

Pros:

  • current problem that date is expected to be dd.mm.yyyy. dd.mm.yy has to be manually corrected before continuing the process
  • diffing on file level is possible, but once saved as CSV from Excel, next to the data format, also the number format is contorted, e.g. 0.0 is saved as 0, depending on the number format, the digits after the decimal point may even be rounded, what not only obfuscates the diff but may even change the content.

Cons:

  • diffing on file level will not be possible

Steps:

  • have the prepare task create an XLSX instead of CSV
  • have the export task expect an XSLX istead of CSV

If it is cheap to support both CSV and XLSX (with XLSX as default), prefer that.

Rename columns in accounting report

  • Gross Card LoLa -> 10920/30200
  • Net Card Total MiTi -> 10920/20051
  • Tips Card LoLa -> 10920/10910
  • Payment SumUp -> stays
  • Commission LoLa -> 68450/10920
  • Debt to MiTi -> 20051/10900
  • Income LoLa MiTi -> 20051/30200

Handle LoLa-Sponsered reductions

  • Condition: Topic=MiTi & Owner=MiTi & Description startsWith "Hauptgang" && (description endsWith "Praktikum" || descriptio endsWith "Reduziert")
  • Cost Account: 59991

Export for MiTi

  • Date
  • MiTi_Cash
  • MiTi_Card
  • MiTi Total
  • Gross MiTi (MiTi)
  • Gross MiTi (LoLa)
  • Gross MiTi (MiTi) Card
  • Net MiTi (MiTi) Card
  • Contribution LoLa
  • Credit MiTi

Adjustment Accounting Report

Adjustment in Accounting report:

Total Gross Payments Paid out to external parties ([PaidOut_Card]) should not be posted against the cash account ([10920/10000]) but instead against the transitory account ([10920/10910]), together with Tips LoLa paid via Card ([Tips_Card - MiTi_Tips_Card])

Accounting Report: Allow further distinction of non-café income

In #55 we introduced a split of the items summarized in Gross Card LoLa (aliased 10920/30200) into

  • Cafe_Card (aliased still 10920/30200) and
  • Verm_Card (aliased 10920/30700).

The newly introduced latter column still captures too much. Postings identified to belong somewhere else are e.g.:

  • Schlüsseldepot -> 10920/23050
  • Income for cultural event (e.g. Quartierkultur) -> 10920/32000
  • Rental fee -> 10920/31000 or 10920/31100 -> maybe 10920/31X00

Probably the easiest way of maintaining that would be to have dedicated Topics, which maintain their own accounts to post this into.

Consider only maintaining one other category that indicates to look up the account in the Kassa-Dokument.

Improve Meal count heuristics

Adjust FilterExpressionProvider for MitiMealType.

  • contains "Hauptsp"
  • starts with "Menü"
  • starts with "Praktika"

Check for more improvements

Easy to use UI

allowing to

  • reference the input files
  • prepare/export via button click
  • ...

Fix handling of Tips

For some configurations regarding Tips, the only indication of the tipped amount is found in the TransactionReport (Column 'Trinkgeldbetrag'). The Sales Report is missing the additional entry 'Trinkgeld'.

Two examples from the March reports:

  • TEQYG3SYCX (Amount Tip 7.20)
  • TFRNL6VQSH (Amount Tip 0.80)

We have to consider the tip in such configurations, which also fixes the issue that w/o the tip, the commission is decreased proportionally.

Also, rename and re-sort columns in the summary.

Refine CLI Api

Prepare

Preparing the intermediate file for a particular month from sales report and transaction report as input, enriching it with the auto-evaluated columns Topic, Owner, Purpose. Will produce output file intermediate_<yyyymm>.csv (with <yyyymm> representing the month of transactions).

lola-sumup prepare <yyyymm> --sales-report <file> --transaction-report <file>

or

lola-sumup prepare <yyyymm> -s <file> -t <file>

Export

Consumes a (potentially redacted) copy of the intermediate report and exports different outputs for special purposes.

lola-sumup export -i intermediate_<yyyymm>*.csv

produces:

  • summary_<yyyymm>_<ts>.csv
  • accounting_<yyyymm>_<ts>.csv
  • mittagstisch_<yyyymm>_<ts>.csv

With:

  • <yyyymm> the processed month (derived from the file name intermediate_<yyyymm>*.csv
  • <ts> timestamp of running the export

Configuration file

  • description for Tip
  • decription patterns for consumptions MiTi
  • thresholds MiTi, LoLa, Vermietung
  • ...

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Awaiting Schedule

These updates are awaiting their schedule. Click on a checkbox to get an update now.

  • chore(deps): lock file maintenance

Detected dependencies

cargo
Cargo.toml
  • clap 4.5.4
  • serde 1.0.200
  • chrono 0.4.38
  • strum 0.26.2
  • strum_macros 0.26.2
  • polars 0.40.0
  • pretty_assertions 1.4.0
  • rstest 0.21.0
github-actions
.github/workflows/verify.yml
  • actions/checkout v4@a5ac7e51b41094c92402da3b24376905380afc29
  • Swatinem/rust-cache v2

  • Check this box to trigger a request for Renovate to run again on this repository

fix Accounting Report: Total Cash Debit

Fix effect of PaidOut on cash account:

  • After Columns 10000/XXXX new column 10920/10000 with values of PaidOut_Card
  • Column 10920/10910 should be not contain PaidOut_Card
  • Total Cash Debit: Total daily cash debit - formula must be:
    • [Gross Cash - MiTi_Cash - PaidOut Total] instead of
    • [Gross Cash - MiTi_Cash]
  • Move reconcilation columns (Payment SumUp, Total Cash Debit, Total Card Debit) up front, right after Date

Accounting Report: Split `Gross Card LoLa` into café related and rental related columns

potentially with a set of Owners for Topic Vermiet to distinguish the credit account (Vermietung, Key deposit...)

  • Gross Card LoLa is Cafe_Card + Verm_Card
  • Only use Cafe_Card for 10920/30200
  • add Verm_Card with alias 10920/30700

... knowlingly, that some postings will be wrong in 30700. We need to split further, but that will require the introduction of another abstraction (e.g. new Topics that maintain a dedicated account to use). That will be tackled in a separate ticket.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.