concat(ifnull(t1.allocation_ids,''),if(t1.allocation_ids is not null,',',''), ifnull(t2.allocation_ids,'')) as allocations,
ldsl.description_goods materialName,
ldsl.sku sku,
ldsl.cargo_norms cargoNorms,
ldsl.cargo_number cargoNumber,
lddd.quantity planNum,
ldsl.cargo_unit cargoUnit,
ldsl.tray_name trayName,
ldsl.unpack unpack,
ldsl.source_type sourceType,
(
select COUNT(id)
from logpm_dis_stock_list_detail
where reservation_id = lddd.bill_lading_id and stock_package_code is NOT null AND stock_list_id = lddd.stock_list_id
) realNum,
lddd.id deliveryDetailsId
from logpm_distribution_delivery_details lddd
LEFT JOIN logpm_distribution_stock_list ldsl on lddd.stock_list_id = ldsl.id and ldsl.quantity_stock !=0
LEFT JOIN ( SELECT association_value,warehouse_id, GROUP_CONCAT( DISTINCT ( allocation_id )) AS allocation_ids FROM logpm_warehouse_updown_goods WHERE association_type = 4 GROUP BY association_value,warehouse_id ) AS t2 ON ldsl.cargo_number = t2.association_value and ldsl.warehouse_id=t2.warehouse_id
LEFT JOIN ( SELECT
SELECT
lddd.stock_list_id stockListId,
concat(
ifnull( t1.allocation_ids, '' ),
IF
( t1.allocation_ids IS NOT NULL, ',', '' ),
ifnull( t2.allocation_ids, '' )) AS allocations,
ldsl.description_goods materialName,
ldsl.sku sku,
ldsl.cargo_norms cargoNorms,
ldsl.cargo_number cargoNumber,
lddd.quantity planNum,
ldsl.cargo_unit cargoUnit,
ldsl.tray_name trayName,
ldsl.unpack unpack,
ldsl.source_type sourceType,
( SELECT COUNT( id ) FROM logpm_dis_stock_list_detail WHERE reservation_id = lddd.bill_lading_id AND stock_package_code IS NOT NULL AND stock_list_id = lddd.stock_list_id ) realNum,
lddd.id deliveryDetailsId
FROM
logpm_distribution_delivery_details lddd
LEFT JOIN logpm_distrilbution_bill_lading AS ldbl ON lddd.bill_lading_id = ldbl.id
LEFT JOIN logpm_distribution_stock_list ldsl ON lddd.stock_list_id = ldsl.id
AND ldsl.quantity_stock != 0
LEFT JOIN ( SELECT association_value, warehouse_id, GROUP_CONCAT( DISTINCT ( allocation_id )) AS allocation_ids,market_name FROM logpm_warehouse_updown_goods WHERE association_type = 4 GROUP BY association_value, warehouse_id,market_name ) AS t2 ON ldsl.cargo_number = t2.association_value AND t2.market_name = ldbl.consignee_unit
AND ldsl.warehouse_id = t2.warehouse_id
LEFT JOIN (
SELECT
ldpl.material_code,
ldpl.warehouse_id,
GROUP_CONCAT( DISTINCT ( lwug.allocation_id ) ) AS allocation_ids
GROUP_CONCAT( DISTINCT ( lwug.allocation_id ) ) AS allocation_ids,
ldsa.mall_name
FROM
logpm_warehouse_updown_goods lwug
LEFT JOIN logpm_distribution_parcel_list ldpl ON ldpl.id = lwug.association_id
LEFT JOIN logpm_distribution_stock_article AS ldsa ON ldpl.stock_article_id = ldsa.id
WHERE
lwug.association_type != 4
AND ldpl.conditions = 2
GROUP BY ldpl.material_code,ldpl.warehouse_id ) AS t1 ON ldsl.cargo_number = t1.material_code and ldsl.warehouse_id=t1.warehouse_id
where lddd.bill_lading_id = #{reservationId}
GROUP BY lddd.stock_list_id, ldsl.description_goods, ldsl.sku, ldsl.cargo_norms, lddd.quantity, ldsl.cargo_unit,