异常看板数据查询

master
zpl 3 years ago
parent 6cb382f5e6
commit adf071cd8d

@ -350,4 +350,33 @@ public class BoardController {
}
}
/**
*
*/
@GetMapping("/abnormalTypeQty")
public R abnormalTypeQty(@RequestParam(required = false) Map paramMap) {
try {
paramMap.put("site", CommonMethods.getSite());
List<Map<String, Object>> result = boardMapper.abnormalTypeQty(paramMap);
return R.ok(result);
} catch (Exception e) {
return R.failed(e.getMessage());
}
}
/**
*
*/
@GetMapping("/abnormalDataDetails")
public R abnormalDataDetails(@RequestParam(required = false) Map paramMap) {
try {
paramMap.put("site", CommonMethods.getSite());
List<Map<String, Object>> result = boardMapper.abnormalDataDetails(paramMap);
return R.ok(result);
} catch (Exception e) {
return R.failed(e.getMessage());
}
}
}

@ -62,4 +62,9 @@ public interface BoardMapper {
List<Map<String, Object>> resourceQtyDow(Map paramMap);
List<Map<String, Object>> resourceQtyAll(Map paramMap);
// 异常类型数据
List<Map<String, Object>> abnormalTypeQty(Map paramMap);
// 异常详情
List<Map<String, Object>> abnormalDataDetails(Map paramMap);
}

