]> wagnertech.de Git - SVBaL.git/commitdiff
Conflicts solved
authorSimon Wagner <simon@wagnertech.de>
Mon, 23 Jun 2025 15:17:00 +0000 (17:17 +0200)
committerSimon Wagner <simon@wagnertech.de>
Mon, 23 Jun 2025 15:17:00 +0000 (17:17 +0200)
1  2 
python/eh_util/eh_app/AWK/routines.py
python/eh_util/eh_app/forms.py
python/eh_util/eh_app/templates/kassenbrief.html
python/eh_util/eh_app/views.py

index b09af1d60c1c93bb83cf483046c5d470b4aa1147,fffbfaa50962ec660ac72c9584364bf8b635ed2e..9fccdc7bfed8b8b5037b33aa1c21aa01d6700190
@@@ -9,8 -9,8 +9,9 @@@ def handle_uploaded_file(csv_file)
          for chunk in csv_file.chunks():
              destination.write(chunk)
  '''
- def aktualisiere_config(config, vorlagen_data, beitrag_data):
-     '''
++
+ def aktualisiere_config(config, data, file):
      if file:
          uploaded_file = file.name
          data_path = config.requireConfig("data_path")
              for chunk in file.chunks():
                  destination.write(chunk)
          config.setConfig("briefpapier", uploaded_file)
-     '''
-     if vorlagen_data["vorlage"]:
-         config.setConfig("vorlage", vorlagen_data["vorlage"])
-     if beitrag_data["basisbeitrag"]:
-         config.setConfig("beitrag_basis", beitrag_data["basisbeitrag"])
--
-     if beitrag_data["zusatzbeitrag"]:
-         config.setConfig("beitrag_zusatz", beitrag_data["zusatzbeitrag"])
++    if data["vorlage"]:
++        config.setConfig("vorlage", data["vorlage"])
+     if data["basisbeitrag"]:
+         config.setConfig("beitrag_basis", data["basisbeitrag"])
 -
+     if data["zusatzbeitrag"]:
+         config.setConfig("beitrag_zusatz", data["zusatzbeitrag"])
      
  def erstelle_ehmeldung(data):
      from PyPDF2 import PdfFileWriter, PdfFileReader
index 6cd6f1b9e6656253126f699097487bc03cf970ed,b257b848307ab7609a746870d08f6f2189f47674..b7625af8884efa10b07d42acad0f3d692068c7f1
@@@ -23,19 -23,12 +23,13 @@@ https://docs.djangoproject.com/en/2.2/t
  - Doku zu Fields:
  https://docs.djangoproject.com/en/2.2/ref/forms/fields/
  '''
