diff options
| -rw-r--r-- | indoteknik_custom/models/automatic_purchase.py | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/indoteknik_custom/models/automatic_purchase.py b/indoteknik_custom/models/automatic_purchase.py index ca6b38ba..af46dd8e 100644 --- a/indoteknik_custom/models/automatic_purchase.py +++ b/indoteknik_custom/models/automatic_purchase.py @@ -26,6 +26,7 @@ class AutomaticPurchase(models.Model): current_time = datetime.now() vendor_ids = self.env['automatic.purchase.line'].read_group([('automatic_purchase_id', '=', self.id), ('partner_id', '!=', False)], fields=['partner_id'], groupby=['partner_id']) + counter_po_number = 0 for vendor in vendor_ids: param_header = { 'partner_id': vendor['partner_id'][0], @@ -36,14 +37,26 @@ class AutomaticPurchase(models.Model): 'picking_type_id': 28, # indoteknik bandengan receipts 'date_order': current_time } - new_po = self.env['purchase.order'].create([param_header]) + # new_po = self.env['purchase.order'].create([param_header]) products_vendors = self.env['automatic.purchase.line'].search([ ('automatic_purchase_id', '=', self.id), ('partner_id', '=', vendor['partner_id'][0]), ('qty_purchase', '>', 0) - ]) - count=0 + ], order='brand_id') + count = brand_id = 0 for product in products_vendors: + if count == 200 or brand_id != product.brand_id.id: + count = 0 + counter_po_number += 1 + new_po = self.env['purchase.order'].create([param_header]) + # print (new_po.name) + new_po.name = new_po.name + "/A/"+str(counter_po_number) + self.env['automatic.purchase.match'].create([{ + 'automatic_purchase_id': self.id, + 'order_id': new_po.id + }]) + self.env.cr.commit() + brand_id = product.brand_id.id count += 10 param_line = { 'order_id': new_po.id, @@ -58,10 +71,6 @@ class AutomaticPurchase(models.Model): product.current_po_line_id = new_line.id _logger.info('Automatic Create PO Line %s' % product.product_id.name) self.notification = self.notification + ' %s' % new_po.name - self.env['automatic.purchase.match'].create([{ - 'automatic_purchase_id': self.id, - 'order_id': new_po.id - }]) self.is_po = True def generate_automatic_purchase(self): |
