summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models
diff options
context:
space:
mode:
authorFIN-IT_AndriFP <it@fixcomart.co.id>2025-10-08 14:43:49 +0700
committerFIN-IT_AndriFP <it@fixcomart.co.id>2025-10-08 14:43:49 +0700
commitaa754e863440d7fb8884649e53a5961124a4dbbd (patch)
treeecdfcd9924ec1082291ff5a585596d64bb5c1c3d /indoteknik_custom/models
parentf0c62faa2d65317b3571af84770fe0694072707a (diff)
(andri) fix view + dll
Diffstat (limited to 'indoteknik_custom/models')
-rw-r--r--indoteknik_custom/models/advance_payment_request.py28
1 files changed, 26 insertions, 2 deletions
diff --git a/indoteknik_custom/models/advance_payment_request.py b/indoteknik_custom/models/advance_payment_request.py
index 1b5f2c2f..a0fb4d51 100644
--- a/indoteknik_custom/models/advance_payment_request.py
+++ b/indoteknik_custom/models/advance_payment_request.py
@@ -125,6 +125,10 @@ class AdvancePaymentRequest(models.Model):
('manager', 'Manager'),
('pimpinan', 'Pimpinan')], string='Jabatan')
+ settlement_type = fields.Selection([
+ ('no_settlement', 'Belum Realisasi'),
+ ('settlement', 'Realisasi')
+ ])
@api.onchange('nominal')
def _onchange_nominal_no_minus(self):
@@ -292,8 +296,8 @@ class AdvancePaymentRequest(models.Model):
# ---------------------------------------
# AP : Manzila (Finance) ID 23
- def _get_departement_approver(self):
- mapping = {
+ def _get_approver_mapping(self):
+ return {
'sales': 19,
'merchandiser': 19,
'marketing': 216,
@@ -302,8 +306,28 @@ class AdvancePaymentRequest(models.Model):
'fat': 28,
'hr_ga': 7,
}
+
+ def _get_departement_approver(self):
+ mapping = self._get_approver_mapping()
return mapping.get(self.departement_type)
+ @api.model
+ def default_get(self, fields_list):
+ defaults = super(AdvancePaymentRequest, self).default_get(fields_list)
+ user_id = defaults.get('user_id', self.env.uid)
+ mapping = self._get_approver_mapping()
+ manager_ids = set(mapping.values())
+ pimpinan_id = 7
+
+ position = 'staff'
+ if user_id == pimpinan_id:
+ position = 'pimpinan'
+ elif user_id in manager_ids:
+ position = 'manager'
+
+ defaults['position_type'] = position
+ return defaults
+
def action_realisasi_pum(self):
self.ensure_one()