diff --git a/WebContent/WEB-INF/view/partMng/partMngTempList.jsp b/WebContent/WEB-INF/view/partMng/partMngTempList.jsp index 6da03c8..d09ae82 100644 --- a/WebContent/WEB-INF/view/partMng/partMngTempList.jsp +++ b/WebContent/WEB-INF/view/partMng/partMngTempList.jsp @@ -185,8 +185,30 @@ ui-jqgrid tr.jqgrow td { // {headerHozAlign : 'center', hozAlign : 'center', width : '90', title : 'PART 구분', field : 'PART_TYPE_TITLE' }, {headerHozAlign : 'center', hozAlign : 'center', width : '90', title : '비고', field : 'REMARK' } ]; + + // 중복 요청 방지 플래그 + var isSearching = false; + function fn_search(){ - _tabulGrid = fnc_tabul_search(_tabul_layout_fitColumns, _tabulGrid, "/partMng/partMngTempGridList.do", columns, true); + // 이미 검색 중이면 중단 + if (isSearching) { + console.log('검색 중입니다. 잠시만 기다려주세요.'); + return; + } + + isSearching = true; + + _tabulGrid = fnc_tabul_search(_tabul_layout_fitColumns, _tabulGrid, "/partMng/partMngTempGridList.do", columns, true, function() { + // 검색 완료 후 플래그 해제 + isSearching = false; + }); + + // 타임아웃 방어 (10초 후 자동 해제) + setTimeout(function() { + if (isSearching) { + isSearching = false; + } + }, 10000); } function openPartMngPopup(objId){ diff --git a/src/com/pms/mapper/partMng.xml b/src/com/pms/mapper/partMng.xml index 89a0aee..1094de9 100644 --- a/src/com/pms/mapper/partMng.xml +++ b/src/com/pms/mapper/partMng.xml @@ -358,7 +358,7 @@ OUT_DIAMETER, IN_DIAMETER, LENGTH, - SUPPLY_CODE, + P.SUPPLY_CODE, SUP.SUPPLY_NAME FROM PART_MNG P @@ -498,13 +498,14 @@ LEFT OUTER JOIN( SELECT TT.OBJID, - ARRAY_TO_STRING(ARRAY_AGG((SELECT CODE_NAME FROM COMM_CODE AS CC WHERE CC.CODE_ID IN(TT.CHANGE_OPTION))),',') AS CHANGE_OPTION_NAME + ARRAY_TO_STRING(ARRAY_AGG(CC.CODE_NAME ORDER BY CC.CODE_NAME), ',') AS CHANGE_OPTION_NAME FROM ( SELECT T.OBJID, UNNEST(STRING_TO_ARRAY(CHANGE_OPTION, ',')) AS CHANGE_OPTION FROM PART_MNG AS T ) AS TT + LEFT JOIN COMM_CODE CC ON CC.CODE_ID = TT.CHANGE_OPTION GROUP BY TT.OBJID ) AS T3 ON T3.OBJID = P.OBJID @@ -2241,24 +2242,10 @@ SELECT T1.LEV, T1.BOM_REPORT_OBJID, T1.ROOT_PART_NO, T1.PATH, T1.LEAF, T2.* LEFT OUTER JOIN ( SELECT PART_OBJID, - ARRAY_TO_STRING(ARRAY_AGG(PARTNER_TITLE), ',') AS PARTNER_TITLE - FROM( - SELECT - OBJID, - PART_OBJID, - SEQ || '. ' ||( - SELECT - SUPPLY_NAME - FROM - ADMIN_SUPPLY_MNG - WHERE - OBJID::VARCHAR = PARTNER_OBJID::VARCHAR - ) AS PARTNER_TITLE - FROM - ORDER_SPEC_MNG OSM - ORDER BY - SEQ - ) OSMO GROUP BY PART_OBJID + ARRAY_TO_STRING(ARRAY_AGG(SEQ || '. ' || SUP.SUPPLY_NAME ORDER BY SEQ), ',') AS PARTNER_TITLE + FROM ORDER_SPEC_MNG OSM + LEFT JOIN ADMIN_SUPPLY_MNG SUP ON SUP.OBJID::VARCHAR = OSM.PARTNER_OBJID::VARCHAR + GROUP BY PART_OBJID ) O ON T.OBJID::VARCHAR = O.PART_OBJID::VARCHAR WHERE 1=1 @@ -2337,24 +2324,10 @@ SELECT T1.LEV, T1.BOM_REPORT_OBJID, T1.ROOT_PART_NO, T1.PATH, T1.LEAF, T2.* LEFT OUTER JOIN ( SELECT PART_OBJID, - ARRAY_TO_STRING(ARRAY_AGG(PARTNER_TITLE), ',') AS PARTNER_TITLE - FROM( - SELECT - OBJID, - PART_OBJID, - SEQ || '. ' ||( - SELECT - SUPPLY_NAME - FROM - ADMIN_SUPPLY_MNG - WHERE - OBJID::VARCHAR = PARTNER_OBJID::VARCHAR - ) AS PARTNER_TITLE - FROM - ORDER_SPEC_MNG OSM - ORDER BY - SEQ - ) OSMO GROUP BY PART_OBJID + ARRAY_TO_STRING(ARRAY_AGG(SEQ || '. ' || SUP.SUPPLY_NAME ORDER BY SEQ), ',') AS PARTNER_TITLE + FROM ORDER_SPEC_MNG OSM + LEFT JOIN ADMIN_SUPPLY_MNG SUP ON SUP.OBJID::VARCHAR = OSM.PARTNER_OBJID::VARCHAR + GROUP BY PART_OBJID ) O ON T.OBJID::VARCHAR = O.PART_OBJID::VARCHAR @@ -2438,24 +2411,10 @@ SELECT T1.LEV, T1.BOM_REPORT_OBJID, T1.ROOT_PART_NO, T1.PATH, T1.LEAF, T2.* LEFT OUTER JOIN ( SELECT PART_OBJID, - ARRAY_TO_STRING(ARRAY_AGG(PARTNER_TITLE), ',') AS PARTNER_TITLE - FROM( - SELECT - OBJID, - PART_OBJID, - SEQ || '. ' ||( - SELECT - SUPPLY_NAME - FROM - ADMIN_SUPPLY_MNG - WHERE - OBJID::VARCHAR = PARTNER_OBJID::VARCHAR - ) AS PARTNER_TITLE - FROM - ORDER_SPEC_MNG OSM - ORDER BY - SEQ - ) OSMO GROUP BY PART_OBJID + ARRAY_TO_STRING(ARRAY_AGG(SEQ || '. ' || SUP.SUPPLY_NAME ORDER BY SEQ), ',') AS PARTNER_TITLE + FROM ORDER_SPEC_MNG OSM + LEFT JOIN ADMIN_SUPPLY_MNG SUP ON SUP.OBJID::VARCHAR = OSM.PARTNER_OBJID::VARCHAR + GROUP BY PART_OBJID ) O ON T.OBJID::VARCHAR = O.PART_OBJID::VARCHAR WHERE 1=1