def get_distance_duration(self):
     duration = 0
     distance = 0
     departure_time = self._context.get('departure_time')
     if not departure_time:
         n = datetime.datetime.now()
         departure_time = int(time.mktime(n.timetuple()))
     if self.partner_id and self.job_id.address_id:
         partner = self.partner_id
         origin = geo_query_address(street=partner.street,
                                    zip=partner.zip,
                                    city=partner.city,
                                    state=partner.state_id.name,
                                    country=partner.country_id.name)
         partner = self.job_id.address_id
         destination = geo_query_address(street=partner.street,
                                         zip=partner.zip,
                                         city=partner.city,
                                         state=partner.state_id.name,
                                         country=partner.country_id.name)
         maps = GoogleMaps()
         duration = maps.duration(origin, destination, mode='transit',
                                  departure_time=departure_time) / 60.0
         distance = maps.distance(origin, destination, mode='transit',
                                  departure_time=departure_time) / 1000.0
     self.write({'duration': duration, 'distance': distance})
     return True
Exemplo n.º 2
0
 def get_distance_duration(self):
     duration = 0
     distance = 0
     departure_time = self._context.get('departure_time')
     if not departure_time:
         n = datetime.datetime.now()
         departure_time = int(time.mktime(n.timetuple()))
     if self.partner_id and self.job_id.address_id:
         partner = self.partner_id
         origin = geo_query_address(street=partner.street,
                                    zip=partner.zip,
                                    city=partner.city,
                                    state=partner.state_id.name,
                                    country=partner.country_id.name)
         partner = self.job_id.address_id
         destination = geo_query_address(street=partner.street,
                                         zip=partner.zip,
                                         city=partner.city,
                                         state=partner.state_id.name,
                                         country=partner.country_id.name)
         maps = GoogleMaps()
         duration = maps.duration(origin, destination, mode='walking',
                                  departure_time=departure_time) / 60.0
         distance = maps.distance(origin, destination, mode='walking',
                                  departure_time=departure_time) / 1000.0
     self.write({'duration': duration, 'distance': distance})
     return True
Exemplo n.º 3
0
    def get_duration(self):
        departure_time = self._context.get('departure_time')
        if not departure_time:
            n = datetime.datetime.now()
            departure_time = int(time.mktime(n.timetuple()))
        origin = 'Paris'
        destination = self.address_id and \
            self.address_id._get_url_parameters_partner_vals(self.address_id) or origin
        maps = GoogleMaps()
        for applicant in self.application_ids:
            origin = applicant.partner_id._get_url_parameters_partner_vals(
                applicant.partner_id)
            duration = maps.duration(origin,
                                     destination,
                                     mode='transit',
                                     departure_time=departure_time) / 60.0
            distance = maps.distance(origin,
                                     destination,
                                     mode='transit',
                                     departure_time=departure_time) / 1000.0
        return True


# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: