diff --git a/jikimo_purchase_request/models/mrp_production.py b/jikimo_purchase_request/models/mrp_production.py index 02bff9fb..58a94eba 100644 --- a/jikimo_purchase_request/models/mrp_production.py +++ b/jikimo_purchase_request/models/mrp_production.py @@ -9,15 +9,19 @@ class MrpProduction(models.Model): @api.depends('state') def _compute_pr_mp_count(self): for item in self: - if item.product_id.product_tmpl_id.single_manufacturing == True and not item.is_remanufacture: - first_order = self.env['mrp.production'].search( - [('origin', '=', item.origin), ('product_id', '=', item.product_id.id)], limit=1, order='id asc') - pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', first_order.name)]) - item.pr_mp_count = len(pr_ids) - else: - pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', item.name)]) - item.pr_mp_count = len(pr_ids) - + # if item.product_id.product_tmpl_id.single_manufacturing == True and not item.is_remanufacture: + # first_order = self.env['mrp.production'].search( + # [('origin', '=', item.origin), ('product_id', '=', item.product_id.id)], limit=1, order='id asc') + # pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', first_order.name)]) + # item.pr_mp_count = len(pr_ids) + # else: + # pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', item.name)]) + # item.pr_mp_count = len(pr_ids) + # 由于采购申请合并了所有销售订单行的采购,所以不区分产品 + first_mp = self.env['mrp.production'].search( + [('origin', '=', item.origin)], limit=1, order='id asc') + pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', first_mp.name)]) + item.pr_mp_count = len(pr_ids) # pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', item.name), ('is_subcontract', '!=', 'True')]) def action_view_pr_mp(self): @@ -26,12 +30,17 @@ class MrpProduction(models.Model): """ self.ensure_one() # pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', self.name),('is_subcontract', '!=', True)]) - if self.product_id.product_tmpl_id.single_manufacturing == True and not self.is_remanufacture: - first_order = self.env['mrp.production'].search( - [('origin', '=', self.origin), ('product_id', '=', self.product_id.id)], limit=1, order='id asc') - pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', first_order.name)]) - else: - pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', self.name)]) + # if self.product_id.product_tmpl_id.single_manufacturing == True and not self.is_remanufacture: + # first_order = self.env['mrp.production'].search( + # [('origin', '=', self.origin), ('product_id', '=', self.product_id.id)], limit=1, order='id asc') + # pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', first_order.name)]) + # else: + # pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', self.name)]) + # 由于采购申请合并了所有销售订单行的采购,所以不区分产品 + first_mp = self.env['mrp.production'].search( + [('origin', '=', self.origin)], limit=1, order='id asc') + pr_ids = self.env['purchase.request'].sudo().search([('origin', 'like', first_mp.name)]) + action = { 'res_model': 'purchase.request',