[IMP] Account Payment: Improve the module (remove payment.type object, change the menus, etc) (still need some improvement from piratpad remaining to do)

bzr revid: mra@mra-laptop-20100906033801-9kxjpzkhhiltcpp4
This commit is contained in:
PSI(OpenERP) 2010-09-06 09:08:01 +05:30 committed by Mustufa Rangwala
parent e4831cf51b
commit a4a2627c1b
4 changed files with 15 additions and 65 deletions

View File

@ -23,20 +23,6 @@ import time
from osv import osv, fields
import netsvc
class payment_type(osv.osv):
_name= 'payment.type'
_description= 'Payment Type'
_columns= {
'name': fields.char('Name', size=64, required=True, help='Payment Type'),
'code': fields.char('Code', size=64, required=True, help='Specifies the Code for Payment Type'),
'suitable_bank_types': fields.many2many('res.partner.bank.type',
'bank_type_payment_type_rel',
'pay_type_id', 'bank_type_id',
'Suitable bank types')
}
payment_type()
class payment_mode(osv.osv):
_name= 'payment.mode'
_description= 'Payment Mode'
@ -47,11 +33,11 @@ class payment_mode(osv.osv):
'journal': fields.many2one('account.journal', 'Journal', required=True,
domain=[('type', '=', 'cash')], help='Cash Journal for the Payment Mode'),
'company_id': fields.many2one('res.company', 'Company', required=True),
'type': fields.many2one('payment.type', 'Payment type', required=True, help='Select the Payment Type for the Payment Mode.'),
}
_defaults = {
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id
}
def suitable_bank_types(self, cr, uid, payment_code=None, context={}):
"""Return the codes of the bank type that are suitable
for the given payment type code"""
@ -59,9 +45,8 @@ class payment_mode(osv.osv):
return []
cr.execute(""" select t.code
from res_partner_bank_type t
join bank_type_payment_type_rel r on (r.bank_type_id = t.id)
join payment_type pt on (r.pay_type_id = pt.id)
join payment_mode pm on (pm.type = pt.id)
join res_partner_bank pb on (t.id = pb.bank)
join payment_mode pm on (pm.bank_id = pb.id)
where pm.id = %s """, [payment_code])
return [x[0] for x in cr.fetchall()]
@ -419,7 +404,6 @@ class payment_line(osv.osv):
if bank.state in bank_type:
data['bank_id'] = bank.id
break
return {'value': data}
def fields_get(self, cr, uid, fields=None, context=None):

View File

