def get_mail_barcode(barcode): db = MailService.findDatabaseForBarcode(app.dbs, barcode) mail = MailService.selectByBarcode(db, barcode) state = mail.statehistory ua_sender = UserAddressService.selectById(app.dbs['users'], mail.idsenderuseraddress) ua_receiver = UserAddressService.selectById(app.dbs['users'], mail.idreceiveruseraddress) m = { 'barcode': mail.barcode, 'sender': ua_sender.user.name, 'receiver': ua_receiver.user.name, 'date': str(state[0].date), 'history': [ {'status': s.idstate, 'text': str(s.date)} for s in state ] } for d in mail.statehistory: print d.date return m
def __findDatabaseForUserAddress(databases, iduseraddress): ua = UserAddressService.selectById(databases["users"], iduseraddress) if ua is None: return None return (ua.user.department.name, databases[ua.user.department.name])