tracking rejeceting

This commit is contained in:
mohammed-alkhazrji 2025-12-03 02:20:33 +03:00
parent 8301725965
commit 0c0dbf2900
1 changed files with 29 additions and 10 deletions

View File

@ -185,7 +185,7 @@ class PurchaseRFQ(models.Model):
'user_id': self.env.user.id, 'user_id': self.env.user.id,
**vals **vals
}) })
self._check_committee_rejection()
return { return {
'type': 'ir.actions.act_window', 'type': 'ir.actions.act_window',
@ -229,21 +229,40 @@ class PurchaseRFQ(models.Model):
# def _check_committee_rejection(self):
# self.ensure_one()
#
# if not self.source_request_ref or not self.source_request_ref.committe_members:
# return
#
# requisition_users = self.source_request_ref.committe_members
# rfq_users = self.committe_members.mapped('user_id')
#
# if set(requisition_users.ids) == set(rfq_users.ids):
# if self.committe_members and all(member.refused for member in self.committe_members):
# self.source_request_ref.write({'state': 'rejected_by_committee'})
# self.action_reject()
# self.message_post(body=_("تم رفض عرض السعر من قبل جميع أعضاء اللجنة."))
def _check_committee_rejection(self): def _check_committee_rejection(self):
self.ensure_one() self.ensure_one()
if not self.source_request_ref or not self.source_request_ref.committe_members: if not self.source_request_ref or not self.committe_members:
return return
requisition_users = self.source_request_ref.committe_members if all(member.refused for member in self.committe_members):
rfq_users = self.committe_members.mapped('user_id') self.action_reject()
self.message_post(body=_("تم رفض هذا العرض من قبل جميع أعضاء اللجنة."))
if set(requisition_users.ids) == set(rfq_users.ids):
if self.committe_members and all(member.refused for member in self.committe_members):
self.source_request_ref.write({'state': 'rejected_by_committee'})
self.action_reject()
self.message_post(body=_("تم رفض عرض السعر من قبل جميع أعضاء اللجنة."))
all_rfqs = self.source_request_ref.rfq_ids
if all_rfqs and all(
rfq.committe_members and all(member.refused for member in rfq.committe_members)
for rfq in all_rfqs
):
self.source_request_ref.write({'state': 'rejected_by_committee'})
self.source_request_ref.message_post(
body=_("تم رفض جميع عروض الأسعار المرتبطة بهذا الطلب السنوي من قبل جميع أعضاء اللجنة.")
)
def action_submit_to_committees(self): def action_submit_to_committees(self):
res = super(PurchaseRFQ, self).action_submit_to_committees() res = super(PurchaseRFQ, self).action_submit_to_committees()