[Mpuls-commits] r3769 - in wasko/trunk/waskoweb: controllers lib templates/caselifetime

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Thu Sep 23 16:44:22 CEST 2010


Author: torsten
Date: 2010-09-23 16:44:22 +0200 (Thu, 23 Sep 2010)
New Revision: 3769

Modified:
   wasko/trunk/waskoweb/controllers/caselifetime.py
   wasko/trunk/waskoweb/lib/validators.py
   wasko/trunk/waskoweb/templates/caselifetime/wiederaufnahme.mako
Log:
Fixed functionallity for INTESTS


Modified: wasko/trunk/waskoweb/controllers/caselifetime.py
===================================================================
--- wasko/trunk/waskoweb/controllers/caselifetime.py	2010-09-23 13:09:24 UTC (rev 3768)
+++ wasko/trunk/waskoweb/controllers/caselifetime.py	2010-09-23 14:44:22 UTC (rev 3769)
@@ -31,11 +31,9 @@
 eine neue Fallakte kopiert. Sie werden dann in dieser neuen Fallakte
 weiterarbeiten."""
 
-REOPENOK_2_HEADER_CONFIRM = u"Fall wiederaufnehmen?"
+REOPENOK_2_HEADER_CONFIRM = u"Wiederaufnahme des jungen Menschen um 3 Monate verlängern?"
 REOPENOK_2_TEXT_CONFIRM = u"""\
