opt:优化,出库查询页面效率
This commit is contained in:
@@ -164,6 +164,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
|||||||
} else {
|
} else {
|
||||||
map.put("sap_pcsn", "%" + map.get("sap_pcsn") + "%");
|
map.put("sap_pcsn", "%" + map.get("sap_pcsn") + "%");
|
||||||
}
|
}
|
||||||
|
map.put("flag", "11");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (StrUtil.isNotEmpty(map.get("cust_code"))) {
|
if (StrUtil.isNotEmpty(map.get("cust_code"))) {
|
||||||
|
|||||||
@@ -88,40 +88,217 @@
|
|||||||
##########################################
|
##########################################
|
||||||
|
|
||||||
IF 输入.flag = "1"
|
IF 输入.flag = "1"
|
||||||
PAGEQUERY
|
PAGEQUERY
|
||||||
SELECT DISTINCT
|
SELECT
|
||||||
ios.*,
|
ios.*,
|
||||||
cu.shd_dtl_num,
|
a.plan_qty,
|
||||||
cu.cust_name,
|
IFNULL(c.vbeln,'') as vbeln
|
||||||
IFNULL(dtl.vbeln,'') as vbeln,
|
FROM
|
||||||
cu.cust_simple_name,
|
(
|
||||||
a.plan_qty,
|
SELECT
|
||||||
attr.stor_name AS out_stor_name
|
mst.*,
|
||||||
|
cu.shd_dtl_num,
|
||||||
|
cu.cust_name,
|
||||||
|
cu.cust_simple_name,
|
||||||
|
attr.stor_name AS out_stor_name
|
||||||
|
FROM
|
||||||
|
st_ivt_iostorinv mst
|
||||||
|
LEFT JOIN md_cs_customerbase cu ON mst.cust_code = cu.cust_code
|
||||||
|
LEFT JOIN st_ivt_bsrealstorattr attr ON attr.stor_id = mst.out_stor_id
|
||||||
|
WHERE
|
||||||
|
mst.io_type = '1'
|
||||||
|
and mst.is_delete='0'
|
||||||
|
and mst.stor_id in 输入.in_stor_id
|
||||||
|
OPTION 输入.bill_code <> ""
|
||||||
|
mst.bill_code like 输入.bill_code
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.cust_code <> ""
|
||||||
|
(cu.cust_code like 输入.cust_code or
|
||||||
|
cu.cust_simple_name like 输入.cust_code)
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.is_upload <> ""
|
||||||
|
mst.is_upload = 输入.is_upload
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.billTypes <> ""
|
||||||
|
mst.bill_type in 输入.billTypes
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.storIds <> ""
|
||||||
|
mst.stor_id in 输入.storIds
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.create_mode <> ""
|
||||||
|
mst.create_mode = 输入.create_mode
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.billStatuses <> ""
|
||||||
|
mst.bill_status in 输入.billStatuses
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.begin_time <> ""
|
||||||
|
mst.input_time >= 输入.begin_time
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.end_time <> ""
|
||||||
|
mst.input_time <= 输入.end_time
|
||||||
|
ENDOPTION
|
||||||
|
) ios
|
||||||
|
LEFT JOIN (
|
||||||
|
select
|
||||||
|
dtl.iostorinv_id,
|
||||||
|
dtl.vbeln
|
||||||
|
from
|
||||||
|
st_ivt_iostorinvdtl dtl
|
||||||
|
where 1=1
|
||||||
|
OPTION 输入.vbeln <> ""
|
||||||
|
dtl.vbeln like 输入.vbeln
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.vbeln_in <> ""
|
||||||
|
dtl.vbeln IN 输入.vbeln_in
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.width <> ""
|
||||||
|
dtl.width like 输入.width
|
||||||
|
ENDOPTION
|
||||||
|
GROUP BY
|
||||||
|
dtl.iostorinv_id,
|
||||||
|
dtl.vbeln
|
||||||
|
) c ON ios.iostorinv_id = c.iostorinv_id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT
|
||||||
|
dis.iostorinv_id
|
||||||
|
FROM
|
||||||
|
st_ivt_iostorinvdis dis
|
||||||
|
WHERE
|
||||||
|
1 = 1
|
||||||
|
OPTION 输入.pcsn <> ""
|
||||||
|
dis.pcsn like 输入.pcsn
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.pcsn_in <> ""
|
||||||
|
dis.pcsn IN 输入.pcsn_in
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.box_no <> ""
|
||||||
|
dis.box_no like 输入.box_no
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.box_no_in <> ""
|
||||||
|
dis.box_no IN 输入.box_no_in
|
||||||
|
ENDOPTION
|
||||||
|
GROUP BY
|
||||||
|
dis.iostorinv_id
|
||||||
|
) b ON b.iostorinv_id = ios.iostorinv_id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT
|
||||||
|
SUM(a.plan_qty) AS plan_qty,
|
||||||
|
a.iostorinv_id
|
||||||
|
FROM
|
||||||
|
st_ivt_iostorinvdis a
|
||||||
|
LEFT JOIN ST_IVT_IOStorInv b ON a.iostorinv_id = b.iostorinv_id
|
||||||
|
WHERE
|
||||||
|
b.io_type = '1'
|
||||||
|
and b.is_delete='0'
|
||||||
|
and b.is_overdue = '0'
|
||||||
|
GROUP BY a.iostorinv_id
|
||||||
|
) a ON a.iostorinv_id = ios.iostorinv_id
|
||||||
|
ENDSELECT
|
||||||
|
ENDPAGEQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "11"
|
||||||
|
PAGEQUERY
|
||||||
|
SELECT
|
||||||
|
ios.*,
|
||||||
|
a.plan_qty,
|
||||||
|
IFNULL(c.vbeln,'') as vbeln
|
||||||
FROM
|
FROM
|
||||||
ST_IVT_IOStorInv ios
|
(
|
||||||
LEFT JOIN md_cs_customerbase cu ON ios.cust_code = cu.cust_code
|
SELECT
|
||||||
LEFT JOIN st_ivt_iostorinvdtl dtl ON ios.iostorinv_id = dtl.iostorinv_id
|
mst.*,
|
||||||
LEFT JOIN st_ivt_iostorinvdis dis ON dtl.iostorinvdtl_id = dis.iostorinvdtl_id
|
cu.shd_dtl_num,
|
||||||
LEFT JOIN st_ivt_bsrealstorattr attr ON attr.stor_id = ios.out_stor_id
|
cu.cust_name,
|
||||||
LEFT JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn AND sub.bill_code = ios.bill_code
|
cu.cust_simple_name,
|
||||||
LEFT JOIN (
|
attr.stor_name AS out_stor_name
|
||||||
SELECT
|
FROM
|
||||||
SUM(a.plan_qty) AS plan_qty,
|
st_ivt_iostorinv mst
|
||||||
a.iostorinv_id
|
LEFT JOIN md_cs_customerbase cu ON mst.cust_code = cu.cust_code
|
||||||
FROM
|
LEFT JOIN st_ivt_bsrealstorattr attr ON attr.stor_id = mst.out_stor_id
|
||||||
st_ivt_iostorinvdis a
|
WHERE
|
||||||
LEFT JOIN ST_IVT_IOStorInv b ON a.iostorinv_id = b.iostorinv_id
|
mst.io_type = '1'
|
||||||
WHERE
|
and mst.is_delete='0'
|
||||||
b.io_type = '1'
|
and mst.stor_id in 输入.in_stor_id
|
||||||
and b.is_delete='0'
|
OPTION 输入.bill_code <> ""
|
||||||
and a.is_overdue = '0'
|
mst.bill_code like 输入.bill_code
|
||||||
and b.is_overdue = '1'
|
ENDOPTION
|
||||||
GROUP BY a.iostorinv_id
|
OPTION 输入.cust_code <> ""
|
||||||
|
(cu.cust_code like 输入.cust_code or
|
||||||
UNION
|
cu.cust_simple_name like 输入.cust_code)
|
||||||
|
ENDOPTION
|
||||||
SELECT
|
OPTION 输入.is_upload <> ""
|
||||||
|
mst.is_upload = 输入.is_upload
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.billTypes <> ""
|
||||||
|
mst.bill_type in 输入.billTypes
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.storIds <> ""
|
||||||
|
mst.stor_id in 输入.storIds
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.create_mode <> ""
|
||||||
|
mst.create_mode = 输入.create_mode
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.billStatuses <> ""
|
||||||
|
mst.bill_status in 输入.billStatuses
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.begin_time <> ""
|
||||||
|
mst.input_time >= 输入.begin_time
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.end_time <> ""
|
||||||
|
mst.input_time <= 输入.end_time
|
||||||
|
ENDOPTION
|
||||||
|
) ios
|
||||||
|
LEFT JOIN (
|
||||||
|
select
|
||||||
|
dtl.iostorinv_id,
|
||||||
|
dtl.vbeln
|
||||||
|
from
|
||||||
|
st_ivt_iostorinvdtl dtl
|
||||||
|
where 1=1
|
||||||
|
OPTION 输入.vbeln <> ""
|
||||||
|
dtl.vbeln like 输入.vbeln
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.vbeln_in <> ""
|
||||||
|
dtl.vbeln IN 输入.vbeln_in
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.width <> ""
|
||||||
|
dtl.width like 输入.width
|
||||||
|
ENDOPTION
|
||||||
|
GROUP BY
|
||||||
|
dtl.iostorinv_id,
|
||||||
|
dtl.vbeln
|
||||||
|
) c ON ios.iostorinv_id = c.iostorinv_id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT
|
||||||
|
dis.iostorinv_id
|
||||||
|
FROM
|
||||||
|
st_ivt_iostorinvdis dis
|
||||||
|
LEFT JOIN pdm_bi_subpackagerelationrecord sub ON (sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn AND dis.iostorinv_id = sub.bill_id)
|
||||||
|
WHERE
|
||||||
|
1 = 1
|
||||||
|
OPTION 输入.pcsn <> ""
|
||||||
|
dis.pcsn like 输入.pcsn
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.pcsn_in <> ""
|
||||||
|
dis.pcsn IN 输入.pcsn_in
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.box_no <> ""
|
||||||
|
dis.box_no like 输入.box_no
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.box_no_in <> ""
|
||||||
|
dis.box_no IN 输入.box_no_in
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.sap_pcsn <> ""
|
||||||
|
sub.sap_pcsn like 输入.sap_pcsn
|
||||||
|
ENDOPTION
|
||||||
|
OPTION 输入.sap_pcsn_in <> ""
|
||||||
|
sub.sap_pcsn IN 输入.sap_pcsn_in
|
||||||
|
ENDOPTION
|
||||||
|
GROUP BY
|
||||||
|
dis.iostorinv_id
|
||||||
|
) b ON b.iostorinv_id = ios.iostorinv_id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT
|
||||||
SUM(a.plan_qty) AS plan_qty,
|
SUM(a.plan_qty) AS plan_qty,
|
||||||
a.iostorinv_id
|
a.iostorinv_id
|
||||||
FROM
|
FROM
|
||||||
@@ -132,93 +309,10 @@
|
|||||||
and b.is_delete='0'
|
and b.is_delete='0'
|
||||||
and b.is_overdue = '0'
|
and b.is_overdue = '0'
|
||||||
GROUP BY a.iostorinv_id
|
GROUP BY a.iostorinv_id
|
||||||
|
) a ON a.iostorinv_id = ios.iostorinv_id
|
||||||
) a ON a.iostorinv_id = ios.iostorinv_id
|
ENDSELECT
|
||||||
WHERE
|
ENDPAGEQUERY
|
||||||
ios.io_type = '1'
|
ENDIF
|
||||||
and ios.is_delete='0'
|
|
||||||
and ios.stor_id in 输入.in_stor_id
|
|
||||||
|
|
||||||
OPTION 输入.bill_code <> ""
|
|
||||||
ios.bill_code like 输入.bill_code
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.sap_pcsn <> ""
|
|
||||||
sub.sap_pcsn like 输入.sap_pcsn
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.sap_pcsn_in <> ""
|
|
||||||
sub.sap_pcsn IN 输入.sap_pcsn_in
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.cust_code <> ""
|
|
||||||
(cu.cust_code like 输入.cust_code or
|
|
||||||
cu.cust_simple_name like 输入.cust_code)
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.pcsn <> ""
|
|
||||||
dis.pcsn like 输入.pcsn
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.pcsn_in <> ""
|
|
||||||
dis.pcsn IN 输入.pcsn_in
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.is_upload <> ""
|
|
||||||
ios.is_upload = 输入.is_upload
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.io_type <> ""
|
|
||||||
ios.io_type = 输入.io_type
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.vbeln <> ""
|
|
||||||
dtl.vbeln like 输入.vbeln
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.vbeln_in <> ""
|
|
||||||
dtl.vbeln IN 输入.vbeln_in
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.width <> ""
|
|
||||||
dtl.width like 输入.width
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.box_no <> ""
|
|
||||||
dis.box_no like 输入.box_no
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.box_no_in <> ""
|
|
||||||
dis.box_no IN 输入.box_no_in
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.billTypes <> ""
|
|
||||||
ios.bill_type in 输入.billTypes
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.storIds <> ""
|
|
||||||
ios.stor_id in 输入.storIds
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.create_mode <> ""
|
|
||||||
ios.create_mode = 输入.create_mode
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.billStatuses <> ""
|
|
||||||
ios.bill_status in 输入.billStatuses
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.begin_time <> ""
|
|
||||||
ios.input_time >= 输入.begin_time
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
OPTION 输入.end_time <> ""
|
|
||||||
ios.input_time <= 输入.end_time
|
|
||||||
ENDOPTION
|
|
||||||
|
|
||||||
ENDSELECT
|
|
||||||
ENDPAGEQUERY
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
IF 输入.flag = "111"
|
IF 输入.flag = "111"
|
||||||
QUERY
|
QUERY
|
||||||
|
|||||||
@@ -200,9 +200,8 @@
|
|||||||
iostorinv_id
|
iostorinv_id
|
||||||
FROM
|
FROM
|
||||||
st_ivt_iostorinvdis dis
|
st_ivt_iostorinvdis dis
|
||||||
LEFT JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn
|
LEFT JOIN pdm_bi_subpackagerelationrecord sub ON (sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn AND dis.iostorinv_id = sub.bill_id)
|
||||||
AND dis.box_no = sub.package_box_sn AND dis.iostorinv_id = sub.bill_id
|
WHERE
|
||||||
WHERE
|
|
||||||
1=1
|
1=1
|
||||||
OPTION 输入.pcsn <> ""
|
OPTION 输入.pcsn <> ""
|
||||||
dis.pcsn like 输入.pcsn
|
dis.pcsn like 输入.pcsn
|
||||||
|
|||||||
Reference in New Issue
Block a user