@ -487,7 +487,7 @@
FROM DUAL , (SELECT ROUND( SUM(SO.QTY_DONE) / SUM(SO.QTY_TO_BUILD) , 4 ) * 100 RATE
FROM SHOP_ORDER SO
LEFT JOIN CUSTOM_FIELDS CF ON CF.HANDLE = SO.HANDLE AND CF.ATTRIBUTE = 'FACTORY'
WHERE SITE = '1000' --AND CF.VALUE = '6106'
WHERE SITE = '1000'
AND TO_CHAR(SO.PLANNED_COMP_DATE,'YYYY-MM') = TO_CHAR(SYSDATE,'YYYY-MM')
GROUP BY TO_CHAR(PLANNED_COMP_DATE,'YYYY-MM') ) T
</select>
@ -515,7 +515,7 @@
AND R.RESRCE NOT IN (SELECT RESRCE FROM Z_RESOURCE_STATUS_RECEIVE zrsr WHERE ZRSR.STATUS IN ('DOW' ,'WARN'))
) N ) Z
</select>
<!---->
<!--设备状态:运行中、空闲、停机-->
<select id="resourceQtyRun" resultType="java.util.HashMap" parameterType="java.util.HashMap">
SELECT COUNT(RESRCE) "value"
FROM RESRCE r
@ -560,5 +560,81 @@
FROM TEMPA, TEMPB
</select>
<!--异常看板-->
<select id="abnormalTypeQty" resultType="java.util.HashMap" parameterType="java.util.HashMap">
SELECT TEMP.* , NVL(T.DID_CNT,0) ,NVL(T.SUM_CNT,0) SUM_CNT FROM
( SELECT 'Z' TYPE , '质量异常' TYPE_DESCRIPTION FROM DUAL
UNION
SELECT 'Q' TYPE , '其他异常' TYPE_DESCRIPTION FROM DUAL
UNION
SELECT 'S' TYPE , '设备异常' TYPE_DESCRIPTION FROM DUAL ) TEMP
LEFT JOIN
(SELECT A.TYPE , A.CNT, B.CNT SUM_CNT , A.CNT || '/' || B.CNT DID_CNT FROM
( SELECT ZAB.SITE,"TYPE" ,COUNT("TYPE") CNT FROM Z_ABNORMAL_BILL ZAB
WHERE ZAB.SITE = #{site} AND TO_CHAR(ZAB.CREATED_DATE_TIME + 8/24,'YYYY-MM') = TO_CHAR(SYSDATE,'YYYY-MM')
<if test="workCenter != null and workCenter != ''">
AND ZB.WORK_CENTER = #{workCenter}
</if>
GROUP BY ZAB."TYPE", TO_CHAR(ZAB.CREATED_DATE_TIME + 8/24,'YYYY-MM'),ZAB.SITE ) A
LEFT JOIN (SELECT SITE,COUNT(*) CNT FROM Z_ABNORMAL_BILL ZAB WHERE TO_CHAR(ZAB.CREATED_DATE_TIME + 8/24,'YYYY-MM') = TO_CHAR(SYSDATE,'YYYY-MM')
GROUP BY SITE ,TO_CHAR(ZAB.CREATED_DATE_TIME + 8/24,'YYYY-MM')) B ON B.SITE = A.SITE
) T
ON T.TYPE = TEMP."TYPE"
ORDER BY TEMP."TYPE" DESC
</select>
<select id="abnormalDataDetails" resultType="java.util.HashMap" parameterType="java.util.HashMap">
SELECT T.* , T.UN_DEAL || '天' UN_DEAL_TIME , UG.DESCRIPTION USER_GROUP_DESCRIPTION FROM
(
SELECT ROW_NUMBER() OVER(ORDER BY ZAB.ABNORMAL_NO) SEQ, ZAB.HANDLE ,
ZAB."TYPE" ,
CASE WHEN ZAB.TYPE = 'Q' THEN '其他'
WHEN ZAB.TYPE = 'Z' THEN '质量'
WHEN ZAB.TYPE = 'S' THEN '设备' END TYPE_LOCALE ,
ZAB.STATUS ,
CASE WHEN ZAB.STATUS = 'N' THEN '新建'
WHEN ZAB.STATUS = 'X' THEN '响应中'
WHEN ZAB.STATUS = 'F' THEN '方案确认'
WHEN ZAB.STATUS = 'J' THEN '纠防确认'
WHEN ZAB.STATUS = 'Q' THEN '取消'
WHEN ZAB.STATUS = 'G' THEN '关闭' END STATUS_LOCALE ,
CASE WHEN ZAB.STATUS = 'F' THEN ZABD.RESOLVE_SEND_USER_GROUP
WHEN ZAB.STATUS = 'J' THEN ZABD.DUTY_SEND_USER_GROUP
WHEN ZAB.STATUS = 'Q' THEN ZAB.CANCEL_SEND_USER_GROUP
ELSE ZAB.REPORT_SEND_USER_GROUP END USER_GROUP ,
CASE WHEN ZAB.STATUS IN ('N' ,'X' ) THEN ROUND(SYSDATE - ZAB.CREATED_DATE_TIME,4)
ELSE 0 END UN_DEAL ,
ZAB.CREATED_DATE_TIME, ZABD.ABNORMAL_METHOD,
CASE WHEN ZABD.ABNORMAL_METHOD = 'X' THEN '线下换料'
WHEN ZABD.ABNORMAL_METHOD = 'S' THEN '试装'
WHEN ZABD.ABNORMAL_METHOD = 'R' THEN '让步放心'
WHEN ZABD.ABNORMAL_METHOD = 'C' THEN '产品报废'
WHEN ZABD.ABNORMAL_METHOD = 'P' THEN '配作'
WHEN ZABD.ABNORMAL_METHOD = 'F' THEN '返修'
WHEN ZABD.ABNORMAL_METHOD = 'CG' THEN '常规维修'
WHEN ZABD.ABNORMAL_METHOD = 'JH' THEN '计划维修'
WHEN ZABD.ABNORMAL_METHOD = 'DX' THEN '大项修' END ABNORMAL_METHOD_LOCALE,
CF.VALUE ITEM_NUMBER , ZAB.RESRCE , R.DESCRIPTION RESOURCE_DESCRIPTION,
ZABD.RESOLVE_DATE_TIME , ZAB.NC_CODE , T.NC_CODE_GATHER , T.DESCRIPTION_GATHER
FROM Z_ABNORMAL_BILL ZAB
LEFT JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZABD.ABNORMAL_BILL_BO = ZAB.HANDLE
LEFT JOIN RESRCE R ON R.RESRCE = ZAB.RESRCE
LEFT JOIN SHOP_ORDER SO ON SO.SHOP_ORDER = ZAB.SHOP_ORDER
LEFT JOIN CUSTOM_FIELDS CF ON CF.HANDLE = SO.HANDLE AND CF."ATTRIBUTE" = 'ITEM_NUMBER'
LEFT JOIN (SELECT ZANC.ABNORMAL_BILL_BO ,LISTAGG(NC.NC_CODE,',') WITHIN GROUP (ORDER BY NC.NC_CODE) NC_CODE_GATHER ,
LISTAGG(NCT.DESCRIPTION ,',') WITHIN GROUP (ORDER BY NCT.DESCRIPTION ) DESCRIPTION_GATHER
FROM Z_ABNORMAL_NC_CODE ZANC
LEFT JOIN NC_CODE NC ON NC.NC_CODE = ZANC.NC_CODE
LEFT JOIN NC_CODE_T NCT ON NCT.NC_CODE_BO = NC.HANDLE
GROUP BY ZANC.ABNORMAL_BILL_BO) T ON T.ABNORMAL_BILL_BO = ZAB.HANDLE
WHERE ZAB.SITE = #{site} AND TO_CHAR(ZAB.CREATED_DATE_TIME + 8/24,'YYYY-MM' ) = TO_CHAR (SYSDATE , 'YYYY-MM')
<if test="workCenter != null and workCenter != ''">
AND ZB.WORK_CENTER = #{workCenter}
</if>
) T
LEFT JOIN USER_GROUP UG ON UG.USER_GROUP = T.USER_GROUP
ORDER BY T.SEQ
</select>
</mapper>
Loading…
Cancel
Save