首页 > 解决方案 > 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

我在这里看到了这段代码:获取 Woocommerce 中每种产品的今天总订单数

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

在此先感谢大师。

标签: mysqlwordpresswoocommerce

解决方案


好吧,我已经创建了自己的查询,顺便说一句,我正在使用 ATUM Multi Inventory,如果您正在使用它,这可能也适合您。

$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 foreachproduct_idforeach$sql.


推荐阅读