@ -40,27 +40,6 @@
<menuitem id="menu_main" name="Payment" parent="account.menu_finance" sequence="6"/>
<record id="view_payment_type_form" model="ir.ui.view">
<field name="name">payment.type.form</field>
<field name="model">payment.type</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Payment Type">
<field name="name"/>
<field name="code"/>
<separator string="Suitable Bank Types" colspan="4"/>
<field name="suitable_bank_types" nolabel="1" colspan="4"/>
</form>
</field>
</record>
<record id="action_payment_type_tree" model="ir.actions.act_window">
<field name="name">Payment Type</field>
<field name="res_model">payment.type</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<record id="view_payment_mode_tree" model="ir.ui.view">
<field name="name">payment.mode.tree</field>
<field name="model">payment.mode</field>
@ -69,7 +48,7 @@
<tree string="Payment Mode">
<field name="name"/>
<field name="journal"/>
<field name="company_id"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
</field>
</record>
@ -80,10 +59,9 @@
<field name="arch" type="xml">
<form string="Payment Mode">
<field name="name" select="1"/>
<field name="type"/>
<field name="journal"/>
<field name="bank_id"/>
<field name="company_id" select="1" widget='selection'/>
<field name="company_id" select="1" widget='selection' groups="base.group_multi_company"/>
</form>
</field>
</record>
@ -94,11 +72,7 @@
<field name="view_mode">tree,form</field>
</record>
<menuitem id="next_id_44" name="Payment" parent="account.menu_finance_configuration" groups="base.group_system"/>
<menuitem action="action_payment_mode_form" id="menu_action_payment_mode_form" parent="next_id_44"/>
<menuitem action="action_payment_type_tree" id="menu_action_paymen_type" parent="next_id_44"/>
<menuitem action="action_payment_mode_form" id="menu_action_payment_mode_form" parent="account.menu_configuration_misc"/>
<record id="view_payment_order_form" model="ir.ui.view">
<field name="name">payment.order.form</field>
@ -106,12 +80,14 @@
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Payment order">
<field name="reference"/>
<field name="mode"/>
<field name="date_prefered"/>
<field name="date_scheduled" select="1" attrs="{'readonly':[('date_prefered','!=','fixed')]}" />
<field name="user_id"/>
<button colspan="2" name="%(action_create_payment_order)d" string="Select Invoices to Pay" type="action" attrs="{'invisible':[('state','=','done')]}" icon="gtk-find"/>
<group col="6" colspan="4">
<field name="reference"/>
<field name="mode" widget='selection'/>
<field name="date_prefered"/>
<field name="date_scheduled" select="1" attrs="{'readonly':[('date_prefered','!=','fixed')]}" />
<field name="user_id"/>
<button colspan="2" name="%(action_create_payment_order)d" string="Select Invoices to Pay" type="action" attrs="{'invisible':[('state','=','done')]}" icon="gtk-find"/>
</group>
<field name="line_ids" colspan="4" widget="one2many_list" nolabel="1">
<form string="Payment Line">
<notebook>

View File

@ -1,5 +1,4 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_payment_type","payment.type","model_payment_type","group_account_payment",1,1,1,1
"access_payment_mode","payment.mode","model_payment_mode","group_account_payment",1,1,1,1
"access_payment_order","payment.order","model_payment_order","group_account_payment",1,1,1,1
"access_payment_line","payment.line","model_payment_line","group_account_payment",1,1,1,1
@ -10,6 +9,5 @@
"access_payment_order_manager","payment.order manager","model_payment_order","account.group_account_manager",1,0,0,0
"access_payment_order_system","payment.order system","model_payment_order","base.group_system",1,0,0,0
"access_payment_mode_system","payment.mode system","model_payment_mode","base.group_system",1,1,1,1
"access_payment_type_system","payment.type system","model_payment_type","base.group_system",1,1,1,1
"access_payment_order_invoice","payment.order invoice","model_payment_order","account.group_account_invoice",1,1,1,1
"access_payment_line_invoice","payment.line invoice","model_payment_line","account.group_account_invoice",1,1,1,1

1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
access_payment_type payment.type model_payment_type group_account_payment 1 1 1 1
2 access_payment_mode payment.mode model_payment_mode group_account_payment 1 1 1 1
3 access_payment_order payment.order model_payment_order group_account_payment 1 1 1 1
4 access_payment_line payment.line model_payment_line group_account_payment 1 1 1 1
9 access_payment_order_manager payment.order manager model_payment_order account.group_account_manager 1 0 0 0
10 access_payment_order_system payment.order system model_payment_order base.group_system 1 0 0 0
11 access_payment_mode_system payment.mode system model_payment_mode base.group_system 1 1 1 1
access_payment_type_system payment.type system model_payment_type base.group_system 1 1 1 1
12 access_payment_order_invoice payment.order invoice model_payment_order account.group_account_invoice 1 1 1 1
13 access_payment_line_invoice payment.line invoice model_payment_line account.group_account_invoice 1 1 1 1

View File

@ -1,12 +1,5 @@
-
In order to test account_payment in OpenERP I create a new record Type.
-
!record {model: payment.type, id: payment_type_t0}:
code: T0
name: TestType
-
I created a new Bank Record
In order to test account_payment in OpenERP I created a new Bank Record
-
Creating a res.partner.bank record
-
@ -26,7 +19,6 @@
bank_id: res_partner_bank_0
journal: account.bank_journal
name: TestMode
type: payment_type_t0
-
I created a Supplier Invoice