From 8859ccad1aebe492b2e3c6ee333a7de705226c54 Mon Sep 17 00:00:00 2001 From: laurentbarontini Date: Sun, 15 Mar 2026 15:53:38 +0100 Subject: [PATCH] 15.03.26 --- modules/purchase_trade/lot.py | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/modules/purchase_trade/lot.py b/modules/purchase_trade/lot.py index efb5f9f..9f42325 100755 --- a/modules/purchase_trade/lot.py +++ b/modules/purchase_trade/lot.py @@ -2631,6 +2631,17 @@ class LotInvoice(Wizard): invoicing = StateTransition() + message = StateView( + 'purchase.create_prepayment.message', + 'purchase_trade.create_prepayment_message_form', + [ + Button('OK', 'end', 'tryton-ok'), + Button('See Invoice', 'see_invoice', 'tryton-go-next'), + ] + ) + + see_invoice = StateAction('account_invoice.act_invoice_form') + def transition_start(self): return 'inv' @@ -2775,12 +2786,27 @@ class LotInvoice(Wizard): continue lots.append(lot) + invoice = None if self.inv.type == 'purchase': Purchase._process_invoice([purchase],lots,action,self.inv.pp_pur) + invoice = r.r_lot_p.invoice_line if r.r_lot_p.invoice_line else r.r_lot_p.invoice_line_prov else: if sale: - Sale._process_invoice([sale],lots,action,self.inv.pp_sale) - return 'end' + Sale._process_invoice([sale],lots,action,self.inv.pp_sale) + invoice = r.r_lot_p.invoice_line if r.r_lot_p.sale_invoice_line else r.r_lot_p.sale_invoice_line_prov + self.message.invoice = invoice + + return 'message' + + def default_message(self, fields): + return { + 'message': 'The invoice has been successfully created.', + } + + def do_see_invoice(self, action): + action['views'].reverse() # pour ouvrir en form directement + logger.info("*************SEE_INVOICE******************:%s",self.message.invoice) + return action, {'res_id':self.message.invoice.id} def end(self): return 'reload'