X-Git-Url: https://git.heureux-cyclage.org/?p=burette%2Fremembership.git;a=blobdiff_plain;f=remembership.py;h=7115b86ee52781d4ec37a0760a7ef229c0657f19;hp=fa16f56eab4bb38954e1934f0872408cd66ae1c9;hb=c1e4865b02a3de76da5cf58c96d71ef45e56222f;hpb=949a540145c18b4e4b9ac9e709c5085c64b2e8f2 diff --git a/remembership.py b/remembership.py index fa16f56..7115b86 100644 --- a/remembership.py +++ b/remembership.py @@ -24,29 +24,50 @@ from osv import osv from osv import fields + class Partner(osv.osv): _inherit = 'res.partner' _columns = { - 'member_ident': fields.char('Member identifier', size=64, readonly=True), + 'member_ident': fields.char('Member identifier', size=64), } + _sql_constraints = [ + ('member_ident_uniq', 'unique(member_ident, company_id)', 'The member identifier must be unique !'), + ] + Partner() class account_invoice_line(osv.osv): - _inherit='account.invoice.line' + _inherit = 'account.invoice.line' def create(self, cr, uid, vals, context=None): - result = super(account_invoice_line, self).create(cr, uid, vals, context=context) - line = self.browse(cr, uid, result, context=context) + res = super(account_invoice_line, self).create(cr, uid, vals, context=context) + line = self.browse(cr, uid, res, context=context) if line.invoice_id.type == 'out_invoice': if line.product_id and line.product_id.membership and not line.invoice_id.partner_id.member_ident: mbr_id = self.pool.get('ir.sequence').get(cr, uid, 'member_ident') self.pool.get('res.partner').write(cr, uid, line.invoice_id.partner_id.id, {'member_ident': mbr_id}) - return result + return res account_invoice_line() +class pos_make_payment(osv.osv_memory): + _inherit = 'pos.make.payment' + + def check(self, cr, uid, ids, context=None): + """ + Auto invoice orders. Temporarly solution before make partner members just with orders, without invoice. + """ + res = super(pos_make_payment, self).check(cr, uid, ids, context=context) + + order_obj = self.pool.get('pos.order') + order_obj.action_invoice(cr, uid, ids, context=context) + + return res + +pos_make_payment() + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: