def processForm(self, REQUEST, RESPONSE): fallid = self.form.get('fallid') jahr = today().year jghiddel = self.form.get('jghiddel') typ = self.form.get('typ') if jghiddel and typ == 'jgh' and fallid: # alte Statistik auf neue upgraden upgrade_jgh(jghiddel, old2new=True) if not fallid: raise EE('Bundesstatistik nur für einen gültigen Fall') fall = Fall(fallid) ex_jgh = fall['jgh'] if ex_jgh: raise EE('Bundesstatistik bereits vorhanden.') jgh = Jugendhilfestatistik2007() jgh['jghid'] = Jugendhilfestatistik2007().getNewId() jgh['stz'] = self.stelle['id'] jgh['file'] = 'jgh07einf' jgh['mit_id'] = fall['zustaendig__mit_id'] #jgh.setDate('bg', fall.getDate('bg')) jgh.setDate('bg', fall['leistungsbeginn']) jgh['fall_fn'] = fall['fn'] jgh['fall_id'] = fall['id'] jgh['jahr'] = jahr dmy = [int(e) for e in fall['akte__gb'].split('.')] dmy.reverse() geburtsdatum = ebapi.Date(*dmy) jgh['gey'] = geburtsdatum.year jgh['gem'] = geburtsdatum.month jgh['gs'] = fall['akte__gs'] assert isinstance(jgh['gs'], (int, long)) if config.BERATUNGSKONTAKTE: from ebkus.html.beratungskontakt import get_jgh_kontakte jgh['nbkakt'], jgh['nbkges'] = get_jgh_kontakte(fall, jahr) return self._formular(jgh)
def processForm(self, REQUEST, RESPONSE): fallid = self.form.get('fallid') jghiddel = self.form.get('jghiddel') typ = self.form.get('typ') logging.info('JGHNEU %s %s %s' % (fallid, jghiddel, typ)) if jghiddel and typ == 'jgh07' and fallid: logging.info('JGHNEU upgrading %s %s %s' % (fallid, jghiddel, typ)) # neue Statistik auf alte 'upgraden' upgrade_jgh(jghiddel, old2new=False) ## fall = Fall(fallid) ## # diese Fall ist noch unzureichend initialisiert ## jghstat = fall['jgh'] if not fallid: raise EE('Bundesstatistik nur für einen gültigen Fall') fall = Fall(fallid) akte = fall['akte'] fn = fall['fn'] bgd = fall['bgd'] bgm = fall['bgm'] bgy = fall['bgy'] ex_jgh = fall['jgh'] if ex_jgh: raise EE('Bundesstatistik bereits vorhanden') alter_klient = calc_age(akte['gb'],fall.getDate('bg')) geschwisterfaelle = get_codes('gfall') stellenzeichen = get_codes('stzei') bezirke = get_codes('rbz') kreise = get_codes('kr') gemeinde = get_codes('gm') gemeindeteile = get_codes('gmt') traeger = get_codes('traeg') beendigungsgruende = get_codes('bgr') geschlechter = get_codes('gs') altersgruppen = get_codes('ag') lebtbeipersonen = get_codes('fs') staatsangehoerigkeiten = get_codes('hke') erstekontaktaufnahmel = get_codes('zm') berschwerpunkte = get_codes('schw') geschwister = get_codes('gsa') hidden ={'file': 'jgheinf'} jghid = Jugendhilfestatistik().getNewId() hiddenid ={'name': 'jghid', 'value': jghid} hiddenid2 ={'name': 'stz', 'value': self.stelle['id']} mitarb_data = {'mit_id': self.mitarbeiter['id'],'mit_name' : self.mitarbeiter['ben']} res = [] res.append(head_normal_t % 'Neue Bundesstatistik erstellen') res.append(jghstatneu_t % ({'id':fallid})) res.append(jghstatneufn_t %({'fall_fn' : fn} )) res.append(jghstatneugemeinde_t %(Code(cc('gm','000'))['id'])) res.append(jghstatneugemeindeteil_t %(Code(cc('gmt','000'))['id'])) res.append(formhiddenvalues_t % hidden) res.append(formhiddennamevalues_t % hiddenid) res.append(formhiddennamevalues_t % hiddenid2) res.append(jghstatneumit_t % mitarb_data) res.append(jghstatneubeginn_t % ({'bgd': bgd, 'bgm': bgm , 'bgy' : bgy} )) mksel(res, codeliste_t, bezirke) res.append(jghstatneuende_t %(today())) res.append(jghstatneukreis_t) mksel(res, codeliste_t, kreise) if config.BERLINER_VERSION: res.append(jghstatneuwbz_berlin_t) res.append(jghstatneugfall_berlin_t) else: res.append(jghstatneuwbz_t) res.append(jghstatneugfall_t) mksel(res,codeliste_t, geschwisterfaelle, 'name', 'Nein') res.append(jghstatneutraeger_t) mksel(res, codeliste_t, traeger) res.append(jghstatneukontakt_t) mksel(res, codeliste_t, erstekontaktaufnahmel) res.append(jghstatneuendegrund_t) mksel(res, codeliste_t, beendigungsgruende) res.append(jghstatneuanlass_t) res.append(codelisteos_t % Code(cc('ba0', '1')) ) res.append(codelisteos_t % Code(cc('ba1', '1')) ) res.append(codelisteos_t % Code(cc('ba2', '1')) ) res.append(codelisteos_t % Code(cc('ba3', '1')) ) res.append(codelisteos_t % Code(cc('ba4', '1')) ) res.append(codelisteos_t % Code(cc('ba5', '1')) ) res.append(codelisteos_t % Code(cc('ba6', '1')) ) res.append(codelisteos_t % Code(cc('ba7', '1')) ) res.append(codelisteos_t % Code(cc('ba8', '1')) ) res.append(codelisteos_t % Code(cc('ba9', '1')) ) res.append(jgstatneuschwerpunkt_t) mksel(res, codeliste_t, berschwerpunkte) res.append(jghstatneulebtbei_t) mksel(res, codeliste_t, lebtbeipersonen) res.append(jghstatneugeschlecht_t) mksel(res, codeliste_t, geschlechter) res.append(jghstatneualter_t) if(alter_klient < 3): altersgruppe_kat = cc('ag', '1') elif(alter_klient >= 3 and alter_klient < 6): altersgruppe_kat = cc('ag', '2') elif(alter_klient >= 6 and alter_klient < 9): altersgruppe_kat = cc('ag', '3') elif(alter_klient >= 9 and alter_klient < 12): altersgruppe_kat = cc('ag', '4') elif(alter_klient >= 12 and alter_klient < 15): altersgruppe_kat = cc('ag', '5') elif(alter_klient >= 15 and alter_klient < 18): altersgruppe_kat = cc('ag', '6') elif(alter_klient >= 18 and alter_klient < 21): altersgruppe_kat = cc('ag', '7') elif(alter_klient >= 21 and alter_klient < 24): altersgruppe_kat = cc('ag', '8') elif(alter_klient >= 24 and alter_klient < 27): altersgruppe_kat = cc('ag', '9') else: altersgruppe_kat = " " mksel(res, codeliste_t, altersgruppen, 'id', altersgruppe_kat) res.append(jghstatneu_t2a) res.append(jghstatneu_t2b) mksel(res, codeliste_t, staatsangehoerigkeiten) res.append(jghstatneu_t3 % Code(cc('gsu', '1'))) res.append(radio_t % Code(cc('fbe0', '1' )) ) res.append(jghstatneu_t4) res.append(radio_t % Code(cc('fbe0', '2' )) ) res.append(jghstatneu_t5) res.append(radio_t % Code(cc('fbe1', '1')) ) res.append(jghstatneu_t6) res.append(radio_t % Code(cc('fbe1', '2')) ) res.append(jghstatneu_t7) res.append(jghansaetzefamilie_t % Code(cc('fbe2', '1')) ) res.append(jghstatneu_t8) res.append(jghansaetzeumfeld_t % Code(cc('fbe3', '1')) ) res.append(jghstatneu_t9) return string.join(res, '')