|
|
|
|
@ -18,7 +18,7 @@
|
|
|
|
|
FROM BASE_ORDERINFO
|
|
|
|
|
WHERE TO_CHAR(BEGIN_DATE, 'YYYY-MM') = TO_CHAR(SYSDATE, 'YYYY-MM')
|
|
|
|
|
-->
|
|
|
|
|
<select id="selectMonthProductionTotal" resultType="java.lang.Long">
|
|
|
|
|
<!-- <select id="selectMonthProductionTotal" resultType="java.lang.Long">
|
|
|
|
|
/* 按设备取本月窗口内的最早值与最新值差值,再汇总;无起始值则按0计算 */
|
|
|
|
|
SELECT NVL(SUM(latest_val - earliest_val), 0)
|
|
|
|
|
FROM (
|
|
|
|
|
@ -37,13 +37,27 @@
|
|
|
|
|
)
|
|
|
|
|
GROUP BY device_code
|
|
|
|
|
)
|
|
|
|
|
</select> -->
|
|
|
|
|
<select>
|
|
|
|
|
/* 按天取“生产计数-当前日期生产总数”每台设备当日最新值,再汇总本月所有天 */
|
|
|
|
|
SELECT NVL(SUM(daily_val), 0)
|
|
|
|
|
FROM (
|
|
|
|
|
SELECT TRUNC(COLLECT_TIME) AS collect_day,
|
|
|
|
|
DEVICE_CODE,
|
|
|
|
|
MAX(TO_NUMBER(PARAM_VALUE)) KEEP (DENSE_RANK LAST ORDER BY COLLECT_TIME) AS daily_val
|
|
|
|
|
FROM BASE_DEVICE_PARAM_VAL
|
|
|
|
|
WHERE PARAM_NAME = '生产计数-当前日期生产总数'
|
|
|
|
|
AND COLLECT_TIME >= TRUNC(SYSDATE, 'MM')
|
|
|
|
|
AND COLLECT_TIME < ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1)
|
|
|
|
|
GROUP BY TRUNC(COLLECT_TIME), DEVICE_CODE
|
|
|
|
|
)
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<!-- 查询日累计产量(当天:00:00-23:59 工艺参数) -->
|
|
|
|
|
<!-- 使用BASE_DEVICE_PARAM_VAL表,通过PARAM_NAME='机台状态-实际产出数量'定位参数 -->
|
|
|
|
|
<!-- 注意:PARAM_CODE可能因设备不同而变化,但PARAM_NAME是固定的 -->
|
|
|
|
|
<!-- 取每台设备当天最新的一条记录的实际产出数量进行汇总 -->
|
|
|
|
|
<select id="selectDayProductionTotal" resultType="java.lang.Long">
|
|
|
|
|
<!-- <select id="selectDayProductionTotal" resultType="java.lang.Long">
|
|
|
|
|
/* 按设备取当天窗口内的最早值与最新值差值,再汇总;无起始值则按0计算 */
|
|
|
|
|
SELECT NVL(SUM(latest_val - earliest_val), 0)
|
|
|
|
|
FROM (
|
|
|
|
|
@ -62,6 +76,19 @@
|
|
|
|
|
)
|
|
|
|
|
GROUP BY device_code
|
|
|
|
|
)
|
|
|
|
|
</select> -->
|
|
|
|
|
<select id="selectDayProductionTotal" resultType="java.lang.Long">
|
|
|
|
|
/* 取当天每台设备“生产计数-当前日期生产总数”的最新值再汇总 */
|
|
|
|
|
SELECT NVL(SUM(daily_val), 0)
|
|
|
|
|
FROM (
|
|
|
|
|
SELECT DEVICE_CODE,
|
|
|
|
|
MAX(TO_NUMBER(PARAM_VALUE)) KEEP (DENSE_RANK LAST ORDER BY COLLECT_TIME) AS daily_val
|
|
|
|
|
FROM BASE_DEVICE_PARAM_VAL
|
|
|
|
|
WHERE PARAM_NAME = '生产计数-当前日期生产总数'
|
|
|
|
|
AND COLLECT_TIME >= TRUNC(SYSDATE)
|
|
|
|
|
AND COLLECT_TIME < TRUNC(SYSDATE) + 1
|
|
|
|
|
GROUP BY DEVICE_CODE
|
|
|
|
|
)
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<!-- 查询本周工单统计(计划数、完成数,周一00:00 - 周日23:59) -->
|
|
|
|
|
|