Ver Fonte

correciones

Rodney Enciso Arias há 7 anos atrás
commit
5b7021c610
6 ficheiros alterados com 151 adições e 0 exclusões
  1. 3 0
      __init__.py
  2. BIN
      __init__.pyc
  3. 21 0
      __openerp__.py
  4. 33 0
      payment_method_filter.py
  5. BIN
      payment_method_filter.pyc
  6. 94 0
      views/payment_method_filter.xml

+ 3 - 0
__init__.py

@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+# import controllers
+import payment_method_filter

BIN
__init__.pyc


+ 21 - 0
__openerp__.py

@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+{
+    'name': "payment_method_filter",
+
+    'summary': """
+        Filtra los metodos de pago, de acuerdo a las sucursales""",
+
+    'description': """
+        Filtra los metodos de pago, de acuerdo a las sucursales.
+        Depende del modulo 'multi_store' de ADHOC SA.
+    """,
+
+    'author': "Eiru Software / Rodney Enciso Arias",
+    'website': "http://www.eiru.com.py",
+    'category': 'Accounting',
+    'version': '0.2',
+    'depends': ['base','account_voucher','multi_store'],
+    'data': [
+        'views/payment_method_filter.xml',
+    ],
+}

+ 33 - 0
payment_method_filter.py

@@ -0,0 +1,33 @@
+# -*- coding: utf-8 -*-
+
+from openerp import models, fields, api
+
+class PaymentMethodFilter(models.Model):
+    _inherit = 'account.voucher'
+
+    store_id = fields.Many2one('res.store', 'Current Store', default=lambda self: self.env.user.store_id)
+
+class InvoiceDefaultMethod(models.Model):
+    _inherit = 'res.store'
+
+    out_invoice_id = fields.Many2one('account.journal', 'Out Invoice')
+    out_refund_id = fields.Many2one('account.journal', 'Out Refund Invoice')
+    in_invoice_id = fields.Many2one('account.journal', 'In Invoice')
+    in_refund_id = fields.Many2one('account.journal', 'In refund Invoice')
+
+class AccountInvoiceMethod(models.Model):
+	_inherit = 'account.invoice'
+	
+	store_id = fields.Many2one('res.store', 'Current Store')
+
+	@api.one
+	@api.onchange('store_id')
+	def onchange_store_id(self):
+	    	if self.type == 'out_invoice':
+	        	self.journal_id = self.store_id.out_invoice_id.id
+	        if self.type == 'out_refund':
+	        	self.journal_id = self.store_id.out_refund_id.id
+	        if self.type == 'in_invoice':
+	        	self.journal_id = self.store_id.in_invoice_id.id
+	        if self.type == 'in_refund':
+	        	self.journal_id = self.store_id.in_refund_id.id

BIN
payment_method_filter.pyc


+ 94 - 0
views/payment_method_filter.xml

