看板接口修改v2

master
yinq 2 years ago
parent eff5d2083b
commit a78528efe7

@ -4,6 +4,7 @@ import com.foreverwin.mesnac.anomaly.dto.IntegrationLogDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@ -159,7 +160,7 @@ public interface ReportMapper {
List<Map<String, String>> capacityLoad(String workCenter);
Map<String, String> sixShopOrderQTY(String workCenter);
LinkedHashMap<String, String> sixShopOrderQTY(String workCenter);
List<Map<String, String>> nearFifteenDayRate(String workCenter);

@ -1,5 +1,6 @@
package com.foreverwin.mesnac.anomaly.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.foreverwin.mesnac.anomaly.dto.IntegrationLogDto;
import com.foreverwin.mesnac.anomaly.mapper.ReportMapper;
@ -547,7 +548,19 @@ public class ReportServiceImpl implements ReportService {
if (!StringUtils.isBlank(String.valueOf(paramMap.get("month")))){
paramMap.put("month",Integer.valueOf(String.valueOf(paramMap.get("month"))));
}
return reportMapper.monthLoadRateReport(paramMap);
int month = Calendar.getInstance().get(Calendar.MONTH) + 1;
List<Map<String, Object>> result = reportMapper.monthLoadRateReport(paramMap);
for (Map<String, Object> 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"))){
map.put("monthRate" + month, String.format("%.2f",(number / Float.valueOf(String.valueOf(map.get("monthCapacity")))) * 100) + "%" );
}else {
map.put("monthRate" + month, "0.00%");
}
}
return result;
}
/**
@ -769,21 +782,21 @@ public class ReportServiceImpl implements ReportService {
capacityLoadList = reportMapper.capacityLoad(workCenter);
Float planCapacity = 0f;
Float standardCapacity = 0f;
ArrayList<HashMap<String, Object> > eightList = new ArrayList<>();
ArrayList<HashMap<String, Object>> eightList = new ArrayList<>();
ArrayList<Float> planHoursList = new ArrayList<>();
ArrayList<Float> planUndoneHoursList = new ArrayList<>();
for (Map<String, String> map : capacityLoadList) {
HashMap<String, Object> resourceMap = new HashMap<>();
//计划工时
ArrayList<String> planList = new ArrayList<>();
planList.add(String.valueOf(map.get("planCapacity1")));
planList.add(String.valueOf(map.get("planCapacity2")));
planList.add(String.valueOf(map.get("planCapacity3")));
planList.add(String.valueOf(map.get("planCapacity4")));
planList.add(String.valueOf(map.get("planCapacity5")));
planList.add(String.valueOf(map.get("planCapacity6")));
planList.add(String.valueOf(map.get("planCapacity7")));
planList.add(String.valueOf(map.get("planCapacity8")));
ArrayList<Float> planList = new ArrayList<>();
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity1"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity2"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity3"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity4"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity5"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity6"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity7"))));
planList.add(Float.valueOf(String.valueOf(map.get("planCapacity8"))));
resourceMap.put("planCapacityList",planList);
//标准产能
resourceMap.put("standardWeekCapacity",map.get("standardWeekCapacity"));
@ -792,20 +805,20 @@ public class ReportServiceImpl implements ReportService {
//设备描述
resourceMap.put("resourceDescription",map.get("resourceDescription"));
//总标准产能、总计划产能
for (String et : planList) {
planCapacity += Float.parseFloat(et);
for (Float et : planList) {
planCapacity += Float.parseFloat(String.valueOf(et));
}
standardCapacity += Float.valueOf(String.valueOf(map.get("standardWeekCapacity")));
//比率 计划工时 / 标准产能 * 100
ArrayList<String> rateList = new ArrayList<>();
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity1"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity2"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity3"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity4"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity5"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity6"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity7"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.valueOf(Float.valueOf(String.valueOf(map.get("planCapacity8"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity1"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity2"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity3"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity4"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity5"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity6"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity7"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
rateList.add(String.format("%.2f", Float.valueOf(String.valueOf(map.get("planCapacity8"))) / Float.valueOf(String.valueOf(Float.valueOf(map.get("standardWeekCapacity")))) * 100));
resourceMap.put("planCapacityRateList",rateList);
planHoursList.add(Float.valueOf(String.valueOf(map.get("planHours"))));
@ -833,7 +846,7 @@ public class ReportServiceImpl implements ReportService {
@Override
public Map<String, Object> manufacturingPlanning(String workCenter) {
HashMap<String, Object> result = new HashMap<>();
Map<String, String> sixMap = reportMapper.sixShopOrderQTY(workCenter);
LinkedHashMap<String, String> sixMap = reportMapper.sixShopOrderQTY(workCenter);
ArrayList<Integer> sixList = new ArrayList<>();
for (String key : sixMap.keySet()) {
sixList.add(Integer.valueOf(String.valueOf(sixMap.get(key))));
@ -1011,9 +1024,9 @@ public class ReportServiceImpl implements ReportService {
HashMap<String, Object> result = new HashMap<>();
result.put("userGroup", userGroup);
List<Map<String, String>> abnormalQualityList = reportMapper.projectScheduleShow(userGroup);
if (abnormalQualityList.size() > 20){
/* if (abnormalQualityList.size() > 20){
abnormalQualityList = abnormalQualityList.subList(0, 20);
}
}*/
result.put("originalData",abnormalQualityList);
//项目进度圆圈circle
ArrayList<HashMap<String, String>> projectCircleList = new ArrayList<>();
@ -1051,9 +1064,9 @@ public class ReportServiceImpl implements ReportService {
result.put("firstThreeList",firstThreeList);
// rate2 计划进度(浅绿色)/ rate1 计划完成(深蓝色) 为百分比 rate3深黄色() 实际工时进度。start开始时间 0 -- 70
ArrayList<HashMap<String, String>> projectGanttChartList = new ArrayList<>();
ArrayList<HashMap<String, Object>> projectGanttChartList = new ArrayList<>();
for (Map<String, String> abnormalQualityMap : abnormalQualityList) {
HashMap<String, String> projectGanttChartHashMap = new HashMap<>();
/*HashMap<String, String> projectGanttChartHashMap = new HashMap<>();
String startDate = dateConvert(String.valueOf(abnormalQualityMap.get("startDate")));
projectGanttChartHashMap.put("start",startDate);
// rate1 计划完成(深蓝色)
@ -1081,9 +1094,19 @@ public class ReportServiceImpl implements ReportService {
}
//String now = dateConvert(DateUtil.formatDate(new Date()));
projectGanttChartHashMap.put("rate2",String.valueOf(Float.valueOf(abnormalQualityMap.get("planRate")) * 0.7 - Float.valueOf(startDate)));
projectGanttChartList.add(projectGanttChartHashMap);
projectGanttChartList.add(projectGanttChartHashMap);*/
HashMap<String, Object> projectGanttChartHashMap = new HashMap<>();
Date startDate = DateReportUtils.stringToDate(String.valueOf(abnormalQualityMap.get("startDate")), "yyyy-MM-dd HH:mm:ss");
Date endPlanDate = DateReportUtils.stringToDate(String.valueOf(abnormalQualityMap.get("endPlanDate")), "yyyy-MM-dd HH:mm:ss");
projectGanttChartHashMap.put("start",startDate.getTime());
projectGanttChartHashMap.put("end",endPlanDate.getTime());
projectGanttChartHashMap.put("rate", Float.valueOf(String.format("%.2f", Float.valueOf(String.valueOf(abnormalQualityMap.get("rate"))))));
projectGanttChartHashMap.put("rate1",Float.valueOf(String.format("%.2f", Float.valueOf(String.valueOf(abnormalQualityMap.get("planRate"))))));
projectGanttChartHashMap.put("rate2",Float.valueOf(String.format("%.2f", Float.valueOf(String.valueOf(abnormalQualityMap.get("rate"))))));
projectGanttChartList.add(projectGanttChartHashMap);
}
result.put("projectGanttChartList",projectGanttChartList);
//System.out.println(JSON.toJSONString(projectGanttChartList));
return result;
}

