Public release from ruodoo-project: 19.0 - 2026-05-10 21:19:01 UTC
This commit is contained in:
5
l10n_ru_attorney/models/__init__.py
Normal file
5
l10n_ru_attorney/models/__init__.py
Normal file
@ -0,0 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from . import base_consent
|
||||
from . import hr_employee
|
||||
from . import purchase_order
|
||||
48
l10n_ru_attorney/models/base_consent.py
Normal file
48
l10n_ru_attorney/models/base_consent.py
Normal file
@ -0,0 +1,48 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from odoo import api, fields, models, _
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
|
||||
class BaseConsent(models.Model):
|
||||
_name = 'base.consent'
|
||||
_inherit = ['mail.thread', 'utm.mixin']
|
||||
_description = 'Consent'
|
||||
_order = 'date_from desc'
|
||||
|
||||
name = fields.Char(string=_('Номер'))
|
||||
date_from = fields.Date(string=_('Дата выдачи'), default=lambda self: fields.Datetime.now())
|
||||
date_to = fields.Date(string=_('Действительна по'), default=lambda self: datetime.today() + timedelta(days=180))
|
||||
partner_id = fields.Many2one('res.partner', string=_('Контрагент'), required=1)
|
||||
employee_id = fields.Many2one('hr.employee', string=_('Сотрудник'), required=1)
|
||||
purchaseorder_id = fields.Many2one('purchase.order', _('Заказ на закупку'), domain="[('partner_id','=',partner_id)]",
|
||||
required=1)
|
||||
company_id = fields.Many2one('res.company', string=_('Компания'),
|
||||
default=lambda self: self.env.company,
|
||||
required=1)
|
||||
|
||||
@api.model_create_multi
|
||||
def create(self, vals_list):
|
||||
for vals in vals_list:
|
||||
if not vals.get("name"):
|
||||
vals["name"] = self.env["ir.sequence"].next_by_code("base.consent")
|
||||
|
||||
records = super().create(vals_list)
|
||||
for record in records:
|
||||
if record.purchaseorder_id:
|
||||
record.purchaseorder_id.sudo().write({
|
||||
"consent_id": record.id
|
||||
})
|
||||
|
||||
return records
|
||||
|
||||
@api.onchange('purchaseorder_id')
|
||||
def set_partner(self):
|
||||
if self.purchaseorder_id:
|
||||
self.partner_id = self.purchaseorder_id.partner_id
|
||||
|
||||
@api.constrains('purchaseorder_id')
|
||||
def fill_order(self):
|
||||
p_orders = self.env['purchase.order'].sudo().browse(self.purchaseorder_id.id)
|
||||
for order in p_orders:
|
||||
order.consent_id = self.id
|
||||
11
l10n_ru_attorney/models/hr_employee.py
Normal file
11
l10n_ru_attorney/models/hr_employee.py
Normal file
@ -0,0 +1,11 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from odoo import fields, models, _
|
||||
|
||||
|
||||
class HrEmployee(models.Model):
|
||||
_inherit = 'hr.employee'
|
||||
|
||||
inn = fields.Char(string=_("ИНН"))
|
||||
pass_kem = fields.Char(string=_("Кем выдан паспорт"))
|
||||
pass_date = fields.Date(string=_('Дата выдачи паспорта'))
|
||||
9
l10n_ru_attorney/models/purchase_order.py
Normal file
9
l10n_ru_attorney/models/purchase_order.py
Normal file
@ -0,0 +1,9 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from odoo import fields, models, _
|
||||
|
||||
|
||||
class PurchaseOrder(models.Model):
|
||||
_inherit = 'purchase.order'
|
||||
|
||||
consent_id = fields.Many2one('base.consent', string=_('Доверенность'))
|
||||
Reference in New Issue
Block a user