add pagination for api selectIssueGdIdxData and selectTagAndEqpmList

This commit is contained in:
Pham Hoang Manh/(Pham Hoang Manh)/현장대리인/SK
2025-08-13 18:22:39 +09:00
parent d0c164ab8e
commit 9f75e6accc
6 changed files with 72 additions and 0 deletions

View File

@ -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;
}
}

View File

@ -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);
}
}

View File

@ -38,6 +38,15 @@ public class TagTrndCtr {
result.add("tagTrndDatas",tagTrndSvc.selectTagAndEqpmList(paramMap.getParams()));
return result;
}
@RequestMapping(value="/selectTagAndEqpmListPageTotal", method=RequestMethod.POST)
@ResponseBody
public Object selectTagAndEqpmListPageTotal(@RequestBody BaseParam paramMap){
BaseResponse result = new BaseResponse();
result.add("tagTrndDatasPageTotal",tagTrndSvc.selectTagAndEqpmListPageTotal(paramMap.getParams()));
return result;
}
/**
* @methodName : selectTagTrndData
* @date : 2022.12.13

View File

@ -27,4 +27,8 @@ public class TagTrndSvc extends BaseSvc{
public Object selectTagAndEqpmList(HashMap<String, Object> params) {
return dao.selectList("ems.effc.TagTrnd.selectTagAndEqpmList", params);
}
public Object selectTagAndEqpmListPageTotal(HashMap<String, Object> params) {
return dao.selectList("ems.effc.TagTrnd.selectTagAndEqpmListPageTotal", params);
}
}

View File

@ -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>

View File

@ -18,5 +18,23 @@
<if test="searchWord != null and searchWord != ''">
AND A.TAG_NM like '%' || #{searchWord} || '%'
</if>
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
</select>
<select id="selectTagAndEqpmListPageTotal" resultType="camelHashMap">
/* ems.effc.EnrgUsePlan.selectTagAndEqpmListPageTotal: TagTrndTagPop tag 리스트 조회 */
SELECT count(*) totalCount
FROM EMS_TAG_BASE_INFO A
INNER JOIN EMS_EQPM_IAO B ON (B.COM_ID = A.COM_ID AND B.OBJ_ID = A.TAG_ID AND B.OBJ_KIND = 'TAG')
INNER JOIN EMS_EQPM_BASE_INFO C ON (C.COM_ID = B.COM_ID AND C.EQPM_ID = B.EQPM_ID)
INNER JOIN EMS_EQPM_GRP D ON (D.COM_ID = C.COM_ID AND D.EQPM_GRP_ID = C.EQPM_GRP_ID)
WHERE A.COM_ID = #{session.comId}
AND C.EQPM_GRP_ID = #{eqpmGrpId}
<if test="eqpmId != null and eqpmId != '' and eqpmId != 'all'">
AND B.EQPM_ID = #{eqpmId}
</if>
<if test="searchWord != null and searchWord != ''">
AND A.TAG_NM like '%' || #{searchWord} || '%'
</if>
</select>
</mapper>