Código fonte para l10n_br_stock_account.models.procurement

# -*- coding: utf-8 -*-
# Copyright (C) 2016  Luis Felipe Mileo - KMEE                                #
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html

from openerp import models, api


[documentos]class ProcurementOrder(models.Model): _inherit = "procurement.order" @api.model def _run_move_create(self, procurement): result = super(ProcurementOrder, self)._run_move_create(procurement) if (procurement.rule_id and procurement.rule_id.fiscal_category_id and result['partner_id']): ctx = dict(self.env.context) ctx.update({'use_domain': ('use_picking', '=', True)}) partner = self.env['res.partner'].browse(result['partner_id']) company = (procurement.warehouse_id.company_id or procurement.company_id) kwargs = { 'partner_id': partner.id, 'product_id': procurement.product_id.id, 'partner_invoice_id': partner.id, # TODO: Implement fuction to compute partner invoice id 'partner_shipping_id': partner.id, 'fiscal_category_id': ( procurement.rule_id.fiscal_category_id.id ), 'company_id': company.id, 'context': ctx, } obj_fp_rule = self.env['account.fiscal.position.rule'] product_fc_id = obj_fp_rule.with_context( ctx).product_fiscal_category_map( kwargs.get('product_id'), kwargs.get('fiscal_category_id'), partner.state_id.id) if product_fc_id: kwargs['fiscal_category_id'] = product_fc_id result['fiscal_category_id'] = product_fc_id else: result['fiscal_category_id'] = kwargs.get( 'fiscal_category_id') result_fr = obj_fp_rule.with_context(ctx).apply_fiscal_mapping( {'value': {}}, **kwargs) result.update({ 'fiscal_position': result_fr['value']['fiscal_position']}) return result