Cześć, wiecie co jest nie tak z tym kodem?
Tabela product ma price
Tabela product_special ma price
Tabela Rabaty nie ma price jest obliczane, produkty wyśiwetla ale gdy dodaje do koszyka coś jest nie tak bo jak dodam produkt z rabetm jest ok,
jak dodam produkt specjalny jest ok
ale jak dodam produkt specjalny a pozniej z rabtem to ceny nie wylicza, próbwałem różnych kombinacji i poległem, prosiłbym o pomoc
// Product Specials
$product_special_query = $this->db->query("SELECT price FROM " . DB_PREFIX . "product_special WHERE product_id = '" . (int)$product_id . "' AND customer_group_id = '" . (int)$customer_group_id . "' AND ((date_start = '0000-00-00' OR date_start < NOW()) AND (date_end = '0000-00-00' OR date_end > NOW())) ORDER BY priority ASC, price ASC LIMIT 1");
if ($product_special_query->num_rows) {
$special = $product_special_query->row['price'];
$price = $special;
}
// Rabat
$product_rabat_query = $this->db->query("SELECT `discount` as rabat, `type` FROM " . DB_PREFIX . "rabat r LEFT JOIN " . DB_PREFIX . "rabat_product rp ON (r.rabat_id = rp.rabat_id) LEFT JOIN " . DB_PREFIX . "rabat_category rca ON (r.rabat_id = rca.rabat_id) LEFT JOIN " . DB_PREFIX . "rabat_manufacturer rm ON (r.rabat_id = rm.rabat_id) LEFT JOIN " . DB_PREFIX . "rabat_customer rc ON (r.rabat_id = rc.rabat_id) LEFT JOIN " . DB_PREFIX . "rabat_customer_group rcg ON (r.rabat_id = rcg.rabat_id) WHERE (rp.product_id = '" . (int)$product_id . "' OR rca.category_id IN (SELECT `category_id` FROM " . DB_PREFIX . "product_to_category WHERE `product_id` = '" . (int)$product_id . "' ) OR rm.manufacturer_id IN (SELECT `manufacturer_id` FROM " . DB_PREFIX . "product_to_manufacturer WHERE `product_id` = '" . (int)$product_id . "')) AND (rc.customer_id = '" . (int)$customer_id . "' OR rcg.customer_group_id = '" . (int)$customer_gr_id . "') AND r.status = '1' AND r.date_start <= CURDATE() AND r.date_end >= CURDATE()");
foreach ($product_rabat_query->rows as $prq) {
if ($prq['type']=='P') {
$price -= ( ( $price * $prq['rabat'] ) / 100);
} else {
$price -= $prq['rabat'];
}
}
}