Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT
- p.products_id,
- p.products_id as product_id,
- p.products_model,
- si.server_path as image_url,
- smprod.url as prod_url,
- p.manufacturers_id,
- p.manual_price,
- p.reliz_firm_id,
- prfirm.man_id as reliz_man_id,
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- prfirm_do.otgruzka,
- prfirm.otgruzka) as reliz_otgruzka,
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- IF(prfirm_do.date_next_order > NOW(),
- prfirm_do.date_next_order,
- null),
- IF(prfirm.date_next_order > NOW(),
- prfirm.date_next_order,
- null)) as date_next_order,
- sprfa.incoming_date as reliz_incoming,
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- prfirm_do.id,
- prfirm.id) as reliz_otgruzka_id,
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- prfirm_do.man_id,
- prfirm.man_id) as reliz_otgruzka_man_id,
- smprod.categories_id,
- smprod.yandex_kart,
- p.yandex_status,
- p.yandex_price,
- p.yandex_price_prior,
- p.yandex_shop,
- smprod.product_name as products_name,
- pd.short_desc_for_manager as `desc`,
- pd.komplekt as komplekt,
- IFNULL(prsklad.num_wdem_tovar, 0) as num_wdem_tovar,
- IFNULL(prsklad.num_otpravlen, 0) as num_otpravlen,
- IFNULL(prsklad.num_ozidaet, 0) as num_ozidaet,
- IFNULL(prsklad.num_payed, 0) as num_payed,
- IFNULL(prsklad.num_in_gorod, 0) as num_in_gorod,
- IFNULL(prsklad.num_transit_tovar, 0) as num_transit_tovar,
- IFNULL(prsklad.num_bron, 0) as num_bron,
- IFNULL(prsklad.num_prihod, 0) as num_prihod,
- prsklad.num as num_sklad,
- p.num_sklad as all_sklad,
- p.products_date_inven,
- p.option_use,
- p.products_date_added,
- p.products_last_modified,
- prsklad_all.date_last_prihod as products_last_prihod,
- pdate_last_buy.date as products_date_last_buy,
- pdate_last_reliz.date as products_date_last_reliz,
- p.products_date_market_price,
- prsklad.date_prihod as date_available,
- prsklad_all.last_up as products_date_1c,
- p.num_wait_prih,
- smprod.model as model_tel,
- IFNULL(pdo.num_reserv, p.num_reserv) AS num_reserv,
- p.num_reserv AS all_reserv,
- p.num_average_day,
- p.num_price,
- smprod.product_status as products_status,
- smprod.zvanie,
- p.to_1c,
- IFNULL(prsklad_all.num, 0) as all_sklad,
- IFNULL(prsklad_all.num_prihod, 0) as all_prihod,
- (IFNULL(prsklad_all.num, 0) - IFNULL(prsklad_all.num_otpravlen, 0) - IFNULL(prsklad_all.num_payed, 0) - IFNULL(prsklad_all.num_bron, 0)) as all_ostatok,
- p.num_other_sklad,
- IF(pdo.price IS NULL OR pdo.price = 0,
- p.products_price,
- pdo.price) as products_price,
- IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) as products_zak_price,
- IF(pdo.price IS NULL OR pdo.price = 0,
- p.products_price - IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) + IFNULL(IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) / 1.18 * bonus.percent_nds / 100 + IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) * bonus.percent / 100 + bonus.sum_add,
- 0),
- pdo.price - IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) + IFNULL(IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) / 1.18 * bonus.percent_nds / 100 + IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) * bonus.percent / 100 + bonus.sum_add,
- 0)) as price_profit,
- IFNULL(IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) / 1.18 * bonus.percent_nds / 100 + IF(smprod.product_status != 'sklad',
- IFNULL(r.zak_price, p.products_price - 300),
- p.zak_price) * bonus.percent / 100 + bonus.sum_add,
- 0) as bonus,
- IF(sps.display_in_product_list IS NULL
- OR sps.display_in_product_list = '1',
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- IF(sps.product_status_id IN (3 , 8),
- 2,
- 1),
- 1),
- 2) as options_status,
- pdo.products_status as options_status_id,
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- 1,
- 0) as reliz_firm_show,
- IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL
- AND sps.status_code IN ('none' , 'off', 'deleted'),
- 1,
- 0) as options_inactive,
- sps.title as options_status_comment,
- p.is_analog as analog_id,
- p.id1c as products_id_1c,
- pdo.id as products_do_id,
- pdo.id as do_id,
- pdo.color as do_color,
- pdo.name as do_name,
- pdo.val as do_val,
- pdo.qua as do_qua,
- IFNULL(cat.sort_order, 999) as cat_sort_order,
- sps.product_status_order as product_status_option_order,
- IFNULL(smprod.products_sort_order, 999) as sort_order,
- IF(p.num_sklad < 1
- AND smprod.product_status <> 'sklad',
- IF(p.reliz_firm_id IS NULL,
- IF(p.products_date_market_succes IS NOT NULL
- AND DATE_ADD(CURRENT_DATE, INTERVAL - 7 DAY) <= p.products_date_market_succes,
- 1,
- 0),
- 1),
- 0) as allow_reliz,
- IF(p.num_sklad < 1
- AND p.products_date_market_succes IS NOT NULL
- AND DATE_ADD(CURRENT_DATE, INTERVAL - 5 DAY) <= p.products_date_market_succes,
- IF(p.yandex_price IS NOT NULL,
- CEIL((p.yandex_price + 600) * 1.03),
- 0),
- 0) as allow_market_price,
- IF(p.products_date_market_succes IS NOT NULL
- AND DATE_ADD(CURRENT_DATE, INTERVAL - 5 DAY) <= p.products_date_market_succes,
- 1,
- IF(p.yandex_status IN (1 , 2), 1, 0)) as allow_order_market
- FROM
- `products` as p
- INNER JOIN
- sotm_products smprod ON (smprod.products_id = p.products_id)
- LEFT JOIN
- products_description AS pd ON (pd.products_id = p.products_id)
- LEFT JOIN
- products_sklad AS prsklad_all ON (prsklad_all.sklad = '000000001'
- AND prsklad_all.option_id = 0
- AND prsklad_all.id1c = p.id1c)
- LEFT JOIN
- categories cat ON (cat.categories_id = smprod.categories_id)
- LEFT JOIN
- sotm_product_x_image as def_img ON def_img.product_id = p.products_id
- AND def_img.is_default = 1
- LEFT JOIN
- sotm_images si ON (si.id = def_img.image_id)
- LEFT JOIN
- products_reliz r ON (r.id = p.reliz_id)
- LEFT JOIN
- products_reliz_firm prfirm ON (prfirm.id = p.reliz_firm_id
- AND prfirm.status = '1')
- LEFT JOIN
- products_property prp ON (prp.id1c = p.id1c
- AND prp.param = 'reliz_firm_show'
- AND prp.value = '1')
- LEFT JOIN
- products_do as pdo ON (pdo.id1c = p.id1c)
- LEFT JOIN
- sotm_product_status sps ON (sps.product_status_id = pdo.products_status)
- LEFT JOIN
- products_reliz_firm prfirm_do ON (prp.id IS NOT NULL
- AND prfirm_do.status = '1'
- AND prfirm_do.id = pdo.reliz_firm_id)
- LEFT JOIN
- products_sklad AS prsklad ON (`prsklad`.`sklad` IN ('000000001')
- AND prsklad.option_id = IFNULL(pdo.id, 0)
- AND prsklad.id1c = p.id1c)
- LEFT JOIN
- products_dates as pdate_last_reliz ON (pdate_last_reliz.id1c = p.id1c
- AND pdate_last_reliz.`field` = 'last_reliz')
- LEFT JOIN
- products_dates as pdate_last_buy ON (pdate_last_buy.id1c = p.id1c
- AND pdate_last_buy.`field` = 'last_buy')
- LEFT JOIN
- sotm_product_reliz_firm_available sprfa ON (sprfa.product_reliz_firm_id = IF(prp.id IS NOT NULL
- AND pdo.id IS NOT NULL,
- prfirm_do.id,
- prfirm.id))
- LEFT JOIN
- sotm_product_bonus AS bonus ON (bonus.product_id = p.products_id
- AND IF(bonus.date_from != '0000-00-00',
- CURDATE() > bonus.date_from,
- 1)
- AND IF(bonus.date_to != '0000-00-00',
- CURDATE() < bonus.date_to,
- 1))
- WHERE
- 1 = 1 AND 0 = 0
- GROUP BY products_id , products_do_id
- ORDER BY IF(CAST(prsklad.num AS SIGNED) - CAST(prsklad.num_otpravlen AS SIGNED) - CAST(prsklad.num_payed AS SIGNED) - CAST(prsklad.num_bron AS SIGNED) > 0,
- 1,
- 0) DESC , cat.sort_order ASC , prsklad.num DESC , sort_order ASC , p.id1c ASC , sps.product_status_order ASC
- LIMIT 0 , 100
Advertisement
Add Comment
Please, Sign In to add comment