# Copyright 2018-Today datenpol gmbh () # License OPL-1 or later (https://www.odoo.com/documentation/user/11.0/legal/licenses/licenses.html#licenses). from odoo import api, fields, models, _ import urllib.parse class WizardRouteMaps(models.TransientModel): _name = 'wizard.routemaps' _description = 'Routenplaner' name = fields.Char() @api.multi def button_routemaps(self): # home_address = r'Neugasse 36, 2244 Spannberg' myCompany=self.env.user.company_id home_address = urllib.parse.quote(myCompany.street,safe='')+","+myCompany.zip+","+myCompany.city+","+myCompany.country_id.name for wizard in self: active_ids = self.env.context.get('active_ids', []) sale_orders = self.env['sale.order'].browse(active_ids) if sale_orders.exists(): address = "" sid = set() for so in sale_orders: if (so.partner_shipping_id.id not in sid): sid.add(so.partner_shipping_id.id) si = so.partner_shipping_id street = si.street + ',' if si.street else '' zip = ' ' + si.zip + ',' if si.zip else '' city = ' ' + si.city + ',' if si.city else '' country_code = ' ' + si.country_id.code + ',' if si.country_id.code else '' address += "/"+urllib.parse.quote(street,safe='') + zip + urllib.parse.quote(city,safe='') + country_code gomaps_link = "https://www.google.at/maps/dir/"+home_address+address # print(gomaps_link) # action = self.env.ref('sale.action_orders').read()[0] # action['domain'] = [('id', 'in', active_ids)] # return action return { 'type': 'ir.actions.act_url', 'url': '%s' % gomaps_link, 'target':'new', # 'domain': [('id', 'in', active_ids)], }