if ($query->num_rows) {
$cid = (int)$this->customer->getId();
$pid = (int)$query->row['product_id'];
if($cid>'0' ) {
$pppo = $this->db->query("SELECT op.quantity FROM oc_order_product AS op LEFT JOIN oc_order AS o ON o.order_id=op.order_id WHERE o.customer_id='".$cid."' AND product_id = '" . (int)$pid . "' ");
if(isset($pppo->row['quantity']) AND !empty($pppo->row['quantity']) AND $pppo->row['quantity']>'0') {
$nqty = $pppo->row['quantity'];
} else {
$nqty = '0';
}
$ppp = $this->db->query("SELECT isbn, jan FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$query->row['product_id'] . "' LIMIT 1");
$iss = $query->row['isbn'];
$jan = $query->row['jan'];
$jjan = (int)$jan-(int)$nqty;
if($jjan>'0') {
// if($cart['quantity']<$jjan) {
$ppp = $this->db->query("SELECT isbn, jan FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$query->row['product_id'] . "' LIMIT 1");
$iss = $query->row['isbn'];
if($iss>'0') {
$price = $query->row['price']-$query->row['price']/100*$iss;
} else {
$price = $query->row['price'];
}
}
}
} else {
$ppp = $this->db->query("SELECT isbn, jan FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$query->row['product_id'] . "' LIMIT 1");
$iss = $query->row['isbn'];
$jan = $query->row['jan'];
if($jan>'0') {
// if($cart['quantity']<$jan) {
// $pp = $this->model_catalog_product->getProduct($query->row['product_id']);
$ppp = $this->db->query("SELECT isbn, jan FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$query->row['product_id'] . "' LIMIT 1");
$iss = $query->row['isbn'];
if($iss>'0') {
$price = $query->row['price']-$query->row['price']/100*$iss;
// $nprice = $product['price']/100*40;
} else {
// $nprice = $product['price']/100*40;
$price = $query->row['price'];
}
// }
}
}
if(empty($price)) {
$price = (int)$query->row['price']-(int)$query->row['price']/100*(int)$query->row['isbn'];
// $price = (int)$query->row['price'];
}
// $price = (int)$query->row['price']-(int)$query->row['price']/100*(int)$query->row['isbn'];
// $price = (int)$query->row['price'];
return array(
'product_id' => $query->row['product_id'],
'name' => $query->row['name'],
'description' => $query->row['description'],
'meta_title' => $query->row['meta_title'],
'meta_h1' => $query->row['meta_h1'],
'meta_description' => $query->row['meta_description'],
'meta_keyword' => $query->row['meta_keyword'],
'tag' => $query->row['tag'],
'model' => $query->row['model'],
'sku' => $query->row['sku'],
'upc' => $query->row['upc'],
'ean' => $query->row['ean'],
'jan' => $query->row['jan'],
'isbn' => $query->row['isbn'],
'mpn' => $query->row['mpn'],
'location' => $query->row['location'],
'quantity' => $query->row['quantity'],
'stock_status' => $query->row['stock_status'],
'image' => $query->row['image'],
'manufacturer_id' => $query->row['manufacturer_id'],
'manufacturer' => $query->row['manufacturer'],
'price' => ($query->row['discount'] ? $query->row['discount'] : $price),
'special' => $query->row['special'],
'reward' => $query->row['reward'],
'points' => $query->row['points'],
'tax_class_id' => $query->row['tax_class_id'],
'date_available' => $query->row['date_available'],
'weight' => $query->row['weight'],
'weight_class_id' => $query->row['weight_class_id'],
'length' => $query->row['length'],
'width' => $query->row['width'],
'height' => $query->row['height'],
'length_class_id' => $query->row['length_class_id'],
'subtract' => $query->row['subtract'],
'rating' => round($query->row['rating']),
'reviews' => $query->row['reviews'] ? $query->row['reviews'] : 0,
'minimum' => $query->row['minimum'],
'sort_order' => $query->row['sort_order'],
'status' => $query->row['status'],
'date_added' => $query->row['date_added'],
'date_modified' => $query->row['date_modified'],
'viewed' => $query->row['viewed']
);
} else {
return false;
}
}
Тут нужно проверку сделать product_id order_product_id customer_id
Если получается пользователь с customer_id = 1 купил уже этот товар на который каждому пользователю скидка на 2 шт по полям (isbn(%) jan(количество скидок)
то ему больше не будет скидки то есть
SET @customer = 1;
select tb03.customer_id, tb01.product_id, sum(tb01.quantity)
from oc_order_product tb01
left join oc_order tb02 ON tb01.order_id = tb02.order_id
left join oc_customer tb03 ON tb02.customer_id = tb03.customer_id
where tb03.customer_id = @customer
group by tb03.customer_id, tb01.product_id
В конце сверяем по товару product_id и product_id(купленого товара) Если равно то нужно будет quantity(количество купленого товара) - jan(количество скидок на этот товар) и если = 0 то не будет скидки типа!
Как этот sql добавить в мой нынешний код?
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости