diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java index e43c06db..7c48f5c9 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java @@ -106,7 +106,7 @@ public class PowderOrderQueryServiceImpl implements PowderOrderQueryService { String classIds = classstandardService.getAllChildIdStr(MaterOptTypeEnum.YL_AND_FL.getClass_idStr()); String RF = classstandardService.getAllChildIdStr(MaterOptTypeEnum.RF.getClass_idStr()); - JSONArray resultJSONArray = WQL.getWO("QP_POWDERORDERQUERY01").addParam("flag", "2").addParam("classIds", classIds).addParam("rf", RF).process().getResultJSONArray(0); + JSONArray resultJSONArray = WQL.getWO("QP_POWDERORDERQUERY01").addParam("flag", "2").addParam("classIds", classIds).process().getResultJSONArray(0); for (int i = 0; i < resultJSONArray.size(); i++) { JSONObject json = resultJSONArray.getJSONObject(i); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/QP_POWDERORDERQUERY01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/QP_POWDERORDERQUERY01.wql index 831592a2..49257afe 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/QP_POWDERORDERQUERY01.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/QP_POWDERORDERQUERY01.wql @@ -97,14 +97,20 @@ QUERY SELECT MAX(dtl.formuladtl_id) AS formuladtl_id, - mater.material_id, + mater.material_id AS material_id, MAX(mater.material_name) AS material_name, MAX(mater.material_code) AS material_code, group_concat(dtl.pcsn separator '+') AS pcsn, - group_concat(dtl.formula_qty separator '+') AS formula_qty + group_concat(dtl.formula_qty separator '+') AS formula_qty, + (case when class.class_id = '1503644362192588800' then 1 + when class.class_id = '1503644361664106496' then 2 + when class.class_id = '1503644362788179968' then 4 + when class.class_id = '1503644362234531840' then 5 + else 3 end) AS order_no FROM PDM_BI_FormulaDtl dtl LEFT JOIN md_me_materialbase mater ON dtl.material_id = mater.material_id + LEFT JOIN md_pb_classstandard class ON class.class_id = mater.material_type_id LEFT JOIN PDM_BI_Formula mst ON dtl.formula_id = mst.formula_id WHERE @@ -114,12 +120,36 @@ mater.material_type_id in 输入.classIds ENDOPTION - OPTION 输入.rf <> "" - mater.material_type_id not in 输入.rf + group by material_id + + union + + SELECT + MAX(dtl.formuladtl_id) AS formuladtl_id, + class.class_id AS material_id, + MAX(class.class_name) AS material_name, + MAX(class.class_code) AS material_code, + group_concat(dtl.pcsn separator '+') AS pcsn, + group_concat(dtl.formula_qty separator '+') AS formula_qty, + (case when class.class_id = '1503644362192588800' then 1 + when class.class_id = '1503644361664106496' then 2 + when class.class_id = '1503644362788179968' then 4 + when class.class_id = '1503644362234531840' then 5 + else 3 end) AS order_no + FROM + PDM_BI_FormulaDtl dtl + LEFT JOIN md_pb_classstandard class ON class.class_id = dtl.material_id + LEFT JOIN PDM_BI_Formula mst ON dtl.formula_id = mst.formula_id + + WHERE + mst.is_delete= '0' + + OPTION 输入.classIds <> "" + class.class_id in 输入.classIds ENDOPTION - group by mater.material_id - order by mater.material_id + group by material_id + order by order_no,material_code ENDSELECT ENDQUERY @@ -129,9 +159,9 @@ QUERY SELECT dtl.formuladtl_id, - mater.material_id, - mater.material_name, - mater.material_code, + mater.material_id AS material_id, + mater.material_name AS material_name, + mater.material_code AS material_code, dtl.pcsn, dtl.formula_qty FROM @@ -145,7 +175,26 @@ dtl.formula_id = 输入.formula_id ENDOPTION - order by mater.material_id + union + + SELECT + dtl.formuladtl_id, + class.class_id AS material_id, + class.class_name AS material_code, + class.class_code AS material_name, + dtl.pcsn, + dtl.formula_qty + FROM + PDM_BI_FormulaDtl dtl + LEFT JOIN md_pb_classstandard class ON class.class_id = dtl.material_id + + WHERE + 1=1 + OPTION 输入.formula_id <> "" + dtl.formula_id = 输入.formula_id + ENDOPTION + + order by material_id ENDSELECT