summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/purchase_order_multi_uangmuka.py
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2024-06-15 10:23:20 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2024-06-15 10:23:20 +0700
commit080bdd7d1283509e55a0af2459c8e12b7519c0eb (patch)
treebc0fbe2b27f67e2f1a767a8cac9a94e295a36353 /indoteknik_custom/models/purchase_order_multi_uangmuka.py
parentac997ef851c9e1ce6d061a68951051f0b916b534 (diff)
change request uang muka purchase order
Diffstat (limited to 'indoteknik_custom/models/purchase_order_multi_uangmuka.py')
-rw-r--r--indoteknik_custom/models/purchase_order_multi_uangmuka.py37
1 files changed, 27 insertions, 10 deletions
diff --git a/indoteknik_custom/models/purchase_order_multi_uangmuka.py b/indoteknik_custom/models/purchase_order_multi_uangmuka.py
index feb13cbc..3ab3a050 100644
--- a/indoteknik_custom/models/purchase_order_multi_uangmuka.py
+++ b/indoteknik_custom/models/purchase_order_multi_uangmuka.py
@@ -23,7 +23,22 @@ class PurchaseOrderMultiUangmuka(models.TransientModel):
for o in self:
o.total_amt = o.pay_amt + o.ongkir_amt + o.selisih_amt
- def create_uangmukapembelian(self, orders):
+ def create_uangmukapembelianselected(self):
+ po_ids = self._context['po_ids']
+ orders = self.env['purchase.order'].browse(po_ids)
+ po_is_uangmuka = self.env['purchase.order'].search([
+ ('id', 'in', [x.id for x in orders]),
+ ('is_create_uangmuka', '=', True)
+ ])
+
+ for rec in orders:
+ if rec.is_create_uangmuka:
+ action = self.env['ir.actions.act_window']._for_xml_id('indoteknik_custom.action_purchase_order_multi_uangmuka2')
+ action['context'] = {
+ 'order_ids': [data.id for data in po_is_uangmuka]
+ }
+ return action
+
if not self.account_id:
raise UserError('Bank Intransit harus diisi')
if not self.env.user.has_group('account.group_account_manager'):
@@ -52,6 +67,7 @@ class PurchaseOrderMultiUangmuka(models.TransientModel):
account_move = self.env['account.move'].create([param_header])
debit_entries = []
pay_amt = 0
+
for order in orders:
_logger.info('Success Create Uang Muka Pembelian %s' % account_move.name)
@@ -61,7 +77,7 @@ class PurchaseOrderMultiUangmuka(models.TransientModel):
param_debit = {
'move_id': account_move.id,
'account_id': 401, # uang muka persediaan barang dagang
- 'partner_id': partner_id,
+ 'partner_id': partner_id,
'currency_id': 12,
'debit': order.amount_total,
'credit': 0,
@@ -96,6 +112,8 @@ class PurchaseOrderMultiUangmuka(models.TransientModel):
if is_have_selisih:
debit_entries.append(param_debit_selisih)
pay_amt += self.selisih_amt
+
+ order.is_create_uangmuka = True
param_credit = {
'move_id': account_move.id,
@@ -112,12 +130,6 @@ class PurchaseOrderMultiUangmuka(models.TransientModel):
# Create all account.move.line entries at once
self.env['account.move.line'].create(debit_entries)
- return account_move.id
-
- def save_multi_create_uang_muka(self):
- po_ids = self._context['po_ids']
- purchase = self.env['purchase.order'].browse(po_ids)
- account_move = self.create_uangmukapembelian(purchase)
return {
'name': _('Journal Entries'),
'view_mode': 'form',
@@ -125,5 +137,10 @@ class PurchaseOrderMultiUangmuka(models.TransientModel):
'target': 'current',
'view_id': False,
'type': 'ir.actions.act_window',
- 'res_id': account_move
- } \ No newline at end of file
+ 'res_id': account_move.id
+ }
+
+ # def save_multi_create_uang_muka(self):
+
+ # account_move = self.create_uangmukapembelianselected(purchase, is_create_uangmuka)
+ \ No newline at end of file