add订单查询报表

master
yinq 2 years ago
parent 81eecfa6f3
commit 1e1d67569a

@ -414,6 +414,20 @@ public class ReportController {
}
}
/**
*
* @param paramMap
* @return
*/
@GetMapping("/orderQueryReportReport")
public R orderQueryReportReport(@RequestParam(required = false) Map paramMap){
try{
return R.ok(reportService.orderQueryReportReport(paramMap));
}catch (Exception e){
return R.failed(e.getMessage());
}
}
/**
*
* @param

@ -127,7 +127,7 @@ public interface ReportMapper {
* @param paramMap
* @return
*/
List<Map<String, Object>> monthLoadRateReport(Map paramMap);
List<Map<String, String>> monthLoadRateReport(Map paramMap);
/**
* ()
@ -197,4 +197,11 @@ public interface ReportMapper {
* @return
*/
List<Map<String, Object>> lastOperationCompletedReport(Map paramMap);
/**
*
* @param paramMap
* @return
*/
List<Map<String, Object>> orderQueryReportReport(Map paramMap);
}

@ -126,11 +126,11 @@ public interface ReportService {
List<Map<String, String>> weekLoadRateReport(Map paramMap);
/**
* ()
* ()
* @param paramMap
* @return
*/
List<Map<String, Object>> monthLoadRateReport(Map paramMap);
List<Map<String, String>> monthLoadRateReport(Map paramMap);
/**
* ()
@ -209,4 +209,11 @@ public interface ReportService {
*/
List<Map<String, Object>> lastOperationCompletedReport(Map paramMap);
/**
*
* @param paramMap
* @return
*/
List<Map<String, Object>> orderQueryReportReport(Map paramMap);
}

