이호영 이호영 2024-12-17
팩스 , 주소록관리 속도개선
@51f9a7957af37015b595c1f398e619adf7bbea6c
src/main/java/itn/let/mjo/addr/web/AddrController.java
--- src/main/java/itn/let/mjo/addr/web/AddrController.java
+++ src/main/java/itn/let/mjo/addr/web/AddrController.java
@@ -15,6 +15,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.HSSFCell;
 import org.apache.poi.hssf.usermodel.HSSFRow;
 import org.apache.poi.hssf.usermodel.HSSFSheet;
@@ -50,6 +51,7 @@
 import itn.com.cmm.util.RedirectUrlMaker;
 import itn.com.cmm.util.StringUtil;
 import itn.com.utl.fcc.service.EgovStringUtil;
+import itn.let.fax.addr.service.FaxAddrVO;
 import itn.let.mjo.addr.service.AddrGroupService;
 import itn.let.mjo.addr.service.AddrGroupVO;
 import itn.let.mjo.addr.service.AddrService;
@@ -386,8 +388,11 @@
 			addrVO.setSearchSortCnd("addrId");
 			addrVO.setSearchSortOrd("asc");
 		}
-		
-		List<AddrVO> addrList = addrService.selectAddrList(addrVO);
+
+		List<AddrVO> addrList = new ArrayList();
+		if(StringUtils.isNotEmpty(addrVO.getSearchAddrGrpId())) {
+			addrList = addrService.selectAddrList(addrVO);
+		}
 		
 		int totCnt = 0;
 		 if(addrList.size() > 0) {
src/main/webapp/WEB-INF/jsp/web/addr/AddrGroupListAjax.jsp
--- src/main/webapp/WEB-INF/jsp/web/addr/AddrGroupListAjax.jsp
+++ src/main/webapp/WEB-INF/jsp/web/addr/AddrGroupListAjax.jsp
@@ -684,7 +684,8 @@
 				<label for="groupAll" class="label">전체 선택</label>
 				<input type="checkbox" name="groupAll" id="groupAll" value="1" onClick="fnCheckAll();">
 			</div>
-			<p class="open" onclick="openThisGroup('');"><img src="/publish/images/content/open_folder.png" alt="폴더 열림">전체[<span class="c_002c9a fwMd" id="addrTotCnt">${addrTotalCount }</span>/최대 1,000,000]</p>
+<%-- 			<p class="open" onclick="openThisGroup('');"><img src="/publish/images/content/open_folder.png" alt="폴더 열림">전체[<span class="c_002c9a fwMd" id="addrTotCnt">${addrTotalCount }</span>/최대 1,000,000]</p> --%>
+			<p class="open"><img src="/publish/images/content/open_folder.png" alt="폴더 열림">전체[<span class="c_002c9a fwMd" id="addrTotCnt">${addrTotalCount }</span>/최대 1,000,000]</p>
 		</div>
 		<div class="adr1_btnWrap">
 			<div>
src/main/webapp/WEB-INF/jsp/web/addr/AddrListAjax.jsp
--- src/main/webapp/WEB-INF/jsp/web/addr/AddrListAjax.jsp
+++ src/main/webapp/WEB-INF/jsp/web/addr/AddrListAjax.jsp
@@ -723,82 +723,91 @@
 				</tr>
 			</thead>
 			<tbody>
-				<c:forEach var="result" items="${addrList}" varStatus="status">
-					<c:choose>
-						<c:when test="${empty result.addrGrpNm}">
-							<c:set var="grpNm" value="그룹미지정" />
-							<c:if test="${result.bookmark eq 'Y' }">
-	                			<c:set var="grpNm" value="자주보내는 번호" />
-                			</c:if>							
-						</c:when>
-						<c:otherwise><c:set var="grpNm" value="${result.addrGrpNm}" /></c:otherwise>
-					</c:choose>					
-					<tr>
-						<td>
-							<label for="" class="label">선택</label>
-							<input type="hidden" name="addrIds" value="${result.addrId}" />
-							<input name="addrCheck" id="del_${status.index}" class="${result.addrPhoneNo}" type="checkbox" value="${result.addrId}" />
-						</td>
-						<td title="<c:out value="${grpNm}" />">
-							<input type="hidden" class="addrGrpIdsHidden" name="addrGrpIdsHidden" value="<c:out value="${result.addrGrpId}" />" />
-							<input type="hidden" class="bookmarkHidden" name="bookmarkHidden" value="<c:out value="${result.bookmark}" />" />
-							
-							<p class="addrGrpIdArea">
-								<c:out value="${grpNm}" />
-							</p>
-							<p class="addrGrpIdArea2">
-
-							</p>							
-						</td>
-						<td title="<c:out value="${result.addrPhoneNo}" />">
-							<p>
-								<input type="hidden" class="addrPhones" name="addrPhones" value="<c:out value="${result.addrPhoneNo}" />" />
-								<span class="spanAddrPhones"><c:out value="${result.addrPhoneNo}" /></span>														
-							</p>
-
-						</td>
-						<td title="<c:out value="${result.addrNm}" />">
-							<p>
-								<input type="hidden" class="addrNms" name="addrNms" value="<c:out value="${result.addrNm}" />" />
-								<span class="spanAddrNms"><c:out value="${result.addrNm}" /></span>
-							</p>
-						</td>
-						<td title="<c:out value="${result.addrInfo1}" />">
-							<p>
-								<input type="hidden" class="addrInfo1s" name="addrInfo1s[${status.index}]" value="<c:out value="${result.addrInfo1}" />" />
-								<span class="spanAddrInfo1s"><c:out value="${result.addrInfo1}" /></span>
-							</p>
-						</td>
-						<td title="<c:out value="${result.addrInfo2}" />">
-							<p>
-								<input type="hidden" class="addrInfo2s" name="addrInfo2s[${status.index}]" value="<c:out value="${result.addrInfo2}" />" />
-								<span class="spanAddrInfo2s"><c:out value="${result.addrInfo2}" /></span>
-							</p>
-						</td>
-						<td title="<c:out value="${result.addrInfo3}" />">
-							<p>
-								<input type="hidden" class="addrInfo3s" name="addrInfo3s[${status.index}]" value="<c:out value="${result.addrInfo3}" />" />
-								<span class="spanAddrInfo3s"><c:out value="${result.addrInfo3}" /></span>
-							</p>
-						</td>
-						<td title="<c:out value="${result.addrInfo4}" />">
-							<p>
-								<input type="hidden" class="addrInfo4s" name="addrInfo4s[${status.index}]" value="<c:out value="${result.addrInfo4}" />" />
-								<span class="spanAddrInfo4s"><c:out value="${result.addrInfo4}" /></span>
-							</p>
-						</td>
-						<td>
-							<button type="button" onclick="memoOpen('<c:out value="${result.addrId}" />'); return false;" data-tooltip="adr_popup13">
-								<img src="/publish/images/content/memo_img.png" alt="메모">
-							</button>
-						</td>
-						<td>
-							<button type="button" onclick="javascript:deleteAddr('<c:out value="${result.addrId}"/>');return false;">
-								<img src="/publish/images/content/del_img.png" alt="삭제">
-							</button>
-						</td>
-					</tr>
-				</c:forEach>
+				<c:choose>
+					<c:when test="${not empty addrList}">
+						<c:forEach var="result" items="${addrList}" varStatus="status">
+							<c:choose>
+								<c:when test="${empty result.addrGrpNm}">
+									<c:set var="grpNm" value="그룹미지정" />
+									<c:if test="${result.bookmark eq 'Y' }">
+			                			<c:set var="grpNm" value="자주보내는 번호" />
+		                			</c:if>							
+								</c:when>
+								<c:otherwise><c:set var="grpNm" value="${result.addrGrpNm}" /></c:otherwise>
+							</c:choose>					
+							<tr>
+								<td>
+									<label for="" class="label">선택</label>
+									<input type="hidden" name="addrIds" value="${result.addrId}" />
+									<input name="addrCheck" id="del_${status.index}" class="${result.addrPhoneNo}" type="checkbox" value="${result.addrId}" />
+								</td>
+								<td title="<c:out value="${grpNm}" />">
+									<input type="hidden" class="addrGrpIdsHidden" name="addrGrpIdsHidden" value="<c:out value="${result.addrGrpId}" />" />
+									<input type="hidden" class="bookmarkHidden" name="bookmarkHidden" value="<c:out value="${result.bookmark}" />" />
+									
+									<p class="addrGrpIdArea">
+										<c:out value="${grpNm}" />
+									</p>
+									<p class="addrGrpIdArea2">
+		
+									</p>							
+								</td>
+								<td title="<c:out value="${result.addrPhoneNo}" />">
+									<p>
+										<input type="hidden" class="addrPhones" name="addrPhones" value="<c:out value="${result.addrPhoneNo}" />" />
+										<span class="spanAddrPhones"><c:out value="${result.addrPhoneNo}" /></span>														
+									</p>
+		
+								</td>
+								<td title="<c:out value="${result.addrNm}" />">
+									<p>
+										<input type="hidden" class="addrNms" name="addrNms" value="<c:out value="${result.addrNm}" />" />
+										<span class="spanAddrNms"><c:out value="${result.addrNm}" /></span>
+									</p>
+								</td>
+								<td title="<c:out value="${result.addrInfo1}" />">
+									<p>
+										<input type="hidden" class="addrInfo1s" name="addrInfo1s[${status.index}]" value="<c:out value="${result.addrInfo1}" />" />
+										<span class="spanAddrInfo1s"><c:out value="${result.addrInfo1}" /></span>
+									</p>
+								</td>
+								<td title="<c:out value="${result.addrInfo2}" />">
+									<p>
+										<input type="hidden" class="addrInfo2s" name="addrInfo2s[${status.index}]" value="<c:out value="${result.addrInfo2}" />" />
+										<span class="spanAddrInfo2s"><c:out value="${result.addrInfo2}" /></span>
+									</p>
+								</td>
+								<td title="<c:out value="${result.addrInfo3}" />">
+									<p>
+										<input type="hidden" class="addrInfo3s" name="addrInfo3s[${status.index}]" value="<c:out value="${result.addrInfo3}" />" />
+										<span class="spanAddrInfo3s"><c:out value="${result.addrInfo3}" /></span>
+									</p>
+								</td>
+								<td title="<c:out value="${result.addrInfo4}" />">
+									<p>
+										<input type="hidden" class="addrInfo4s" name="addrInfo4s[${status.index}]" value="<c:out value="${result.addrInfo4}" />" />
+										<span class="spanAddrInfo4s"><c:out value="${result.addrInfo4}" /></span>
+									</p>
+								</td>
+								<td>
+									<button type="button" onclick="memoOpen('<c:out value="${result.addrId}" />'); return false;" data-tooltip="adr_popup13">
+										<img src="/publish/images/content/memo_img.png" alt="메모">
+									</button>
+								</td>
+								<td>
+									<button type="button" onclick="javascript:deleteAddr('<c:out value="${result.addrId}"/>');return false;">
+										<img src="/publish/images/content/del_img.png" alt="삭제">
+									</button>
+								</td>
+							</tr>
+						</c:forEach>
+					</c:when>
+					<c:otherwise>
+						<tr class="td_none">
+							<td colspan="10">주소록 그룹을 선택해 주세요.</td>
+						</tr>
+					</c:otherwise>
+				</c:choose>
 			</tbody>
 		</table>
 		</form>
src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrGroupListAjax.jsp
--- src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrGroupListAjax.jsp
+++ src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrGroupListAjax.jsp
@@ -599,7 +599,8 @@
 				<label for="groupAll" class="label">전체 선택</label>
 				<input type="checkbox" name="groupAll" id="groupAll" value="1" onClick="fnCheckAll();">
 			</div>
-			<p class="open" onclick="openThisGroup('');"><img src="/publish/images/content/open_folder.png" alt="폴더 열림">전체[<span class="c_002c9a fwMd"><fmt:formatNumber value="${addrTotalCount}" pattern="#,###"/></span>/최대 1,000,000]</p>
+<%-- 			<p class="open" onclick="openThisGroup('');"><img src="/publish/images/content/open_folder.png" alt="폴더 열림">전체[<span class="c_002c9a fwMd"><fmt:formatNumber value="${addrTotalCount}" pattern="#,###"/></span>/최대 1,000,000]</p> --%>
+			<p class="open"><img src="/publish/images/content/open_folder.png" alt="폴더 열림">전체[<span class="c_002c9a fwMd"><fmt:formatNumber value="${addrTotalCount}" pattern="#,###"/></span>/최대 1,000,000]</p>
 		</div>
 		<div class="adr1_btnWrap">
 			<div>
Add a comment
List