function process($data, $categoryId, $parentCategoryId, $manufacturerId, $warehouse) { $buffer = new Products_Buffer(); $buffer->init($this->link, $this->table_prefix, $this->buffer_id); $buffer_result = 0; $buffer_result = $buffer->processRecord($data, $this->product_id, $categoryId, $manufacturerId, $warehouse); //Задача по управлению обновлением/добавлением запчастей лежит на классе буффер, здесь только принимаем результат, и выполняем его if ($buffer_result > 0) { //обновление $this->updateExist($data, $buffer_result); } elseif ($buffer_result == 0) { //добавление $this->newProduct($data, $categoryId, $parentCategoryId, $manufacturerId, $warehouse); } else { //обновление, но обновлять не требуется } $this->product_id = $this->product_id + 1; $this->buffer_id = $this->buffer_id + 1; }