diff options
| author | Miqdad <ahmadmiqdad27@gmail.com> | 2025-09-25 16:03:29 +0700 |
|---|---|---|
| committer | Miqdad <ahmadmiqdad27@gmail.com> | 2025-09-25 16:03:29 +0700 |
| commit | 49368fcb139eac9de0f1787fdd1477570ed9dbda (patch) | |
| tree | 3b49e6fe3d20f8f8360f15336bdeaa378d1bf260 | |
| parent | 3490d35ff0af285e7089295e1f01ca4495f37288 (diff) | |
<Miqdad> global pj seen
| -rw-r--r-- | indoteknik_custom/models/purchasing_job.py | 21 |
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([ |
