msgstr ""
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-06-27 12:07+0200\n"
-"PO-Revision-Date: 2016-06-27 12:07+0200\n"
+"POT-Creation-Date: 2018-01-22 13:54+0000\n"
+"PO-Revision-Date: 2018-01-22 14:56+0100\n"
+"Last-Translator: Ludovic CHEVALIER <ludovic.chevalier@heureux-cyclage."
+"org>\n"
"Language-Team: \n"
+"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 1.8.8\n"
-"Last-Translator: Ludovic CHEVALIER <ludovic.chevalier@heureux-cyclage.org>\n"
-"Language: fr\n"
+"X-Generator: Poedit 2.0.5\n"
#. module: nrt_point_of_sale
-#: view:pos.session:0
-msgid "Date"
-msgstr "Date"
+#: field:pos.config,nrt:0
+msgid "Non-real time"
+msgstr "En différé"
#. module: nrt_point_of_sale
#: model:ir.model,name:nrt_point_of_sale.model_pos_session
msgstr "pos.session"
#. module: nrt_point_of_sale
-#: model:ir.model,name:nrt_point_of_sale.model_pos_order
-msgid "Point of Sale"
-msgstr "Point de vente"
+#: help:pos.config,nrt:0
+msgid ""
+"This pos move lines will be based on the session opening if this box is "
+"checked. This field is readonly if the point of sale is already in use."
+msgstr ""
+"Ces imputations du point de vente seront basées sur l'ouverture de la "
+"session si cette case est cochée. Ce champs est en lecture seule si le "
+"point de vente est déjà en cours d'utilisation."
+
+#. module: nrt_point_of_sale
+#: model:ir.model,name:nrt_point_of_sale.model_cash_box_out
+msgid "cash.box.out"
+msgstr ""
#. module: nrt_point_of_sale
#: view:pos.order:0
msgid "onchange_session_id(session_id, context)"
msgstr "onchange_session_id(session_id, context)"
+
+#. module: nrt_point_of_sale
+#: model:ir.model,name:nrt_point_of_sale.model_account_bank_statement
+msgid "Bank Statement"
+msgstr "Relevé bancaire"
+
+#. module: nrt_point_of_sale
+#: field:pos.session,is_nrt_pos:0
+msgid "Is this session linked to a nrt pos?"
+msgstr ""
+"Est-ce que cette session est reliée à un point de vente en différé?"
+
+#. module: nrt_point_of_sale
+#: model:ir.model,name:nrt_point_of_sale.model_pos_config
+msgid "pos.config"
+msgstr ""
+
+#. module: nrt_point_of_sale
+#: view:pos.session:0
+#, fuzzy
+#| msgid "onchange_session_id(session_id, context)"
+msgid "onchange_config_id(config_id)"
+msgstr "onchange_session_id(session_id, context)"
+
+#. module: nrt_point_of_sale
+#: view:pos.session:0
+msgid "Date"
+msgstr "Date"
+
+#. module: nrt_point_of_sale
+#: model:ir.model,name:nrt_point_of_sale.model_pos_order
+msgid "Point of Sale"
+msgstr "Point de vente"
+
+#. module: nrt_point_of_sale
+#: model:ir.model,name:nrt_point_of_sale.model_cash_box_in
+msgid "cash.box.in"
+msgstr ""
+
+#. module: nrt_point_of_sale
+#: field:pos.config,is_pos_used:0
+msgid "Is this pos in used?"
+msgstr "Ce point de vente est t-il en cours d'utilisation?"
from openerp.osv import osv
from openerp.osv import orm
from openerp.osv import fields
+from time import strftime
+import openerp.exceptions
+from openerp.tools.translate import _
+
+
+class pos_config(orm.Model):
+ _inherit = 'pos.config'
+
+ def _is_pos_used(self, cr, uid, ids, name, args, context=None):
+ """Return True if the pos is already in use."""
+ res = {}
+ session_obj = self.pool.get('pos.session')
+ for id in ids:
+ sessions = session_obj.search(cr, uid, [('config_id', 'in', ids),('state', '!=', 'closed')], context=context)
+ if sessions:
+ res[id] = True
+ else:
+ res[id] = False
+ return res
+
+ _columns = {
+ 'nrt': fields.boolean('Non-real time', help='This pos move lines will '\
+ 'be based on the session opening if this box is '\
+ 'checked. This field is readonly if the point of '\
+ 'sale is already in use.'),
+ 'is_pos_used': fields.function(_is_pos_used,
+ method=True,
+ string='Is this pos in used?',
+ type='boolean',
+ store=False),
+ }
+
+ _defaults = {
+ 'nrt': lambda *a: True,
+ }
class pos_session(orm.Model):
_inherit = 'pos.session'
+ def onchange_config_id(self, cr, uid, ids, config_id, context=None):
+ """Return is_nrt_pos and start_at date when config_id field changes."""
+ config_obj = self.pool.get('pos.config')
+ config = config_obj.browse(cr, uid, config_id, context=context)
+ start_at = strftime('%Y-%m-%d %H:%M:%S')
+ is_nrt_pos = False
+
+ if config.nrt:
+ is_nrt_pos = True
+ return {'value':
+ {
+ 'start_at': start_at,
+ 'is_nrt_pos': is_nrt_pos,
+ }
+ }
+
+ def _is_nrt_pos(self, cr, uid, ids, name, args, context=None):
+ """Return True if the current session refers to a nrt pos."""
+ res = {}
+ sessions = self.browse(cr, uid, ids, context=context)
+ config_obj = self.pool.get('pos.config')
+ for session in sessions:
+ res[session.id] = False
+ if session.config_id.nrt:
+ res[session.id] = True
+ return res
+
_columns = {
'start_at': fields.datetime('Opening date'),
'stop_at': fields.datetime('Closing date'),
+ 'is_nrt_pos': fields.function(_is_nrt_pos,
+ method=True,
+ string='Is this session linked to a nrt pos?',
+ type='boolean',
+ store=False,),
+ }
+
+ _defaults = {
+ 'start_at': strftime('%Y-%m-%d %H:%M:%S'),
}
def create(self, cr, uid, values, context=None):
id = super(pos_session, self).create(cr, uid, values, context=context)
for session in self.browse(cr, uid, [id], context=context):
default_date = session.start_at
- bank_st_ids = bank_st_obj.search(cr, uid, [('pos_session_id', '=', id)], context=context)
- period = period_obj.find(cr, uid, dt=default_date, context=dict(context or {}, account_period_prefer_normal=True))[0]
- bank_st_obj.write(cr, uid, bank_st_ids, {'date': default_date, 'period_id': period}, context=context)
+ if session.config_id.nrt:
+ bank_st_ids = bank_st_obj.search(cr, uid, [('pos_session_id', '=', id)], context=context)
+ period = period_obj.find(cr, uid, dt=default_date, context=dict(context or {}, account_period_prefer_normal=True))[0]
+ bank_st_obj.write(cr, uid, bank_st_ids, {'date': default_date, 'period_id': period}, context=context)
return id
def _confirm_orders(self, cr, uid, ids, context=None):
super(pos_session, self)._confirm_orders(cr, uid, ids, context=context)
for session in self.browse(cr, uid, ids, context=context):
- account_move_ids = []
- order_ids = [order.id for order in session.order_ids if order.state == 'done']
- if order_ids:
- company_id = order_obj.browse(cr, uid, order_ids, context=context)[0].company_id.id
- else:
- company_id = self.pool.get('res.users').browse(cr, uid, [uid], context=context)[0].company_id.id
- for order in order_obj.browse(cr, uid, order_ids, context=context):
- if order.account_move.id not in account_move_ids:
- account_move_ids.append(order.account_move.id)
- period = period_obj.find(cr, uid, dt=session.start_at, context=dict(context or {}, company_id=company_id, account_period_prefer_normal=True))[0]
- account_move_obj.write(cr, uid, account_move_ids, {'date': session.start_at, 'period_id': period}, context=context)
-
+ if session.config_id.nrt:
+ account_move_ids = []
+ order_ids = [order.id for order in session.order_ids if order.state == 'done']
+ if order_ids:
+ company_id = order_obj.browse(cr, uid, order_ids, context=context)[0].company_id.id
+ else:
+ company_id = self.pool.get('res.users').browse(cr, uid, [uid], context=context)[0].company_id.id
+ for order in order_obj.browse(cr, uid, order_ids, context=context):
+ if order.account_move.id not in account_move_ids:
+ account_move_ids.append(order.account_move.id)
+ period = period_obj.find(cr, uid, dt=session.start_at, context=dict(context or {}, company_id=company_id, account_period_prefer_normal=True))[0]
+ account_move_obj.write(cr, uid, account_move_ids, {'date': session.start_at, 'period_id': period}, context=context)
return True
def wkf_action_closing_control(self, cr, uid, ids, context=None):
"""
res = super(pos_session, self).wkf_action_closing_control(cr, uid, ids, context=context)
for session in self.browse(cr, uid, ids, context=context):
- self.write(cr, uid, [session.id], {'stop_at': session.start_at}, context=context)
+ if session.config_id.nrt:
+ self.write(cr, uid, [session.id], {'stop_at': session.start_at}, context=context)
return res
def onchange_start_at(self, cr, uid, ids, start_at, context=None):
return {'value': {'stop_at': start_at}}
else:
for session in self.browse(cr, uid, ids, context=context):
- return {'value': {'stop_at': start_at}}
+ if session.config_id.nrt:
+ return {'value': {'stop_at': start_at}}
class pos_order(orm.Model):
_inherit = 'pos.order'
def create(self, cr, uid, vals, context=None):
- session_obj = self.pool.get('pos.session')
- vals.update({'date_order': session_obj.browse(cr, uid, vals['session_id'], context=context).start_at})
+ session = self.pool.get('pos.session').browse(cr, uid, vals['session_id'], context=context)
+ if session.config_id.nrt:
+ vals.update({'date_order': session.start_at})
res = super(pos_order, self).create(cr, uid, vals, context=context)
return res
-
def write(self, cr, uid, ids, vals, context=None):
- session_obj = self.pool.get('pos.session')
for order in self.browse(cr, uid, ids, context=context):
- default_date_order = order.session_id.start_at
- vals.update({'date_order': default_date_order})
+ if order.session_id.config_id.nrt:
+ default_date_order = order.session_id.start_at
+ vals.update({'date_order': default_date_order})
res = super(pos_order, self).write(cr, uid, ids, vals, context=context)
return res
def onchange_session_id(self, cr, uid, ids, session_id, context=None):
"""Define date order by start date of current session"""
- res_obj = self.pool.get('pos.session')
- data = {}
+ session_obj = self.pool.get('pos.session')
+ default_date_order = strftime('%Y-%m-%d %H:%M:%S')
+
if not session_id:
- return {'value': data}
+ return {'value': {}}
else:
- for session in res_obj.browse(cr, uid, [session_id],
+ for session in session_obj.browse(cr, uid, [session_id],
context=context):
- default_date_order = session.start_at
- return {'value': {'date_order': default_date_order}}
+ if session.config_id.nrt:
+ default_date_order = session.start_at
+ return {'value': {'date_order': default_date_order}}
def add_payment(self, cr, uid, order_id, data, context=None):
"""Define payment date by the order date"""
statement_ids = []
order = self.browse(cr, uid, [order_id], context=context)[0]
date_order = order.date_order
+
super(pos_order, self).add_payment(cr, uid, order_id, data, context=context)
- for statement in order.statement_ids:
- statement_ids.append(statement.id)
- statement_obj.write(cr, uid, statement_ids, {'date': date_order}, context=context)
+ if order.session_id.config_id.nrt:
+ for statement in order.statement_ids:
+ statement_ids.append(statement.id)
+ statement_obj.write(cr, uid, statement_ids, {'date': date_order}, context=context)
return order_id
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: