[IMP]added icon,add search view,update list view,made fields readonly.

bzr revid: kbh@tinyerp.com-20120611111055-kc3k2x8kwx6srdgw
This commit is contained in:
Khushboo Bhatt (Open ERP)
2012-06-11 16:40:55 +05:30
parent 8827fee542
commit fb53de6357
2 changed files with 58 additions and 19 deletions
+19 -15
View File
@@ -102,26 +102,32 @@ class payroll_advice(osv.osv):
_name = 'hr.payroll.advice'
_description = 'Bank Advice Note'
_columns = {
'name':fields.char('Name', size=2048, required=True, readonly=False),
'name':fields.char('Name', size=16, readonly=True, required=True, states={'draft': [('readonly', False)]},),
'note': fields.text('Description'),
'date': fields.date('Date'),
'date': fields.date('Date', readonly=True, states={'draft': [('readonly', False)]},),
'state':fields.selection([
('draft','Draft Sheet'),
('confirm','Confirm Sheet'),
('cancel','Reject'),
],'State', select=True, readonly=True),
'number':fields.char('Number', size=64, required=False, readonly=True),
'line_ids':fields.one2many('hr.payroll.advice.line', 'advice_id', 'Employee Salary', required=False),
'chaque_nos':fields.char('Chaque Nos', size=256, required=False, readonly=False),
'company_id':fields.many2one('res.company', 'Company', required=False),
'bank_id':fields.many2one('res.bank', 'Bank', required=False, help="Select the Bank Address from whcih the salary is going to be paid"),
'number':fields.char('Number', size=16, readonly=True),
'line_ids':fields.one2many('hr.payroll.advice.line', 'advice_id', 'Employee Salary'),
'chaque_nos':fields.char('Chaque Nos', size=256),
'company_id':fields.many2one('res.company', 'Company',required=True),
'bank_id':fields.many2one('res.bank', 'Bank', readonly=True, states={'draft': [('readonly', False)]}, help="Select the Bank Address from whcih the salary is going to be paid"),
}
def _get_bank(self, cr, uid, context=None):
bank_ids = self.pool.get('res.bank').search(cr, uid, [('name', '=', 'Reserve')])
return bank_ids and bank_ids[0] or False
_defaults = {
'date': lambda *a: time.strftime('%Y-%m-%d'),
'state': lambda *a: 'draft',
'company_id': lambda self, cr, uid, context: \
self.pool.get('res.users').browse(cr, uid, uid,
context=context).company_id.id,
'bank_id': _get_bank
}
def compute_advice(self, cr, uid, ids, context=None):
@@ -157,16 +163,13 @@ class payroll_advice(osv.osv):
self.write(cr, uid, ids, {'number':number}, context=context)
def confirm_sheet(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'confirm'}, context=context)
return True
return self.write(cr, uid, ids, {'state':'confirm'}, context=context)
def set_to_draft(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'draft'}, context=context)
return True
return self.write(cr, uid, ids, {'state':'draft'}, context=context)
def cancel_sheet(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'cancel'}, context=context)
return True
return self.write(cr, uid, ids, {'state':'cancel'}, context=context)
def onchange_company_id(self, cr, uid, ids, company_id=False, context=None):
res = {}
@@ -188,10 +191,11 @@ class payroll_advice_line(osv.osv):
_name = 'hr.payroll.advice.line'
_description = 'Bank Advice Lines'
_columns = {
'advice_id':fields.many2one('hr.payroll.advice', 'Bank Advice', required=False),
'name':fields.char('Bank Account No.', size=64, required=True, readonly=False),
'advice_id':fields.many2one('hr.payroll.advice', 'Bank Advice',),
'name':fields.char('Bank Account No.', size=16, required=True),
'employee_id':fields.many2one('hr.employee', 'Employee', required=True),
'bysal': fields.float('By Salary', digits_compute=dp.get_precision('Payroll')),
'company_id': fields.related('advice_id','company_id', type='many2one', required=True,relation='res.company', string='Company'),
}
payroll_advice_line()
@@ -55,10 +55,16 @@
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Bank Advice">
<field name="date" select="1"/>
<field name="number" select="1"/>
<field name="name" select="1"/>
<field name="date" select="1"/>
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
<field name="bank_id" select="1"/>
<field name="state"/>
<button name="compute_advice" string="Compute Advice" icon="terp-document-new" states="draft" type="object"/>
<button name="cancel_sheet" string="Cancel Sheet" states="draft" icon="gtk-cancel" type="object"/>
<button name="confirm_sheet" icon="gtk-apply" string="Confirm Sheet" states="draft" type="object"/>
<button name="set_to_draft" string="Set to Draft" icon="gtk-convert" states="cancel,confirm" type="object"/>
</tree>
</field>
</record>
@@ -69,7 +75,7 @@
<field name="arch" type="xml">
<form string="Bank Advice" layout="manual">
<div class="oe_form_topbar">
<button name="compute_advice" string="Compute Advice" states="draft" type="object"/>
<button name="compute_advice" string="Compute Advice" icon="terp-document-new" states="draft" type="object"/>
<button name="cancel_sheet" string="Cancel Sheet" states="draft" icon="gtk-cancel" type="object"/>
<button name="confirm_sheet" icon="gtk-apply" string="Confirm Sheet" states="draft" type="object"/>
<button name="set_to_draft" string="Set to Draft" icon="gtk-convert" states="cancel,confirm" type="object"/>
@@ -81,7 +87,7 @@
<group col="6" colspan="4">
<field name="name" colspan="4" select="1"/>
<field name="number" select="1"/>
<field name="bank_id"/>
<field name="bank_id" select="1"/>
<field name="date" select="1"/>
</group>
<notebook colspan="4">
@@ -91,10 +97,11 @@
<field name="employee_id" on_change="onchange_employee_id(parent.date, employee_id)"/>
<field name="name"/>
<field name="bysal"/>
<field name="company_id" />
</tree>
</field>
</page>
<page string="Letter Content">
<page string="Other Information">
<group colspan="4" col="6">
<field name="company_id" on_change="onchange_company_id(company_id)" groups="base.group_multi_company" widget="selection"/>
<field name="chaque_nos"/>
@@ -107,12 +114,40 @@
</field>
</record>
<record id="view_hr_payroll_advice_filter" model="ir.ui.view">
<field name="name">hr.payroll.advice.select</field>
<field name="model">hr.payroll.advice</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Payment advice">
<group>
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Advice"/>
<filter icon="terp-camera_test" string="Done" domain="[('state','=','confirm')]" help="Done Advice"/>
<separator orientation="vertical"/>
<field name="date"/>
<field name="number"/>
<field name="name"/>
<field name="bank_id"/>
</group>
<newline/>
<group expand="0" string="Group By...">
<filter string="Bank" name="bank_id" icon="terp-folder-orange" context="{'group_by':'bank_id'}"/>
<separator orientation="vertical" />
<filter string="Companies" name="company_id" groups="base.group_multi_company" icon="terp-go-home" context="{'group_by':'company_id'}"/>
<separator orientation="vertical"/>
<filter string="States" name="state" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
</group>
</search>
</field>
</record>
<record id="action_view_hr_bank_advice_tree" model="ir.actions.act_window">
<field name="name">Payment Advice</field>
<field name="res_model">hr.payroll.advice</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_hr_bank_advice_tree"/>
<field name="search_view_id" ref="view_hr_payroll_advice_filter"/>
</record>
<menuitem
action="action_view_hr_bank_advice_tree"