1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- # -*- coding: utf-8 -*-
- from openerp import fields, models, api
- from openerp.exceptions import Warning as UserError
- class ProjectServiceCommission(models.Model):
- _name = 'project.service.commission'
- name = fields.Char(string='Nombre', compute="_get_commission_name", required=True)
- task_id = fields.Many2one('project.service.task', string='Tarea', required=True)
- activity_id = fields.Many2one('project.service.activity', string='Trabajo', required=True)
- user_id = fields.Many2one('res.users', string='Funcionario', required=True)
- amount = fields.Float(string='Commission', required=True)
- @api.one
- @api.depends('activity_id','user_id')
- def _get_commission_name(self):
- self.name = self.activity_id.name + ' / ' + self.user_id.name
- class ProjectServiceCommissionWizard(models.TransientModel):
- _name = 'project.service.commission.wizard'
- name = fields.Char('Nombre')
- task_id = fields.Many2one('project.service.task', string='Tarea')
- activity_id = fields.Many2one('project.service.activity', string='Trabajo', required=True, domain="[('task_id','=',task_id)]")
- user_id = fields.Many2one('res.users', string='Funcionario', required=True, domain="[('id','!=',1)]")
- amount = fields.Float('Commission', required=True)
- @api.one
- @api.onchange('activity_id')
- def onchange_activity(self):
- self.user_id = self.activity_id.user_id.id
- @api.one
- def add_commision(self):
- active_id = self._context['active_id']
- task = self.env['project.service.task'].browse(active_id)
- val = {
- 'task_id': active_id,
- 'activity_id': self.activity_id.id,
- 'user_id': self.user_id.id,
- 'amount': self.amount,
- }
- self.env['project.service.commission'].create(val)
|