summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiqdad <ahmadmiqdad27@gmail.com>2025-09-25 16:03:29 +0700
committerMiqdad <ahmadmiqdad27@gmail.com>2025-09-25 16:03:29 +0700
commit49368fcb139eac9de0f1787fdd1477570ed9dbda (patch)
tree3b49e6fe3d20f8f8360f15336bdeaa378d1bf260
parent3490d35ff0af285e7089295e1f01ca4495f37288 (diff)
<Miqdad> global pj seen
-rw-r--r--indoteknik_custom/models/purchasing_job.py21
1 files changed, 11 insertions, 10 deletions
diff --git a/indoteknik_custom/models/purchasing_job.py b/indoteknik_custom/models/purchasing_job.py
index db733b5a..d830bf60 100644
--- a/indoteknik_custom/models/purchasing_job.py
+++ b/indoteknik_custom/models/purchasing_job.py
@@ -29,20 +29,25 @@ class PurchasingJob(models.Model):
so_number = fields.Text(string='SO Number', copy=False)
check_pj = fields.Boolean(compute='_get_check_pj', string='Linked')
+
def action_open_job_detail(self):
self.ensure_one()
Seen = self.env['purchasing.job.seen']
+
seen = Seen.search([
- ('user_id', '=', self.env.uid),
('product_id', '=', self.product_id.id)
], limit=1)
if seen:
- seen.so_snapshot = self.so_number
- seen.seen_date = fields.Datetime.now()
+ # update snapshot & tanggal + (opsional) siapa yg terakhir lihat
+ seen.write({
+ 'so_snapshot': self.so_number,
+ 'seen_date': fields.Datetime.now(),
+ 'user_id': self.env.user.id, # kalau user_id tetap dipakai sbg last_seen_by
+ })
else:
Seen.create({
- 'user_id': self.env.uid,
+ 'user_id': self.env.user.id, # atau False kalau mau kosongkan
'product_id': self.product_id.id,
'so_snapshot': self.so_number,
})
@@ -56,17 +61,13 @@ class PurchasingJob(models.Model):
'target': 'current',
}
-
@api.depends('so_number')
def _get_check_pj(self):
+ Seen = self.env['purchasing.job.seen']
for rec in self:
- seen = self.env['purchasing.job.seen'].search([
- ('user_id', '=', self.env.uid),
- ('product_id', '=', rec.product_id.id)
- ], limit=1)
+ seen = Seen.search([('product_id', '=', rec.product_id.id)], limit=1)
rec.check_pj = bool(seen and seen.so_snapshot == rec.so_number)
-
def unlink(self):
# Example: Delete related records from the underlying model
underlying_records = self.env['purchasing.job'].search([