Skip to content

Commit

Permalink
Merge pull request #201 from SebastianRzk/dev
Browse files Browse the repository at this point in the history
Refactor + Update Angular Application + Refactor Offline App
  • Loading branch information
SebastianRzk authored Aug 19, 2023
2 parents 6a68b01 + 19aa598 commit c3a36fe
Show file tree
Hide file tree
Showing 88 changed files with 5,362 additions and 14,268 deletions.
2 changes: 1 addition & 1 deletion Dockerfile.fpm
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Stage 1
FROM node:14-slim as build-step-angular
FROM node:20-slim as build-step-angular
RUN mkdir -p /app
WORKDIR /app
COPY butler_online/budgetbutler/package.json /app
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.static
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Stage 1
FROM node:14-slim as build-step-angular
FROM node:20-slim as build-step-angular
RUN mkdir -p /app
WORKDIR /app
COPY butler_online/budgetbutler/package.json /app
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile.test
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Stage 1
FROM node:14-slim as build-step-angular
FROM node:20-slim as build-step-angular
RUN mkdir -p /app
WORKDIR /app
COPY butler_online/budgetbutler/package.json /app
Expand All @@ -13,7 +13,7 @@ FROM sebastianrzk/docker-chromium-xvfb as build-step-angular-test
WORKDIR /usr/src/app
RUN apt-get update
RUN apt-get install -y gpg \
&& curl -sL https://deb.nodesource.com/setup_14.x | bash - \
&& curl -sL https://deb.nodesource.com/setup_20.x | bash - \
&& apt-get install -y nodejs gpg \
&& rm -rf /var/lib/apt/lists
RUN mkdir -p /app
Expand Down
39 changes: 23 additions & 16 deletions butler_offline/core/database/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import datetime

from butler_offline.core.database.dauerauftraege import Dauerauftraege
from butler_offline.core.database.einzelbuchungen import Einzelbuchungen
from butler_offline.core.database.gemeinsamebuchungen import Gemeinsamebuchungen
Expand All @@ -8,6 +10,7 @@
from butler_offline.core.database.sparen.depotauszuege import Depotauszuege
from butler_offline.core.database.sparen.orderdauerauftrag import OrderDauerauftrag
from butler_offline.core.database.gemeinsamebuchungen.abrechnen import abrechnen
from butler_offline.core import file_system
import logging


Expand All @@ -34,15 +37,15 @@ def is_tainted(self) -> bool:

def taint_number(self) -> int:
return self.tainted + \
self.dauerauftraege.taint_number() + \
self.einzelbuchungen.taint_number() + \
self.gemeinsamebuchungen.taint_number() + \
self.sparbuchungen.taint_number() + \
self.sparkontos.taint_number() + \
self.depotwerte.taint_number() + \
self.order.taint_number() +\
self.depotauszuege.taint_number() +\
self.orderdauerauftrag.taint_number()
self.dauerauftraege.taint_number() + \
self.einzelbuchungen.taint_number() + \
self.gemeinsamebuchungen.taint_number() + \
self.sparbuchungen.taint_number() + \
self.sparkontos.taint_number() + \
self.depotwerte.taint_number() + \
self.order.taint_number() + \
self.depotauszuege.taint_number() + \
self.orderdauerauftrag.taint_number()

def refresh(self) -> None:
logging.info('DATABASE: Erneuere Datenbestand')
Expand Down Expand Up @@ -78,18 +81,22 @@ def frame_to_list_of_dicts(self, dataframe):
return result_list

def abrechnen(self,
mindate,
maxdate,
set_ergebnis=None,
verhaeltnis=50,
set_self_kategorie=None,
set_other_kategorie=None):
now: datetime.datetime,
filesystem: file_system.FileSystemImpl,
mindate,
maxdate,
set_ergebnis=None,
verhaeltnis=50,
set_self_kategorie=None,
set_other_kategorie=None):
return abrechnen(
filesystem=filesystem,
now=now,
database=self,
mindate=mindate,
maxdate=maxdate,
set_ergebnis=set_ergebnis,
verhaeltnis=verhaeltnis,
set_self_kategorie=set_self_kategorie,
set_other_kategorie=set_other_kategorie
)
)
22 changes: 15 additions & 7 deletions butler_offline/core/database/gemeinsamebuchungen/abrechnen.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,13 @@
from butler_offline.viewcore.converter import datum_to_german
import pandas as pd
from pandas import DataFrame
from datetime import datetime
from butler_offline.core import file_system


