From d1062142bd03a8c58dc38166da6618c1d12605e6 Mon Sep 17 00:00:00 2001 From: Mustufa Rangwala Date: Fri, 2 Jul 2010 19:30:32 +0530 Subject: [PATCH 1/5] [IMP] Sale_* modules cleaning (under developement) bzr revid: mra@mra-laptop-20100702140032-9cbudkl1ssbi1zb2 --- .../sale_analytic_plans.py | 8 ++--- addons/sale_crm/wizard/crm_make_sale.py | 24 ++++++--------- addons/sale_journal/sale_journal.py | 4 +-- addons/sale_margin/invoice_margin.py | 10 +++---- addons/sale_mrp/sale_mrp.py | 30 +++++++++---------- addons/sale_order_dates/__openerp__.py | 6 ++-- 6 files changed, 36 insertions(+), 46 deletions(-) diff --git a/addons/sale_analytic_plans/sale_analytic_plans.py b/addons/sale_analytic_plans/sale_analytic_plans.py index b55ca670e07..31f1cc9c327 100644 --- a/addons/sale_analytic_plans/sale_analytic_plans.py +++ b/addons/sale_analytic_plans/sale_analytic_plans.py @@ -19,16 +19,12 @@ # ############################################################################## import time -from mx import DateTime -import netsvc from osv import fields, osv -import ir -from tools import config class sale_order_line(osv.osv): - _name='sale.order.line' - _inherit='sale.order.line' + _name = 'sale.order.line' + _inherit = 'sale.order.line' _columns = { 'analytics_id':fields.many2one('account.analytic.plan.instance','Analytic Distribution'), } diff --git a/addons/sale_crm/wizard/crm_make_sale.py b/addons/sale_crm/wizard/crm_make_sale.py index db6bcd832b3..ca0230b1ddf 100644 --- a/addons/sale_crm/wizard/crm_make_sale.py +++ b/addons/sale_crm/wizard/crm_make_sale.py @@ -23,7 +23,6 @@ from osv import fields, osv from tools.translate import _ from mx.DateTime import now - class crm_make_sale(osv.osv_memory): """ Make sale order for crm """ @@ -63,16 +62,14 @@ class crm_make_sale(osv.osv_memory): context = {} mod_obj = self.pool.get('ir.model.data') - - - result = mod_obj._get_id(cr, uid, 'sale', 'view_sales_order_filter') - id = mod_obj.read(cr, uid, result, ['res_id']) - case_obj = self.pool.get('crm.lead') sale_obj = self.pool.get('sale.order') partner_obj = self.pool.get('res.partner') sale_line_obj = self.pool.get('sale.order.line') + result = mod_obj._get_id(cr, uid, 'sale', 'view_sales_order_filter') + id = mod_obj.read(cr, uid, result, ['res_id']) + data = context and context.get('active_ids', []) or [] for make in self.browse(cr, uid, ids): @@ -149,8 +146,6 @@ class crm_make_sale(osv.osv_memory): 'res_id': new_ids and new_ids[0] } - - else: value = { 'domain': str([('id', 'in', new_ids)]), @@ -159,24 +154,23 @@ class crm_make_sale(osv.osv_memory): 'res_model': 'sale.order', 'view_id': False, 'type': 'ir.actions.act_window', - 'res_id':new_ids + 'res_id': new_ids } return value - _columns = { - 'shop_id': fields.many2one('sale.shop', 'Shop', required = True), - 'partner_id': fields.many2one('res.partner', 'Customer', required = True, help = 'Use this partner if there is no partner on the Opportunity'), + 'shop_id': fields.many2one('sale.shop', 'Shop', required=True), + 'partner_id': fields.many2one('res.partner', 'Customer', required=True, help='Use this partner if there is no partner on the Opportunity'), 'picking_policy': fields.selection([('direct','Partial Delivery'), - ('one','Complete Delivery')], 'Picking Policy', required = True), + ('one','Complete Delivery')], 'Picking Policy', required=True), 'product_ids': fields.many2many('product.product', 'product_sale_rel',\ 'sale_id', 'product_id', 'Products'), 'analytic_account': fields.many2one('account.analytic.account', 'Analytic Account'), - 'close': fields.boolean('Close Case', help = 'Check this to close the case after having created the sale order.'), + 'close': fields.boolean('Close Case', help='Check this to close the case after having created the sale order.'), } _defaults = { 'partner_id': _selectPartner, - 'close': lambda *a: 1 + 'close': 1 } crm_make_sale() diff --git a/addons/sale_journal/sale_journal.py b/addons/sale_journal/sale_journal.py index 51f19f3c8eb..4f275505e95 100644 --- a/addons/sale_journal/sale_journal.py +++ b/addons/sale_journal/sale_journal.py @@ -208,7 +208,7 @@ class res_partner(osv.osv): res_partner() class picking(osv.osv): - _inherit="stock.picking" + _inherit = "stock.picking" _columns = { 'journal_id': fields.many2one('sale_journal.picking.journal', 'Journal', domain=[('state','!=', 'done')]), 'sale_journal_id': fields.many2one('sale_journal.sale.journal', 'Sale Journal'), @@ -217,7 +217,7 @@ class picking(osv.osv): picking() class sale(osv.osv): - _inherit="sale.order" + _inherit = "sale.order" _columns = { 'journal_id': fields.many2one('sale_journal.sale.journal', 'Journal', domain=[('state','!=', 'done')]), 'invoice_type_id': fields.many2one('sale_journal.invoice.type', 'Invoice Type') diff --git a/addons/sale_margin/invoice_margin.py b/addons/sale_margin/invoice_margin.py index a00311cbd7d..aad746ce903 100644 --- a/addons/sale_margin/invoice_margin.py +++ b/addons/sale_margin/invoice_margin.py @@ -29,15 +29,15 @@ class account_invoice_line(osv.osv): 'cost_price': fields.float('Cost Price', digits=(16, 2)), } def write(self, cr, uid, ids, vals, context={}): - if vals.get('product_id' , False): - res=self.pool.get('product.product').read(cr, uid, [vals['product_id']], ['standard_price']) - vals['cost_price']=res[0]['standard_price'] + if vals.get('product_id', False): + res = self.pool.get('product.product').read(cr, uid, [vals['product_id']], ['standard_price']) + vals['cost_price'] = res[0]['standard_price'] return super(account_invoice_line, self).write(cr, uid, ids, vals, context) def create(self, cr, uid, vals, context={}): if vals.get('product_id',False): - res=self.pool.get('product.product').read(cr, uid, [vals['product_id']], ['standard_price']) - vals['cost_price']=res[0]['standard_price'] + res = self.pool.get('product.product').read(cr, uid, [vals['product_id']], ['standard_price']) + vals['cost_price'] = res[0]['standard_price'] return super(account_invoice_line, self).create(cr, uid, vals, context) account_invoice_line() diff --git a/addons/sale_mrp/sale_mrp.py b/addons/sale_mrp/sale_mrp.py index 4f52cb7dd9b..b5e91bc76ac 100644 --- a/addons/sale_mrp/sale_mrp.py +++ b/addons/sale_mrp/sale_mrp.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- ############################################################################## # -# OpenERP, Open Source Management Solution +# OpenERP, Open Source Management Solution # Copyright (C) 2004-2010 Tiny SPRL (). All Rights Reserved # $Id$ # @@ -24,7 +24,7 @@ from osv import osv, fields class mrp_production(osv.osv): _inherit = 'mrp.production' - + def _ref_calc(self, cr, uid, ids, field_names=None, arg=False, context={}): """ Finds reference of sale order for production order. @param field_names: Names of fields. @@ -32,48 +32,48 @@ class mrp_production(osv.osv): @return: Dictionary of values. """ if not field_names: - field_names=[] + field_names = [] res = {} for id in ids: res[id] = {}.fromkeys(field_names, False) - for f in field_names: - field_name = False - if f=='sale_name': + for f in field_names: + field_name = False + if f == 'sale_name': field_name = 'name' if f=='sale_ref': - field_name = 'client_order_ref' + field_name = 'client_order_ref' for key, value in self._get_sale_ref(cr, uid, ids, field_name).items(): res[key][f] = value return res - + def _get_sale_ref(self, cr, uid, ids, field_name=False): move_obj=self.pool.get('stock.move') - + def get_parent_move(move_id): move = move_obj.browse(cr, uid, move_id) if move.move_dest_id: return get_parent_move(move.move_dest_id.id) return move_id - - productions = self.read(cr, uid, ids, ['id','move_prod_id']) + + productions = self.read(cr, uid, ids, ['id','move_prod_id']) res={} for production in productions: res[production['id']] = False if production.get('move_prod_id',False): parent_move_line = get_parent_move(production['move_prod_id'][0]) if parent_move_line: - move = move_obj.browse(cr,uid,parent_move_line) + move = move_obj.browse(cr,uid,parent_move_line) if field_name == 'name': res[production['id']] = move.sale_line_id and move.sale_line_id.order_id.name or False if field_name=='client_order_ref': res[production['id']] = move.sale_line_id and move.sale_line_id.order_id.client_order_ref or False return res - + _columns = { 'sale_name': fields.function(_ref_calc, method=True, multi='sale_name', type='char', string='Sale Name', help='Indicate the name of sale order.'), 'sale_ref': fields.function(_ref_calc, method=True, multi='sale_ref', type='char', string='Sale Reference', help='Indicate the Customer Reference from sale order.'), } - + mrp_production() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file diff --git a/addons/sale_order_dates/__openerp__.py b/addons/sale_order_dates/__openerp__.py index 0f7a56fba20..2fa7fad6ca1 100644 --- a/addons/sale_order_dates/__openerp__.py +++ b/addons/sale_order_dates/__openerp__.py @@ -34,11 +34,11 @@ Add commitment, requested and effective dates on the sale order. ], 'update_xml': [ - 'sale_view.xml', + 'sale_order_dates_view.xml', ], 'demo_xml': [ - ], - 'test': [], + ], + 'test': [], 'installable': True, 'active': False, } From d67536393050fb370a33c31cbca414cf48d1e735 Mon Sep 17 00:00:00 2001 From: "pap (openerp)" Date: Fri, 2 Jul 2010 19:39:05 +0530 Subject: [PATCH 2/5] [IMP]: clean code in account_analytic_analysis, account_analytic_default and account_analytic_plans bzr revid: pap@tinyerp.co.in-20100702140905-uud0pzhb88jmb48n --- addons/account/__openerp__.py | 2 +- addons/account/project/project_view.xml | 2 - .../account_analytic_analysis/__openerp__.py | 42 +++++++++---------- .../account_analytic_analysis.py | 36 ++++++++-------- .../account_analytic_analysis_menu.xml | 12 ------ .../account_analytic_analysis_view.xml | 9 +--- addons/account_analytic_default/__init__.py | 1 + .../account_analytic_default/__openerp__.py | 18 ++++---- .../account_analytic_default.py | 15 +++---- .../account_analytic_default_view.xml | 5 +-- addons/account_analytic_plans/__init__.py | 1 + addons/account_analytic_plans/__openerp__.py | 19 +++++---- .../account_analytic_plans.py | 38 ++++++++--------- .../account_analytic_plans_report.xml | 7 ---- .../account_analytic_plans_view.xml | 17 ++++---- .../account_analytic_plans/report/__init__.py | 1 + .../report/crossovered_analytic.py | 22 +++++----- .../account_analytic_plans/wizard/__init__.py | 1 + .../account_crossovered_analytic_view.xml | 24 ++++++----- 19 files changed, 121 insertions(+), 151 deletions(-) diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py index fe3f93b492c..73ffe59f4f6 100644 --- a/addons/account/__openerp__.py +++ b/addons/account/__openerp__.py @@ -21,7 +21,6 @@ { "name" : "Accounting and Financial Management", "version" : "1.1", - "depends" : ["product", "analytic", "process","board"], "author" : "Tiny", "category": 'Generic Modules/Accounting', "description": """Financial and accounting module that covers: @@ -42,6 +41,7 @@ The processes like maintaining of general ledger is done through the defined fin grouping is maintained through journal) for a particular financial year and for preparation of vouchers there is a module named account_vouchers """, + "depends" : ["product", "analytic", "process","board"], 'website': 'http://www.openerp.com', 'init_xml': [], 'update_xml': [ diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml index 53ba5453742..f36baf8a07d 100644 --- a/addons/account/project/project_view.xml +++ b/addons/account/project/project_view.xml @@ -207,7 +207,6 @@ - @@ -342,7 +341,6 @@ account.analytic.line form tree,form - [('journal_id','=',active_id)] @@ -14,17 +13,6 @@ - - All Analytic Accounts - account.analytic.account - form - tree,form,graph - - - [] - - - Overpassed Accounts account.analytic.account diff --git a/addons/account_analytic_analysis/account_analytic_analysis_view.xml b/addons/account_analytic_analysis/account_analytic_analysis_view.xml index 64c71c1a2e2..a82f3b1b5c9 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_view.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_view.xml @@ -24,7 +24,6 @@ - @@ -38,13 +37,12 @@ - + - @@ -81,20 +79,18 @@ + account.analytic.account.tree account.analytic.account - tree - - @@ -110,7 +106,6 @@ - diff --git a/addons/account_analytic_default/__init__.py b/addons/account_analytic_default/__init__.py index 5206ec18324..1734f02dc57 100644 --- a/addons/account_analytic_default/__init__.py +++ b/addons/account_analytic_default/__init__.py @@ -20,4 +20,5 @@ ############################################################################## import account_analytic_default + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_default/__openerp__.py b/addons/account_analytic_default/__openerp__.py index 9c3982990b3..537721a112e 100644 --- a/addons/account_analytic_default/__openerp__.py +++ b/addons/account_analytic_default/__openerp__.py @@ -19,11 +19,10 @@ # ############################################################################## - { - 'name': 'Account Analytic Default', - 'version': '1.0', - 'category': 'Generic Modules/Accounting', + 'name' : 'Account Analytic Default', + 'version' : '1.0', + 'category' : 'Generic Modules/Accounting', 'description': """ Allows to automatically select analytic accounts based on criterions: * Product @@ -32,14 +31,15 @@ Allows to automatically select analytic accounts based on criterions: * Company * Date """, - 'author': 'Tiny', - 'website': 'http://www.openerp.com', - 'depends': ['account', 'sale'], - 'init_xml': [], + 'author' : 'Tiny', + 'website' : 'http://www.openerp.com', + 'depends' : ['account', 'sale'], + 'init_xml' : [], 'update_xml': ['security/ir.model.access.csv', 'account_analytic_default_view.xml'], - 'demo_xml': [], + 'demo_xml' : [], 'installable': True, 'active': False, 'certificate': '0074229833581', } + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_default/account_analytic_default.py b/addons/account_analytic_default/account_analytic_default.py index 1db16ca8787..a520cc9acfc 100644 --- a/addons/account_analytic_default/account_analytic_default.py +++ b/addons/account_analytic_default/account_analytic_default.py @@ -19,10 +19,10 @@ # ############################################################################## -from osv import fields,osv -from osv import orm import time +from osv import fields,osv + class account_analytic_default(osv.osv): _name = 'account.analytic.default' _description = 'Analytic Distribution' @@ -38,7 +38,7 @@ class account_analytic_default(osv.osv): 'date_start': fields.date('Start Date'), 'date_stop': fields.date('End Date'), } - def account_get(self, cr, uid, product_id=None, partner_id=None, user_id=None, date=None, context={}): + def account_get(self, cr, uid, product_id=None, partner_id=None, user_id=None, date=None, context=None): domain = [] if product_id: domain += ['|',('product_id','=',product_id)] @@ -54,7 +54,9 @@ class account_analytic_default(osv.osv): domain += ['|',('date_stop','>=',date),('date_stop','=',False)] best_index = -1 res = False + print "domain---",domain for rec in self.browse(cr, uid, self.search(cr, uid, domain, context=context), context=context): + print "innn for--",rec index = 0 if rec.product_id: index+=1 if rec.partner_id: index+=1 @@ -64,6 +66,7 @@ class account_analytic_default(osv.osv): if index>best_index: res = rec best_index = index + print "res--",res return res account_analytic_default() @@ -71,7 +74,7 @@ class account_invoice_line(osv.osv): _inherit = 'account.invoice.line' _description = 'Invoice Line' - def product_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition=False, price_unit=False, address_invoice_id=False, currency_id=False, context={}): + def product_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition=False, price_unit=False, address_invoice_id=False, currency_id=False, context=None): res_prod = super(account_invoice_line,self).product_id_change(cr, uid, ids, product, uom, qty, name, type, partner_id, fposition, price_unit, address_invoice_id, currency_id=currency_id, context=context) rec = self.pool.get('account.analytic.default').account_get(cr, uid, product, partner_id, uid, time.strftime('%Y-%m-%d'), context) if rec: @@ -101,7 +104,7 @@ class sale_order_line(osv.osv): _inherit = 'sale.order.line' # Method overridden to set the analytic account by default on criterion match - def invoice_line_create(self, cr, uid, ids, context={}): + def invoice_line_create(self, cr, uid, ids, context=None): create_ids = super(sale_order_line,self).invoice_line_create(cr, uid, ids, context) if not ids: return create_ids @@ -117,6 +120,4 @@ class sale_order_line(osv.osv): sale_order_line() - - # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_default/account_analytic_default_view.xml b/addons/account_analytic_default/account_analytic_default_view.xml index a15ec5df775..d49fa04dffb 100644 --- a/addons/account_analytic_default/account_analytic_default_view.xml +++ b/addons/account_analytic_default/account_analytic_default_view.xml @@ -52,6 +52,7 @@ + Analytic Defaults account.analytic.default @@ -59,10 +60,6 @@ tree,form - - - - - - diff --git a/addons/account_analytic_plans/account_analytic_plans_view.xml b/addons/account_analytic_plans/account_analytic_plans_view.xml index e93e3cd18a8..d5085b009da 100644 --- a/addons/account_analytic_plans/account_analytic_plans_view.xml +++ b/addons/account_analytic_plans/account_analytic_plans_view.xml @@ -89,7 +89,11 @@ - + +
+ + + @@ -124,16 +128,11 @@ - - - - - - + account.analytic.plan.instance.line.form account.analytic.plan.instance.line @@ -234,7 +233,7 @@ - + account.analytic.default.form.plans diff --git a/addons/account_analytic_plans/report/__init__.py b/addons/account_analytic_plans/report/__init__.py index 512ea3239d2..2d401a6f1d8 100644 --- a/addons/account_analytic_plans/report/__init__.py +++ b/addons/account_analytic_plans/report/__init__.py @@ -20,5 +20,6 @@ ############################################################################## import crossovered_analytic + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_plans/report/crossovered_analytic.py b/addons/account_analytic_plans/report/crossovered_analytic.py index 8f5d4b33317..e0414e4c954 100644 --- a/addons/account_analytic_plans/report/crossovered_analytic.py +++ b/addons/account_analytic_plans/report/crossovered_analytic.py @@ -19,20 +19,20 @@ # ############################################################################## -import pooler import time + from report import report_sxw class crossovered_analytic(report_sxw.rml_parse): def __init__(self, cr, uid, name, context): - super(crossovered_analytic, self).__init__(cr, uid, name, context=context) + super(crossovered_analytic, self).__init__(cr, uid, name, context = context) self.localcontext.update( { 'time': time, 'lines': self._lines, 'ref_lines' : self._ref_lines, 'find_children':self.find_children, }) - self.base_amount=0.00 + self.base_amount = 0.00 def find_children(self,ref_ids): to_return_ids = [] @@ -153,23 +153,23 @@ class crossovered_analytic(report_sxw.rml_parse): if not form['empty_line']: res.append(result) else: - result={} - res=[] - result['id']=acc_id + result = {} + res = [] + result['id'] = acc_id data_account = acc_pool.browse(self.cr,self.uid,acc_id) - result['acc_name']=data_account.name + result['acc_name'] = data_account.name result['code'] = data_account.code - result['amt']=result['qty']=result['perc']=0.00 + result['amt'] = result['qty'] = result['perc'] = 0.00 if not form['empty_line']: res.append(result) for item in res: - obj_acc=acc_pool.name_get(self.cr,self.uid,[item['id']]) - item['acc_name']=obj_acc[0][1] + obj_acc = acc_pool.name_get(self.cr,self.uid,[item['id']]) + item['acc_name'] = obj_acc[0][1] final.append(item) return final -report_sxw.report_sxw('report.account.analytic.account.crossovered.analytic', 'account.analytic.account', 'addons/account_analytic_plans/report/crossovered_analytic.rml',parser=crossovered_analytic, header=False) +report_sxw.report_sxw('report.account.analytic.account.crossovered.analytic', 'account.analytic.account', 'addons/account_analytic_plans/report/crossovered_analytic.rml',parser = crossovered_analytic, header = False) # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_plans/wizard/__init__.py b/addons/account_analytic_plans/wizard/__init__.py index c91a0251b33..f5c73701ae1 100644 --- a/addons/account_analytic_plans/wizard/__init__.py +++ b/addons/account_analytic_plans/wizard/__init__.py @@ -21,5 +21,6 @@ import analytic_plan_create_model import account_crossovered_analytic + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_plans/wizard/account_crossovered_analytic_view.xml b/addons/account_analytic_plans/wizard/account_crossovered_analytic_view.xml index 8c860169f56..5b20c2a6448 100644 --- a/addons/account_analytic_plans/wizard/account_crossovered_analytic_view.xml +++ b/addons/account_analytic_plans/wizard/account_crossovered_analytic_view.xml @@ -8,17 +8,19 @@ form
- - - - - - - - - -