parent
9ec5f6d70f
commit
89fcc0be2f
|
@ -96,4 +96,8 @@ msgstr "Mover"
|
|||
|
||||
msgctxt "field:sale.line.quick_action.move,sale:"
|
||||
msgid "Sale"
|
||||
msgstr "Venta"
|
||||
|
||||
msgctxt "field:sale.line.quick_action.duplicate,sale:"
|
||||
msgid "Sale"
|
||||
msgstr "Venta"
|
36
sale.py
36
sale.py
|
@ -136,10 +136,8 @@ class SaleLineQuickActionDuplicate(ModelView):
|
|||
__name__ = 'sale.line.quick_action.duplicate'
|
||||
|
||||
copies = fields.Integer('Copies', required=True)
|
||||
|
||||
@classmethod
|
||||
def default_copies(cls):
|
||||
return 1
|
||||
sale = fields.Many2One('sale.sale', 'Sale', required=True,
|
||||
domain=[('state', '=', 'draft')])
|
||||
|
||||
|
||||
class SaleLineQuickAction(Wizard):
|
||||
|
@ -192,11 +190,8 @@ class SaleLineQuickAction(Wizard):
|
|||
}
|
||||
|
||||
def transition_do_duplicate(self):
|
||||
pool = Pool()
|
||||
SaleLine = pool.get('sale.line')
|
||||
|
||||
records = SaleLine.browse(Transaction().context['active_ids'])
|
||||
SaleLine.copy(records * self.duplicate.copies)
|
||||
self._create_lines(self.duplicate.sale,
|
||||
copies=self.duplicate.copies)
|
||||
return 'end'
|
||||
|
||||
def default_split(self, fields):
|
||||
|
@ -223,12 +218,25 @@ class SaleLineQuickAction(Wizard):
|
|||
def _get_split_values(self):
|
||||
return {}
|
||||
|
||||
def transition_do_move(self):
|
||||
def transition_do_move(self, copies=1, delete_lines=True):
|
||||
self._create_lines(self.move.sale, move=True)
|
||||
return 'end'
|
||||
|
||||
def _create_lines(self, sale, copies=1, move=False):
|
||||
pool = Pool()
|
||||
SaleLine = pool.get('sale.line')
|
||||
sale_lines = SaleLine.browse(Transaction().context['active_ids'])
|
||||
SaleLine.copy(sale_lines, default={
|
||||
'sale': self.move.sale.id
|
||||
SaleLine.copy(sale_lines * copies, default={
|
||||
'sale': sale.id
|
||||
})
|
||||
SaleLine.delete(sale_lines)
|
||||
return 'end'
|
||||
if move:
|
||||
SaleLine.delete(sale_lines)
|
||||
|
||||
def default_duplicate(self, fields):
|
||||
pool = Pool()
|
||||
SaleLine = pool.get('sale.line')
|
||||
sale_line = SaleLine(Transaction().context['active_id'])
|
||||
return {
|
||||
'copies': 1,
|
||||
'sale': sale_line.sale.id
|
||||
}
|
||||
|
|
|
@ -2,7 +2,9 @@
|
|||
<!-- The COPYRIGHT file at the top level of this repository contains the full
|
||||
copyright notices and license terms. -->
|
||||
|
||||
<form>
|
||||
<form col="2">
|
||||
<label name="sale"/>
|
||||
<field name="sale"/>
|
||||
<label name="copies"/>
|
||||
<field name="copies"/>
|
||||
</form>
|
Loading…
Reference in New Issue