Ejemplo n.º 1
0
    def as_person(self,dct):
        p = Person()
        p.id = int(dct['id'])

        logging.info('**id**')
        logging.info(dct['id'])

        if dct.has_key('first_name'):
            p.first_name = dct['first_name']
        if dct.has_key('last_name'):
            p.last_name = dct['last_name']
        if dct.has_key('job_title'):
            p.job_title = dct['job_title']
        if dct.has_key('salutation'):
            p.salutation = dct['salutation']
        if dct.has_key('roles'):
            p.roles = []
            if(isinstance( (dct['roles']), int )):
                p.roles.append(dct['roles']);
            else:
                for i in dct['roles']:
                    p.roles.append(PersonRole.get(i));

        if dct.has_key('phones'):
            logging.info('**phone start**')

            if(isinstance( (dct['phones']), str )):
                logging.info('ITS A STRING')

            if(isinstance( (dct['phones']), list )):
                logging.info('ITS A LIST')

            logging.info(dct['phones'])

            for ph in dct['phones']:
                nph = Phone(ph['id'],ph['number'],PhoneType.get(ph['type']))
                p.phones.append(nph);

            logging.info(dct['emails'])

            for em in dct['emails']:
                nem = Email(em['id'],em['address'],EmailType.get(em['type']))
                p.emails.append(nem);
                logging.info(em['address'])

        return p