- class MitgliederForm(forms.Form):
-     vorlage      = forms.ChoiceField(choices=())
-     def __init__(self, *args, vorlagen=[('AB', 'ab'),('BC','bc')], **kwargs):
-         #self.templates = templates
-         super().__init__(*args, **kwargs)
-         self.fields['vorlage'].choices = vorlagen
 +
  class VorlagenForm(forms.Form):
 -    template      = forms.ChoiceField(choices=())
 -    def __init__(self, *args, templates=[('AB', 'ab'),('BC','bc')], **kwargs):
 +    vorlage      = forms.ChoiceField(choices=())
 +    def __init__(self, *args, vorlagen=[('AB', 'ab'),('BC','bc')], **kwargs):
          #self.templates = templates
          super().__init__(*args, **kwargs)
 -        self.fields['template'].choices = templates
 +        self.fields['vorlage'].choices = vorlagen
  
  class VorlagenVerwaltungForm(forms.Form):
      vorlagen_zu_loschen = forms.MultipleChoiceField(
index ba7254efead531cda774a550317a10aadd83c85a,06e645164ab0a575cbe508717d42de60b7fd2038..fc978f19435b1468c3290edb9562f15edc50677e
@@@ -8,15 -8,17 +8,16 @@@
  <hr>
  
  <h2>Kassenbriefvorlagen</h2>
 -<p class="fehler">{{fehlertext_template}}</p>
 +<p class="fehler">{{fehlertext_vorlage}}</p>
  
- <form action="/{{verein}}/kassenbrief/" method="post" enctype="multipart/form-data">
+ <form action="/{{verein}}/template_andern/" method="post" enctype="multipart/form-data">
  {% csrf_token %}
  <table>
  {{vorlagen_form}}
  </table>
  <br>
  <a href = "/{{verein}}/vorlagen_verwalten/">Kassenbriefvorlagen verwalten</a>
 -<p><input type="submit" value="Speichern"/>
+ </form>
  
  <hr>
  <h2>Beiträge</h2>
  <table>
  {{beitrag_form}}
  </table>
 -<p><input type="submit" value="Speichern"/>
+ </form>
  <hr>
  
- <h2>Mitglieder</h2>
- <p>Für folgende Mitglieder soll der Kassenbrief erstellt werden:</p>
+ <h2>Mitgliederauswahl</h2>
+ <form action="/{{verein}}/template_andern/" method="post" enctype="multipart/form-data">
  <table>
- {{mitglieder_form}}
+ {{mausw_form}}
  </table>
+ </form>
  <hr>
  
+ <form action="/{{verein}}/kassenbrief/" method="post" enctype="multipart/form-data">
+ {% csrf_token %}
  <p><input type="submit" value="Erstellen"/>
  </form>
  </body>
index e241e3748b8e69d6b33e7286893c5cdd48f27501,630ec56d88999be297586f871f4a246d21a87b1d..0cf81ab9ce1a0c393a4939eab743000241ffef9b
@@@ -7,7 -7,7 +7,8 @@@ from django.template import loade
  
  from .AWK import config, routines
  #import .forms 
- from .forms import EhmeldungForm, VorlagenForm, BeitragForm, VorlagenVerwaltungForm, MitgliederForm
++
+ from .forms import EhmeldungForm, VorlagenForm, BeitragForm, VorlagenVerwaltungForm, MitgliederForm, MitgliederAuswahlForm
  from eh_app.AWK.pdf_ersteller import PdfErsteller
  
  # Create your views here.
@@@ -62,57 -91,40 +92,90 @@@ def kassenbrief(request, verein)
      Diese Methode liest aus der Config die Einstellungen und zeigt sie an.
      
      POST: 
++<<<<<<< HEAD
 +    Diese Methode 
 +    - überprüft, ob an den Einstellungen was verändert wurde und falls ja, ändert die Config 
 +    - bearbeitet den finalen "Erstellen"
 +    
 +    '''
 +    fehlertext_vorlage = ""
 +    fehlertext_beitrag = ""
 +    vconf = config.getInstance(verein)
 +    beitrag_basis  = vconf.getConfig("beitrag_basis", 0)
 +    beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
 +    vorlage_selected = vconf.getConfig("vorlage", "")
 +    vorlagen_liste = []
 +    if os.path.isdir("eh_app/templates/"+verein):
 +        dirlist = os.listdir("eh_app/templates/"+verein) # returns list
 +        for t in dirlist:
 +            vorlagen_liste.append((t,t))
 +    if request.method == 'POST':
 +        vorlagen_form = VorlagenForm(request.POST, request.FILES, vorlagen=vorlagen_liste)
 +        beitrag_form = BeitragForm(request.POST, request.FILES)
 +        if vorlagen_form.is_valid() and beitrag_form.is_valid():
 +            routines.aktualisiere_config(vconf, vorlagen_form.cleaned_data, beitrag_form.cleaned_data)
 +            return HttpResponseRedirect('erfolg')
 +            '''
++=======
+     Diese Methode bearbeitet den finalen "Erstellen"
+     
+     Die Unterformulare (z.B. Beitrag ändern) landen in einer eigenen Methode, die die 
+     Einstellungen in der Config ändert und dann diese hier mit GET aufruft.
+     '''
+     '''
+     ---------------------------------------------------------------
+     Templateauswahl
+     
+     Ausgewähltes Template: <Wert aus Config>
+     Klappliste <Knopf"Template ändern">
+     Link -> Neue Templates installieren
+     ---------------------------------------------------------------
+     '''
+     fehlertext_vorlage = ""
+     vconf = config.getInstance(verein)
+     beitrag_basis  = vconf.getConfig("beitrag_basis", 0)
+     beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
+     vorlagen_liste = ['T1']
+     vorlagen_form = VorlagenForm(templates=vorlagen_liste)
+     beitrag_form = BeitragForm
+     mausw_form = MitgliederForm(zul="12,45,334")
+     if request.method == 'POST':
+         vorlagen_form = VorlagenForm(request.POST, request.FILES)
+         beitrag_form = BeitragForm(request.POST, request.FILES)
+         mausw_form = MitgliederForm(request.POST, request.FILES)
+         if vorlagen_form.is_valid() and beitrag_form.is_valid():
+             routines.aktualisiere_config(vconf, vorlagen_form.cleaned_data, beitrag_form.cleaned_data)
              if not vorlagen_liste:
                  fehlertext_vorlage = "Bitte Kassenbriefvorlage auswählen"
              else:   
                  routines.pdfs_erstellen(request, verein)
                  return HttpResponseRedirect('erfolg')
 +            '''
 +    else:
 +        beitrag_basis  = vconf.getConfig("beitrag_basis", 0)
 +        beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
 +        # GET request
 +        if vorlage_selected == "":
 +            fehlertext_vorlage = "Bitte Vorlage auswählen"
 +        if not vorlagen_liste:
 +            fehlertext_vorlage = "Bitte Vorlagen in Vorlagenverzeichnis einfügen"
 +        if beitrag_basis == 0 or beitrag_zusatz == 0:
 +            fehlertext_beitrag = "Bitte Eingaben zu Basis- und Zusatzbeitrag vornehmen"
 +        vorlagen_form = VorlagenForm(vorlagen=vorlagen_liste, initial={'vorlage':vorlage_selected})
 +        beitrag_form = BeitragForm(initial={'basisbeitrag': beitrag_basis, 'zusatzbeitrag': beitrag_zusatz})
 +        mitglieder_form = MitgliederForm()
 +        
 +    return render(request, 
 +                  'kassenbrief.html', 
 +                  {'vorlagen_form': vorlagen_form, 
 +                   'beitrag_form': beitrag_form,
 +                   'mitglieder_form': mitglieder_form,
 +                   'verein': verein, 
 +                   'fehlertext_vorlage' : fehlertext_vorlage, 
 +                   'fehlertext_beitrag' : fehlertext_beitrag})
++=======
+     return render(request, 'kassenbrief.html', {'vorlagen_form': vorlagen_form, 'beitrag_form': beitrag_form, 'mausw_form': mausw_form, 'verein': verein, 'fehlertext' : fehlertext_vorlage})
++>>>>>>> origin/michael
     
  def kassenbrief_alt(request, verein):
      fehlertext = ""