Código fonte para l10n_br_pos.models.pos_config

# -*- coding: utf-8 -*-
# © 2016 KMEE INFORMATICA LTDA (https://kmee.com.br)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).

from openerp import models, fields, api
from openerp.addons import decimal_precision as dp

SIMPLIFIED_INVOICE_TYPE = [
    ('nfce', u'NFC-E'),
    ('sat', u'SAT'),
    ('paf', u'PAF-ECF'),
]

PRINTER = [
    ('epson-tm-t20', u'Epson TM-T20'),
    ('bematech-mp4200th', u'Bematech MP4200TH'),
    ('daruma-dr700', u'Daruma DR700'),
    ('elgin-i9', u'Elgin I9'),
]


[documentos]class PosConfig(models.Model): _inherit = 'pos.config' @api.model def _default_out_pos_fiscal_category_id(self): return self.company_id.out_pos_fiscal_category_id @api.model def _default_refund_pos_fiscal_category_id(self): return self.company_id.refund_pos_fiscal_category_id simplified_invoice_limit = fields.Float( string=u'Simplified invoice limit', digits=dp.get_precision('Account'), help=u'Over this amount is not legally posible to create a ' u'simplified invoice', default=3000) simplified_invoice_type = fields.Selection( string=u'Simplified Invoice Type', selection=SIMPLIFIED_INVOICE_TYPE, help=u'Tipo de documento emitido pelo PDV', ) save_identity_automatic = fields.Boolean( string=u'Save new client identity automatic', default=True ) iface_sat_via_proxy = fields.Boolean( string=u'SAT', help=u"Ao utilizar o SAT é necessário ativar esta opção" ) cnpj_homologacao = fields.Char( string=u'CNPJ homologação', size=18 ) ie_homologacao = fields.Char( string=u'IE homologação', size=16 ) cnpj_software_house = fields.Char( string=u'CNPJ software house', size=18 ) sat_ambiente = fields.Selection( string=u'Ambiente SAT', related='company_id.ambiente_sat', store=True ) sat_path = fields.Char( string=u'SAT path' ) numero_caixa = fields.Integer( string=u'Número do Caixa', copy=False ) cod_ativacao = fields.Char( string=u'Código de ativação', ) impressora = fields.Selection( selection=PRINTER, string=u'Impressora', ) printer_params = fields.Char( string=u'Printer parameters' ) fiscal_category_id = fields.Many2one( comodel_name='l10n_br_account.fiscal.category', string=u'Fiscal Category' ) out_pos_fiscal_category_id = fields.Many2one( 'l10n_br_account.fiscal.category', 'Categoria Fiscal de Padrão de Saida do PDV', domain="[('journal_type','=','sale'), ('state', '=', 'approved')," " ('fiscal_type','=','product'), ('type','=','output')]", default=_default_out_pos_fiscal_category_id, ) refund_pos_fiscal_category_id = fields.Many2one( 'l10n_br_account.fiscal.category', string='Categoria Fiscal de Devolução do PDV', domain="[('journal_type','=','sale_refund')," "('state', '=', 'approved'), ('fiscal_type','=','product')," " ('type','=','input')]", default=_default_refund_pos_fiscal_category_id, ) assinatura_sat = fields.Char( 'Assinatura no CFe' ) @api.multi
[documentos] def retornar_dados(self): if self.ambiente_sat == 'homologacao': return (self.cnpj_fabricante, self.ie_fabricante, self.cnpj_software_house) else: return (self.company_id.cnpj_cpf, self.company_id.inscr_est, self.cnpj_software_house or self.company_id.cnpj_software_house)