Woocommerce报告显示每种产品按日期出售的库存

时间:2019-02-20 15:14:56

标签: mysql wordpress woocommerce

我需要一些有关自定义查询的帮助,以显示按天销售的产品数量,并且正在按范围定义查询。例如,

日期范围:2019年2月1日至2019年2月5日 可用产品:短袖T恤

Product  Sold Date     Sold    Stocks Left
Tshirt   2019-02-01     5           20
         2019-02-02     2           18
         2019-02-03     0           18
         2019-02-04     1           17
         2019-02-05     2           15

Short    2019-02-01     2           40
         2019-02-02     4           36
         2019-02-03     5           31
         2019-02-04     1           30
         2019-02-05     5           25

我在这里看到了以下代码:Get today's total orders count for each product in Woocommerce

但是没有显示数量,它只是在计算交易数量,而不是在售数量。

预先感谢专家。

1 个答案:

答案 0 :(得分:0)

确定了这么长时间,以至于我创建了自己的查询,但是我正在使用ATUM多库存,如果您正在使用它,那么这也可能适合您。

$from = strtotime('2019-01-01 00:00:00');
$to = strtotime('2019-02-25 23:59:00');
$branch_request = 'Passi';

$sql = "
    SELECT DISTINCT p.ID as id, woi.order_item_name as name, woi.order_item_id as wid, aio.qty as quantity, p.post_title as title, ai.name as branchname, p.post_date as datesold
    FROM {$wpdb->prefix}posts as p
    INNER JOIN {$wpdb->prefix}woocommerce_order_items as woi ON woi.order_id = p.ID
    INNER JOIN {$wpdb->prefix}atum_inventory_orders as aio ON aio.order_item_id = woi.order_item_id
    INNER JOIN {$wpdb->prefix}atum_inventories as ai ON ai.id = aio.inventory_id
    WHERE p.post_status = 'wc-completed'
    AND ai.product_id = $product_request
    AND ai.name = '$branch_request'
    AND UNIX_TIMESTAMP(p.post_date) BETWEEN $from AND $to
    ORDER BY p.post_date ASC
";

对于$branch_request,我也做了一个函数来获取所有产品ID,foreach则显示product_id,并在{内分配了另一个foreach {1}}。