示例#1
0
 def beratungen_bezugsperson(self, mitarbeiter=None, bzpname=None):
     join=[('zustaendigkeit', 'zustaendigkeit.fall_id=fall.id'),
           ('akte', 'bezugsperson.akte_id=akte.id'),
           ('fall', 'fall.akte_id=akte.id'),
           ('mitarbeiter', 'zustaendigkeit.mit_id=mitarbeiter.id')]
     # nur die eigene Stelle
     where = "akte.stzbg=%s" % self.stelle['id']
     # nur die letzte Zuständigkeit deren Endedatum gleich dem ZDA-Datum ist
     where += """ and fall.zday = zustaendigkeit.ey and 
     fall.zdam = zustaendigkeit.em and 
     fall.zdad = zustaendigkeit.ed"""
     if bzpname:
         expr = escape('%' + bzpname + '%')
         where += " and (bezugsperson.vn like %s or bezugsperson.na like %s)" % \
                  (expr, expr)
     if mitarbeiter:
         where += " and mitarbeiter.id = %s" % mitarbeiter['id']
     bezugsperson_list = BezugspersonList(
         where=where,
         join=join,
         )
     sort = ('na', 'vn',
     'bezugsperson__akte__letzter_fall__bgy',
     'bezugsperson__akte__letzter_fall__bgm',
     'bezugsperson__akte__letzter_fall__bgd',
     )
     bezugsperson_list.sort(*sort)
     return bezugsperson_list
示例#2
0
 def get_aktuelle_bezugspersonen(self, order=None):
     res = []
     for z in self.get_aktuelle_zustaendigkeiten():
         for b in z['fall__akte__bezugspersonen']:
             b['fn'] = z['fall__fn'] # drangepappt für das Template unten,
                                     # was Fallnummer braucht
             res.append(b)
     if not res:
         return
     bezugsperson_list = BezugspersonList(data=res)
     if order == 'bp_na':
         bezugsperson_list.sort('na', 'vn')
     for b in bezugsperson_list:
         yield b
示例#3
0
 def beratungen_bezugsperson(self, mitarbeiter=None, bzpname=None):
     join = [
         ("zustaendigkeit", "zustaendigkeit.fall_id=fall.id"),
         ("akte", "bezugsperson.akte_id=akte.id"),
         ("fall", "fall.akte_id=akte.id"),
         ("mitarbeiter", "zustaendigkeit.mit_id=mitarbeiter.id"),
     ]
     # nur die eigene Stelle
     where = "akte.stzbg=%s" % self.stelle["id"]
     # nur die letzte Zuständigkeit deren Endedatum gleich dem ZDA-Datum ist
     where += """ and fall.zday = zustaendigkeit.ey and 
     fall.zdam = zustaendigkeit.em and 
     fall.zdad = zustaendigkeit.ed"""
     if bzpname:
         expr = escape("%" + bzpname + "%")
         where += " and (bezugsperson.vn like %s or bezugsperson.na like %s)" % (expr, expr)
     if mitarbeiter:
         where += " and mitarbeiter.id = %s" % mitarbeiter["id"]
     bezugsperson_list = BezugspersonList(where=where, join=join)
     sort = ("na", "vn", "akte__letzter_fall__bgy", "akte__letzter_fall__bgm", "akte__letzter_fall__bgd")
     bezugsperson_list.sort(*sort)
     return bezugsperson_list