@ -594,18 +594,79 @@ public class ReportServiceImpl implements ReportService {
paramMap.put("site", site);
paramMap.put("locale", LocaleContextHolder.getLocale().getLanguage());
if (String.valueOf(paramMap.get("week")).equals("true")){
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd");
int dayOfWeek = now.getDayOfWeek().getValue();
LocalDateTime weekStart = now.minusDays(dayOfWeek - 1).with(LocalTime.MIN);
LocalDateTime weekEnd = now.plusDays(7 * 8 - dayOfWeek).with(LocalTime.MAX);
System.out.println("当前周的开始时间:" + weekStart.format(fmt));
System.out.println("当前周的结束时间:" + weekEnd.format(fmt));
List<Map<String, String>> weekOfDate = DateReportUtils.getWeekOfDate3(weekStart.format(fmt), weekEnd.format(fmt));
return weekOfDate;
}
return reportMapper.weekLoadRateReport(paramMap);
List<Map<String, String>> resultList = reportMapper.weekLoadRateReport(paramMap);
HashMap<String, String> countMap = new HashMap<>();
countMap.put("workCenterDescription","总计:");
Float tardinessWork = 0.00f;
Float weekCapacity = 0.00f;
Float unWorkHours1 = 0.00f;
Float unWorkHours2 = 0.00f;
Float unWorkHours3 = 0.00f;
Float unWorkHours4 = 0.00f;
Float unWorkHours5 = 0.00f;
Float unWorkHours6 = 0.00f;
Float unWorkHours7 = 0.00f;
Float unWorkHours8 = 0.00f;
Float weekRate1 = 0.00f;
Float weekRate2 = 0.00f;
Float weekRate3 = 0.00f;
Float weekRate4 = 0.00f;
Float weekRate5 = 0.00f;
Float weekRate6 = 0.00f;
Float weekRate7 = 0.00f;
Float weekRate8 = 0.00f;
for (Map<String, String> map : resultList) {
tardinessWork += Float.valueOf(String.valueOf(map.get("tardinessWork")));
if (!StringUtils.isBlank(map.get("weekCapacity"))){
weekCapacity += Float.valueOf(String.valueOf(map.get("weekCapacity")));
}
unWorkHours1 += Float.valueOf(String.valueOf(map.get("unWorkHours1")));
unWorkHours2 += Float.valueOf(String.valueOf(map.get("unWorkHours2")));
unWorkHours3 += Float.valueOf(String.valueOf(map.get("unWorkHours3")));
unWorkHours4 += Float.valueOf(String.valueOf(map.get("unWorkHours4")));
unWorkHours5 += Float.valueOf(String.valueOf(map.get("unWorkHours5")));
unWorkHours6 += Float.valueOf(String.valueOf(map.get("unWorkHours6")));
unWorkHours7 += Float.valueOf(String.valueOf(map.get("unWorkHours7")));
unWorkHours8 += Float.valueOf(String.valueOf(map.get("unWorkHours8")));
weekRate1 += Float.valueOf(String.valueOf(map.get("weekRate1")).replace("%",""));
weekRate2 += Float.valueOf(String.valueOf(map.get("weekRate2")).replace("%",""));
weekRate3 += Float.valueOf(String.valueOf(map.get("weekRate3")).replace("%",""));
weekRate4 += Float.valueOf(String.valueOf(map.get("weekRate4")).replace("%",""));
weekRate5 += Float.valueOf(String.valueOf(map.get("weekRate5")).replace("%",""));
weekRate6 += Float.valueOf(String.valueOf(map.get("weekRate6")).replace("%",""));
weekRate7 += Float.valueOf(String.valueOf(map.get("weekRate7")).replace("%",""));
weekRate8 += Float.valueOf(String.valueOf(map.get("weekRate8")).replace("%",""));
}
countMap.put("tardinessWork",String.format("%.2f",tardinessWork));
countMap.put("weekCapacity",String.format("%.2f",weekCapacity));
countMap.put("unWorkHours1",String.format("%.2f",unWorkHours1));
countMap.put("unWorkHours2",String.format("%.2f",unWorkHours2));
countMap.put("unWorkHours3",String.format("%.2f",unWorkHours3));
countMap.put("unWorkHours4",String.format("%.2f",unWorkHours4));
countMap.put("unWorkHours5",String.format("%.2f",unWorkHours5));
countMap.put("unWorkHours6",String.format("%.2f",unWorkHours6));
countMap.put("unWorkHours7",String.format("%.2f",unWorkHours7));
countMap.put("unWorkHours8",String.format("%.2f",unWorkHours8));
countMap.put("weekRate1",String.format("%.2f",weekRate1 / resultList.size()) + "%");
countMap.put("weekRate2",String.format("%.2f",weekRate2 / resultList.size()) + "%");
countMap.put("weekRate3",String.format("%.2f",weekRate3 / resultList.size()) + "%");
countMap.put("weekRate4",String.format("%.2f",weekRate4 / resultList.size()) + "%");
countMap.put("weekRate5",String.format("%.2f",weekRate5 / resultList.size()) + "%");
countMap.put("weekRate6",String.format("%.2f",weekRate6 / resultList.size()) + "%");
countMap.put("weekRate7",String.format("%.2f",weekRate7 / resultList.size()) + "%");
countMap.put("weekRate8",String.format("%.2f",weekRate8 / resultList.size()) + "%");
resultList.add(countMap);
return resultList;
}
/**
@ -614,7 +675,7 @@ public class ReportServiceImpl implements ReportService {
* @return
*/
@Override
public List<Map<String, Object>> monthLoadRateReport(Map paramMap) {
public List<Map<String, String>> monthLoadRateReport(Map paramMap) {
String site = CommonMethods.getSite();
paramMap.put("site", site);
paramMap.put("locale", LocaleContextHolder.getLocale().getLanguage());
@ -622,8 +683,8 @@ public class ReportServiceImpl implements ReportService {
paramMap.put("month",Integer.valueOf(String.valueOf(paramMap.get("month"))));
}
int month = Calendar.getInstance().get(Calendar.MONTH) + 1;
List<Map<String, Object>> result = reportMapper.monthLoadRateReport(paramMap);
for (Map<String, Object> map : result) {
List<Map<String, String>> result = reportMapper.monthLoadRateReport(paramMap);
for (Map<String, String> map : result) {
Float number = Float.valueOf(String.valueOf(map.get("workHours" + month))) + Float.valueOf(String.valueOf(map.get("tardinessWork")));
map.put("workHours" + month, String.format("%.2f",number));
if ((map.containsKey("monthCapacity"))){
@ -632,7 +693,91 @@ public class ReportServiceImpl implements ReportService {
map.put("monthRate" + month, "0.00%");
}
}
HashMap<String, String> countMap = new HashMap<>();
countMap.put("workCenterDescription","总计:");
Float monthCapacity = 0.00f;
Float tardinessWork = 0.00f;
Float workHours1 = 0.00f;
Float workHours2 = 0.00f;
Float workHours3 = 0.00f;
Float workHours4 = 0.00f;
Float workHours5 = 0.00f;
Float workHours6 = 0.00f;
Float workHours7 = 0.00f;
Float workHours8 = 0.00f;
Float workHours9 = 0.00f;
Float workHours10 = 0.00f;
Float workHours11= 0.00f;
Float workHours12 = 0.00f;
Float monthRate1 = 0.00f;
Float monthRate2 = 0.00f;
Float monthRate3 = 0.00f;
Float monthRate4 = 0.00f;
Float monthRate5 = 0.00f;
Float monthRate6 = 0.00f;
Float monthRate7 = 0.00f;
Float monthRate8 = 0.00f;
Float monthRate9 = 0.00f;
Float monthRate10 = 0.00f;
Float monthRate11 = 0.00f;
Float monthRate12 = 0.00f;
for (Map<String, String> map : result) {
tardinessWork += Float.valueOf(String.valueOf(map.get("tardinessWork")));
if (!StringUtils.isBlank(map.get("monthCapacity"))){
monthCapacity += Float.valueOf(String.valueOf(map.get("monthCapacity")));
}
workHours1 += Float.valueOf(String.valueOf(map.get("workHours1")));
workHours2 += Float.valueOf(String.valueOf(map.get("workHours2")));
workHours3 += Float.valueOf(String.valueOf(map.get("workHours3")));
workHours4 += Float.valueOf(String.valueOf(map.get("workHours4")));
workHours5 += Float.valueOf(String.valueOf(map.get("workHours5")));
workHours6 += Float.valueOf(String.valueOf(map.get("workHours6")));
workHours7 += Float.valueOf(String.valueOf(map.get("workHours7")));
workHours8 += Float.valueOf(String.valueOf(map.get("workHours8")));
workHours9 += Float.valueOf(String.valueOf(map.get("workHours9")));
workHours10 += Float.valueOf(String.valueOf(map.get("workHours10")));
workHours11 += Float.valueOf(String.valueOf(map.get("workHours11")));
workHours12 += Float.valueOf(String.valueOf(map.get("workHours12")));
monthRate1 += Float.valueOf(String.valueOf(map.get("monthRate1")).replace("%",""));
monthRate2 += Float.valueOf(String.valueOf(map.get("monthRate2")).replace("%",""));
monthRate3 += Float.valueOf(String.valueOf(map.get("monthRate3")).replace("%",""));
monthRate4 += Float.valueOf(String.valueOf(map.get("monthRate4")).replace("%",""));
monthRate5 += Float.valueOf(String.valueOf(map.get("monthRate5")).replace("%",""));
monthRate6 += Float.valueOf(String.valueOf(map.get("monthRate6")).replace("%",""));
monthRate7 += Float.valueOf(String.valueOf(map.get("monthRate7")).replace("%",""));
monthRate8 += Float.valueOf(String.valueOf(map.get("monthRate8")).replace("%",""));
monthRate9 += Float.valueOf(String.valueOf(map.get("monthRate9")).replace("%",""));
monthRate10 += Float.valueOf(String.valueOf(map.get("monthRate10")).replace("%",""));
monthRate11 += Float.valueOf(String.valueOf(map.get("monthRate11")).replace("%",""));
monthRate12 += Float.valueOf(String.valueOf(map.get("monthRate12")).replace("%",""));
}
countMap.put("tardinessWork",String.format("%.2f",tardinessWork));
countMap.put("monthCapacity",String.format("%.2f",monthCapacity));
countMap.put("workHours1",String.format("%.2f",workHours1));
countMap.put("workHours2",String.format("%.2f",workHours2));
countMap.put("workHours3",String.format("%.2f",workHours3));
countMap.put("workHours4",String.format("%.2f",workHours4));
countMap.put("workHours5",String.format("%.2f",workHours5));
countMap.put("workHours6",String.format("%.2f",workHours6));
countMap.put("workHours7",String.format("%.2f",workHours7));
countMap.put("workHours8",String.format("%.2f",workHours8));
countMap.put("workHours9",String.format("%.2f",workHours9));
countMap.put("workHours10",String.format("%.2f",workHours10));
countMap.put("workHours11",String.format("%.2f",workHours11));
countMap.put("workHours12",String.format("%.2f",workHours12));
countMap.put("monthRate1",String.format("%.2f",monthRate1 / result.size()) + "%");
countMap.put("monthRate2",String.format("%.2f",monthRate2 / result.size()) + "%");
countMap.put("monthRate3",String.format("%.2f",monthRate3 / result.size()) + "%");
countMap.put("monthRate4",String.format("%.2f",monthRate4 / result.size()) + "%");
countMap.put("monthRate5",String.format("%.2f",monthRate5 / result.size()) + "%");
countMap.put("monthRate6",String.format("%.2f",monthRate6 / result.size()) + "%");
countMap.put("monthRate7",String.format("%.2f",monthRate7 / result.size()) + "%");
countMap.put("monthRate8",String.format("%.2f",monthRate8 / result.size()) + "%");
countMap.put("monthRate9",String.format("%.2f",monthRate9 / result.size()) + "%");
countMap.put("monthRate10",String.format("%.2f",monthRate10 / result.size()) + "%");
countMap.put("monthRate11",String.format("%.2f",monthRate11 / result.size()) + "%");
countMap.put("monthRate12",String.format("%.2f",monthRate12 / result.size()) + "%");
result.add(countMap);
return result;
}
@ -721,7 +866,34 @@ public class ReportServiceImpl implements ReportService {
result.put("columnData",columnDataList);
result.put("rowData",rowDataList);*/
return reportMapper.weekDeliveryRateReport(paramMap);
List<Map<String, Object>> resultList = reportMapper.weekDeliveryRateReport(paramMap);
HashMap<String, Object> countMap = new HashMap<>();
countMap.put("workCenter","总计:");
Float sumQTY = 0.00f;
Float sumDoneQTY = 0.00f;
Float QTYrate = 0.00f;
Float sumHours = 0.00f;
Float sumDoneHours = 0.00f;
Float HOURSrate = 0.00f;
for (Map<String, Object> map : resultList) {
sumQTY += Float.valueOf(String.valueOf(map.get("sumQTY")));
sumDoneQTY += Float.valueOf(String.valueOf(map.get("sumDoneQTY")));
QTYrate += Float.valueOf(String.valueOf(map.get("QTYrate")).replace("%",""));
sumHours += Float.valueOf(String.valueOf(map.get("sumHours")));
sumDoneHours += Float.valueOf(String.valueOf(map.get("sumDoneHours")));
HOURSrate += Float.valueOf(String.valueOf(map.get("HOURSrate")).replace("%",""));
}
countMap.put("sumQTY",String.format("%.2f",sumQTY));
countMap.put("sumDoneQTY",String.format("%.2f",sumDoneQTY));
countMap.put("QTYrate",String.format("%.2f",QTYrate / resultList.size()) + "%");
countMap.put("sumHours",String.format("%.2f",sumHours));
countMap.put("sumDoneHours",String.format("%.2f",sumDoneHours));
countMap.put("HOURSrate",String.format("%.2f",HOURSrate / resultList.size()) + "%");
resultList.add(countMap);
return resultList;
}
/**
@ -734,7 +906,34 @@ public class ReportServiceImpl implements ReportService {
String site = CommonMethods.getSite();
paramMap.put("site", site);
paramMap.put("locale", LocaleContextHolder.getLocale().getLanguage());
return reportMapper.monthDeliveryRateReport(paramMap);
List<Map<String, Object>> resultList = reportMapper.monthDeliveryRateReport(paramMap);
HashMap<String, Object> countMap = new HashMap<>();
countMap.put("workCenter","总计:");
Float sumQTY = 0.00f;
Float sumDoneQTY = 0.00f;
Float QTYrate = 0.00f;
Float sumHours = 0.00f;
Float sumDoneHours = 0.00f;
Float HOURSrate = 0.00f;
for (Map<String, Object> map : resultList) {
sumQTY += Float.valueOf(String.valueOf(map.get("sumQTY")));
sumDoneQTY += Float.valueOf(String.valueOf(map.get("sumDoneQTY")));
QTYrate += Float.valueOf(String.valueOf(map.get("QTYrate")).replace("%",""));
sumHours += Float.valueOf(String.valueOf(map.get("sumHours")));
sumDoneHours += Float.valueOf(String.valueOf(map.get("sumDoneHours")));
HOURSrate += Float.valueOf(String.valueOf(map.get("HOURSrate")).replace("%",""));
}
countMap.put("sumQTY",String.format("%.2f",sumQTY));
countMap.put("sumDoneQTY",String.format("%.2f",sumDoneQTY));
countMap.put("QTYrate",String.format("%.2f",QTYrate / resultList.size()) + "%");
countMap.put("sumHours",String.format("%.2f",sumHours));
countMap.put("sumDoneHours",String.format("%.2f",sumDoneHours));
countMap.put("HOURSrate",String.format("%.2f",HOURSrate / resultList.size()) + "%");
resultList.add(countMap);
return resultList;
}
/**
@ -857,6 +1056,7 @@ public class ReportServiceImpl implements ReportService {
List<Map<String, String>> capacityLoadList = null;
try {
capacityLoadList = reportMapper.capacityLoad(workCenter);
result.put("capacityLoadList",capacityLoadList);
Float planCapacity = 0f;
Float standardCapacity = 0f;
ArrayList<HashMap<String, Object>> eightList = new ArrayList<>();
@ -1039,6 +1239,19 @@ public class ReportServiceImpl implements ReportService {
return reportMapper.lastOperationCompletedReport(paramMap);
}
/**
*
* @param paramMap
* @return
*/
@Override
public List<Map<String, Object>> orderQueryReportReport(Map paramMap) {
String site = CommonMethods.getSite();
paramMap.put("site", site);
paramMap.put("locale", LocaleContextHolder.getLocale().getLanguage());
return reportMapper.orderQueryReportReport(paramMap);
}
/**
*
* @param user

@ -1154,7 +1154,11 @@
WIP.itemDescription "itemDescription",
WIP.shopOrderQTY "shopOrderQTY",
WIP.doneQTY "doneQTY",--已完成数量
WIP.rate || '%' "rate",
CASE
WHEN WIP.shopOrderQTY = WIP.doneQTY THEN '100.00'
ELSE WIP.rate
END
|| '%' "rate",
zsd2.CURRENT_OPERATION "currentOperation",
WIP.nextOperationNum "nextOperationNum",
zsd3.PLANNED_COMP_DATE "currentPlanTime",
@ -1920,6 +1924,18 @@
<if test="item != null and item != ''">
AND IM.ITEM = #{item}
</if>
<if test="startReportDate != null and startReportDate != ''">
AND TO_CHAR(ZT.CREATED_DATE_TIME + 8/24,'YYYY-mm-dd') >= #{startReportDate}
</if>
<if test="endReportDate != null and endReportDate != ''">
AND TO_CHAR(ZT.CREATED_DATE_TIME + 8/24,'YYYY-mm-dd') &lt;= #{endReportDate}
</if>
<if test="startInspectionDate != null and startInspectionDate != ''">
AND TO_CHAR(ZT.MODIFIED_DATE_TIME + 8/24,'YYYY-mm-dd') >= #{startInspectionDate}
</if>
<if test="endInspectionDate != null and endInspectionDate != ''">
AND TO_CHAR(ZT.MODIFIED_DATE_TIME + 8/24,'YYYY-mm-dd') &lt;= #{endInspectionDate}
</if>
ORDER BY ZT.MODIFIED_DATE_TIME DESC
</select>
<select id="capacityLoad" resultType="java.util.Map">
@ -2163,7 +2179,9 @@
TO_CHAR(DECODE((SUM(WIP.WAIT_TIME) + SUM(WIP.ACTUAL_PROCESS_TIME)), 0, 0,
(SUM(WIP.ACTUAL_PROCESS_TIME) / (SUM(WIP.WAIT_TIME) +
SUM(WIP.ACTUAL_PROCESS_TIME))) * 100),
'99990.99') || '%' ACTUAL_TATE
'99990.99') || '%' ACTUAL_TATE,
MIN(WIP.ACTUAL_START_DATE) MIN_START_DATE,
MAX(WIP.ACTUAL_COMPLETE_DATE) MAX_COMPLETE_DATE
FROM (SELECT wct.DESCRIPTION WORK_CENTER_DESCRIPTION,
cf.VALUE ITEM_NUMBER,
cf2.VALUE WORK_ORDER,
@ -2178,7 +2196,7 @@
DECODE(zsd.ACTUAL_COMPLETE_DATE - LAG(zsd.ACTUAL_COMPLETE_DATE, 1)
OVER (partition by cf.VALUE,cf2.VALUE,zsd.SHOP_ORDER,s.SFC ORDER BY cf.VALUE,cf2.VALUE,zsd.SHOP_ORDER,s.SFC,zsd.ACTUAL_START_DATE),
NULL, 0,
(zsd.ACTUAL_COMPLETE_DATE - LAG(zsd.ACTUAL_COMPLETE_DATE, 1)
(zsd.ACTUAL_START_DATE - LAG(zsd.ACTUAL_COMPLETE_DATE, 1)
OVER (partition by cf.VALUE,cf2.VALUE,zsd.SHOP_ORDER,s.SFC ORDER BY cf.VALUE,cf2.VALUE,zsd.SHOP_ORDER,s.SFC,zsd.ACTUAL_START_DATE)) *
24) WAIT_TIME,
LAG(zsd.ACTUAL_COMPLETE_DATE, 1)
@ -2210,6 +2228,16 @@
<if test="itemDescription != null and itemDescription != ''">
AND WIP.ITEM_DESCRIPTION like '%${itemDescription}%'
</if>
<if test="workCenter != null and workCenter != ''">
AND WIP.WORK_CENTER_DESCRIPTION like '%${workCenter}%'
</if>
<if test="itemNumber != null and itemNumber != ''">
AND WIP.ITEM_NUMBER like '%${itemNumber}%'
</if>
<if test="workOrder != null and workOrder != ''">
AND WIP.WORK_ORDER like '%${workOrder}%'
</if>
</where>
GROUP BY WIP.WORK_CENTER_DESCRIPTION, WIP.ITEM_NUMBER, WIP.WORK_ORDER, WIP.SHOP_ORDER, WIP.SFC, WIP.ITEM,
WIP.ITEM_DESCRIPTION
@ -2257,7 +2285,7 @@
GROUP BY wct.DESCRIPTION, rs.RESRCE, ot.DESCRIPTION, rs.DESCRIPTION, o.OPERATION, cf2.VALUE, CF.VALUE
ORDER BY wct.DESCRIPTION, ot.DESCRIPTION, rs.DESCRIPTION
</select>
<select id="lastOperationCompletedReport" resultType="java.util.Map">
<select id="lastOperationCompletedReport" resultType="java.util.Map" parameterType="java.util.HashMap">
SELECT WIP.*,
CASE
WHEN WIP.BEFORE_SEQ = 0
@ -2342,5 +2370,53 @@
AND WIP.WORK_CENTER_DESCRIPTION = #{workCenter}
</if>
</select>
<select id="orderQueryReportReport" resultType="java.util.Map" parameterType="java.util.HashMap">
SELECT WIP.ITEM,
WIP.ITEM_DESCRIPTION,
WIP.ITEM_NUMBER,
WIP.WORK_ORDER,
WIP.SHOP_ORDER,
WIP.BLANKING_SIZE,
SUM(DISPATCH_QTY) DISPATCH_QTY,
SUM(DONE_QTY) DONE_QTY,
MIN(WIP.PLANNED_START_DATE) PLANNED_START_DATE
FROM (
SELECT i.ITEM ITEM,
it.DESCRIPTION ITEM_DESCRIPTION,
cf.VALUE ITEM_NUMBER,
cf2.VALUE WORK_ORDER,
zsd.SHOP_ORDER SHOP_ORDER,
MAX(zsd.BLANKING_SIZE) BLANKING_SIZE,
S.SFC SFC,
MIN(DISPATCH_QTY) DISPATCH_QTY,
MIN(CASE
WHEN zsd.DISPATCH_STATUS = 'COMPLETE' OR zsd.DISPATCH_STATUS = 'CANCEL' THEN
zsd.DISPATCH_QTY
ELSE 0 END) DONE_QTY,
MIN(zsd.PLANNED_START_DATE) PLANNED_START_DATE
FROM Z_SFC_DISPATCH zsd
LEFT JOIN SFC s ON s.SFC = zsd.SFC AND s.SITE = zsd.SITE
LEFT JOIN SHOP_ORDER so ON so.SHOP_ORDER = zsd.SHOP_ORDER AND so.SITE = zsd.SITE
LEFT JOIN CUSTOM_FIELDS cf ON cf.HANDLE = so.HANDLE AND cf."ATTRIBUTE" = 'ITEM_NUMBER'
LEFT JOIN CUSTOM_FIELDS cf2 ON cf2.HANDLE = so.HANDLE AND cf2."ATTRIBUTE" = 'WORK_ORDER'
LEFT JOIN ITEM i On i.HANDLE = so.ITEM_BO AND I.SITE = SO.SITE
LEFT JOIN ITEM_T it ON it.ITEM_BO = i.HANDLE
GROUP BY i.ITEM, it.DESCRIPTION, cf.VALUE, cf2.VALUE, zsd.SHOP_ORDER, s.SFC) WIP
WHERE 1=1
<if test="shopOrder != null and shopOrder != ''">
AND WIP.SHOP_ORDER like '%${shopOrder}%'
</if>
<if test="itemNumber != null and itemNumber != ''">
AND WIP.ITEM_NUMBER like '%${itemNumber}%'
</if>
<if test="itemCode != null and itemCode != ''">
AND WIP.ITEM like '%${itemCode}%'
</if>
<if test="itemDescription != null and itemDescription != ''">
AND WIP.ITEM_DESCRIPTION like '%${itemDescription}%'
</if>
GROUP BY WIP.ITEM, WIP.ITEM_DESCRIPTION, WIP.ITEM_NUMBER, WIP.WORK_ORDER, WIP.SHOP_ORDER, WIP.BLANKING_SIZE
ORDER BY WIP.ITEM, WIP.ITEM_DESCRIPTION, WIP.ITEM_NUMBER, WIP.WORK_ORDER, WIP.SHOP_ORDER
</select>
</mapper>
Loading…
Cancel
Save