rev:WQL DISTINCT优化
This commit is contained in:
@@ -96,6 +96,10 @@ public class OutChargeServiceImpl implements OutChargeService {
|
||||
map.put("end_time", end_time);
|
||||
}
|
||||
|
||||
if (ObjectUtil.isNotEmpty(map.get("sap_pcsn"))) {
|
||||
map.put("flag", "151");
|
||||
}
|
||||
|
||||
JSONObject json = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "ios.iostorinv_id DESC");
|
||||
return json;
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService {
|
||||
@Override
|
||||
public Map<String, Object> pageQuery(Map whereJson, Pageable page) {
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("flag", "1");
|
||||
map.put("flag", "30");
|
||||
map.put("buss_type", (String) whereJson.get("buss_type"));
|
||||
map.put("stor_id", (String) whereJson.get("stor_id"));
|
||||
map.put("bill_type", (String) whereJson.get("bill_type"));
|
||||
@@ -172,6 +172,10 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService {
|
||||
map.put("in_stor_id", in_stor_id);
|
||||
}
|
||||
|
||||
if (ObjectUtil.isNotEmpty(map.get("sap_pcsn_in"))) {
|
||||
map.put("flag", "29");
|
||||
}
|
||||
|
||||
JSONObject jo = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "iostorinv_id desc");
|
||||
return jo;
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
|
||||
IF 输入.flag = "1"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
ios.*,
|
||||
IFNULL(dtl.vbeln,'') as vbeln
|
||||
FROM
|
||||
@@ -150,6 +150,203 @@
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "29"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
ios2.*,
|
||||
IFNULL(dtl2.vbeln,'') as vbeln
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
ios.*
|
||||
FROM
|
||||
ST_IVT_IOStorInv ios
|
||||
WHERE
|
||||
ios.is_delete = '0'
|
||||
AND ios.io_type = '0'
|
||||
AND ios.stor_id in 输入.in_stor_id
|
||||
OPTION 输入.stor_id <> ""
|
||||
ios.stor_id = 输入.stor_id
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.bill_type <> ""
|
||||
ios.bill_type = 输入.bill_type
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.bill_code <> ""
|
||||
ios.bill_code like 输入.bill_code
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.create_mode <> ""
|
||||
ios.create_mode = 输入.create_mode
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.bill_status <> ""
|
||||
ios.bill_status = 输入.bill_status
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.begin_time <> ""
|
||||
ios.input_time >= 输入.begin_time
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.end_time <> ""
|
||||
ios.input_time <= 输入.end_time
|
||||
ENDOPTION
|
||||
) ios2
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
dis.iostorinv_id
|
||||
FROM
|
||||
st_ivt_iostorinvdis dis
|
||||
LEFT JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn
|
||||
WHERE
|
||||
1 = 1
|
||||
OPTION 输入.box_no <> ""
|
||||
dis.box_no like 输入.box_no
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.box_no_in <> ""
|
||||
dis.box_no IN 输入.box_no_in
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.pcsn <> ""
|
||||
dis.pcsn like 输入.pcsn
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.pcsn_in <> ""
|
||||
dis.pcsn IN 输入.pcsn_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
|
||||
) dis2 ON dis2.iostorinv_id = ios2.iostorinv_id
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
dtl.iostorinv_id,
|
||||
MAX( vbeln ) AS 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
|
||||
GROUP BY
|
||||
dtl.iostorinv_id
|
||||
) dtl2 ON ios2.iostorinv_id = dtl2.iostorinv_id
|
||||
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "30"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
ios2.*,
|
||||
IFNULL(dtl2.vbeln,'') as vbeln
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
ios.*
|
||||
FROM
|
||||
ST_IVT_IOStorInv ios
|
||||
WHERE
|
||||
ios.is_delete = '0'
|
||||
AND ios.io_type = '0'
|
||||
AND ios.stor_id in 输入.in_stor_id
|
||||
OPTION 输入.stor_id <> ""
|
||||
ios.stor_id = 输入.stor_id
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.bill_type <> ""
|
||||
ios.bill_type = 输入.bill_type
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.bill_code <> ""
|
||||
ios.bill_code like 输入.bill_code
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.create_mode <> ""
|
||||
ios.create_mode = 输入.create_mode
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.bill_status <> ""
|
||||
ios.bill_status = 输入.bill_status
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.begin_time <> ""
|
||||
ios.input_time >= 输入.begin_time
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.end_time <> ""
|
||||
ios.input_time <= 输入.end_time
|
||||
ENDOPTION
|
||||
) ios2
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
dis.iostorinv_id
|
||||
FROM
|
||||
st_ivt_iostorinvdis dis
|
||||
WHERE
|
||||
1 = 1
|
||||
OPTION 输入.box_no <> ""
|
||||
dis.box_no like 输入.box_no
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.box_no_in <> ""
|
||||
dis.box_no IN 输入.box_no_in
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.pcsn <> ""
|
||||
dis.pcsn like 输入.pcsn
|
||||
ENDOPTION
|
||||
|
||||
OPTION 输入.pcsn_in <> ""
|
||||
dis.pcsn IN 输入.pcsn_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
|
||||
) dis2 ON dis2.iostorinv_id = ios2.iostorinv_id
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
dtl.iostorinv_id,
|
||||
MAX( vbeln ) AS 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
|
||||
GROUP BY
|
||||
dtl.iostorinv_id
|
||||
) dtl2 ON ios2.iostorinv_id = dtl2.iostorinv_id
|
||||
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "2"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
@@ -715,52 +912,128 @@
|
||||
|
||||
IF 输入.flag = "15"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
ios.*
|
||||
SELECT
|
||||
ios2.*
|
||||
FROM
|
||||
ST_IVT_IOStorInv ios
|
||||
LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinv_id = ios.iostorinv_id
|
||||
LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn
|
||||
WHERE
|
||||
ios.is_delete = '0'
|
||||
AND
|
||||
ios.io_type = '1'
|
||||
AND
|
||||
ios.is_writeoff = '0'
|
||||
AND
|
||||
ios.bill_status = '99'
|
||||
AND
|
||||
ios.bill_type in ('1001','1009')
|
||||
AND
|
||||
ios.stor_id in 输入.in_stor_id
|
||||
(
|
||||
SELECT
|
||||
ios.*
|
||||
FROM
|
||||
ST_IVT_IOStorInv ios
|
||||
WHERE
|
||||
ios.is_delete = '0'
|
||||
AND
|
||||
ios.io_type = '1'
|
||||
AND
|
||||
ios.is_writeoff = '0'
|
||||
AND
|
||||
ios.bill_status = '99'
|
||||
AND
|
||||
ios.bill_type in ('1001','1009')
|
||||
AND
|
||||
ios.stor_id in 输入.in_stor_id
|
||||
OPTION 输入.bill_code <> ""
|
||||
ios.bill_code like 输入.bill_code
|
||||
ENDOPTION
|
||||
OPTION 输入.stor_id <> ""
|
||||
ios.stor_id = 输入.stor_id
|
||||
ENDOPTION
|
||||
OPTION 输入.bill_type <> ""
|
||||
ios.bill_type = 输入.bill_type
|
||||
ENDOPTION
|
||||
OPTION 输入.create_mode <> ""
|
||||
ios.create_mode = 输入.create_mode
|
||||
ENDOPTION
|
||||
OPTION 输入.bill_status <> ""
|
||||
ios.bill_status = 输入.bill_status
|
||||
ENDOPTION
|
||||
OPTION 输入.begin_time <> ""
|
||||
ios.input_time >= 输入.begin_time
|
||||
ENDOPTION
|
||||
OPTION 输入.end_time <> ""
|
||||
ios.input_time <= 输入.end_time
|
||||
ENDOPTION
|
||||
) ios2
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
dis.iostorinv_id
|
||||
FROM
|
||||
st_ivt_iostorinvdis dis
|
||||
WHERE
|
||||
1 = 1
|
||||
OPTION 输入.pcsn <> ""
|
||||
dis.pcsn like 输入.pcsn
|
||||
ENDOPTION
|
||||
OPTION 输入.sap_pcsn <> ""
|
||||
sub.sap_pcsn like 输入.sap_pcsn
|
||||
ENDOPTION
|
||||
GROUP BY dis.iostorinv_id
|
||||
) dis2 ON dis2.iostorinv_id = ios2.iostorinv_id
|
||||
|
||||
OPTION 输入.bill_code <> ""
|
||||
ios.bill_code like 输入.bill_code
|
||||
ENDOPTION
|
||||
OPTION 输入.stor_id <> ""
|
||||
ios.stor_id = 输入.stor_id
|
||||
ENDOPTION
|
||||
OPTION 输入.pcsn <> ""
|
||||
dis.pcsn like 输入.pcsn
|
||||
ENDOPTION
|
||||
OPTION 输入.sap_pcsn <> ""
|
||||
sub.sap_pcsn like 输入.sap_pcsn
|
||||
ENDOPTION
|
||||
OPTION 输入.bill_type <> ""
|
||||
ios.bill_type = 输入.bill_type
|
||||
ENDOPTION
|
||||
OPTION 输入.create_mode <> ""
|
||||
ios.create_mode = 输入.create_mode
|
||||
ENDOPTION
|
||||
OPTION 输入.bill_status <> ""
|
||||
ios.bill_status = 输入.bill_status
|
||||
ENDOPTION
|
||||
OPTION 输入.begin_time <> ""
|
||||
ios.input_time >= 输入.begin_time
|
||||
ENDOPTION
|
||||
OPTION 输入.end_time <> ""
|
||||
ios.input_time <= 输入.end_time
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "151"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
ios2.*
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
ios.*
|
||||
FROM
|
||||
ST_IVT_IOStorInv ios
|
||||
WHERE
|
||||
ios.is_delete = '0'
|
||||
AND
|
||||
ios.io_type = '1'
|
||||
AND
|
||||
ios.is_writeoff = '0'
|
||||
AND
|
||||
ios.bill_status = '99'
|
||||
AND
|
||||
ios.bill_type in ('1001','1009')
|
||||
AND
|
||||
ios.stor_id in 输入.in_stor_id
|
||||
OPTION 输入.bill_code <> ""
|
||||
ios.bill_code like 输入.bill_code
|
||||
ENDOPTION
|
||||
OPTION 输入.stor_id <> ""
|
||||
ios.stor_id = 输入.stor_id
|
||||
ENDOPTION
|
||||
OPTION 输入.bill_type <> ""
|
||||
ios.bill_type = 输入.bill_type
|
||||
ENDOPTION
|
||||
OPTION 输入.create_mode <> ""
|
||||
ios.create_mode = 输入.create_mode
|
||||
ENDOPTION
|
||||
OPTION 输入.bill_status <> ""
|
||||
ios.bill_status = 输入.bill_status
|
||||
ENDOPTION
|
||||
OPTION 输入.begin_time <> ""
|
||||
ios.input_time >= 输入.begin_time
|
||||
ENDOPTION
|
||||
OPTION 输入.end_time <> ""
|
||||
ios.input_time <= 输入.end_time
|
||||
ENDOPTION
|
||||
) ios2
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
dis.iostorinv_id
|
||||
FROM
|
||||
st_ivt_iostorinvdis dis
|
||||
LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn
|
||||
WHERE
|
||||
1 = 1
|
||||
OPTION 输入.pcsn <> ""
|
||||
dis.pcsn like 输入.pcsn
|
||||
ENDOPTION
|
||||
OPTION 输入.sap_pcsn <> ""
|
||||
sub.sap_pcsn like 输入.sap_pcsn
|
||||
ENDOPTION
|
||||
GROUP BY dis.iostorinv_id
|
||||
) dis2 ON dis2.iostorinv_id = ios2.iostorinv_id
|
||||
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
|
||||
IF 输入.flag = "1"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
mst.stor_name,
|
||||
dis.sect_name,
|
||||
dis.struct_code,
|
||||
@@ -212,7 +212,7 @@
|
||||
|
||||
IF 输入.flag = "2"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
MAX(mst.stor_name) AS stor_name,
|
||||
MAX(dis.sect_name) AS sect_name,
|
||||
MAX(dis.struct_code) AS struct_code,
|
||||
@@ -340,7 +340,7 @@
|
||||
|
||||
IF 输入.flag = "3"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
mst.stor_name,
|
||||
dis.sect_name,
|
||||
dis.struct_code,
|
||||
@@ -501,7 +501,7 @@
|
||||
|
||||
IF 输入.flag = "4"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
MAX(mst.stor_name) AS stor_name,
|
||||
MAX(dis.sect_name) AS sect_name,
|
||||
MAX(dis.struct_code) AS struct_code,
|
||||
@@ -631,7 +631,7 @@
|
||||
|
||||
IF 输入.flag = "5"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
mst.stor_name,
|
||||
dis.sect_name,
|
||||
dis.struct_code,
|
||||
@@ -832,7 +832,7 @@
|
||||
|
||||
IF 输入.flag = "6"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
MAX(mst.stor_name) AS stor_name,
|
||||
MAX(dis.sect_name) AS sect_name,
|
||||
MAX(dis.struct_code) AS struct_code,
|
||||
|
||||
@@ -150,7 +150,7 @@
|
||||
|
||||
IF 输入.flag = "2"
|
||||
PAGEQUERY
|
||||
SELECT DISTINCT
|
||||
SELECT
|
||||
mst.stor_name,
|
||||
dis.sect_name,
|
||||
mst.bill_type,
|
||||
|
||||
Reference in New Issue
Block a user