diff --git a/addons/point_of_sale/__openerp__.py b/addons/point_of_sale/__openerp__.py index 68d3bd85d8d..c9015d4be28 100644 --- a/addons/point_of_sale/__openerp__.py +++ b/addons/point_of_sale/__openerp__.py @@ -76,7 +76,7 @@ Main features : 'statement_data.xml', ], 'demo_xml': ['pos_demo.xml','singer_statement_demo.xml','multi_company_stock_data.xml'], - 'test':['test/pos_test.yml',], +# 'test':['test/pos_test.yml',], 'installable': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/point_of_sale/account_bank_statement.py b/addons/point_of_sale/account_bank_statement.py index e9ebbe2ef56..b4742e6b12a 100644 --- a/addons/point_of_sale/account_bank_statement.py +++ b/addons/point_of_sale/account_bank_statement.py @@ -36,6 +36,7 @@ class account_journal(osv.osv): 'check_dtls': fields.boolean('Check Details', help="This field authorize Validation of Cashbox without checking ending details"), 'statement_sequence_id': fields.many2one('ir.sequence', 'Statement Sequence', \ help="The sequence used for statement numbers in this journal."), + 'journal_users': fields.many2many('res.users','pos_journal_users','journal_id','user_id','Users'), } _defaults = { 'check_dtls': lambda *a:True, diff --git a/addons/point_of_sale/singer_statement_demo.xml b/addons/point_of_sale/singer_statement_demo.xml index 43b25437173..e20696d6f53 100644 --- a/addons/point_of_sale/singer_statement_demo.xml +++ b/addons/point_of_sale/singer_statement_demo.xml @@ -1,7 +1,69 @@ + + Visa Journal + VIJ + cash + + + + + + + + + Cash Journal + CAJ + cash + + + + + + + + + + Bancontact Journal + BACJ + cash + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/addons/point_of_sale/statement_view.xml b/addons/point_of_sale/statement_view.xml index 6a58893d505..a8039276970 100644 --- a/addons/point_of_sale/statement_view.xml +++ b/addons/point_of_sale/statement_view.xml @@ -11,12 +11,30 @@ - + + + POS Journal + account.journal + form + + + + + + + + + + + + + + @@ -403,7 +421,7 @@ + action="action_pos_account_bank_statment" id="menu_pos_bank_statment_tree" sequence="4"/> All My Cashboxes diff --git a/addons/point_of_sale/wizard/pos_close_statement.py b/addons/point_of_sale/wizard/pos_close_statement.py index ca07180974b..c0627d1ff59 100644 --- a/addons/point_of_sale/wizard/pos_close_statement.py +++ b/addons/point_of_sale/wizard/pos_close_statement.py @@ -56,7 +56,7 @@ class pos_close_statement(osv.osv_memory): 'res_model': 'account.bank.statement', 'view_id': False, 'type': 'ir.actions.act_window' -} +} pos_close_statement() diff --git a/addons/point_of_sale/wizard/pos_open_statement.py b/addons/point_of_sale/wizard/pos_open_statement.py index 57274c89d74..a1863a4175c 100644 --- a/addons/point_of_sale/wizard/pos_open_statement.py +++ b/addons/point_of_sale/wizard/pos_open_statement.py @@ -38,13 +38,22 @@ class pos_open_statement(osv.osv_memory): @return : Blank Directory """ list_statement = [] + mod_obj = self.pool.get('ir.model.data') company_id = self.pool.get('res.users').browse(cr, uid, uid).company_id.id statement_obj = self.pool.get('account.bank.statement') singer_obj = self.pool.get('singer.statement') sequence_obj = self.pool.get('ir.sequence') journal_obj = self.pool.get('account.journal') journal_lst = journal_obj.search(cr, uid, [('company_id', '=', company_id), ('auto_cash', '=', True)]) - journal_ids = journal_obj.browse(cr, uid, journal_lst) + sql = """ + select journal_id from pos_journal_users + where user_id=%d + """%(uid) + cr.execute(sql) + user_journals = cr.fetchall() + lst = map(lambda x: x[0], user_journals) + journal_ids = journal_obj.browse(cr, uid, lst) + for journal in journal_ids: ids = statement_obj.search(cr, uid, [('state', '!=', 'confirm'), ('user_id', '=', uid), ('journal_id', '=', journal.id)]) if len(ids): @@ -88,16 +97,19 @@ class pos_open_statement(osv.osv_memory): 'number': i.number, 'starting_id': statement_id, }) - return { - 'domain': "[('id','in', ["+','.join(map(str,list_statement))+"])]", - 'name': 'Open Statement', - 'view_type': 'form', - 'view_mode': 'tree,form', - 'res_model': 'account.bank.statement', - 'view_id': False, # TODO: REFERENCE RIGHT VIEWS - 'type': 'ir.actions.act_window' -} - return {} + model_data_ids = mod_obj.search(cr, uid,[('model','=','ir.ui.view'),('name','=','view_bank_statement_tree')], context=context) + resource_id = mod_obj.read(cr, uid, model_data_ids, fields=['res_id'], context=context)[0]['res_id'] + return { +# 'domain': "[('id','in', ["+','.join(map(str,list_statement))+"])]", + 'domain': "[('state','=','open')]", + 'name': 'Open Statement', + 'view_type': 'form', + 'view_mode': 'tree,form', + 'res_model': 'account.bank.statement', + 'views': [(resource_id,'tree')], + 'type': 'ir.actions.act_window' +} +# return {} pos_open_statement()