SELECT
od.product_id,
COALESCE(SUM(od.quantity), 0) AS demand_quantity
FROM wms_order_detail od
JOIN wms_order o ON od.order_id = o.order_id
WHERE o.del_flag = 0
AND od.del_flag = 0
AND o.order_status IN (0, 1)
GROUP BY od.product_id
SELECT
item_id AS product_id,
COUNT(*) AS coil_count,
COALESCE(SUM(net_weight), 0) AS total_weight
FROM wms_material_coil
WHERE del_flag = 0
AND status = 0
AND data_type = 0
AND item_type = 'product'
AND (material_type IS NULL OR material_type != '废品')
GROUP BY item_id
SELECT
item_id AS raw_material_id,
COUNT(*) AS coil_count,
COALESCE(SUM(net_weight), 0) AS total_weight
FROM wms_material_coil
WHERE del_flag = 0
AND status = 0
AND data_type = 0
AND item_type = 'raw_material'
AND (material_type IS NULL OR material_type != '废品')
GROUP BY item_id
FROM erp_purchase_order_item poi
JOIN erp_purchase_order po ON poi.order_id = po.order_id
LEFT JOIN wms_raw_material rm ON rm.raw_material_code = poi.material_type_code
WHERE poi.del_flag = 0
AND po.del_flag = 0
AND rm.raw_material_id IS NOT NULL
SELECT
rm.raw_material_id,
COALESCE(SUM(poi.quantity), 0) AS quantity
AND po.order_status = 1
GROUP BY rm.raw_material_id
SELECT
rm.raw_material_id,
COALESCE(SUM(poi.quantity), 0) AS quantity
AND po.order_status = 0
GROUP BY rm.raw_material_id