|
|
|
@ -963,19 +963,19 @@
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="partsTraceScheduleReport" parameterType="java.util.HashMap" resultType="java.util.HashMap">
|
|
|
|
|
SELECT zsd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
s.SFC SFC,
|
|
|
|
|
cf.VALUE ITEM_NUMBER,
|
|
|
|
|
cf2.VALUE WORK_ORDER,
|
|
|
|
|
i.ITEM ITEM,
|
|
|
|
|
it.DESCRIPTION ITEM_DESCRIPTION,
|
|
|
|
|
WIP.COMPONENT_DESCRIPTION COMPONENT_DESCRIPTION,
|
|
|
|
|
zsd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
ot.DESCRIPTION OPERATION_DESCRIPTION,
|
|
|
|
|
SELECT zsd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
s.SFC SFC,
|
|
|
|
|
cf.VALUE ITEM_NUMBER,
|
|
|
|
|
cf2.VALUE WORK_ORDER,
|
|
|
|
|
i.ITEM ITEM,
|
|
|
|
|
it.DESCRIPTION ITEM_DESCRIPTION,
|
|
|
|
|
WIP.COMPONENT_DESCRIPTION COMPONENT_DESCRIPTION,
|
|
|
|
|
zsd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
ot.DESCRIPTION OPERATION_DESCRIPTION,
|
|
|
|
|
zsd.EMPLOYEE_DESCRIPTION PB_USER,
|
|
|
|
|
zsd.ACTUAL_START_DATE ACTUAL_START_DATE,
|
|
|
|
|
zsd.ACTUAL_START_DATE ACTUAL_START_DATE,
|
|
|
|
|
zsd.ACTUAL_COMPLETE_DATE ACTUAL_COMPLETE_DATE,
|
|
|
|
|
znu.FULL_NAME FULL_NAME
|
|
|
|
|
znu.FULL_NAME FULL_NAME
|
|
|
|
|
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
|
|
|
|
@ -1011,32 +1011,32 @@
|
|
|
|
|
AND it.DESCRIPTION = #{itemDescription}
|
|
|
|
|
</if>
|
|
|
|
|
</where>
|
|
|
|
|
ORDER BY s.SFC DESC,zsd.ACTUAL_COMPLETE_DATE ASC
|
|
|
|
|
ORDER BY s.SFC DESC,zsd.ACTUAL_COMPLETE_DATE ASC
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="itemTraceScheduleReport" parameterType="java.util.HashMap" resultType="java.util.HashMap">
|
|
|
|
|
SELECT cf.VALUE ITEM_NUMBER,
|
|
|
|
|
cf2.VALUE WORK_ORDER,
|
|
|
|
|
zsd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
s.SFC SFC,
|
|
|
|
|
i.ITEM ITEM,
|
|
|
|
|
it.DESCRIPTION ITEM_DESCRIPTION,
|
|
|
|
|
WIP.COMPONENT_DESCRIPTION COMPONENT_DESCRIPTION,
|
|
|
|
|
zsd.DESCRIPTION OPERATION_DESCRIPTION,
|
|
|
|
|
zsd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
PL.INVENTORY INVENTORY,
|
|
|
|
|
zsd.START_DATE ACTUAL_START_DATE,
|
|
|
|
|
SELECT cf.VALUE ITEM_NUMBER,
|
|
|
|
|
cf2.VALUE WORK_ORDER,
|
|
|
|
|
zsd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
s.SFC SFC,
|
|
|
|
|
i.ITEM ITEM,
|
|
|
|
|
it.DESCRIPTION ITEM_DESCRIPTION,
|
|
|
|
|
WIP.COMPONENT_DESCRIPTION COMPONENT_DESCRIPTION,
|
|
|
|
|
zsd.DESCRIPTION OPERATION_DESCRIPTION,
|
|
|
|
|
zsd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
PL.INVENTORY INVENTORY,
|
|
|
|
|
zsd.START_DATE ACTUAL_START_DATE,
|
|
|
|
|
zsd.ACTUAL_COMPLETE_DATE ACTUAL_COMPLETE_DATE
|
|
|
|
|
FROM (SELECT COMP.*, STAT.START_DATE
|
|
|
|
|
FROM (SELECT *
|
|
|
|
|
FROM (SELECT sd.SFC SFC,
|
|
|
|
|
sd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
sd.SITE SITE,
|
|
|
|
|
sd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
FROM (SELECT sd.SFC SFC,
|
|
|
|
|
sd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
sd.SITE SITE,
|
|
|
|
|
sd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
sd.ACTUAL_COMPLETE_DATE ACTUAL_COMPLETE_DATE,
|
|
|
|
|
ot.DESCRIPTION DESCRIPTION,
|
|
|
|
|
ot.DESCRIPTION DESCRIPTION,
|
|
|
|
|
row_number() over (PARTITION BY sd.SFC ORDER BY sd.ACTUAL_COMPLETE_DATE DESC)
|
|
|
|
|
AS NEWINDEX
|
|
|
|
|
AS NEWINDEX
|
|
|
|
|
FROM Z_SFC_DISPATCH sd
|
|
|
|
|
INNER JOIN OPERATION o ON o.SITE = sd.SITE
|
|
|
|
|
AND o.OPERATION = sd.OPERATION AND o.CURRENT_REVISION = 'true'
|
|
|
|
@ -1066,7 +1066,7 @@
|
|
|
|
|
LEFT JOIN Z_PRINT_LOG PL ON PL.ITEM_BO = it.ITEM_BO AND PL.PRINT_TEMPLATE = 'INV'
|
|
|
|
|
<where>
|
|
|
|
|
zsd.SITE = #{site}
|
|
|
|
|
AND PL.INVENTORY IS NOT NULL
|
|
|
|
|
AND PL.INVENTORY IS NOT NULL
|
|
|
|
|
<if test="shopOrder != null and shopOrder != ''">
|
|
|
|
|
AND zsd.SHOP_ORDER = #{shopOrder}
|
|
|
|
|
</if>
|
|
|
|
@ -1086,32 +1086,32 @@
|
|
|
|
|
WHEN WIP.DISPATCH_STATUS = 'NEW' THEN N'新建'
|
|
|
|
|
WHEN WIP.DISPATCH_STATUS = 'RELEASE' THEN N'发布'
|
|
|
|
|
WHEN WIP.DISPATCH_STATUS = 'START' THEN N'已开始'
|
|
|
|
|
END AS DISPATCH_STATUS
|
|
|
|
|
END AS DISPATCH_STATUS
|
|
|
|
|
FROM (
|
|
|
|
|
SELECT zsd.OPERATION OPERATION,
|
|
|
|
|
rs.DESCRIPTION DESCRIPTION,
|
|
|
|
|
cf.VALUE ITEM_NUMBER,
|
|
|
|
|
cf2.VALUE WORK_ORDER,
|
|
|
|
|
zsd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
zsd.DISPATCH_NO DISPATCH_NO,
|
|
|
|
|
i.ITEM ITEM,
|
|
|
|
|
it.DESCRIPTION ITEM_DESCRIPTION,
|
|
|
|
|
WIP.COMPONENT_DESCRIPTION COMPONENT_DESCRIPTION,
|
|
|
|
|
zsd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
zsd.DISPATCH_QTY DISPATCH_QTY,
|
|
|
|
|
zsd.PROD_HOURS PROD_HOURS,
|
|
|
|
|
SELECT zsd.OPERATION OPERATION,
|
|
|
|
|
rs.DESCRIPTION DESCRIPTION,
|
|
|
|
|
cf.VALUE ITEM_NUMBER,
|
|
|
|
|
cf2.VALUE WORK_ORDER,
|
|
|
|
|
zsd.SHOP_ORDER SHOP_ORDER,
|
|
|
|
|
zsd.DISPATCH_NO DISPATCH_NO,
|
|
|
|
|
i.ITEM ITEM,
|
|
|
|
|
it.DESCRIPTION ITEM_DESCRIPTION,
|
|
|
|
|
WIP.COMPONENT_DESCRIPTION COMPONENT_DESCRIPTION,
|
|
|
|
|
zsd.BLANKING_SIZE BLANKING_SIZE,
|
|
|
|
|
zsd.DISPATCH_QTY DISPATCH_QTY,
|
|
|
|
|
zsd.PROD_HOURS PROD_HOURS,
|
|
|
|
|
CASE
|
|
|
|
|
WHEN zsd.PROD_HOURS IS NULL THEN 0
|
|
|
|
|
ELSE ROUND(zsd.DISPATCH_QTY * zsd.PROD_HOURS, 4) END TOTAL_PROD_HOURS,
|
|
|
|
|
zsd.DISPATCH_STATUS DISPATCH_STATUS,
|
|
|
|
|
zsd.SITE SITE,
|
|
|
|
|
zsd.SFC SFC,
|
|
|
|
|
zsd.ROUTER_BO ROUTER_BO,
|
|
|
|
|
zsd.DISPATCH_STATUS DISPATCH_STATUS,
|
|
|
|
|
zsd.SITE SITE,
|
|
|
|
|
zsd.SFC SFC,
|
|
|
|
|
zsd.ROUTER_BO ROUTER_BO,
|
|
|
|
|
zsd.DISPATCH_SEQ,
|
|
|
|
|
zsd.DISPATCH_SEQ - 1 BEFORE_SEQ,
|
|
|
|
|
zsd.PLANNED_START_DATE PLANNED_START_DATE,
|
|
|
|
|
zsd.PLANNED_COMP_DATE PLANNED_COMP_DATE,
|
|
|
|
|
zsd.ACTUAL_START_DATE ACTUAL_START_DATE
|
|
|
|
|
zsd.DISPATCH_SEQ - 1 BEFORE_SEQ,
|
|
|
|
|
zsd.PLANNED_START_DATE PLANNED_START_DATE,
|
|
|
|
|
zsd.PLANNED_COMP_DATE PLANNED_COMP_DATE,
|
|
|
|
|
zsd.ACTUAL_START_DATE ACTUAL_START_DATE
|
|
|
|
|
FROM Z_SFC_DISPATCH zsd
|
|
|
|
|
LEFT JOIN SFC s ON s.SFC = zsd.SFC AND s.SITE = zsd.SITE
|
|
|
|
|
LEFT JOIN RESRCE rs ON zsd.SITE = rs.SITE AND zsd.RESRCE = rs.RESRCE
|
|
|
|
@ -1167,9 +1167,10 @@
|
|
|
|
|
CASE
|
|
|
|
|
WHEN WIP.nextOperationNum > 0 AND SYSDATE > zsd2.PLANNED_COMP_DATE AND zsd2.DISPATCH_STATUS != 'COMPLETE'
|
|
|
|
|
THEN 'true'
|
|
|
|
|
WHEN WIP.nextOperationNum = 0 AND WIP.rate !=100.00 AND SYSDATE > zsd2.PLANNED_COMP_DATE AND zsd2.DISPATCH_STATUS != 'COMPLETE'
|
|
|
|
|
WHEN WIP.nextOperationNum = 0 AND WIP.rate !=100.00 AND SYSDATE > zsd2.PLANNED_COMP_DATE AND
|
|
|
|
|
zsd2.DISPATCH_STATUS != 'COMPLETE'
|
|
|
|
|
THEN 'true'
|
|
|
|
|
ELSE 'false' END "isOverTime" --当前工序是否超时
|
|
|
|
|
ELSE 'false' END "isOverTime" --当前工序是否超时
|
|
|
|
|
FROM (SELECT cf.VALUE item,--项目号
|
|
|
|
|
cf2.VALUE workOrder,--工作令
|
|
|
|
|
zsd.SHOP_ORDER shopOrder,--订单编号
|
|
|
|
@ -1243,10 +1244,10 @@
|
|
|
|
|
<select id="qualityShows" parameterType="java.util.HashMap" resultType="java.util.HashMap">
|
|
|
|
|
--事业部质量看板
|
|
|
|
|
SELECT zab.ABNORMAL_NO "abnormalNo",--异常单号
|
|
|
|
|
it.DESCRIPTION "itemDescription",--物料描述
|
|
|
|
|
zab.ITEM_NUMBER "item",--项目号
|
|
|
|
|
it.DESCRIPTION "itemDescription",--物料描述
|
|
|
|
|
zab.ITEM_NUMBER "item",--项目号
|
|
|
|
|
zab.CREATED_DATE_TIME "createdDateTime",--提报时间
|
|
|
|
|
ZABD.RESOLVE_DATE_TIME "resolveDateTime",--方案确认时间
|
|
|
|
|
ZABD.RESOLVE_DATE_TIME "resolveDateTime",--方案确认时间
|
|
|
|
|
zsd.PLANNED_COMP_DATE "planEndCompDate",--预计完工时间
|
|
|
|
|
zsd.REWORK_SUM "reworkSum",--返修工序数量
|
|
|
|
|
zsd.LAST_REWORK_SUM "lastReworkSum",--剩余返修工序数量
|
|
|
|
@ -1257,11 +1258,11 @@
|
|
|
|
|
LEFT JOIN ITEM_T it ON it.ITEM_BO = so.ITEM_BO AND it.LOCALE = 'zh'
|
|
|
|
|
JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZABD.ABNORMAL_BILL_BO = ZAB.HANDLE
|
|
|
|
|
JOIN (SELECT zsd.SFC,
|
|
|
|
|
MAX(zsd.PLANNED_COMP_DATE) PLANNED_COMP_DATE,
|
|
|
|
|
COUNT(zsd.SFC) REWORK_SUM,
|
|
|
|
|
MAX(zsd.PLANNED_COMP_DATE) PLANNED_COMP_DATE,
|
|
|
|
|
COUNT(zsd.SFC) REWORK_SUM,
|
|
|
|
|
COUNT(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS = 'COMPLETE' THEN 0
|
|
|
|
|
ELSE 1 END) LAST_REWORK_SUM,
|
|
|
|
|
ELSE 1 END) LAST_REWORK_SUM,
|
|
|
|
|
TO_CHAR(
|
|
|
|
|
DECODE(SUM(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS = 'COMPLETE' THEN
|
|
|
|
@ -1294,8 +1295,8 @@
|
|
|
|
|
</if>
|
|
|
|
|
AND ZSD.CREATED_DATE_TIME >= add_months(SYSDATE, -6)
|
|
|
|
|
GROUP BY ZSD.SFC))
|
|
|
|
|
SELECT COUNT(zab.NC_QTY) "abnormalQualityNumber",
|
|
|
|
|
MAX(acc.QTY) "orderedTotalNumber",
|
|
|
|
|
SELECT COUNT(zab.NC_QTY) "abnormalQualityNumber",
|
|
|
|
|
MAX(acc.QTY) "orderedTotalNumber",
|
|
|
|
|
TO_CHAR(COUNT(zab.NC_QTY) / MAX(acc.QTY) * 100, '99990.99') || '%' "rate"
|
|
|
|
|
FROM Z_ABNORMAL_BILL zab
|
|
|
|
|
CROSS JOIN acc
|
|
|
|
@ -1339,9 +1340,9 @@
|
|
|
|
|
</select>
|
|
|
|
|
<select id="projectScheduleShow" parameterType="java.util.HashMap" resultType="java.util.HashMap">
|
|
|
|
|
|
|
|
|
|
SELECT WIP.item "item",--项目号
|
|
|
|
|
WIP.workOrder "workOrder",
|
|
|
|
|
SUM(WIP.shopOrderQTY) "shopOrderQTY",
|
|
|
|
|
SELECT WIP.item "item",--项目号
|
|
|
|
|
WIP.workOrder "workOrder",
|
|
|
|
|
SUM(WIP.shopOrderQTY) "shopOrderQTY",
|
|
|
|
|
TO_CHAR(AVG(WIP.rate), '990.99') "rate", --项目总进度(工时百分比)
|
|
|
|
|
TO_CHAR(CASE
|
|
|
|
|
WHEN
|
|
|
|
@ -1352,18 +1353,18 @@
|
|
|
|
|
THEN DECODE((TO_DATE(MAX(WIP.endPlanTime)) - TO_DATE(MIN(WIP.PLANNED_START_DATE))),
|
|
|
|
|
0,0,((SYSDATE - TO_DATE(MIN(WIP.PLANNED_START_DATE))) /
|
|
|
|
|
(TO_DATE(MAX(WIP.endPlanTime)) - TO_DATE(MIN(WIP.PLANNED_START_DATE))))) * 100
|
|
|
|
|
ELSE 100 END, '990.99') "planRate", --计划进度
|
|
|
|
|
MAX(WIP.endPlanTime) "endPlanDate",
|
|
|
|
|
MIN(WIP.PLANNED_START_DATE) "startDate"
|
|
|
|
|
FROM (SELECT cf.VALUE item,--项目号
|
|
|
|
|
cf2.VALUE workOrder,--工作令
|
|
|
|
|
zsd.SHOP_ORDER shopOrder,--订单编号
|
|
|
|
|
zsd.SFC SFC,--SFC
|
|
|
|
|
MAX(zsd.DISPATCH_QTY) shopOrderQTY,--订单数量
|
|
|
|
|
ELSE 100 END, '990.99') "planRate", --计划进度
|
|
|
|
|
MAX(WIP.endPlanTime) "endPlanDate",
|
|
|
|
|
MIN(WIP.PLANNED_START_DATE) "startDate"
|
|
|
|
|
FROM (SELECT cf.VALUE item,--项目号
|
|
|
|
|
cf2.VALUE workOrder,--工作令
|
|
|
|
|
zsd.SHOP_ORDER shopOrder,--订单编号
|
|
|
|
|
zsd.SFC SFC,--SFC
|
|
|
|
|
MAX(zsd.DISPATCH_QTY) shopOrderQTY,--订单数量
|
|
|
|
|
MIN(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS = 'COMPLETE' THEN
|
|
|
|
|
zsd.DISPATCH_QTY
|
|
|
|
|
ELSE 0 END) doneQTY, --已完成数量
|
|
|
|
|
ELSE 0 END) doneQTY, --已完成数量
|
|
|
|
|
TO_CHAR(
|
|
|
|
|
DECODE(SUM(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS = 'COMPLETE' THEN
|
|
|
|
@ -1373,8 +1374,8 @@
|
|
|
|
|
zsd.PROD_HOURS
|
|
|
|
|
ELSE 0 END) / SUM(zsd.PROD_HOURS))
|
|
|
|
|
* 100, '99990.99') rate,--进度(工时百分比)
|
|
|
|
|
MIN(zsd.PLANNED_START_DATE) PLANNED_START_DATE,--计划开始时间
|
|
|
|
|
MAX(zsd.PLANNED_COMP_DATE) endPlanTime --计划最终交付时间
|
|
|
|
|
MIN(zsd.PLANNED_START_DATE) PLANNED_START_DATE,--计划开始时间
|
|
|
|
|
MAX(zsd.PLANNED_COMP_DATE) endPlanTime --计划最终交付时间
|
|
|
|
|
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
|
|
|
|
@ -1386,17 +1387,110 @@
|
|
|
|
|
GROUP BY zsd.SITE, cf.VALUE, cf2.VALUE, zsd.SHOP_ORDER, zsd.SFC
|
|
|
|
|
ORDER BY endPlanTime DESC) WIP
|
|
|
|
|
<where>
|
|
|
|
|
WIP.rate > 0.00
|
|
|
|
|
AND WIP.PLANNED_START_DATE >= (SYSDATE - 5 * 7)
|
|
|
|
|
<if test="user != null and user != ''">
|
|
|
|
|
AND WIP.workOrder like '%${user}%'
|
|
|
|
|
</if>
|
|
|
|
|
WIP.rate > 0.00
|
|
|
|
|
AND WIP.PLANNED_START_DATE >= (SYSDATE - 5 * 7)
|
|
|
|
|
<if test="user != null and user != ''">
|
|
|
|
|
AND WIP.workOrder like '%${user}%'
|
|
|
|
|
</if>
|
|
|
|
|
</where>
|
|
|
|
|
GROUP BY WIP.item, WIP.workOrder
|
|
|
|
|
ORDER BY"rate" DESC
|
|
|
|
|
</select>
|
|
|
|
|
<select id="qualityRepairReport" parameterType="java.util.HashMap" resultType="java.util.HashMap">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SELECT * FROM
|
|
|
|
|
(SELECT zab.WORK_ORDER "workOrder",
|
|
|
|
|
i.ITEM "item",
|
|
|
|
|
"MAP".VALUE "mapNo",
|
|
|
|
|
zab.PB_DESCRIPTION "problemDescription",
|
|
|
|
|
CASE
|
|
|
|
|
WHEN zabd.ABNORMAL_METHOD = 'F' THEN '返修'
|
|
|
|
|
WHEN zabd.ABNORMAL_METHOD = 'FW' THEN '返修(外协)'
|
|
|
|
|
WHEN zabd.ABNORMAL_METHOD = 'FB' THEN '返修(不返回原工艺)'
|
|
|
|
|
ELSE ''
|
|
|
|
|
END "abnormalMethod",
|
|
|
|
|
zab.CREATED_DATE_TIME "submissionTime",
|
|
|
|
|
zabd.RESOLVE_DATE_TIME "resolveDateTime",
|
|
|
|
|
ZSDD.SFC_RELEASED_DATE "dispatchingTime",
|
|
|
|
|
ZSDD.PLANNED_COMP_DATE "estimatedCompletionTime",
|
|
|
|
|
ZSDD.ACTUAL_COMPLETE_DATE "actualCompletionTime",
|
|
|
|
|
OT.DESCRIPTION "operationDescription",
|
|
|
|
|
ZSDD.repairTotalNumber "repairTotalNumber",
|
|
|
|
|
ZSDD.surplusRepairNumber "surplusRepairNumber",
|
|
|
|
|
ZSDD.RATE "rate",
|
|
|
|
|
zab.SFC "SFC"
|
|
|
|
|
FROM Z_ABNORMAL_BILL zab
|
|
|
|
|
LEFT JOIN Z_ABNORMAL_BILL_DISPOSE zabd ON zabd.ABNORMAL_BILL_BO = zab.HANDLE
|
|
|
|
|
LEFT JOIN ITEM i ON i.HANDLE = zab.ITEM_BO
|
|
|
|
|
LEFT JOIN CUSTOM_FIELDS "MAP" ON "MAP".HANDLE = i.HANDLE AND "MAP"."ATTRIBUTE" = 'DWG_NO'
|
|
|
|
|
LEFT JOIN (SELECT WIP.SFC_RELEASED_DATE,
|
|
|
|
|
WIP.PLANNED_COMP_DATE,
|
|
|
|
|
WIP.ACTUAL_COMPLETE_DATE,
|
|
|
|
|
WIP.STEP_ID,
|
|
|
|
|
zsd2.OPERATION,
|
|
|
|
|
WIP.repairTotalNumber,
|
|
|
|
|
WIP.surplusRepairNumber,
|
|
|
|
|
WIP.RATE,
|
|
|
|
|
WIP.SFC
|
|
|
|
|
FROM (
|
|
|
|
|
SELECT zsd.SFC SFC,
|
|
|
|
|
MIN(zsd.SFC_RELEASED_DATE) SFC_RELEASED_DATE,
|
|
|
|
|
MAX(zsd.PLANNED_COMP_DATE) PLANNED_COMP_DATE,
|
|
|
|
|
MAX(zsd.ACTUAL_COMPLETE_DATE) ACTUAL_COMPLETE_DATE,
|
|
|
|
|
MAX(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS != 'COMPLETE'
|
|
|
|
|
THEN zsd.STEP_ID
|
|
|
|
|
ELSE zsd.STEP_ID END
|
|
|
|
|
) STEP_ID,
|
|
|
|
|
COUNT(STEP_ID) repairTotalNumber,
|
|
|
|
|
SUM(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS != 'COMPLETE'
|
|
|
|
|
THEN 1
|
|
|
|
|
ELSE 0 END
|
|
|
|
|
) surplusRepairNumber,
|
|
|
|
|
TO_CHAR(
|
|
|
|
|
DECODE(SUM(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS = 'COMPLETE' THEN
|
|
|
|
|
zsd.PROD_HOURS
|
|
|
|
|
ELSE 0 END), 0, 0, SUM(CASE
|
|
|
|
|
WHEN zsd.DISPATCH_STATUS = 'COMPLETE'
|
|
|
|
|
THEN
|
|
|
|
|
zsd.PROD_HOURS
|
|
|
|
|
ELSE 0 END) /
|
|
|
|
|
SUM(zsd.PROD_HOURS))
|
|
|
|
|
* 100, '99990.99') || '%' RATE --进度百分比
|
|
|
|
|
FROM Z_SFC_DISPATCH zsd
|
|
|
|
|
WHERE zsd.STEP_ID LIKE '9%'
|
|
|
|
|
GROUP BY zsd.SFC) WIP
|
|
|
|
|
LEFT JOIN Z_SFC_DISPATCH zsd2 ON zsd2.SFC = WIP.SFC AND WIP.STEP_ID = zsd2.STEP_ID
|
|
|
|
|
) ZSDD
|
|
|
|
|
ON ZSDD.SFC = zab.SFC
|
|
|
|
|
LEFT JOIN OPERATION O ON O.OPERATION = ZSDD.OPERATION AND O.SITE = ZAB.SITE AND O.CURRENT_REVISION = 'true'
|
|
|
|
|
LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO
|
|
|
|
|
WHERE zabd.ABNORMAL_METHOD = 'F'
|
|
|
|
|
OR zabd.ABNORMAL_METHOD = 'FW'
|
|
|
|
|
OR zabd.ABNORMAL_METHOD = 'FB'
|
|
|
|
|
AND zab.SFC IS NOT NULL
|
|
|
|
|
ORDER BY "submissionTime" DESC) FJ
|
|
|
|
|
<where>
|
|
|
|
|
1=1
|
|
|
|
|
<if test="item != null and item != ''">
|
|
|
|
|
AND FJ."item" = #{item}
|
|
|
|
|
</if>
|
|
|
|
|
<if test="careerKey != null and careerKey != ''">
|
|
|
|
|
AND FJ."workOrder" like '%${careerKey}%'
|
|
|
|
|
</if>
|
|
|
|
|
<if test="startDateTime != null and startDateTime != ''">
|
|
|
|
|
AND FJ."resolveDateTime" >= TO_DATE(#{startDateTime}, 'YYYY-MM-DD')
|
|
|
|
|
</if>
|
|
|
|
|
<if test="endDateTime != null and endDateTime != ''">
|
|
|
|
|
AND FJ."resolveDateTime" <= TO_DATE(#{endDateTime}, 'YYYY-MM-DD')
|
|
|
|
|
</if>
|
|
|
|
|
<if test='isCompleted != null and isCompleted != "" and isCompleted == "0" '>
|
|
|
|
|
AND FJ."surplusRepairNumber" = #{isCompleted}
|
|
|
|
|
</if>
|
|
|
|
|
<if test='isCompleted != null and isCompleted != "" and isCompleted =="1" '>
|
|
|
|
|
AND FJ."surplusRepairNumber" > 0
|
|
|
|
|
</if>
|
|
|
|
|
</where>
|
|
|
|
|
</select>
|
|
|
|
|
</mapper>
|