def fake_zda(self): """schliesst einen Fall mit einer bestimmten Wahrscheinlichkeit ab, je älter desto wahscheinlicher. Fügt vor dem Schliessen noch ein paar Leistungen ein.""" fall = Akte(self.akte_id)['letzter_fall'] fn = fall['fn'] beginn = fall.getDate('bg') alter = beginn.diff(today()) if alter < 2: return form = {} form['fallid'] = fall['id'] form['aktuellzustid'] = fall['zustaendig__id'] # Dauer des Falles zda = self.choose_date(beginn.add_month(1), min(beginn.add_month(alter), today())) setDate(form, 'zda', zda) # 0 bis 5 Leistungen hinzufügen for i in range(randrange(6)): self.fake_leistung(fall, zda) zdaeinf(form) log("Zda %s am %s" % (fn, zda))
def fake_zda(self, datum=None): """schliesst einen Fall mit einer bestimmten Wahrscheinlichkeit ab, je älter desto wahscheinlicher. Fügt vor dem Schliessen noch ein paar Leistungen ein. Erledigt vor dem Schliessen auch die Statistiken, sonst wird die Schliessung nicht akzeptiert. """ fall = Akte(self.akte_id)['letzter_fall'] fn = fall['fn'] beginn = fall.getDate('bg') alter = beginn.diff(today()) if alter < 2: return form = {} form['fallid'] = fall['id'] form['aktuellzustid'] = fall['zustaendig__id'] # Dauer des Falles if datum: zda = datum else: zda = self.choose_date(beginn.add_month(1), min(beginn.add_month(24), today())) ## if random() < .2: ## zda = self.choose_date(beginn.add_month(12), min(beginn.add_month(24), today())) ## else: ## # die meisten Fälle bis ein Jahr ## zda = self.choose_date(beginn.add_month(1), min(beginn.add_month(12), today())) ## zda = self.choose_date(beginn.add_month(1), min(beginn.add_month(alter), today())) # eine Statistik pro abgeschlossenem Fall self.fake_fachstatistik(fall, zda) self.fake_jghstatistik(fall, zda, abgeschlossen=True) setDate(form, 'zda', zda) # 0 bis 5 Leistungen hinzufügen for i in range(randrange(6)): self.fake_leistung(fall, zda) zdaeinf(form) log("Zda %s am %s" % (fn, zda))