@ -319,7 +319,7 @@
<select id= "exportDistributionDeliveryList" resultType= "com.logpm.distribution.excel.DistributionDeliveryListExcel" >
SELECT
lddl.id id,
lww.name AS warehouseName,
lww.NAME AS warehouseName,
lddl.train_number trainNumber,
lddl.warehouse_name warehouseName,
lddl.warehouse_id warehouseId,
@ -331,28 +331,32 @@
lddl.delivery_status deliveryStatus,
lddl.delivery_list_loading_status deliveryListLoadingStatus,
GROUP_CONCAT( y.order_code ) AS orderCode,
CASE lddl.kind
WHEN 1 THEN '自主配送'
WHEN 2 THEN '三方配送'
ELSE
'其他'
CASE
lddl.kind
WHEN 1 THEN
'自主配送'
WHEN 2 THEN
'三方配送' ELSE '其他'
END kind,
CASE lddl.type
WHEN 1 THEN '商配'
WHEN 2 THEN '市配'
CASE
lddl.type
WHEN 1 THEN
'商配'
WHEN 2 THEN
'市配'
END type,
CASE lddl.delivery_status
WHEN 1 THEN '待配送'
WHEN 2 THEN '配送中'
WHEN 3 THEN '已完成'
ELSE
'其他'
CASE
lddl.delivery_status
WHEN 1 THEN
'待配送'
WHEN 2 THEN
'配送中'
WHEN 3 THEN
'已完成' ELSE '其他'
END state,
(
SELECT
GROUP_CONCAT(
DISTINCT ldsu.forklift_name SEPARATOR ','
)
GROUP_CONCAT( DISTINCT ldsu.forklift_name SEPARATOR ',' )
FROM
logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
@ -363,42 +367,42 @@
) forkliftName,
lddl.create_time createTime,
(
SELECT
COALESCE (COUNT(*), 0 )
SELECT COALESCE
( COUNT(*), 0 )
FROM
logpm_distribution_signfor lds INNER JOIN logpm_distribution_reservation AS ldr ON lds.reservation_id = ldr.id
logpm_distribution_signfor lds
INNER JOIN logpm_distribution_reservation AS ldr ON lds.reservation_id = ldr.id
WHERE
lds.delivery_id = lddl.id and ldr.reservation_status != '40' AND (ldr.reservation_num + ldr.reservation_stock_list_num) > 0
lds.delivery_id = lddl.id
AND ldr.reservation_status != '40'
AND ( ldr.reservation_num + ldr.reservation_stock_list_num ) > 0
) customersNumber,
lddl.price price,
lddl.added_services_id addedServicesId,
(
SELECT
COALESCE (COUNT(*), 0 )
SELECT COALESCE
( COUNT(*), 0 )
FROM
logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
JOIN logpm_distribution_reservation_stockarticle ldrs ON ldrs.reservation_id = ldr.id
WHERE
lds.delivery_id = lddl.id and ldrs.stock_article_status != 2
lds.delivery_id = lddl.id
AND ldrs.stock_article_status != 2
) orderNumber,
(
SELECT
COALESCE (sum(ldr.reservation_num), 0 )
SELECT COALESCE
( sum( ldr.reservation_num ), 0 )
FROM
logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
WHERE
lds.delivery_id = lddl.id and ldr.reservation_status != '40'
lds.delivery_id = lddl.id
AND ldr.reservation_status != '40'
) deliveryNumber,
(
SELECT
COALESCE (
sum(
ldr.reservation_stock_list_num
),
0
)
SELECT COALESCE
( sum( ldr.reservation_stock_list_num ), 0 )
FROM
logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
@ -407,9 +411,7 @@
) reservationStockListNum,
(
SELECT
GROUP_CONCAT(
DISTINCT lds.loader_name SEPARATOR ','
)
GROUP_CONCAT( DISTINCT lds.loader_name SEPARATOR ',' )
FROM
logpm_distribution_signfor ldsf
JOIN logpm_distribution_reservation ldr ON ldr.id = ldsf.reservation_id
@ -420,9 +422,7 @@
) loadingTeamName,
(
SELECT
GROUP_CONCAT(
DISTINCT lds.fix_time SEPARATOR ','
)
GROUP_CONCAT( DISTINCT lds.fix_time SEPARATOR ',' )
FROM
logpm_distribution_signfor ldsf
JOIN logpm_distribution_reservation ldr ON ldr.id = ldsf.reservation_id
@ -430,8 +430,6 @@
INNER JOIN logpm_distribution_stockup AS lds ON ldsi.stockup_id = lds.id
WHERE
ldsf.delivery_id = lddl.id
-- ) leadTime,
-- lds.delivery_id = lddl.id
) reservationId,
lddl.order_id orderId,
lddl.fee fee,
@ -440,13 +438,8 @@
lddl.note_number noteNumber,
lddl.source source,
(
SELECT
COALESCE (
sum(
ldr.reservation_stock_list_num
),
0
)
SELECT COALESCE
( sum( ldr.reservation_stock_list_num ), 0 )
FROM
logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
@ -454,29 +447,44 @@
lds.delivery_id = lddl.id
) inventoryNub,
(
SELECT
COALESCE (sum(lds.loaded_number), 0) + COALESCE (sum(lds.loadedin_number), 0 )
SELECT COALESCE
( sum( lds.loaded_number ), 0 ) + COALESCE ( sum( lds.loadedin_number ), 0 )
FROM
logpm_distribution_signfor lds
WHERE
lddl.id = lds.delivery_id
) scannedNumber,
(SELECT
COALESCE (sum(lds.received_quantity), 0) + COALESCE (sum(lds.receivedin_quantity), 0)
(
SELECT COALESCE
( sum( lds.received_quantity ), 0 ) + COALESCE ( sum( lds.receivedin_quantity ), 0 )
FROM
logpm_distribution_signfor lds
WHERE
lddl.id = lds.delivery_id
) signingNumber,
GROUP_CONCAT(DISTINCT ldr.consignee SEPARATOR ',') consignee,
GROUP_CONCAT(DISTINCT ldr.mall_name SEPARATOR ',') mallName,
(SELECT group_concat( DISTINCT ldsa.order_code SEPARATOR ',' ) FROM logpm_distribution_delivery_list lddll LEFT JOIN logpm_distribution_signfor lds ON lddll.id = lds.delivery_id LEFT JOIN logpm_distribution_reservation_stockarticle AS ldrs ON lds.reservation_id = ldrs.reservation_id AND ldrs.stock_article_status != 2 LEFT JOIN logpm_distribution_stock_article AS ldsa ON ldrs.stock_article_id = ldsa.id WHERE lddll.id = lddl.id GROUP BY lddl.id ) AS orderCode
FROM logpm_distribution_delivery_list lddl
GROUP_CONCAT( DISTINCT a.consignee SEPARATOR ',' ) consignee,
GROUP_CONCAT( DISTINCT a.mallName SEPARATOR ',' ) mallName,
(
SELECT
group_concat( DISTINCT ldsa.order_code SEPARATOR ',' )
FROM
logpm_distribution_delivery_list lddll
LEFT JOIN logpm_distribution_signfor lds ON lddll.id = lds.delivery_id
LEFT JOIN logpm_distribution_reservation_stockarticle AS ldrs ON lds.reservation_id = ldrs.reservation_id
AND ldrs.stock_article_status != 2
LEFT JOIN logpm_distribution_stock_article AS ldsa ON ldrs.stock_article_id = ldsa.id
WHERE
lddll.id = lddl.id
GROUP BY
lddl.id
) AS orderCode
FROM
logpm_distribution_delivery_list lddl
LEFT JOIN (
SELECT
lddl.id,
a.consignee AS consignee,
a.mall_name AS mallName,
ldr .consignee AS consignee,
ldr.mall_name AS mallName
FROM
logpm_distribution_delivery_list lddl
LEFT JOIN logpm_distribution_signfor lds ON lddl.id = lds.delivery_id
@ -487,25 +495,40 @@
IF
( lddl.inventory_nub IS NULL, 0, lddl.inventory_nub ) > 0
AND ( lddl.customers_number > 0 AND ldr.reservation_num + ldr.reservation_stock_list_num ) > 0
AND lds.is_deleted = 0 AND lddl.is_deleted = 0 AND ldr.is_deleted = 0
AND lds.is_deleted = 0
AND lddl.is_deleted = 0
AND ldr.is_deleted = 0
GROUP BY
lddl.id
) AS a On a.id = lddl.id
LEFT JOIN (SELECT lddl.id,ldsa.order_code FROM logpm_distribution_delivery_list lddl
) AS a ON a.id = lddl.id
LEFT JOIN (
SELECT
lddl.id,
ldsa.order_code
FROM
logpm_distribution_delivery_list lddl
LEFT JOIN logpm_distribution_signfor lds ON lddl.id = lds.delivery_id
LEFT JOIN logpm_distribution_reservation_stockarticle AS ldrs ON lds.reservation_id = ldrs.reservation_id AND ldrs.stock_article_status != 2
LEFT JOIN logpm_distribution_stock_article AS ldsa ON ldrs.stock_article_id = ldsa.id ) AS y ON y.id = lddl.id
LEFT JOIN logpm_distribution_reservation_stockarticle AS ldrs ON lds.reservation_id = ldrs.reservation_id
AND ldrs.stock_article_status != 2
LEFT JOIN logpm_distribution_stock_article AS ldsa ON ldrs.stock_article_id = ldsa.id
) AS y ON y.id = lddl.id
LEFT JOIN logpm_warehouse_warehouse AS lww ON lddl.warehouse_id = lww.id
<where >
lddl.is_deleted = 0
AND (IF(lddl.delivery_number is null ,0,lddl.delivery_number) + IF(lddl.inventory_nub is null ,0,lddl.inventory_nub)) > 0
AND (lddl.customers_number > 0 AND ldr.reservation_num + ldr.reservation_stock_list_num) >0
AND lddl.customers_number > 0
<if test= "param.ids != null and param.ids!=''" >
and lddl.id in
<foreach collection= "param.ids" item= "item" open= "(" close= ")" separator= "," >
#{item}
</foreach>
</if>
<if test= "param.trainNumber != null and param.trainNumber!=''" >
and lddl.train_number like concat('%',#{param.trainNumber},'%')
</if>
<if test= "param.warehouseIdList != null and @org.apache.commons.collections4.CollectionUtils@isNotEmpty(param.warehouseIdList)" >
<if test= "param.warehouseIds != null and @org.apache.commons.collections4.CollectionUtils@isNotEmpty(param.warehouseIds)" >
and lddl.warehouse_id in
<foreach collection= "param.warehouseIdList" item= "item" open= "(" close= ")" separator= "," >
<foreach collection= "param.warehouseIds" item= "item" open= "(" close= ")" separator= "," >
#{item}
</foreach>
</if>