-Wollen Sie den Fall wiederaufnehmen? Dabei werden Teile der
-Abschlussbewertung in die Eingangsdokumentation übertragen und die
-bestehende Abschlussdokumentation gelöscht."""
+Wollen Sie die Wiederaufnahme des jungen Menschen um 3 Monate verlängern? Die Fallakte steht danach weiter zur Bearbeitung."""
 REOPENNOTOK_HEADER_CONFIRM = u"Nicht genehmigte Wiederaufnahme dokumentieren?"
 REOPENNOTOK_TEXT_CONFIRM = u"""\
 Sie haben angegeben, dass keine Genehmigung für die Wiederaufnahme
@@ -169,12 +167,17 @@
     data.update(sparams)
     _set_data(it, data, id)
 
-def _set_data(it, data, case_id, do_write=True):
+def _convert4Formed(data, id):
     convertet_data = {}
     for key, value in data.iteritems():
+        if key == 'cm2c_t2': continue
         if isinstance(value, date):
             value = h.format_date(value)
-        convertet_data[":".join([str(key), str(case_id)])] = value
+        convertet_data[":".join([str(key), str(id)])] = value
+    return convertet_data
+
+def _set_data(it, data, case_id, do_write=True):
+    convertet_data = _convert4Formed(data, case_id)
     it.setData(convertet_data)
     if do_write:
         it.commit()
@@ -216,7 +219,7 @@
     # Wieviele Wiederholungen?
     log.debug('Wiederaufnahme1: %s' % D(it, 'cm_wiederauf_genehm_1', case_id))
     log.debug('Wiederaufnahme2: %s' % D(it, 'cm_wiederauf_genehm_2', case_id))
-    if D(it, 'cm_wiederauf_genehm_2', case_id) in (1,):
+    if D(it, 'cm_wiederauf_genehm_2', case_id) in (1,0):
         c.num_wiederaufnahme = 2
     elif D(it, 'cm_wiederauf_genehm_1', case_id) in (1,):
         c.num_wiederaufnahme = 1
@@ -252,10 +255,11 @@
 
     # Wiedervorlage anzeigen
     if (not c.disable_all
-        and (c.phase in (3,4,5) and c.erfolgreiche_reintegration
+        and (c.phase in (3,4,5) 
+             and c.erfolgreiche_reintegration
              and c.num_wiederaufnahme < 1
-             or (c.num_wiederaufnahme == 1 and c.phase not in (3, 4, 5)))
-        and c.is_anonymizable):
+             and c.is_anonymizable)
+        or (c.num_wiederaufnahme == 1 and c.phase not in (3, 4, 5))):
         c.show_wiedervorlage = True
     else:
         c.show_wiedervorlage = False
@@ -297,6 +301,7 @@
         if c.num_verlaengerung == 1 and not ende_verl2:
                 ende_verl2 = ende_verl1+timedelta(days=31*3)
 
+        c.form_defaults['datum_cm_ende'] = h.dd_mm_YYYY(D(it, 'datum_cm_ende', case_id))
         c.form_defaults['cm_datum_verlaengerung_1'] = h.dd_mm_YYYY(ende_verl1)
         c.form_defaults['cm_bestaet_verlaengerung_1'] = D(it, 'cm_bestaet_verlaengerung_1', case_id)
         c.form_defaults['cm_anmerk_verlaengerung_1'] = D(it, 'cm_anmerk_verlaengerung_1', case_id)
@@ -418,6 +423,7 @@
                 new_id = new_it.getRootNode().getIdentifier()
                 data['phase'] = '-1'
                 data['cm2c'] = '1'
+                doc_abschluss(id, new_id)
                 # Dokumentiere Neuaufnahme in neuem Fall 
                 save_formdata(new_id, data)
                 mark_case(new_id, 'NA')
@@ -477,13 +483,14 @@
         it = factory.loadInstanceTreeByIdentifier(id)
         checkcase(it, id)
         if confirmed == '1':
-            data = {}
             try:
+                data = session['lifetimeparams'] 
                 if c.num_wiederaufnahme < 1:
-                    # Dokumentiere Daten im alten Fall!
-                    save_formdata(id, data)
-                    # Reload case after saving data
-                    it = factory.loadInstanceTreeByIdentifier(id)
+                    ## Dokumentiere Daten im alten Fall!
+                    #save_formdata(id, data)
+                    ## Reload case after saving data
+                    #it = factory.loadInstanceTreeByIdentifier(id)
+
                     # Lege neuen Fall an, es sollen aber nur bestimmte Felder kopiert werden
                     fields = []
                     for section in ['ee', 'phase-a', 'group-5', 'group-18', 'group-27']:
@@ -498,14 +505,18 @@
                     new_id = new_it.getRootNode().getIdentifier()
                     
                     doc_abschluss(id, new_id)
+                    # Copy Datum der Wiederaufnahme in Erstgespräch und Beginn des CM 
+                    data['datum_cm_start'] = data['cm_wiederauf_genehm_datum_1']
+                    data['erstgespraech'] = data['cm_wiederauf_genehm_datum_1']
+                    # delete 'datum_cm_ende' as it must not be written in the new case
+                    del data['datum_cm_ende']
+                    data = _convert4Formed(data, new_id)
                     data['phase:%s' % new_id] = '2'
                     data['cm2c:%s' % new_id] = '1'
+
                     new_it.setData(data)
                     new_it.commit()
-                    copy_field(id, 'cm_wiederauf_genehm_datum_1',
-                               new_id, 'datum_cm_start')
-                    copy_field(id, 'cm_wiederauf_genehm_datum_1',
-                               new_id, 'erstgespraech')
+
                     mark_case(new_id, 'WA')
                     create_logbook(id=new_id, header='Wiederaufnahme',
                                    text=('Für den Fall wurde eine genehmigte'
@@ -521,10 +532,14 @@
                                          ' Integrationsprozess in einer neuen'
                                          ' Fallakte durchgeführt.'))
                 else:
+
+
+                    data['cm2c_t'] += "\n" + data['cm2c_t2']
+                    del data['cm2c_t2']
                     save_formdata(id, data)
-                    create_logbook(header='Wiederaufnahme',
+                    create_logbook(header='Verlängerung Wiederaufnahme',
                                    text=('Für den Fall wurde eine genehmigte'
-                                         ' Wiederaufnahme des'
+                                         ' Verlängerung der Wiederaufnahme des'
                                          ' Integrationsprozess dokumentiert.'))
             except Exception, err:
                 log.exception(err.__dict__)

Modified: wasko/trunk/waskoweb/lib/validators.py
===================================================================
--- wasko/trunk/waskoweb/lib/validators.py	2010-09-23 13:09:24 UTC (rev 3768)
+++ wasko/trunk/waskoweb/lib/validators.py	2010-09-23 14:44:22 UTC (rev 3769)
@@ -74,7 +74,7 @@
     filter_extra_fields = True
 
     cm_neuauf_genehm = String()
-    cm2c_t = String()
+    cm2c_t = String(not_empty=True)
 
 
 class ReopenFormValidator1(BaseFormValidator):
@@ -84,6 +84,7 @@
 
     cm_wiederauf_genehm_1 = String()
     # Konvertierung in datetime-objekte.
+    datum_cm_ende = MyDateConverter(not_empty=True, month_style='dd.mm.jjjj')
     cm_wiederauf_genehm_datum_1 = MyDateConverter(not_empty=True, month_style='dd.mm.jjjj')
     cm_wiederauf_datum_bis_1 = MyDateConverter(not_empty=True, month_style='dd.mm.jjjj')
 
@@ -93,6 +94,7 @@
     # Diese Validatoren greifen nur auf die übermittelten Werte in dem request
     # zu, also nicht dem entsprec enden python typen nach einer Validierung
     chained_validators = [
+        DateOrder('datum_cm_ende', 'cm_wiederauf_genehm_datum_1'),
         DateOrder('cm_wiederauf_genehm_datum_1', 'cm_wiederauf_datum_bis_1'),
         TimeDeltaCheck('cm_wiederauf_genehm_datum_1', 'cm_wiederauf_datum_bis_1', days=93)
     ]
@@ -118,6 +120,7 @@
     cm_wiederauf_genehm_2 = String()
     cm_wiederauf_datum_bis_2 = DateCheck(not_empty=True)
     cm2c_t = String()
+    cm2c_t2 = String(not_empty=True)
 
 
 class ReopenFormValidator2abgel(BaseFormValidator):

Modified: wasko/trunk/waskoweb/templates/caselifetime/wiederaufnahme.mako
===================================================================
--- wasko/trunk/waskoweb/templates/caselifetime/wiederaufnahme.mako	2010-09-23 13:09:24 UTC (rev 3768)
+++ wasko/trunk/waskoweb/templates/caselifetime/wiederaufnahme.mako	2010-09-23 14:44:22 UTC (rev 3769)
@@ -24,7 +24,12 @@
           </label>
         </td>
         <td class="field">
-          <input type="text" name="cm_wiederauf_genehm_datum_1" id="cm_wiederauf_genehm_datum_1" value="" onchange="setModification();" ${c.num_wiederaufnahme >= 1 and 'disabled' or ''}>
+          <input type="hidden" name="datum_cm_ende" value="">
+          % if c.num_wiederaufnahme >= 1:
+            <input type="text" name="cm_wiederauf_genehm_datum_1" id="cm_wiederauf_genehm_datum_1" value="" onchange="setModification();" readonly="readonly" class="disabled">
+          % else:
+            <input type="text" name="cm_wiederauf_genehm_datum_1" id="cm_wiederauf_genehm_datum_1" value="" onchange="setModification();">
+          % endif
         </td>
         <td><form:error name="cm_wiederauf_genehm_datum_1"/></td>
       </tr>
@@ -35,7 +40,11 @@
           </label>
         </td>
         <td class="field">
-          <input type="text" name="cm_wiederauf_datum_bis_1" id="cm_wiederauf_datum_bis_1" value="" onchange="setModification();" ${c.num_wiederaufnahme >= 1 and 'disabled' or ''}>
+          % if c.num_wiederaufnahme >= 1:
+            <input type="text" name="cm_wiederauf_datum_bis_1" id="cm_wiederauf_datum_bis_1" value="" onchange="setModification();" readonly="readonly" class="disabled">
+          % else:
+            <input type="text" name="cm_wiederauf_datum_bis_1" id="cm_wiederauf_datum_bis_1" value="" onchange="setModification();">
+          % endif
         </td>
         <td><form:error name="cm_wiederauf_datum_bis_1"/></td>
       </tr>
@@ -46,7 +55,11 @@
           </label>
         </td>
         <td class="field">
-          <textarea class="" name="cm2c_t" id="anmerkungen_1" rows="3" cols="80"  onchange="setModification();" ${c.num_wiederaufnahme >= 1 and 'disabled' or ''}></textarea>
+          % if c.num_wiederaufnahme >= 1:
+            <textarea class="" name="cm2c_t" id="anmerkungen_1" rows="3" cols="80"  onchange="setModification();"></textarea>
+          % else:
+            <textarea class="" name="cm2c_t" id="anmerkungen_1" rows="3" cols="80"  onchange="setModification();"></textarea>
+          % endif
         </td>
         <td><form:error name="cm2c_t"/></td>
       </tr>
@@ -75,7 +88,7 @@
           </label>
         </td>
         <td class="field">
-          <input type="text" name="cm_wiederauf_datum_bis_2" id="cm_wiederauf_datum_bis_2" value="" onchange="setModification();">
+          <input type="text" name="cm_wiederauf_datum_bis_2" id="cm_wiederauf_datum_bis_2" value="" onchange="setModification();" readonly="readonly" class="disabled">
         </td>
         <td></td>
       </tr>
@@ -86,9 +99,9 @@
           </label>
         </td>
         <td class="field">
-          <textarea class="" name="cm2c_t" id="anmerkungen_2" rows="3" cols="80"  onchange="setModification();" ></textarea>
+          <textarea class="" name="cm2c_t2" id="anmerkungen_2" rows="3" cols="80"  onchange="setModification();" ></textarea>
         </td>
-        <td></td>
+        <td><form:error name="cm2c_t2"/></td>
       </tr>
     </table>
     %endif



More information about the Mpuls-commits mailing list