sum(case when transport_type = '国内陆运' then count else 0 end) as landCount,
sum(IF(transport_type = '国内陆运', count, 0)) as landCount,
sum(case when transport_type = '海运' then count else 0 end) as oceanCount,
sum(IF(transport_type = '海运', count, 0)) as oceanCount,
sum(case when transport_type = '空运' then count else 0 end) as airCount,
sum(IF(transport_type = '空运', count, 0)) as airCount,
sum(case when transport_type = '铁路运输' then count else 0 end) as railwayCount
sum(IF(transport_type = '铁路运输', count, 0)) as railwayCount
FROM
FROM (
(
SELECT tb5.bailun_sku bailun_sku,
SELECT
tb5.bailun_sku bailun_sku,
tb5.warehouse_code warehouse_code,
tb5.warehouse_code warehouse_code,
(
(
tb5.count - IFNULL( tb4.count, 0 )) AS count,
tb5.count - IFNULL(tb4.count, 0)) AS count,
0 as countplan,
0 as countplan,
tb5.transport_type transport_type
tb5.transport_type transport_type
FROM
FROM (
(
SELECT tb1.bailun_sku,
SELECT
tb1.bailun_sku,
tb1.warehouse_code,
tb1.warehouse_code,
sum( tb1.count ) count,
sum(tb1.count) count,
tb1.transport_type
tb1.transport_type
FROM
FROM dc_base_transfer_bale tb1
dc_base_transfer_bale tb1
LEFT JOIN dc_base_transfer_complete tb2 ON tb1.transfer_order_id = tb2.transfer_order_id
LEFT JOIN dc_base_transfer_complete tb2 ON tb1.transfer_order_id = tb2.transfer_order_id
WHERE
WHERE tb2.transfer_order_id IS NULL
tb2.transfer_order_id IS NULL
AND tb1.deleted = 0
AND tb1.deleted = 0
GROUP BY
GROUP BY bailun_sku,
bailun_sku,
warehouse_code
warehouse_code
) tb5
) tb5
LEFT JOIN (
LEFT JOIN (
SELECT
SELECT bailun_sku,
bailun_sku,
warehouse_code,
warehouse_code,
sum( count ) count
sum(count) count
FROM
FROM (
(
SELECT t1.bailun_sku,
SELECT
t1.bailun_sku,
t1.warehouse_code,
t1.warehouse_code,
(case WHEN t2.count > tbb.count then tbb.count else t2.count end) as count,
(case WHEN t2.count > tbb.count then tbb.count else t2.count end) as count,
t1.transfer_order_id
t1.transfer_order_id
FROM
FROM (SELECT max(create_time) AS create_time, bailun_sku, warehouse_code, transfer_order_id
( SELECT max( create_time ) AS create_time, bailun_sku, warehouse_code, transfer_order_id FROM dc_base_transfer_inbound WHERE deleted = 0 GROUP BY bailun_sku, warehouse_code, transfer_order_id ) t1
FROM dc_base_transfer_inbound
WHERE deleted = 0
GROUP BY bailun_sku, warehouse_code, transfer_order_id) t1
INNER JOIN dc_base_transfer_inbound t2 ON t1.bailun_sku = t2.bailun_sku
INNER JOIN dc_base_transfer_inbound t2 ON t1.bailun_sku = t2.bailun_sku
AND t1.warehouse_code = t2.warehouse_code
AND t1.warehouse_code = t2.warehouse_code
AND t1.transfer_order_id = t2.transfer_order_id
AND t1.transfer_order_id = t2.transfer_order_id
AND t1.create_time = t2.create_time
AND t1.create_time = t2.create_time
LEFT JOIN dc_base_transfer_bale tbb on t1.bailun_sku = tbb.bailun_sku and t1.warehouse_code = tbb.warehouse_code and t1.transfer_order_id = tbb.transfer_order_id
LEFT JOIN dc_base_transfer_bale tbb
on t1.bailun_sku = tbb.bailun_sku and t1.warehouse_code = tbb.warehouse_code and
t1.transfer_order_id = tbb.transfer_order_id
LEFT JOIN dc_base_transfer_complete tb2 ON t1.transfer_order_id = tb2.transfer_order_id
LEFT JOIN dc_base_transfer_complete tb2 ON t1.transfer_order_id = tb2.transfer_order_id
WHERE
WHERE tb2.bailun_sku IS NULL
tb2.bailun_sku IS NULL
) tb3
) tb3
GROUP BY
GROUP BY bailun_sku,
bailun_sku,
warehouse_code
warehouse_code
) tb4 ON tb5.bailun_sku = tb4.bailun_sku
) tb4 ON tb5.bailun_sku = tb4.bailun_sku
AND tb5.warehouse_code = tb4.warehouse_code
AND tb5.warehouse_code = tb4.warehouse_code
WHERE
WHERE (
(
tb5.count - IFNULL(tb4.count, 0)) > 0
tb5.count - IFNULL( tb4.count, 0 )) > 0 UNION ALL
UNION ALL
SELECT
SELECT bailun_sku,
bailun_sku,
warehouse_code,
warehouse_code,
sum( count ) AS count,
sum(count) AS count,
sum( count ) AS countplan,
sum(count) AS countplan,
transport_type
transport_type
FROM
FROM dc_base_transfer_plan
dc_base_transfer_plan
WHERE STATUS = 1
WHERE
STATUS = 1
AND deleted = 0
AND deleted = 0
GROUP BY
GROUP BY bailun_sku,
bailun_sku,
warehouse_code
warehouse_code
) t
) t
GROUP BY
GROUP BY bailun_sku,
bailun_sku,
warehouse_code
warehouse_code
</select>
</select>
...
@@ -686,7 +672,10 @@
...
@@ -686,7 +672,10 @@
</foreach>
</foreach>
ON DUPLICATE KEY UPDATE quantity_transfer = values(quantity_transfer),
ON DUPLICATE KEY UPDATE quantity_transfer = values(quantity_transfer),