Compare commits
10 Commits
Author | SHA1 | Date | |
---|---|---|---|
9c37d8dbe6 | |||
6862479614 | |||
772be9bcd9 | |||
9f75e6accc | |||
d0c164ab8e | |||
59dff37615 | |||
afd3ccfd1e | |||
837ff7cc84 | |||
72bdec3ccd | |||
cc4ec791d1 |
4
pom.xml
4
pom.xml
@ -204,12 +204,12 @@
|
||||
<url>file://D:\Temp\prj\maven\repository\com\machbase\6.1.11</url>
|
||||
</repository>
|
||||
</repositories -->
|
||||
<repositories>
|
||||
<!-- <repositories>
|
||||
<repository>
|
||||
<id>nexus</id>
|
||||
<name>siltronchnMaven</name>
|
||||
<url>http://192.168.0.97:4000/repository/siltronchnMaven/</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
</repositories> -->
|
||||
|
||||
</project>
|
||||
|
@ -206,4 +206,12 @@ public class DashboardCtr {
|
||||
result.add("issueGdIdxData",dashboardSvc.selectIssueGdIdxData(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping(value="/selectIssueGdIdxDataPageTotal", method=RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public Object selectIssueGdIdxDataPageTotal(@RequestBody BaseParam paramMap){
|
||||
BaseResponse result = new BaseResponse();
|
||||
result.add("issueGdIdxDataPageTotal",dashboardSvc.selectIssueGdIdxDataPageTotal(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
@ -52,4 +52,13 @@ public class PastRsltDataReadCtr{
|
||||
result.add("pastRsltReadData", pastRsltDataReadSvc.selectTagRawDataByQuarter(convertedParam));
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping(value="/selectTagRawDataByQuarterPageTotal", method=RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public Object selectTagRawDataByQuarterPageTotal(@RequestBody BaseParam paramMap){
|
||||
BaseResponse result = new BaseResponse();
|
||||
HashMap<String, Object> convertedParam = paramMap.getParams();
|
||||
result.add("pastRslPageTotal", pastRsltDataReadSvc.selectTagRawDataByQuarterPageTotal(convertedParam));
|
||||
return result;
|
||||
}
|
||||
}
|
@ -66,6 +66,15 @@ public class ReadResultCloseMngCtr{
|
||||
result.add("cdKindData", readResultCloseMngSvc.selectReadResultCloseMng(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping(value="/selectReadResultCloseMngPageTotal", method=RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public Object selectReadResultCloseMngPageTotal(@RequestBody BaseParam paramMap){
|
||||
BaseResponse result = new BaseResponse();
|
||||
result.add("cdKindPageTotal", readResultCloseMngSvc.selectReadResultCloseMngPageTotal(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @methodName : readResultCloseMngSP
|
||||
|
@ -98,4 +98,8 @@ public class DashboardSvc extends BaseSvc {
|
||||
public List<CamelHashMap> selectIssueGdIdxData(HashMap<String, Object> param){
|
||||
return dao.selectList("ems.base.dashboard.selectIssueGdIdxData", param);
|
||||
}
|
||||
|
||||
public List<CamelHashMap> selectIssueGdIdxDataPageTotal(HashMap<String, Object> param){
|
||||
return dao.selectList("ems.base.dashboard.selectIssueGdIdxDataPageTotal", param);
|
||||
}
|
||||
}
|
||||
|
@ -48,4 +48,17 @@ public class PastRsltDataReadSvc extends BaseSvc {
|
||||
//sql 인젝션 대비 yearQuarterList params 새로 구성----끝
|
||||
return dao.selectList("ems.base.PastRsltDataRead.selectTagRawDataByQuarter", params);
|
||||
}
|
||||
|
||||
public Object selectTagRawDataByQuarterPageTotal(HashMap<String, Object> params) {
|
||||
//sql 인젝션 대비 yearQuarterList params 새로 구성----시작
|
||||
List<String> newYearQuarterList = new ArrayList<>();
|
||||
for(String word: (List<String>)params.get("yearQuarterList")) {
|
||||
if(word.length() == 7 && word.substring(4, 5).equals("Y") && word.substring(6).equals("Q")) {
|
||||
newYearQuarterList.add(word);
|
||||
}
|
||||
}
|
||||
params.put("newYearQuarterList", newYearQuarterList);
|
||||
//sql 인젝션 대비 yearQuarterList params 새로 구성----끝
|
||||
return dao.selectList("ems.base.PastRsltDataRead.selectTagRawDataByQuarterPageTotal", params);
|
||||
}
|
||||
}
|
@ -47,6 +47,10 @@ public class ReadResultCloseMngSvc extends BaseSvc {
|
||||
public Object selectReadResultCloseMng(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.base.readResultCloseMng.selectReadResultCloseMng", params);
|
||||
}
|
||||
|
||||
public Object selectReadResultCloseMngPageTotal(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.base.readResultCloseMng.selectReadResultCloseMngPageTotal", params);
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : readResultCloseMngSP
|
||||
|
@ -48,6 +48,14 @@ public class EnrgEffcEqpmDetlMntrCtr {
|
||||
result.add("eqpmDetlData", enrgEffcEqpmDetlMntrSvc.selectEnrgEffcEqpmDetlMntr(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping(value="/selectEnrgEffcEqpmDetlMntrPageTotal", method=RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public Object selectEnrgEffcEqpmDetlMntrPageTotal(@RequestBody BaseParam paramMap){
|
||||
BaseResponse result = new BaseResponse();
|
||||
result.add("eqpmDetlDataPageTotal", enrgEffcEqpmDetlMntrSvc.selectEnrgEffcEqpmDetlMntrPageTotal(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : selectEqpmDetailPop
|
||||
|
@ -45,6 +45,14 @@ public class EqpmIndMntrCtr {
|
||||
result.add("eqpmIndMntrData", eqpmIndMntrSvc.selectDailyEnrgUseMainIdx(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping(value="/selectDailyEnrgUseMainIdxPageTotal", method=RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public Object selectDailyEnrgUseMainIdxPageTotal(@RequestBody BaseParam paramMap){
|
||||
BaseResponse result = new BaseResponse();
|
||||
result.add("eqpmIndMntrPageTotal", eqpmIndMntrSvc.selectDailyEnrgUseMainIdxPageTotal(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : selectMonthlyEnrgUseMainIdx
|
||||
@ -61,4 +69,13 @@ public class EqpmIndMntrCtr {
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping(value="/selectMonthlyEnrgUseMainIdxPageTotal", method=RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public Object selectMonthlyEnrgUseMainIdxPageTotal(@RequestBody BaseParam paramMap){
|
||||
BaseResponse result = new BaseResponse();
|
||||
result.add("eqpmIndMntrPageTotal", eqpmIndMntrSvc.selectMonthlyEnrgUseMainIdxPageTotal(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -38,6 +38,7 @@ public class TagTrndCtr {
|
||||
result.add("tagTrndDatas",tagTrndSvc.selectTagAndEqpmList(paramMap.getParams()));
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : selectTagTrndData
|
||||
* @date : 2022.12.13
|
||||
|
@ -32,6 +32,10 @@ public class EnrgEffcEqpmDetlMntrSvc extends BaseSvc{
|
||||
public Object selectEnrgEffcEqpmDetlMntr(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.effc.EnrgEffcEqpmDetlMntr.selectEnrgEffcEqpmDetlMntr", params);
|
||||
}
|
||||
|
||||
public Object selectEnrgEffcEqpmDetlMntrPageTotal(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.effc.EnrgEffcEqpmDetlMntr.selectEnrgEffcEqpmDetlMntrPageTotal", params);
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : selectEqpmDetailPop
|
||||
|
@ -30,6 +30,10 @@ public class EqpmIndMntrSvc extends BaseSvc{
|
||||
public Object selectDailyEnrgUseMainIdx(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.effc.eqpmIndMntr.selectDailyEnrgUseMainIdx", params);
|
||||
}
|
||||
|
||||
public Object selectDailyEnrgUseMainIdxPageTotal(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.effc.eqpmIndMntr.selectDailyEnrgUseMainIdxPageTotal", params);
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : selectMonthlyEnrgUseMainIdx
|
||||
@ -41,4 +45,8 @@ public class EqpmIndMntrSvc extends BaseSvc{
|
||||
public Object selectMonthlyEnrgUseMainIdx(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.effc.eqpmIndMntr.selectMonthlyEnrgUseMainIdx", params);
|
||||
}
|
||||
|
||||
public Object selectMonthlyEnrgUseMainIdxPageTotal(HashMap<String, Object> params) {
|
||||
return dao.selectList("ems.effc.eqpmIndMntr.selectMonthlyEnrgUseMainIdxPageTotal", params);
|
||||
}
|
||||
}
|
||||
|
@ -18,10 +18,10 @@ spring:
|
||||
|
||||
#local db
|
||||
db-type: oracle
|
||||
serverIp: localhost
|
||||
port: 1521
|
||||
serverIp: 218.237.212.51
|
||||
port: 30001
|
||||
databaseName: free
|
||||
username: LSITC
|
||||
username: lsitc
|
||||
password: "ziin2117!"
|
||||
|
||||
|
||||
|
@ -204,6 +204,35 @@
|
||||
AND A.ALRM_KIND IN ( 'WARN', 'CARE')
|
||||
ORDER BY A.TOT_DTTM, B.SORT_SEQ, A.GD_IDX_ID, A.EQPM_ID
|
||||
)T1
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="selectIssueGdIdxDataPageTotal" resultType="camelHashMap">
|
||||
/* ems.base.dashboard.selectIssueGdIdxDataPageTotal 대시보드_설비별 이슈 가이드 지표 조회 */
|
||||
WITH ECC_INFO AS (
|
||||
SELECT CONNECT_BY_ROOT ECC_ID AS FAB_ID, CONNECT_BY_ROOT ECC_NM AS FAB_NM, ECC_ID, ECC_NM
|
||||
FROM EMS_ECC_BASE_INFO
|
||||
START WITH COM_ID = #{session.comId} AND LOC_KIND = 'LOC_FAC'
|
||||
CONNECT BY PRIOR COM_ID = COM_ID AND PRIOR ECC_ID = UP_ECC_ID
|
||||
), EQPM_LIST AS (
|
||||
SELECT A.COM_ID, A.EQPM_ID, A.EQPM_NM, A.EQPM_GRP_ID, B.EQPM_GRP_NM, A.ECC_ID, FAB_ID, FAB_NM, C.ECC_NM, B.EQPM_KIND_ID
|
||||
FROM EMS_EQPM_BASE_INFO A
|
||||
INNER JOIN EMS_EQPM_GRP B ON ( B.COM_ID = A.COM_ID AND B.EQPM_GRP_ID = A.EQPM_GRP_ID )
|
||||
INNER JOIN ECC_INFO C ON ( C.ECC_ID = A.ECC_ID )
|
||||
WHERE A.COM_ID = #{session.comId}
|
||||
)
|
||||
SELECT count(*) totalCount
|
||||
FROM (
|
||||
SELECT A.GD_IDX_ID, B.GD_IDX_NM, A.TOT_DTTM, A.TOT_DTTM AS TOT_TIME, A.TOT_VAL, A.CARE_STND_VAL, A.WARN_STND_VAL, A.ALRM_KIND, A.ALRM_MSG, A.EQPM_ID, C.EQPM_NM, C.EQPM_GRP_ID, C.EQPM_GRP_NM, C.ECC_ID, C.FAB_ID, C.FAB_NM, B.SORT_SEQ, C.EQPM_KIND_ID, D.EQPM_KIND_NM
|
||||
FROM EMS_GD_IDX_TOT_DATA A
|
||||
INNER JOIN EMS_EQPM_GD_IDX B ON ( B.COM_ID = A.COM_ID AND B.GD_IDX_ID = A.GD_IDX_ID )
|
||||
INNER JOIN EQPM_LIST C ON ( C.COM_ID = A.COM_ID AND C.EQPM_ID = A.EQPM_ID )
|
||||
INNER JOIN EMS_EQPM_KIND D ON ( D.EQPM_KIND_ID = C.EQPM_KIND_ID)
|
||||
WHERE A.COM_ID = #{session.comId}
|
||||
AND A.TOT_DTTM >= trunc(sysdate) AND A.TOT_DTTM <![CDATA[ < ]]> trunc(sysdate) + 1
|
||||
AND A.ALRM_KIND IN ( 'WARN', 'CARE')
|
||||
ORDER BY A.TOT_DTTM, B.SORT_SEQ, A.GD_IDX_ID, A.EQPM_ID
|
||||
)T1
|
||||
</select>
|
||||
|
||||
</mapper>
|
@ -11,5 +11,17 @@
|
||||
AND A.READ_DTTM BETWEEN TO_DATE(CONCAT(#{fromDt},'000000'), 'YYYYMMDDHH24MISS')
|
||||
AND TO_DATE(CONCAT(#{toDt},'235959'), 'YYYYMMDDHH24MISS')
|
||||
ORDER BY TAG_ID, READ_DTTM
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="selectTagRawDataByQuarterPageTotal" resultType="camelHashMap">
|
||||
SELECT count(*) totalCount
|
||||
FROM EMS_TAG_READ_RAW_DATA A
|
||||
LEFT JOIN EMS_TAG_BASE_INFO B
|
||||
ON A.COM_ID = B.COM_ID AND A.TAG_ID = B.TAG_ID
|
||||
WHERE A.COM_ID = #{session.comId}
|
||||
AND A.TAG_ID = #{tagId}
|
||||
AND A.READ_DTTM BETWEEN TO_DATE(CONCAT(#{fromDt},'000000'), 'YYYYMMDDHH24MISS')
|
||||
AND TO_DATE(CONCAT(#{toDt},'235959'), 'YYYYMMDDHH24MISS')
|
||||
</select>
|
||||
</mapper>
|
@ -46,7 +46,45 @@
|
||||
, EI.DIST_RT
|
||||
, T.READ_DATA_TYPE_CD
|
||||
ORDER BY T.TAG_ID
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="selectReadResultCloseMngPageTotal" resultType="camelHashMap">
|
||||
SELECT count(*) totalCount
|
||||
FROM (
|
||||
SELECT T.TAG_ID AS READ_PLC_ID
|
||||
, T.TAG_NM AS READ_PLC_NM
|
||||
, T.MGNF AS DIST_RT
|
||||
, EI.EQPM_ID AS ECC_ID
|
||||
, E.EQPM_NM AS ECC_NM
|
||||
, EI.DIST_RT AS ECC_DIST_RT
|
||||
, CASE WHEN T.READ_DATA_TYPE_CD = 'ADDUP' THEN ROUND(SUM(D.TOT_VAL),2)
|
||||
WHEN T.READ_DATA_TYPE_CD = 'SUM' THEN ROUND(SUM(D.TOT_VAL),2)
|
||||
WHEN T.READ_DATA_TYPE_CD = 'MIN' THEN ROUND(MIN(D.TOT_VAL),2)
|
||||
WHEN T.READ_DATA_TYPE_CD = 'MAX' THEN ROUND(MAX(D.TOT_VAL),2)
|
||||
WHEN T.READ_DATA_TYPE_CD = 'INSTANT' THEN ROUND(AVG(D.TOT_VAL),2) END AS TOT_VAL
|
||||
, MAX(D.PROC_DTTM) AS PROC_DTTM
|
||||
FROM EMS_TAG_BASE_INFO T
|
||||
LEFT JOIN EMS_EQPM_IAO EI
|
||||
ON T.COM_ID = EI.COM_ID AND T.TAG_ID = EI.OBJ_ID
|
||||
LEFT JOIN EMS_EQPM_BASE_INFO E
|
||||
ON EI.COM_ID = E.COM_ID AND EI.EQPM_ID = E.EQPM_ID AND E.USE_FG = '1'
|
||||
LEFT JOIN EMS_TAG_TOT_DATA D
|
||||
ON D.COM_ID = T.COM_ID AND D.TAG_ID = T.TAG_ID
|
||||
AND D.TOT_DTTM BETWEEN TO_DATE(CONCAT(#{readDt},'000000'), 'yyyyMMddHH24miss') and TO_DATE(CONCAT(#{readDt},'235959'), 'yyyyMMddHH24miss')
|
||||
WHERE T.COM_ID = #{session.comId}
|
||||
AND T.USE_FG = '1'
|
||||
AND T.READ_OBJ_ID = #{mttTp}
|
||||
GROUP BY T.TAG_ID
|
||||
, T.TAG_NM
|
||||
, T.MGNF
|
||||
, EI.EQPM_ID
|
||||
, E.EQPM_NM
|
||||
, EI.DIST_RT
|
||||
, T.READ_DATA_TYPE_CD
|
||||
)
|
||||
</select>
|
||||
|
||||
<select id="selectReadResultCloseMng_OLD" resultType="camelHashMap">
|
||||
/* ems.readResultCloseMng.selectReadResultCloseMng 검침실적마감 관리 일일검침 정보 쿼리 */
|
||||
SELECT READ_PLC_ID , READ_PLC_NM , DIST_RT, ECC_ID , ECC_NM, ECC_DIST_RT, CASE WHEN AVG_TOT_VAL IS NOT NULL THEN AVG_TOT_VAL ELSE SUM_TOT_VAL END AS TOT_VAL, PROC_DTTM FROM (
|
||||
|
@ -136,6 +136,9 @@
|
||||
<if test="tagNmLike != null and tagNmLike != ''">
|
||||
AND TAG_NM LIKE '%' || #{tagNmLike} || '%'
|
||||
</if>
|
||||
<if test="tagIdLike != null and tagIdLike != ''">
|
||||
AND TAG_ID LIKE '%' || #{tagIdLike} || '%'
|
||||
</if>
|
||||
<if test="readDataTypeCd != null and readDataTypeCd != ''">
|
||||
AND READ_DATA_TYPE_CD = #{readDataTypeCd}
|
||||
</if>
|
||||
|
@ -74,6 +74,70 @@
|
||||
AND OK_FG = #{okFg}
|
||||
</if>
|
||||
ORDER BY EQPM_ID, GD_IDX_ID
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="selectEnrgEffcEqpmDetlMntrPageTotal" resultType ="camelHashMap">
|
||||
/* ems.effc.EnrgEffcEqpmDetlMntr : 설비별 운전가이드 - 설비별 현황리스트 조회 */
|
||||
WITH ECC_INFO AS (
|
||||
SELECT CONNECT_BY_ROOT ECC_ID AS FAB_ID, CONNECT_BY_ROOT ECC_NM AS FAB_NM, ECC_ID, ECC_NM
|
||||
FROM EMS_ECC_BASE_INFO
|
||||
START WITH COM_ID = #{session.comId} AND LOC_KIND = 'LOC_FAC'
|
||||
CONNECT BY PRIOR COM_ID = COM_ID AND PRIOR ECC_ID = UP_ECC_ID
|
||||
), EQPM_LIST AS (
|
||||
SELECT A.COM_ID, A.EQPM_ID, A.EQPM_NM, 'ROI000001' AS READ_OBJ_ID, A.EQPM_GRP_ID, B.EQPM_GRP_NM, A.ECC_ID, FAB_ID, FAB_NM, C.ECC_NM, #{fromDt} AS OBJ_DTTM1, #{toDt} AS OBJ_DTTM2
|
||||
FROM EMS_EQPM_BASE_INFO A
|
||||
INNER JOIN EMS_EQPM_GRP B ON ( B.COM_ID = A.COM_ID AND B.EQPM_GRP_ID = A.EQPM_GRP_ID
|
||||
<if test="eqpmKindId != null and eqpmKindId != ''">
|
||||
AND B.EQPM_KIND_ID = #{eqpmKindId}
|
||||
</if>
|
||||
)
|
||||
INNER JOIN ECC_INFO C ON ( C.ECC_ID = A.ECC_ID )
|
||||
WHERE A.COM_ID = #{session.comId}
|
||||
<if test="eqpmGrpId != null and eqpmGrpId != ''">
|
||||
AND A.EQPM_GRP_ID = #{eqpmGrpId}
|
||||
</if>
|
||||
<if test="eqpmId.size()!= 0">
|
||||
AND A.EQPM_ID IN(
|
||||
<foreach open="" close="" collection="eqpmId" item="eachRow" separator=",">
|
||||
#{eachRow}
|
||||
</foreach>
|
||||
)
|
||||
</if>
|
||||
<if test="fabId != null and fabId !=''">
|
||||
AND FAB_ID = #{fabId}
|
||||
</if>
|
||||
) , RSLT_DATA AS (
|
||||
SELECT A.EQPM_ID, B.GD_IDX_ID
|
||||
, MAX(A.FAB_ID) AS FAB_ID
|
||||
, MAX(A.FAB_NM) AS FAB_NM
|
||||
, MAX(A.EQPM_GRP_ID) AS EQPM_GRP_ID
|
||||
, MAX(A.EQPM_GRP_NM) AS EQPM_GRP_NM
|
||||
, MAX(A.EQPM_NM) AS EQPM_NM
|
||||
, MAX(B.GD_IDX_NM) AS GD_IDX_NM
|
||||
, MAX(NVL2(D.EQPM_ID, D.CARE_STND_VAL, B.CARE_STND_VAL)) AS CARE_STND_VAL
|
||||
, MAX(NVL2(D.EQPM_ID, D.WARN_STND_VAL,B.WARN_STND_VAL)) AS WARN_STND_VAL
|
||||
, MAX(B.UP_TOT_METH) AS UP_TOT_METH
|
||||
, CASE B.UP_TOT_METH WHEN 'SUM' THEN SUM(C.TOT_VAL) WHEN 'AVG' THEN SF_GET_NUMBER_TRUNC(AVG(C.TOT_VAL)) WHEN 'MAX' THEN MAX(C.TOT_VAL) WHEN 'MIN' THEN MIN(C.TOT_VAL) END AS TOT_VAL
|
||||
, MIN(CASE WHEN C.ALRM_KIND IN ( 'WARN', 'CARE') THEN 'NG' WHEN C.ALRM_KIND = 'NORM' THEN 'OK' END) OK_FG
|
||||
, MAX(B.GD_METH) AS GD_METH
|
||||
, SUM(CASE WHEN C.ALRM_KIND IN ( 'WARN', 'CARE') THEN 1 END) NG_CNT
|
||||
FROM EQPM_LIST A
|
||||
INNER JOIN EMS_EQPM_GD_IDX B ON ( B.COM_ID = A.COM_ID AND B.EQPM_GRP_ID = A.EQPM_GRP_ID )
|
||||
LEFT JOIN EMS_GD_IDX_TOT_DATA C ON ( C.COM_ID = A.COM_ID AND C.EQPM_ID = A.EQPM_ID AND C.GD_IDX_ID = B.GD_IDX_ID
|
||||
AND C.TOT_DTTM >= to_date(A.OBJ_DTTM1, 'yyyymmdd') AND C.TOT_DTTM <![CDATA[ < ]]>(to_date(A.OBJ_DTTM2, 'yyyymmdd') + 1 ))
|
||||
LEFT OUTER JOIN EMS_EQPM_GD_DETL D ON ( D.COM_ID = B.COM_ID AND D.GD_IDX_ID = B.GD_IDX_ID AND D.EQPM_ID = A.EQPM_ID )
|
||||
WHERE 1=1
|
||||
<if test="gdIdxId != null and gdIdxId !=''">
|
||||
AND B.GD_IDX_ID = #{gdIdxId}
|
||||
</if>
|
||||
GROUP BY A.EQPM_ID, B.GD_IDX_ID, B.UP_TOT_METH
|
||||
)
|
||||
SELECT count(*) totalCount FROM RSLT_DATA
|
||||
WHERE 1=1
|
||||
<if test="okFg != null and okFg !=''">
|
||||
AND OK_FG = #{okFg}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="selectEqpmDetailPop" resultType="camelHashMap">
|
||||
|
@ -210,6 +210,168 @@
|
||||
( B.EQPM_ID = A.EQPM_ID )
|
||||
ORDER BY
|
||||
A.EQPM_NM
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="selectDailyEnrgUseMainIdxPageTotal" resultType="camelHashMap">
|
||||
/* ems.effc.eqpmIndMntr.selectDailyEnrgUseMainIdxPageTotal: 에너지 일별 주요 지표 */
|
||||
WITH ECC_INFO AS (
|
||||
SELECT
|
||||
CONNECT_BY_ROOT ECC_ID AS FAB_ID,
|
||||
CONNECT_BY_ROOT ECC_NM AS FAB_NM,
|
||||
ECC_ID,
|
||||
ECC_NM
|
||||
FROM
|
||||
EMS_ECC_BASE_INFO
|
||||
START WITH
|
||||
COM_ID = #{session.comId}
|
||||
AND LOC_KIND = 'LOC_FAC'
|
||||
AND ECC_ID = #{fabId}
|
||||
CONNECT BY
|
||||
PRIOR COM_ID = COM_ID
|
||||
AND PRIOR ECC_ID = UP_ECC_ID
|
||||
),
|
||||
EQPM_LIST AS (
|
||||
SELECT
|
||||
A.COM_ID,
|
||||
A.EQPM_ID,
|
||||
A.EQPM_NM,
|
||||
'ROI000001' AS READ_OBJ_ID,
|
||||
A.EQPM_GRP_ID,
|
||||
B.EQPM_GRP_NM,
|
||||
A.ECC_ID,
|
||||
FAB_ID,
|
||||
FAB_NM,
|
||||
C.ECC_NM,
|
||||
#{fromDt} AS OBJ_DT,
|
||||
#{fromDtMm} AS OBJ_MM
|
||||
FROM
|
||||
EMS_EQPM_BASE_INFO A
|
||||
INNER JOIN EMS_EQPM_GRP B ON
|
||||
( B.COM_ID = A.COM_ID
|
||||
AND B.EQPM_GRP_ID = A.EQPM_GRP_ID )
|
||||
INNER JOIN ECC_INFO C ON
|
||||
( C.ECC_ID = A.ECC_ID )
|
||||
WHERE
|
||||
A.COM_ID = #{session.comId}
|
||||
AND B.EQPM_KIND_ID = #{eqpmKindId}
|
||||
AND B.EQPM_GRP_ID = #{eqpmGrpId}
|
||||
),
|
||||
EQPM_RSLT_DATA AS (
|
||||
SELECT
|
||||
A.COM_ID,
|
||||
A.EQPM_ID,
|
||||
A.EQPM_NM,
|
||||
A.READ_OBJ_ID,
|
||||
A.EQPM_GRP_ID,
|
||||
A.EQPM_GRP_NM,
|
||||
A.ECC_ID,
|
||||
A.FAB_ID,
|
||||
FAB_NM,
|
||||
A.ECC_NM
|
||||
,
|
||||
round(B.PLAN_VAL / to_number(to_char(LAST_DAY(to_date(A.OBJ_DT, 'yyyymmdd')), 'DD')), 0) AS PLAN_VAL,
|
||||
( SELECT SUM(C.TOT_VAL) FROM EMS_EQPM_TOT_DATA C
|
||||
WHERE C.COM_ID = A.COM_ID
|
||||
AND C.EQPM_ID = A.EQPM_ID
|
||||
AND C.READ_OBJ_ID = A.READ_OBJ_ID
|
||||
AND C.TOT_DTTM <![CDATA[ >= ]]> to_date(A.OBJ_DT, 'yyyymmdd')
|
||||
AND C.TOT_DTTM <![CDATA[ < ]]> (to_date(A.OBJ_DT, 'yyyymmdd') + 1)) AS USED_VAL
|
||||
FROM
|
||||
EQPM_LIST A
|
||||
LEFT JOIN EMS_EQPM_MM_PLAN B ON
|
||||
( B.COM_ID = A.COM_ID
|
||||
AND B.EQPM_ID = A.EQPM_ID
|
||||
AND B.READ_OBJ_ID = A.READ_OBJ_ID
|
||||
AND B.OBJ_MM = A.OBJ_MM)
|
||||
),
|
||||
GD_LIST AS (
|
||||
SELECT
|
||||
COM_ID,
|
||||
GD_IDX_ID,
|
||||
GD_IDX_NM,
|
||||
UP_TOT_METH,
|
||||
EQPM_GRP_ID,
|
||||
'GD' || trim(TO_CHAR(ROW_SEQ, '00')) AS GD_SEQ,
|
||||
ROW_SEQ
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
COM_ID,
|
||||
GD_IDX_ID,
|
||||
GD_IDX_NM,
|
||||
EQPM_GRP_ID,
|
||||
UP_TOT_METH,
|
||||
SORT_SEQ,
|
||||
ROW_NUMBER() OVER (
|
||||
ORDER BY SORT_SEQ,
|
||||
GD_IDX_ID) AS ROW_SEQ
|
||||
FROM
|
||||
EMS_EQPM_GD_IDX
|
||||
WHERE
|
||||
COM_ID = #{session.comId}
|
||||
AND EQPM_GRP_ID = #{eqpmGrpId}
|
||||
)
|
||||
WHERE
|
||||
ROW_SEQ <![CDATA[ <= ]]> 10
|
||||
),
|
||||
EQPM_GD_DATA AS (
|
||||
SELECT
|
||||
EQPM_ID,
|
||||
GD01,
|
||||
GD02,
|
||||
GD03,
|
||||
GD04,
|
||||
GD05,
|
||||
GD06,
|
||||
GD07,
|
||||
GD08,
|
||||
GD09,
|
||||
GD10
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
B.EQPM_ID,
|
||||
MAX(GD_SEQ) AS GD_SEQ
|
||||
,
|
||||
CASE
|
||||
A.UP_TOT_METH WHEN 'SUM' THEN SUM(C.TOT_VAL)
|
||||
WHEN 'AVG' THEN AVG(C.TOT_VAL)
|
||||
WHEN 'MAX' THEN MAX(C.TOT_VAL)
|
||||
WHEN 'MIN' THEN MIN(C.TOT_VAL)
|
||||
END AS TOT_VAL
|
||||
FROM
|
||||
GD_LIST A
|
||||
INNER JOIN EQPM_LIST B ON
|
||||
(B.COM_ID = A.COM_ID
|
||||
AND B.EQPM_GRP_ID = A.EQPM_GRP_ID)
|
||||
LEFT JOIN EMS_GD_IDX_DD_DATA C ON
|
||||
(C.COM_ID = B.COM_ID
|
||||
AND C.EQPM_ID = B.EQPM_ID
|
||||
AND C.GD_IDX_ID = A.GD_IDX_ID
|
||||
AND C.TOT_DTTM <![CDATA[ >= ]]> to_date(B.OBJ_DT, 'yyyymmdd')
|
||||
AND C.TOT_DTTM <![CDATA[ < ]]> (to_date(B.OBJ_DT, 'yyyymmdd') + 1) )
|
||||
GROUP BY
|
||||
B.EQPM_ID,
|
||||
A.GD_IDX_ID,
|
||||
A.UP_TOT_METH )
|
||||
PIVOT ( SUM(TOT_VAL) FOR GD_SEQ IN ('GD01' AS GD01,
|
||||
'GD02' AS GD02,
|
||||
'GD03' AS GD03,
|
||||
'GD04' AS GD04,
|
||||
'GD05' AS GD05,
|
||||
'GD06' AS GD06,
|
||||
'GD07' AS GD07,
|
||||
'GD08' AS GD08,
|
||||
'GD09' AS GD09,
|
||||
'GD10' AS GD10 ) )
|
||||
)
|
||||
SELECT
|
||||
count(*) totalCount
|
||||
FROM
|
||||
EQPM_RSLT_DATA A
|
||||
INNER JOIN EQPM_GD_DATA B ON
|
||||
( B.EQPM_ID = A.EQPM_ID )
|
||||
</select>
|
||||
|
||||
<select id="selectMonthlyEnrgUseMainIdx" resultType="camelHashMap">
|
||||
@ -395,5 +557,165 @@
|
||||
( B.EQPM_ID = A.EQPM_ID )
|
||||
ORDER BY
|
||||
A.EQPM_NM
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</select>
|
||||
|
||||
<select id="selectMonthlyEnrgUseMainIdxPageTotal" resultType="camelHashMap">
|
||||
/* ems.effc.eqpmIndMntr.selectMonthlyEnrgUseMainIdxPageTotal: 에너지 월별 주요 지표 */
|
||||
WITH ECC_INFO AS (
|
||||
SELECT
|
||||
CONNECT_BY_ROOT ECC_ID AS FAB_ID,
|
||||
CONNECT_BY_ROOT ECC_NM AS FAB_NM,
|
||||
ECC_ID,
|
||||
ECC_NM
|
||||
FROM
|
||||
EMS_ECC_BASE_INFO
|
||||
START WITH
|
||||
COM_ID = #{session.comId}
|
||||
AND LOC_KIND = 'LOC_FAC'
|
||||
AND ECC_ID = #{fabId}
|
||||
CONNECT BY
|
||||
PRIOR COM_ID = COM_ID
|
||||
AND PRIOR ECC_ID = UP_ECC_ID
|
||||
),
|
||||
EQPM_LIST AS (
|
||||
SELECT
|
||||
A.COM_ID,
|
||||
A.EQPM_ID,
|
||||
A.EQPM_NM,
|
||||
'ROI000001' AS READ_OBJ_ID,
|
||||
A.EQPM_GRP_ID,
|
||||
B.EQPM_GRP_NM,
|
||||
A.ECC_ID,
|
||||
FAB_ID,
|
||||
FAB_NM,
|
||||
C.ECC_NM,
|
||||
#{fromDt} AS OBJ_MM
|
||||
FROM
|
||||
EMS_EQPM_BASE_INFO A
|
||||
INNER JOIN EMS_EQPM_GRP B ON
|
||||
( B.COM_ID = A.COM_ID
|
||||
AND B.EQPM_GRP_ID = A.EQPM_GRP_ID )
|
||||
INNER JOIN ECC_INFO C ON
|
||||
( C.ECC_ID = A.ECC_ID )
|
||||
WHERE
|
||||
A.COM_ID = #{session.comId}
|
||||
AND B.EQPM_KIND_ID = #{eqpmKindId}
|
||||
AND B.EQPM_GRP_ID = #{eqpmGrpId}
|
||||
),
|
||||
EQPM_RSLT_DATA AS (
|
||||
SELECT
|
||||
A.COM_ID,
|
||||
A.EQPM_ID,
|
||||
A.EQPM_NM,
|
||||
A.READ_OBJ_ID,
|
||||
A.EQPM_GRP_ID,
|
||||
A.EQPM_GRP_NM,
|
||||
A.ECC_ID,
|
||||
A.FAB_ID,
|
||||
FAB_NM,
|
||||
A.ECC_NM,
|
||||
B.PLAN_VAL AS PLAN_VAL,
|
||||
C.TOT_VAL AS USED_VAL
|
||||
FROM
|
||||
EQPM_LIST A
|
||||
LEFT JOIN EMS_EQPM_MM_PLAN B ON
|
||||
( B.COM_ID = A.COM_ID
|
||||
AND B.EQPM_ID = A.EQPM_ID
|
||||
AND B.READ_OBJ_ID = A.READ_OBJ_ID
|
||||
AND B.OBJ_MM = A.OBJ_MM)
|
||||
LEFT JOIN EMS_EQPM_MM_TOT_DATA C ON
|
||||
( C.COM_ID = A.COM_ID
|
||||
AND C.EQPM_ID = A.EQPM_ID
|
||||
AND C.READ_OBJ_ID = A.READ_OBJ_ID
|
||||
AND C.TOT_MM = A.OBJ_MM)
|
||||
),
|
||||
GD_LIST AS (
|
||||
SELECT
|
||||
COM_ID,
|
||||
GD_IDX_ID,
|
||||
GD_IDX_NM,
|
||||
UP_TOT_METH,
|
||||
EQPM_GRP_ID,
|
||||
'GD' || trim(TO_CHAR(ROW_SEQ, '00')) AS GD_SEQ,
|
||||
ROW_SEQ
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
COM_ID,
|
||||
GD_IDX_ID,
|
||||
GD_IDX_NM,
|
||||
EQPM_GRP_ID,
|
||||
UP_TOT_METH,
|
||||
SORT_SEQ,
|
||||
ROW_NUMBER() OVER (
|
||||
ORDER BY SORT_SEQ,
|
||||
GD_IDX_ID) AS ROW_SEQ
|
||||
FROM
|
||||
EMS_EQPM_GD_IDX
|
||||
WHERE
|
||||
COM_ID = #{session.comId}
|
||||
AND EQPM_GRP_ID = #{eqpmGrpId}
|
||||
)
|
||||
WHERE
|
||||
ROW_SEQ <![CDATA[ <= ]]> 10
|
||||
),
|
||||
EQPM_GD_DATA AS (
|
||||
SELECT
|
||||
EQPM_ID,
|
||||
GD01,
|
||||
GD02,
|
||||
GD03,
|
||||
GD04,
|
||||
GD05,
|
||||
GD06,
|
||||
GD07,
|
||||
GD08,
|
||||
GD09,
|
||||
GD10
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
B.EQPM_ID,
|
||||
MAX(GD_SEQ) AS GD_SEQ
|
||||
,
|
||||
CASE
|
||||
A.UP_TOT_METH WHEN 'SUM' THEN SUM(C.TOT_VAL)
|
||||
WHEN 'AVG' THEN AVG(C.TOT_VAL)
|
||||
WHEN 'MAX' THEN MAX(C.TOT_VAL)
|
||||
WHEN 'MIN' THEN MIN(C.TOT_VAL)
|
||||
END AS TOT_VAL
|
||||
FROM
|
||||
GD_LIST A
|
||||
INNER JOIN EQPM_LIST B ON
|
||||
(B.COM_ID = A.COM_ID
|
||||
AND B.EQPM_GRP_ID = A.EQPM_GRP_ID)
|
||||
LEFT JOIN EMS_GD_IDX_DD_DATA C ON
|
||||
(C.COM_ID = B.COM_ID
|
||||
AND C.EQPM_ID = B.EQPM_ID
|
||||
AND C.GD_IDX_ID = A.GD_IDX_ID
|
||||
AND C.TOT_DTTM >= to_date(B.OBJ_MM, 'yyyymm')
|
||||
AND C.TOT_DTTM <![CDATA[ < ]]> ADD_MONTHS(to_date(B.OBJ_MM, 'yyyymm'), 1) )
|
||||
GROUP BY
|
||||
B.EQPM_ID,
|
||||
A.GD_IDX_ID,
|
||||
A.UP_TOT_METH )
|
||||
PIVOT ( SUM(TOT_VAL) FOR GD_SEQ IN ('GD01' AS GD01,
|
||||
'GD02' AS GD02,
|
||||
'GD03' AS GD03,
|
||||
'GD04' AS GD04,
|
||||
'GD05' AS GD05,
|
||||
'GD06' AS GD06,
|
||||
'GD07' AS GD07,
|
||||
'GD08' AS GD08,
|
||||
'GD09' AS GD09,
|
||||
'GD10' AS GD10 ) )
|
||||
)
|
||||
SELECT
|
||||
count(*) totalCount
|
||||
FROM
|
||||
EQPM_RSLT_DATA A
|
||||
INNER JOIN EQPM_GD_DATA B ON
|
||||
( B.EQPM_ID = A.EQPM_ID )
|
||||
</select>
|
||||
</mapper>
|
||||
|
Reference in New Issue
Block a user