You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
1.1 KiB

  1. # Copyright 2016 Carlos Dauden <carlos.dauden@tecnativa.com>
  2. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
  3. from odoo import _, api, fields, models
  4. class PartnerRiskExceededWiz(models.TransientModel):
  5. _name = 'partner.risk.exceeded.wiz'
  6. partner_id = fields.Many2one(
  7. comodel_name='res.partner', readonly=True, string='Customer')
  8. exception_msg = fields.Text(readonly=True)
  9. origin_reference = fields.Reference(
  10. lambda self: [
  11. (m.model, m.name) for m in self.env['ir.model'].search([])],
  12. string='Object')
  13. continue_method = fields.Char()
  14. @api.multi
  15. def action_show(self):
  16. self.ensure_one()
  17. return {
  18. 'type': 'ir.actions.act_window',
  19. 'name': _('Partner risk exceeded'),
  20. 'res_model': self._name,
  21. 'res_id': self.id,
  22. 'view_type': 'form',
  23. 'view_mode': 'form',
  24. 'target': 'new',
  25. }
  26. @api.multi
  27. def button_continue(self):
  28. self.ensure_one()
  29. return getattr(self.origin_reference.with_context(
  30. bypass_risk=True), self.continue_method)()