def abrechnen(database,
now: datetime,
filesystem: file_system.FileSystemImpl,
mindate,
maxdate,
set_ergebnis=None,
Expand All @@ -30,7 +34,7 @@ def abrechnen(database,

abrechnunsdatei = StringWriter()
zeitraum = datum_to_german(mindate) + '-' + datum_to_german(maxdate)
abrechnunsdatei.write_line('Abrechnung vom ' + datum_to_german(time.today()) + ' (' + zeitraum + ')')
abrechnunsdatei.write_line('Abrechnung vom ' + datum_to_german(now.date()) + ' (' + zeitraum + ')')
write_trenner(abrechnunsdatei)
abrechnunsdatei.write_line('Ergebnis:')

Expand Down Expand Up @@ -63,26 +67,26 @@ def abrechnen(database,

for _, row in gemeinsame_buchungen_content.iterrows():
buchung_partner = berechne_abbuchung(row['Datum'], row['Kategorie'], row['Name'],
("%.2f" % (row['Wert'] * faktor_partner)))
("%.2f" % (row['Wert'] * faktor_partner)))
buchung_partner.Dynamisch = False
ausgaben_fuer_partner = pd.concat([ausgaben_fuer_partner, buchung_partner])

buchung_self = berechne_abbuchung(row['Datum'], row['Kategorie'], row['Name'],
("%.2f" % (row['Wert'] * faktor_self)))
("%.2f" % (row['Wert'] * faktor_self)))
buchung_self.Dynamisch = False
ausgaben_fuer_self = pd.concat([ausgaben_fuer_self, buchung_self])

if set_self_kategorie:
extra_wert = (ausgaben_gesamt * compute_faktor_self(verhaeltnis)) - summe_halb
extra_ausgleichs_buchung = berechne_abbuchung(maxdate, set_self_kategorie, set_self_kategorie,
("%.2f" % extra_wert))
("%.2f" % extra_wert))
extra_ausgleichs_buchung.Dynamisch = False
ausgaben_fuer_self = pd.concat([ausgaben_fuer_self, extra_ausgleichs_buchung])

if set_other_kategorie:
extra_wert = (ausgaben_gesamt * compute_faktor_other(verhaeltnis)) - summe_halb
extra_ausgleichs_buchung = berechne_abbuchung(maxdate, set_other_kategorie, set_other_kategorie,
("%.2f" % extra_wert))
("%.2f" % extra_wert))
extra_ausgleichs_buchung.Dynamisch = False
ausgaben_fuer_partner = pd.concat([ausgaben_fuer_partner, extra_ausgleichs_buchung])

Expand All @@ -93,11 +97,15 @@ def abrechnen(database,

database.gemeinsamebuchungen.drop(gemeinsame_buchungen_content.index.tolist())
database.taint()
write_abrechnung("Abrechnung_" + str(time.now()), report)
write_abrechnung(
file_name="Abrechnung_" + str(now),
file_content=report,
filesystem=filesystem
)
return report


def write_trenner( abrechnunsdatei):
def write_trenner(abrechnunsdatei):
return abrechnunsdatei.write("".rjust(40, "#") + "\n ")


Expand Down
7 changes: 5 additions & 2 deletions butler_offline/core/file_system.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,11 @@ def write_import(file_name, file_content):
instance().write(IMPORT_PATH + file_name, file_content)


def write_abrechnung(file_name, file_content):
instance().write(ABRECHNUNG_PATH + file_name, file_content)
def write_abrechnung(file_name: str, file_content: str, filesystem: file_system.FileSystemImpl):
filesystem.write(
file_path=ABRECHNUNG_PATH + file_name,
file_content=file_content,
)


def all_abrechnungen():
Expand Down
7 changes: 4 additions & 3 deletions butler_offline/start_as_flask.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
testmode_switch,\
theme

from butler_offline.views.gemeinsame_buchungen import gemeinsam_abrechnen,\
from butler_offline.views.gemeinsame_buchungen import abrechnen,\
abrechnen_vorschau, \
uebersicht_abrechnungen,\
addgemeinsam, \
uebersicht_gemeinsam
Expand Down Expand Up @@ -118,12 +119,12 @@ def switch_to_debug():

@app.route(routes.GEMEINSAME_BUCHUNGEN_ABRECHNEN, methods=['GET', 'POST'])
def view_gemeinsam_abrechnen():
return gemeinsam_abrechnen.index(request)
return abrechnen_vorschau.index(request)


@app.route('/abrechnen/', methods=['GET', 'POST'])
def exec_abrechnen():
return gemeinsam_abrechnen.abrechnen(request)
return abrechnen.index(request)


@app.route(routes.CORE_IMPORT, methods=['GET', 'POST'])
Expand Down
Loading

0 comments on commit c3a36fe

Please sign in to comment.