From 48f4dc9d6bc336e852e6a3a5e0652b61c73cd44c Mon Sep 17 00:00:00 2001 From: eslamabady Date: Thu, 11 Jul 2024 18:42:05 +0300 Subject: [PATCH] fix --- .../__pycache__/__init__.cpython-38.pyc | Bin 0 -> 243 bytes .../__pycache__/__init__.cpython-38.pyc | Bin 0 -> 535 bytes .../account_invoice.cpython-38.pyc | Bin 0 -> 2971 bytes .../account_payment.cpython-38.pyc | Bin 0 -> 1341 bytes .../budget_confirmation.cpython-38.pyc | Bin 0 -> 3202 bytes .../mail_compose_message.cpython-38.pyc | Bin 0 -> 510 bytes .../__pycache__/purchase_order.cpython-38.pyc | Bin 0 -> 24750 bytes .../purchase_request.cpython-38.pyc | Bin 0 -> 11581 bytes ...purchase_requisition_custom.cpython-38.pyc | Bin 0 -> 20743 bytes .../__pycache__/res_partner.cpython-38.pyc | Bin 0 -> 2595 bytes .../__pycache__/res_settings.cpython-38.pyc | Bin 0 -> 1674 bytes .../models/purchase_order.py | 48 ++++++++++------- .../models/purchase_requisition_custom.py | 50 +++++++++--------- .../views/purchase_requisition_custom.xml | 4 +- .../__pycache__/__init__.cpython-38.pyc | Bin 0 -> 280 bytes .../cancel_purchase_request.cpython-38.pyc | Bin 0 -> 1526 bytes .../convert_to_contract.cpython-38.pyc | Bin 0 -> 2490 bytes 17 files changed, 55 insertions(+), 47 deletions(-) create mode 100644 odex25_purchase/purchase_requisition_custom/__pycache__/__init__.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/__init__.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/account_invoice.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/account_payment.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/budget_confirmation.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/mail_compose_message.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/purchase_order.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/purchase_request.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/purchase_requisition_custom.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/res_partner.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/models/__pycache__/res_settings.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/wizards/__pycache__/__init__.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/wizards/__pycache__/cancel_purchase_request.cpython-38.pyc create mode 100644 odex25_purchase/purchase_requisition_custom/wizards/__pycache__/convert_to_contract.cpython-38.pyc diff --git a/odex25_purchase/purchase_requisition_custom/__pycache__/__init__.cpython-38.pyc b/odex25_purchase/purchase_requisition_custom/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6381c751662e5e7518a9e1123dc9a8baebc444de GIT binary patch literal 243 zcmWIL<>g`kg1rrGX-+`;F^Gc~cATJ#5`kcc5GP=R*mz^5vD;dT?O;2IZdq^_4#Fj}WyKX( zF%u|i9p&YF&rW7CkCVxWzFiZUe#z4;rEZ8U)B8a7e>}BjAWe z1INHIjR#JE6PgU10;e<`I0MdTHgFD{(_9s_0ADhbjMfS7rCz)KR8_Kp5~?*&TnXo@wYZ;;dSY>KHbRL}5|k7rL&;GJ z6deCMv14SE?`3IPUm9-A#T7in%jNaL`AYN3@`WHDdqk()FH+SCn_B0zhIFF}DqK(U~?ltY>#m0c=L z3>heppmzR24?V~^1W-;l z$4@`^e{T`;C*D;57~EWeOLajAB4|Pev_}V4&l=c0d%${(l5dExgngd~JEXC5&+fT` z-5?$3FL;M^n05!52ot5Ve5UVdcE;-lc@ z*fP0CBiMnGTi=f94X6SHSzp_4uaCq=n0JFL?MHIp=TVkwXPEIw?9;FI+Xr!%%Z8cC z=fcNSSa7v5e5gIyB{6{m(@pmVnbNhXr5mLWaH*Szx|&i=?|@)Ql!jBXAFX7=d?gcE zcK#y#gm*4{c24DfDtsxFq2E!tU^{_Er;rurB<|c1J0j4>4eG)5@+?fv`&%;AN9$t21kDk8VO)EJC3$Q)^8#kwI2GeRLyC zL+K~Hr~oGML?APz0EjXa6|)1$%0r1j)a)9ly4jc6fU8_a>4vTgFmbf#no;viF2P!; zP_y)n)rF1G3q~W4qc{NqFXe)0(8goS(o2=J5Bwh#*Xy9tJo@cqAOdZWsnDn(RL!}qXekju`&zXalX+nR9 z-a6+&;w#1Z)RymHeD9(-hQg%o1JLSlDU6%YMfi8=X^YVY{2qZ+GRvi{$Bdn}w@y75 ze{*P?qnlsBE7HxbbwD@J>bCp^Br^o#AiOdv) z1k;$*fncmB2&M@H(*lB7056Lt4+-W{gNdp5%FgY=y>r;Hav5Iixbju_ zk*}dRjp9udAEI~*1-4tqDxiWpJrN2ntaO=yX=h2A2u)uBd(NVgAEAQ|iZdwAqWBmE zVpZa#l`AMdL2(`h!d_lL@hJ+NkDU^@2D9c!2Do3sBWzfOQ6O*uw)7dWWn0V7N%~xk z=Ro@iJkHNZOs$!E70{w>4zv&RTI@~gU~iO@^vM}nh44$6kuV?scldq**(l(9rkcr; zK!x=CFM{8fJbw(D zDrgAy8QT`1U3{8t+1APDB^y5cJkC>p5OS^?oEP66ptm@`HS&}4iN~Y#W(X5SBF9V2 zhQ$5#LOB!QyCLDcNSetUc3W{yY-KE%LRR!BW3A(@wi%pjotkF&0VMI0s+gO&Qep#X b=Q@4>n}rp>v$DWPO>x-ENT~`voV5P|nDeK7 literal 0 HcmV?d00001 diff --git a/odex25_purchase/purchase_requisition_custom/models/__pycache__/account_payment.cpython-38.pyc b/odex25_purchase/purchase_requisition_custom/models/__pycache__/account_payment.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b388d3a16ec5583ff2717232f1fd61b1f03c2a3d GIT binary patch literal 1341 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 literal 0 HcmV?d00001 diff --git a/odex25_purchase/purchase_requisition_custom/models/__pycache__/purchase_request.cpython-38.pyc b/odex25_purchase/purchase_requisition_custom/models/__pycache__/purchase_request.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4d063cca6b2fcc1528d06f619caf14d4347e7904 GIT binary patch literal 11581 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 literal 0 HcmV?d00001 diff --git a/odex25_purchase/purchase_requisition_custom/models/__pycache__/res_partner.cpython-38.pyc b/odex25_purchase/purchase_requisition_custom/models/__pycache__/res_partner.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8747fc0e55726329fc408acf1381ebf4f9b682b0 GIT binary patch literal 2595 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 literal 0 HcmV?d00001 diff --git a/odex25_purchase/purchase_requisition_custom/models/purchase_order.py b/odex25_purchase/purchase_requisition_custom/models/purchase_order.py index 515e06bcd..1eb798119 100644 --- a/odex25_purchase/purchase_requisition_custom/models/purchase_order.py +++ b/odex25_purchase/purchase_requisition_custom/models/purchase_order.py @@ -279,23 +279,34 @@ class PurchaseOrderCustom(models.Model): def button_approve(self): for rec in self: if rec.requisition_id and rec.requisition_id.state != 'approve': - rec.requisition_id.write({'state':'approve'}) - rec.write({'state': 'draft'}) + raise ValidationError(_("Purchase agreement not approved")) + else: + # You can Approve + for line in self.order_line: + analytic_account_id = line.account_analytic_id + budget_post = self.env['account.budget.post'].search([]).filtered( + lambda + x: line.product_id.property_account_expense_id.id and line.product_id.property_account_expense_id.id or line.product_id.categ_id.property_account_expense_categ_id.id in x.account_ids.ids) + budget_lines = analytic_account_id.crossovered_budget_line.filtered( + lambda x: x.general_budget_id in budget_post and + x.crossovered_budget_id.state == 'done' and + fields.Date.from_string(x.date_from) <= fields.Date.from_string( + rec.date_order) <= fields.Date.from_string(x.date_to)) + super(PurchaseOrderCustom, rec).button_approve() - # raise ValidationError(_("Purchase agreement not approved")) - # else: - # # You can Approve - # for line in self.order_line: - # analytic_account_id = line.account_analytic_id - # budget_post = self.env['account.budget.post'].search([]).filtered( - # lambda - # x: line.product_id.property_account_expense_id.id and line.product_id.property_account_expense_id.id or line.product_id.categ_id.property_account_expense_categ_id.id in x.account_ids.ids) - # budget_lines = analytic_account_id.crossovered_budget_line.filtered( - # lambda x: x.general_budget_id in budget_post and - # x.crossovered_budget_id.state == 'done' and - # fields.Date.from_string(x.date_from) <= fields.Date.from_string( - # rec.date_order) <= fields.Date.from_string(x.date_to)) - # super(PurchaseOrderCustom, rec).button_approve() + def action_rfq_send(self): + res=super(PurchaseOrderCustom,self).action_rfq_send() + if self.state=='wait': + self.state='sent' + return res + + + + def action_approve_po(self): + for rec in self: + if rec.requisition_id and rec.requisition_id.state != 'approve': + rec.requisition_id.write({'state': 'approve'}) + rec.write({'state': 'draft'}) @api.constrains('state') def _state_on_change(self): @@ -308,10 +319,6 @@ class PurchaseOrderCustom(models.Model): for rec in self: if rec.requisition_id.project_id: rec.project_id = rec.requisition_id.project_id.id - def action_rfq_send(self): - res = super(PurchaseOrderCustom, self).action_rfq_send() - self.write({'state':'sent'}) - return res def action_skip_budget(self): """ Skip purchase budget""" @@ -465,6 +472,7 @@ class PurchaseOrderCustom(models.Model): self.request_id.write({'state': 'done'}) return res + def action_unsign(self): """ Move document to Wait state diff --git a/odex25_purchase/purchase_requisition_custom/models/purchase_requisition_custom.py b/odex25_purchase/purchase_requisition_custom/models/purchase_requisition_custom.py index cdb9d431b..c68f12777 100644 --- a/odex25_purchase/purchase_requisition_custom/models/purchase_requisition_custom.py +++ b/odex25_purchase/purchase_requisition_custom/models/purchase_requisition_custom.py @@ -233,33 +233,31 @@ class PurchaseRequisitionCustom(models.Model): raise ValidationError(_("Please add Committe Members")) def action_approve(self): - self.write({'state': 'approve'}) + purchase_orders = self.env['purchase.order'].search([('requisition_id', '=', self.id)]) + po_order_approval = self.env.company.po_double_validation == 'two_step' + for po_id in purchase_orders: + # Deal with double validation process for first approve + valid_amount = self.env.user.company_id.currency_id.compute(po_id.company_id.po_double_validation_amount, + po_id.currency_id) + if po_order_approval: - # purchase_orders = self.env['purchase.order'].search([('requisition_id', '=', self.id)]) - # po_order_approval = self.env.company.po_double_validation == 'two_step' - # for po_id in purchase_orders: - # # Deal with double validation process for first approve - # valid_amount = self.env.user.company_id.currency_id.compute(po_id.company_id.po_double_validation_amount, - # po_id.currency_id) - # if po_order_approval: - # - # if po_id.amount_total > valid_amount: - # po_id.write({'state': 'to approve'}) - # self.write({'state': 'second_approve'}) - # else: - # if po_id.email_to_vendor: - # po_id.write({'state': 'sent'}) - # else: - # po_id.write({'state': 'draft'}) - # po_id.write({'send_to_budget': False}) - # self.write({'state': 'approve'}) - # else: - # if po_id.email_to_vendor: - # po_id.write({'state': 'sent'}) - # else: - # po_id.write({'state': 'draft'}) - # po_id.write({'send_to_budget': False}) - # self.write({'state': 'approve'}) + if po_id.amount_total > valid_amount: + po_id.write({'state': 'to approve'}) + self.write({'state': 'second_approve'}) + else: + # if po_id.email_to_vendor: + # po_id.write({'state': 'sent'}) + # else: + po_id.write({'state': 'draft'}) + po_id.write({'send_to_budget': False}) + self.write({'state': 'approve'}) + else: + # if po_id.email_to_vendor: + # po_id.write({'state': 'sent'}) + # else: + po_id.write({'state': 'draft'}) + po_id.write({'send_to_budget': False}) + self.write({'state': 'approve'}) def second_approval(self): purchase_orders = self.env['purchase.order'].search([('requisition_id', '=', self.id)]) diff --git a/odex25_purchase/purchase_requisition_custom/views/purchase_requisition_custom.xml b/odex25_purchase/purchase_requisition_custom/views/purchase_requisition_custom.xml index a2bd4f890..5f2473e01 100644 --- a/odex25_purchase/purchase_requisition_custom/views/purchase_requisition_custom.xml +++ b/odex25_purchase/purchase_requisition_custom/views/purchase_requisition_custom.xml @@ -112,6 +112,8 @@ '|', ('state','in',['sign','purchase','to approve','done', 'cancel','budget_rejected','wait_for_send','waiting']), ('is_signed', '=', True)]}" string="Sign"/> +