@@ -0,0 +1,94 @@
+<openerp>
+    <data>
+        <record model="ir.ui.view" id="payment_method_filter">
+            <field name="name">payment.method.filter</field>
+            <field name="model">account.voucher</field>
+            <field name="inherit_id" ref="account_voucher.view_vendor_receipt_dialog_form"/>
+            <field name="arch" type="xml">
+                <field name="journal_id" position="replace">
+                    <field name="journal_id" domain="[('type','in',['bank','cash']), ('store_ids','=',store_id)]" invisible="context.get('line_type', False)" widget="selection" on_change="onchange_journal(journal_id, line_cr_ids, False, partner_id, date, amount, type, company_id, context)" string="Payment Method"/>
+                </field>
+                <field name="journal_id" position="before">
+                    <field name="store_id" string="Sucursal" widget="selection" readonly="1"/>
+                </field>
+            </field>
+        </record>
+
+        <record model="ir.ui.view" id="view_res_store_form_journal">
+            <field name="name">payment_method_filter.view.res.store.form.journal</field>
+            <field name="model">res.store</field>
+            <field name="inherit_id" ref="multi_store.view_res_store_form"/>
+            <field name="arch" type="xml">
+                <field name="name" position="after">
+                    <field name="out_invoice_id" domain="[('type','=',['sale'])]" string="Factura de venta"/>
+                </field>
+                <field name="out_invoice_id" position="after">
+                    <field name="out_refund_id" domain="[('type','=',['sale_refund'])]" string="Nota de Credito de Venta"/>
+                </field>
+                <field name="out_refund_id" position="after">
+                    <field name="in_invoice_id" domain="[('type','=',['purchase'])]" string="Factura de Compra"/>
+                </field>
+                <field name="in_invoice_id" position="after">
+                    <field name="in_refund_id" domain="[('type','=',['purchase_refund'])]" string="Nota de Credito de Compra"/>
+                </field>
+                <field name="journal_ids" position="replace">
+                    <field name="journal_ids" domain="[('type','=',['bank','cash'])]"/>
+                </field>
+            </field>
+        </record>
+        <record model="ir.ui.view" id="invoice_form_journal">
+            <field name="name">payment_method_filter.invoice.form.journal</field>
+            <field name="model">account.invoice</field>
+            <field name="inherit_id" ref="account.invoice_form"/>
+            <field name="arch" type="xml">
+                <field name="fiscal_position" position="after">
+                    <field name="store_id" string="Sucursal" widget="selection" attrs= "{'invisible':[('state', '!=', 'draft')], 'required':[('state', '=', 'draft')]} " />
+                </field>
+                <!--<field name="journal_id" position="replace">
+                    <field name="journal_id" groups="account.group_account_user" on_change="onchange_journal_id(journal_id)" options="{'no_create': True}" readonly="1"/>
+                </field>-->
+                <field name="fiscal_position" position="replace">
+                    <field name="fiscal_position" options="{'no_create': True}" invisible="1"/>
+                </field>
+                <field name="account_id" position="replace">
+                    <field domain="[('company_id', '=', company_id),('type','=', 'receivable')]" name="account_id" groups="account.group_account_user" invisible="1"/>
+                </field>
+                <xpath expr="//field[@name='invoice_line']/tree//field[@name='account_id']" position="attributes">
+                    <attribute name="invisible">1</attribute>
+                </xpath>
+            </field>
+        </record>
+        <record model="ir.ui.view" id="invoice_supplier_form_journal">
+            <field name="name">payment_method_filter.invoice.supplier.form.journal</field>
+            <field name="model">account.invoice</field>
+            <field name="inherit_id" ref="account.invoice_supplier_form"/>
+            <field name="arch" type="xml">
+                <field name="fiscal_position" position="after">
+                    <field name="store_id" string="Sucursal" widget="selection" attrs= "{'invisible':[('state', '!=', 'draft')], 'required':[('state', '=', 'draft')]} "/>
+                </field>
+                <!--<field name="journal_id" position="replace">
+                    <field name="journal_id" groups="account.group_account_user" on_change="onchange_journal_id(journal_id)" options="{'no_create': True}" readonly="1"/>
+                </field>-->
+
+                <field name="account_id" position="replace">
+                    <field domain="[('company_id', '=', company_id),('type','=', 'receivable')]" name="account_id" groups="account.group_account_user" invisible="1"/>
+                </field>
+                <xpath expr="//field[@name='invoice_line']/tree//field[@name='account_id']" position="attributes">
+                    <attribute name="invisible">1</attribute>
+                </xpath>
+            </field>
+        </record>
+         <record model="ir.ui.view" id="payment_method_filter_usability">
+            <field name="name">payment.method.filter.usability</field>
+            <field name="model">account.voucher</field>
+            <field name="inherit_id" ref="payment_method_filter.payment_method_filter"/>
+            <field name="groups_id" eval="[(6, 0, [ref('multi_store.group_multi_store')])]"/>
+            <field name="arch" type="xml">
+                <field name="store_id" position="attributes">
+                   <attribute name="readonly">0</attribute>
+                   <attribute name="required">1</attribute>
+                </field>
+            </field>
+        </record>
+    </data>
+</openerp>