Browse Source

fix(xml): 修改配送报表客户签收数和文员签收数不正确问题

pull/36/head
zhaoqiaobo 9 months ago
parent
commit
9bf5189d3e
  1. 161
      blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml

161
blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml

@ -26,93 +26,88 @@
ds_num,
ss_num,
unloading_team_name
from (SELECT d.train_number train_number,
d.task_time task_time,
d.warehouse_name warehouse_name,
CASE
WHEN d.type = 1 THEN
'商配'
WHEN d.type = 2 THEN
'市配'
ELSE ''
END type,
CASE
WHEN d.kind = 1 THEN
'自主配送'
WHEN d.kind = 2 THEN
'自主配送'
ELSE ''
END kind,
d.vehicle_name vehicle_name,
d.driver_name driver_name,
d.distribution_company distribution_company,
CASE
WHEN d.delivery_status = 1 THEN
'待配送'
WHEN d.delivery_status = 2 THEN
'配送中'
WHEN d.delivery_status = 3 THEN
'已完成'
ELSE ''
END delivery_status,
d.customers_number customers_number,
d.price,
d.order_number order_number,
rn.num reservation_num,
rsln.num reservation_stock_listNum,
IFNULL(loadScan.loadedNum, 0) loaded_num,
IFNULL(loadscaninvn.loadedNum, 0) invn_loaded_num,
IFNULL(loadScan.exLoadedNum, 0) ex_loaded_num,
IFNULL(loadScan.reNum, 0) re_num,
IFNULL(loadscaninvn.reNum, 0) invn_re_num,
IFNULL(loadScan.exReNum, 0) ex_reNum,
ifnull(ds.dsNum, 0) ds_num,
ifnull(ds.ssNum, 0) ss_num,
ifnull(d.unloading_team_name, '') unloading_team_name
FROM logpm_distribution_delivery_list d
LEFT JOIN (SELECT lds.delivery_id,
COALESCE(sum(ldr.reservation_num), 0) num
FROM logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
WHERE ldr.reservation_status != '40'
GROUP BY lds.delivery_id) rn ON rn.delivery_id = d.id
LEFT JOIN (SELECT lds.delivery_id,
COALESCE(sum(ldr.reservation_stock_list_num), 0) num
FROM logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr ON lds.reservation_id = ldr.id
GROUP BY lds.delivery_id) rsln ON rsln.delivery_id = d.id
left join (select t.delivery_id,
SUM(t.loaded_nub) loadedNum,
sum(t.received_quantity) reNum,
sum(if(t.is_abnormal_loading = 1, 0, 1)) exLoadedNum,
sum(if(t.is_abnormal_signing = 1, 0, 1)) exReNum
from logpm_distribution_loadscan t
where t.scan_status != 1
group by t.delivery_id) loadScan on loadScan.delivery_id = d.id
from (select
d.train_number train_number,
d.task_time task_time,
d.warehouse_name warehouse_name,
CASE
WHEN d.type = 1 THEN
'商配'
WHEN d.type = 2 THEN
'市配'
ELSE ''
END type,
CASE
WHEN d.kind = 1 THEN
'自主配送'
WHEN d.kind = 2 THEN
'自主配送'
ELSE ''
END kind,
d.vehicle_name vehicle_name,
d.driver_name driver_name,
d.distribution_company distribution_company,
CASE
WHEN d.delivery_status = 1 THEN
'待配送'
WHEN d.delivery_status = 2 THEN
'配送中'
WHEN d.delivery_status = 3 THEN
'已完成'
ELSE ''
END delivery_status,
d.customers_number customers_number,
d.price,
d.order_number order_number,
rn.num reservation_num,
rn.stnum reservation_stock_listNum,
IFNULL(loadScan.loadedNum, 0) loaded_num,
IFNULL(loadscaninvn.loadedNum, 0) invn_loaded_num,
IFNULL(loadScan.exLoadedNum, 0) ex_loaded_num,
IFNULL(loadScan.reNum, 0) re_num,
IFNULL(loadscaninvn.reNum, 0) invn_re_num,
IFNULL(loadScan.exReNum, 0) ex_reNum,
ifnull(rn.dsNum, 0) ds_num,
ifnull(rn.ssNum, 0) ss_num,
ifnull(d.unloading_team_name, '') unloading_team_name
from
logpm_distribution_delivery_list d
LEFT JOIN (
SELECT lds.delivery_id,
COALESCE(sum(ldr1.reservation_num), 0) num,
COALESCE(sum(ldr1.reservation_stock_list_num), 0) stnum,
SUM(CASE
WHEN lds.driver_signing = 2 THEN
1
ELSE
0
END) dsNum,
SUM(CASE
WHEN lds.signing_status = 2 THEN
1
ELSE
0
END) ssNum
FROM logpm_distribution_signfor lds
JOIN logpm_distribution_reservation ldr1 ON lds.reservation_id = ldr1.id
WHERE ldr1.reservation_status != '40'
GROUP BY lds.delivery_id order by null
) rn ON rn.delivery_id = d.id
left join (select t.delivery_id,
SUM(t.loaded_nub) loadedNum,
sum(t.received_quantity) reNum,
sum(if(t.is_abnormal_loading = 1, 0, 1)) exLoadedNum,
sum(if(t.is_abnormal_signing = 1, 0, 1)) exReNum
from logpm_distribution_loadscan t
where t.scan_status != 1
group by t.delivery_id order by null) loadScan on loadScan.delivery_id = d.id
left join (select t.delivery_id,
SUM(t.loaded_nub) loadedNum,
sum(t.received_quantity) reNum
from logpm_distribution_loadscaninvn t
group by t.delivery_id) loadscaninvn on loadscaninvn.delivery_id = d.id
left join (select t.delivery_id,
SUM(CASE
WHEN t.driver_signing = 2 THEN
1
ELSE
0
END) dsNum,
SUM(CASE
WHEN t.signing_status = 2 THEN
1
ELSE
0
END) ssNum
from logpm_distribution_signfor t
group by t.delivery_id) ds on ds.delivery_id = d.id) t
where t.scan_status != 1
group by t.delivery_id order by null) loadscaninvn on loadscaninvn.delivery_id = d.id
where d.customers_number != 0) t
${ew.customSqlSegment}
</select>
<select id="getCustomerPage" resultType="com.logpm.report.vo.ReportCustomerVO">

Loading…
Cancel
Save