@ -1216,6 +1216,12 @@
INNER JOIN OPERATION O ON O.SITE = WIP.SITE AND O.OPERATION = zsd2.OPERATION AND O.CURRENT_REVISION = 'true'
LEFT JOIN OPERATION_T OT ON OT.OPERATION_BO = O.HANDLE AND OT.LOCALE = 'zh'
<where>
<if test="finished = 'true'">
WIP.rate = 100.00
</if>
<if test="finished = 'false'">
WIP.rate != 100.00
</if>
<if test="workOrder != null and workOrder != ''">
AND WIP.workOrder like '%${workOrder}%'
</if>
@ -1389,8 +1395,8 @@
GROUP BY OWIP.item, OWIP.workOrder
) WIP
<where>
WIP."rate" > 0.00
AND WIP."startDate" >= (SYSDATE - 5 * 7)
WIP."rate" <![CDATA[ < ]]> 100.00 AND WIP."rate" > 0.00
--AND WIP."startDate" >= (SYSDATE - 5 * 7)
<if test="user != null and user != ''">
AND WIP."workOrder" like '%${user}%'
</if>
@ -1528,7 +1534,18 @@
</select>
<select id="weekLoadRateReport" resultType="java.util.HashMap" parameterType="java.util.HashMap">
--资源负荷率报表(周维度)
SELECT CF.VALUE "weekCapacity",WIP.* FROM (WITH WEEK AS (
SELECT CF.VALUE "weekCapacity",WIP.*,
WIP.RESOURCE_TYPE_DESCRIPTION "DESCRIPTION",
WIP.WORK_CENTER_DESCRIPTION "workCenterDescription",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours1" / CF.VALUE) * 100, '99990.99') || '%' "weekRate1",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours2" / CF.VALUE) * 100, '99990.99') || '%' "weekRate2",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours3" / CF.VALUE) * 100, '99990.99') || '%' "weekRate3",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours4" / CF.VALUE) * 100, '99990.99') || '%' "weekRate4",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours5" / CF.VALUE) * 100, '99990.99') || '%' "weekRate5",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours6" / CF.VALUE) * 100, '99990.99') || '%' "weekRate6",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours7" / CF.VALUE) * 100, '99990.99') || '%' "weekRate7",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."unWorkHours8" / CF.VALUE) * 100, '99990.99') || '%' "weekRate8"
FROM (WITH WEEK AS (
SELECT TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM-dd'), 'yyyy-MM-dd'), 'IW') WEEK0,
TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM-dd'), 'yyyy-MM-dd'), 'IW') + 7 * 1 WEEK1,
TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM-dd'), 'yyyy-MM-dd'), 'IW') + 7 * 2 WEEK2,
@ -1541,6 +1558,7 @@
FROM DUAL)
SELECT O.OPERATION "operation",
OT.DESCRIPTION "operationDescription",
RT.DESCRIPTION,
SUM(CASE
WHEN SYSDATE > ZSD.PLANNED_COMP_DATE THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "tardinessWork",
SUM(CASE
@ -1566,17 +1584,26 @@
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "unWorkHours7",
SUM(CASE
WHEN ZSD.PLANNED_COMP_DATE >= TO_DATE(WEEK.WEEK7) AND ZSD.PLANNED_COMP_DATE &lt;= TO_DATE(WEEK.WEEK8)
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "unWorkHours8"
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "unWorkHours8",
WCT.DESCRIPTION WORK_CENTER_DESCRIPTION,
RT.DESCRIPTION RESOURCE_TYPE_DESCRIPTION
FROM Z_SFC_DISPATCH ZSD
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE
LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO
LEFT JOIN WORK_CENTER WC ON WC.WORK_CENTER = ZSD.WORK_CENTER
LEFT JOIN WORK_CENTER_T WCT ON WCT.WORK_CENTER_BO = WC.HANDLE
LEFT JOIN RESOURCE_TYPE RT ON ZSD.RESOURCE_TYPE = RT.RESOURCE_TYPE
CROSS JOIN WEEK
WHERE (ZSD.DISPATCH_STATUS != 'CANCEL' AND ZSD.DISPATCH_STATUS != 'PAUSE' AND ZSD.DISPATCH_STATUS != 'COMPLETE')
AND ZSD.PLANNED_COMP_DATE IS NOT NULL
-- AND ZSD.CREATED_DATE_TIME > TO_DATE(TRUNC(TO_DATE(to_char(sysdate,'yyyy-MM-dd'),'yyyy-MM-dd'),'IW') - 8 * 7)
GROUP BY O.OPERATION,OT.DESCRIPTION
<if test="workCenter != null and workCenter != ''">
AND ZSD.WORK_CENTER = #{workCenter}
</if>
GROUP BY O.OPERATION,OT.DESCRIPTION,WCT.DESCRIPTION,RT.DESCRIPTION
ORDER BY "tardinessWork" DESC ) WIP
LEFT JOIN CUSTOM_FIELDS CF ON CF.ATTRIBUTE ='WEEK_CAPACITY' AND CF.HANDLE = 'OperationBO:1000,'|| WIP."operation" || ',1.0'
<where>
1=1
<if test="operation != null and operation != ''">
@ -1591,6 +1618,8 @@
--资源负荷率报表(月维度)
SELECT WIP.*,
CF.VALUE "monthCapacity",
WIP.RESOURCE_TYPE_DESCRIPTION "DESCRIPTION",
WIP.WORK_CENTER_DESCRIPTION "workCenterDescription",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."workHours1" / CF.VALUE) * 100, '99990.99') || '%' "monthRate1",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."workHours2" / CF.VALUE) * 100, '99990.99') || '%' "monthRate2",
TO_CHAR(DECODE(CF.VALUE,NULL,0, WIP."workHours3" / CF.VALUE) * 100, '99990.99') || '%' "monthRate3",
@ -1622,6 +1651,9 @@
SELECT O.OPERATION "operation",
OT.DESCRIPTION "operationDescription",
SUM(CASE
WHEN SYSDATE > ZSD.PLANNED_COMP_DATE AND ZSD.DISPATCH_STATUS != 'COMPLETE'
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "tardinessWork",
SUM(CASE
WHEN ZSD.PLANNED_COMP_DATE >= TO_DATE(MONTH.month0) AND ZSD.PLANNED_COMP_DATE &lt;= TO_DATE(MONTH.month1)
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "workHours1",
SUM(CASE
@ -1656,16 +1688,22 @@
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "workHours11",
SUM(CASE
WHEN ZSD.PLANNED_COMP_DATE >= TO_DATE(MONTH.month11) AND ZSD.PLANNED_COMP_DATE &lt;= TO_DATE(MONTH.month12)
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "workHours12"
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "workHours12",
WCT.DESCRIPTION WORK_CENTER_DESCRIPTION,
RT.DESCRIPTION RESOURCE_TYPE_DESCRIPTION
FROM Z_SFC_DISPATCH ZSD
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE
LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO
LEFT JOIN WORK_CENTER WC ON WC.WORK_CENTER = ZSD.WORK_CENTER
LEFT JOIN WORK_CENTER_T WCT ON WCT.WORK_CENTER_BO = WC.HANDLE
LEFT JOIN RESOURCE_TYPE RT ON ZSD.RESOURCE_TYPE = RT.RESOURCE_TYPE
CROSS JOIN MONTH
WHERE (ZSD.DISPATCH_STATUS != 'CANCEL' AND ZSD.DISPATCH_STATUS != 'PAUSE')
AND ZSD.PLANNED_COMP_DATE IS NOT NULL
GROUP BY O.OPERATION,OT.DESCRIPTION
<if test="workCenter != null and workCenter != ''">
AND ZSD.WORK_CENTER = #{workCenter}
</if>
GROUP BY O.OPERATION,OT.DESCRIPTION,WCT.DESCRIPTION,RT.DESCRIPTION
ORDER BY O.OPERATION DESC ) WIP
LEFT JOIN CUSTOM_FIELDS CF ON CF.ATTRIBUTE ='MONTH_CAPACITY' AND CF.HANDLE = 'OperationBO:1000,'|| WIP."operation" || ',1.0'
<where>
@ -1680,7 +1718,7 @@
</select>
<select id="weekDeliveryRateReport" resultType="java.util.HashMap" parameterType="java.util.HashMap">
SELECT WIP.WORK_CENTER "workCenter",
WIP.RESRCE "resrceCode",
WIP.OPERATION "operationCode",
WIP.OPERATION_DESCRIPTION "operationDescription",
WIP.RESRCE_DESCRIPTION "resrceDescription",
WIP.SUM_QTY "sumQTY",
@ -1691,7 +1729,7 @@
TO_CHAR(DECODE(WIP.SUM_HOURS,0,0,WIP.SUM_DONE_HOURS / WIP.SUM_HOURS) * 100, '99990.99') || '%' "HOURSrate"
FROM
(SELECT wct.DESCRIPTION WORK_CENTER,
r.RESRCE,
o.OPERATION OPERATION,
OT.DESCRIPTION OPERATION_DESCRIPTION,
r.DESCRIPTION RESRCE_DESCRIPTION,
SUM(zsd.DISPATCH_QTY) SUM_QTY,
@ -1715,12 +1753,12 @@
AND wc.WORK_CENTER = #{workCenter}
</if>
<if test="startDate != null and startDate != ''">
AND zsd.PLANNED_COMP_DATE >= TO_DATE(#{startDate},'YYYY-mm-dd')
AND to_char(zsd.PLANNED_COMP_DATE,'YYYY-mm-dd') >= #{startDate}
</if>
<if test="endDate != null and endDate != ''">
AND zsd.PLANNED_COMP_DATE &lt;= TO_DATE(#{endDate},'YYYY-mm-dd')
AND to_char(zsd.PLANNED_COMP_DATE,'YYYY-mm-dd') &lt;= #{endDate}
</if>
GROUP BY wct.DESCRIPTION, r.RESRCE, r.DESCRIPTION, OT.DESCRIPTION) WIP
GROUP BY wct.DESCRIPTION,o.OPERATION, r.DESCRIPTION, OT.DESCRIPTION) WIP
<where>
1=1
<if test="resrce != null and resrce != ''">
@ -1734,7 +1772,7 @@
</select>
<select id="monthDeliveryRateReport" parameterType="java.util.HashMap" resultType="java.util.Map" >
SELECT WIP.WORK_CENTER "workCenter",
WIP.RESRCE "resrceCode",
WIP.OPERATION "operationCode",
WIP.OPERATION_DESCRIPTION "operationDescription",
WIP.RESRCE_DESCRIPTION "resrceDescription",
WIP.SUM_QTY "sumQTY",
@ -1745,7 +1783,7 @@
TO_CHAR(DECODE(WIP.SUM_HOURS,0,0,WIP.SUM_DONE_HOURS / WIP.SUM_HOURS) * 100, '99990.99') || '%' "HOURSrate"
FROM
(SELECT wct.DESCRIPTION WORK_CENTER,
r.RESRCE,
o.OPERATION OPERATION,
OT.DESCRIPTION OPERATION_DESCRIPTION,
r.DESCRIPTION RESRCE_DESCRIPTION,
SUM(zsd.DISPATCH_QTY) SUM_QTY,
@ -1769,12 +1807,12 @@
AND wc.WORK_CENTER = #{workCenter}
</if>
<if test="startDate != null and startDate != ''">
AND zsd.PLANNED_COMP_DATE >= TO_DATE(#{startDate},'YYYY-mm')
AND to_char(zsd.PLANNED_COMP_DATE,'yyyy-mm') >= #{startDate}
</if>
<if test="endDate != null and endDate != ''">
AND zsd.PLANNED_COMP_DATE &lt;= TO_DATE(#{endDate},'YYYY-mm')
AND to_char(zsd.PLANNED_COMP_DATE,'yyyy-mm') &lt;= #{endDate}
</if>
GROUP BY wct.DESCRIPTION, r.RESRCE, r.DESCRIPTION, OT.DESCRIPTION) WIP
GROUP BY wct.DESCRIPTION,o.OPERATION, r.DESCRIPTION, OT.DESCRIPTION) WIP
<where>
1=1
<if test="resrce != null and resrce != ''">
@ -1953,7 +1991,7 @@
ORDER BY "planCapacity1" DESC ) WIP
WHERE 8 >= ROWNUM
</select>
<select id="sixShopOrderQTY" resultType="java.util.Map">
<select id="sixShopOrderQTY" resultType="java.util.LinkedHashMap">
SELECT COUNT(WIP.SHOP_ORDER) "shopOrderQTY",
DECODE(SUM(WIP.SHOP_QTY),NULL,0,SUM(WIP.SHOP_QTY)) "sumQTY",
DECODE(SUM(WIP.ITEM_QTY),NULL,0,SUM(WIP.ITEM_QTY)) "sumItemQTY",
@ -1964,9 +2002,9 @@
SELECT ZT.SHOP_ORDER SHOP_ORDER,
SUM(S.QTY) SHOP_QTY,
COUNT(ROWNUM) ITEM_QTY,
SUM(CASE WHEN ZT.STATUS = 'NEW' THEN 1 ELSE 0 END ) WAIT_SHOP_QTY,
MAX(CASE WHEN ZT.STATUS = 'NEW' THEN 1 ELSE 0 END ) WAIT_SHOP_QTY,
SUM(CASE WHEN ZT.STATUS = 'NEW' THEN S.QTY ELSE 0 END ) WAIT_QTY,
MAX(CASE WHEN ZT.STATUS = 'COMPLETE' THEN 1 ELSE 0 END ) IS_DONE_SHOP
MIN(CASE WHEN ZT.STATUS = 'COMPLETE' THEN 1 ELSE 0 END ) IS_DONE_SHOP
FROM Z_INSPECTION_TASK ZT
INNER JOIN SFC S ON S.SFC = ZT.SFC AND S.SITE = ZT.SITE
WHERE TO_CHAR(SYSDATE, 'yyyy-MM-dd') = TO_CHAR(ZT.CREATED_DATE_TIME, 'yyyy-MM-dd')

Loading…
Cancel
Save