@ -1,76 +1,56 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">전자우편 발송 현황</c:set>
<!-- inner page html -->
<div class="content-wrapper" data-doctx="${pageName}">
<!-- Content -->
<div class="container-xxl flex-grow-1 px-0">
<div class="card wrapper-list">
<!-- 상단 버튼 -->
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark w-px-120" name="btnReset" title="초기화">
초기화
</button>
<button type="button" class="btn btn-outline-dark w-px-120" name="btnReset" title="초기화">초기화</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search w-px-120" name="btnSearch" title="검색">
검색
</button>
<button type="button" class="btn btn-excel w-px-120" name="btnExcel" title="엑셀">
엑셀
</button>
<button type="button" class="btn btn-search w-px-120" name="btnSearch" title="검색">검색</button>
<button type="button" class="btn btn-excel w-px-120" name="btnExcel" title="엑셀">엑셀</button>
</span>
</div>
<!-- 상단 버튼 -->
<!-- 검색 조건 영역 -->
<form name="frmSearch">
<form name="frmSearch"><!-- 검색 조건 영역 -->
<!-- hidden -->
<input type="hidden" name="sggCd" />
<input type="hidden" name="deptCd" />
<input type="hidden" name="conOrg" />
<!-- 메인 조건 -->
<div class="container-search">
<div class="container-search"><!-- 메인 조건 -->
<div class="row g-1">
<jsp:include page="/WEB-INF/jsp/include/sgg-tasklist.jsp" />
<div class="col-6">
<label class="form-label form-search-title w-px-120 text-end fw-bold">발송일자</label>
<span class="form-search-linebox">
<input type="text" class="form-control form-date" name="schSendDateFrom"
data-fmt-type="day" autocomplete="off" title="시작 날짜 선택" />
<input type="text" class="form-control form-date" name="schSendDateFrom" data-fmt-type="day" autocomplete="off" title="시작 날짜 선택" />
<button type="button" class="bx bx-lg bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" name="schSendDateTo"
data-fmt-type="day" autocomplete="off" title="종료 날짜 선택" />
<input type="text" class="form-control form-date" name="schSendDateTo" data-fmt-type="day" autocomplete="off" title="종료 날짜 선택" />
<button type="button" class="bx bx-lg bx-calendar bg-white"></button>
</span>
</div>
<div class="col-6">
<label class="form-label form-search-title w-px-120 text-end fw-bold">접수일자</label>
<span class="form-search-linebox">
<input type="text" class="form-control form-date" name="schRceptYmdFrom"
data-fmt-type="day" autocomplete="off" title="시작 날짜 선택" />
<input type="text" class="form-control form-date" name="schRceptYmdFrom" data-fmt-type="day" autocomplete="off" title="시작 날짜 선택" />
<button type="button" class="bx bx-lg bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" name="schRceptYmdTo"
data-fmt-type="day" autocomplete="off" title="종료 날짜 선택" />
<input type="text" class="form-control form-date" name="schRceptYmdTo" data-fmt-type="day" autocomplete="off" title="종료 날짜 선택" />
<button type="button" class="bx bx-lg bx-calendar bg-white"></button>
</span>
</div>
<!-- -->
<div class="col-6">
</div>
<!-- 동적검색 -->
<div class="col-6">
<div class="col-6"><!-- 동적검색 -->
<input type="hidden" name="by" />
<input type="text" class="form-control w-px-120 text-end fw-bold" name="byOutput" value="동적 검색" readonly />
<input type="hidden" name="mainOption" />
<input type="hidden" name="subOption" />
<input type="text" class="form-control w-px-400" name="term" autocomplete="off" />
<!-- 상세 검색조건 버튼 -->
<span class="flr">
<span class="flr"><!-- 상세 검색조건 버튼 -->
<button type="button" class="btn btn-open-detail" data-bs-toggle="collapse" data-bs-target="[data-doctx='${pageName}'] [name='searchDetail']">
<i class="bx bx-chevron-down"></i>
상세검색
@ -80,8 +60,7 @@
</div>
</div> <!-- 메인 조건 -->
<!-- 상세 조건 -->
<div name="searchDetail" class="container-search container-search-detail collapse">
<div name="searchDetail" class="container-search container-search-detail collapse"><!-- 상세 조건 -->
<div class="row g-1">
<div class="col-6">
<select class="form-select w-px-120 text-center" name="schRegDateOpt">
@ -89,12 +68,10 @@
<option value="mdfcnDt">수정일자</option>
</select>
<span class="form-search-linebox">
<input type="text" class="form-control form-date" name="schRegDateFrom"
data-fmt-type="day" autocomplete="off" title="시작 날짜 선택" />
<input type="text" class="form-control form-date" name="schRegDateFrom" data-fmt-type="day" autocomplete="off" title="시작 날짜 선택" />
<button type="button" class="bx bx-lg bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" name="schRegDateTo"
data-fmt-type="day" autocomplete="off" title="종료 날짜 선택">
<input type="text" class="form-control form-date" name="schRegDateTo" data-fmt-type="day" autocomplete="off" title="종료 날짜 선택">
<button type="button" class="bx bx-lg bx-calendar bg-white"></button>
</span>
</div>
@ -109,93 +86,64 @@
</div>
</div>
</div> <!-- 상세 조건 -->
</form>
<!-- 검색 조건 영역 -->
</form><!-- 검색 조건 영역 -->
<!-- 업무 버튼 및 건수 표시 -->
<div>
<div><!-- 업무 버튼 및 건수 표시 -->
<span class="container-page-btn" name="gridButtonArea">
<!-- 건수, 페이지 표시 -->
<div class="d-flex flex-row justify-content-between">
<div class="d-flex flex-row justify-content-between"><!-- 건수, 페이지 표시 -->
<span is="paging-info" class="dataTables_info" name="dataPagingInfo" role="status" aria-live="polite"></span>
<ul class="pagination pagination-primary" name="dataPaging">
</ul>
</div>
<!-- 업무 버튼 -->
<span class="container-window-btn-right">
<button type="button" class="btn btn-primary w-px-120" name="btnUpdateCancel" title="발송 취소">
발송 취소
</button>
<button type="button" class="btn btn-primary w-px-120" name="btnRemove" title="발송 삭제">
발송 삭제
</button>
<span class="container-window-btn-right"><!-- 업무 버튼 -->
<button type="button" class="btn btn-primary w-px-120" name="btnUpdateCancel" title="발송 취소">발송 취소</button>
<button type="button" class="btn btn-primary w-px-120" name="btnRemove" title="발송 삭제">발송 삭제</button>
</span>
</span>
</div>
<!-- 업무 버튼 및 건수 표시 -->
</div><!-- 업무 버튼 및 건수 표시 -->
<!-- tab -->
<div class="nav-align-top" name="tabMain">
<ul class="nav nav-tabs" role="tablist">
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100 active" role="tab" data-bs-toggle="tab" name="tabItem0"
onClick="pageObject['${pageName}'].fnSearchList('전체');">
전체
</button>
onClick="pageObject['${pageName}'].fnSearchList('전체');">전체</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem1"
onClick="pageObject['${pageName}'].fnSearchList('발송대기');">
발송대기
</button>
onClick="pageObject['${pageName}'].fnSearchList('발송대기');">발송대기</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem2"
onClick="pageObject['${pageName}'].fnSearchList('발송취소');">
발송취소
</button>
onClick="pageObject['${pageName}'].fnSearchList('발송취소');">발송취소</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem3"
onClick="pageObject['${pageName}'].fnSearchList('전송');">
전송
</button>
onClick="pageObject['${pageName}'].fnSearchList('전송');">전송</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem4"
onClick="pageObject['${pageName}'].fnSearchList('접수');">
접수
</button>
onClick="pageObject['${pageName}'].fnSearchList('접수');">접수</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem5"
onClick="pageObject['${pageName}'].fnSearchList('제작불가');">
제작불가
</button>
onClick="pageObject['${pageName}'].fnSearchList('제작불가');">제작불가</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem6"
onClick="pageObject['${pageName}'].fnSearchList('제작완료');">
제작완료
</button>
onClick="pageObject['${pageName}'].fnSearchList('제작완료');">제작완료</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem7"
onClick="pageObject['${pageName}'].fnSearchList('배달중');">
배달중
</button>
onClick="pageObject['${pageName}'].fnSearchList('배달중');">배달중</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link w-px-160 h-100" role="tab" data-bs-toggle="tab" name="tabItem8"
onClick="pageObject['${pageName}'].fnSearchList('배달완료');">
배달완료
</button>
onClick="pageObject['${pageName}'].fnSearchList('배달완료');">배달완료</button>
</li>
</ul>
</div>
<!-- tab -->
</div><!-- tab -->
<!-- DataTables(그리드) -->
<div class="card-datatable text-nowrap">
<div class="dataTables_wrapper dt-bootstrap5 no-footer">
<div class="table-responsive h-px-400" name="tableRspns">
@ -215,8 +163,7 @@
<th class="cmn" style="width: 140px;">등록사용자</th>
</tr>
</thead>
<tbody name="tbodyList">
</tbody>
<tbody name="tbodyList"></tbody>
<template is="curly-brackets" name="tmpltRows">
<tr data-index="{data-index}">
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{ROW_NUM}</td>
@ -232,19 +179,13 @@
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{RGTR_NM}</td>
</tr>
</template>
<template name="tmpltNotFound">
<tr class="odd">
<td valign="top" colspan="11" class="dataTables_empty text-center">${prefixName} 정보를 찾지 못했습니다.</td>
</tr>
</template>
<template name="tmpltNotFound"><tr class="odd"><td valign="top" colspan="11" class="dataTables_empty text-center">${prefixName} 정보를 찾지 못했습니다.</td></tr></template>
</table>
</div>
</div>
</div>
<!-- DataTables(그리드) -->
</div> <!-- <div class="card wrapper-list"> -->
</div> <!-- <div class="container-xxl flex-grow-1 px-0"> -->
<!-- Content -->
<div class="content-backdrop fade"></div>
</div>
@ -386,7 +327,6 @@
});
}
// 검색 버튼 이벤트
$P.fnSearchList = (tabName) => {
// validate 확인
if (!AppSupport.customValidate($P.$findn("frmSearch").find("input,select,textarea"))) return;
@ -435,7 +375,6 @@
$P.ctrl.load(1);
}
// 엑셀 버튼 이벤트
$P.fnExcel = () => {
if ($P.ctrl.dataset.empty)
return dialog.alert("검색된 " + $P.ctrl.prefixName + " 정보가 없습니다.");
@ -449,7 +388,6 @@
$P.ctrl.download();
}
// 발송 취소 버튼 이벤트
$P.fnUpdateCancel = (btnTitle) => {
// 외부연계식별 키가 없다면.. 입력
let conKey = $P.ctrl.getValue("CON_KEY");
@ -485,14 +423,11 @@
});
}
// 발송 삭제 버튼 이벤트
$P.fnRemove = (btnTitle) => {
let selected = $P.ctrl.getDataset("selected"); // 선택 자료
if (selected.length < 1)
return dialog.alert("선택하신 " + $P.ctrl.prefixName + " 정보가 없습니다.");
//
let tabName = $P.$findn("tabMain").find("button.active").text().trim();
if ("발송취소,전송,제작불가".indexOf(tabName) < 0 )
return dialog.alert({
@ -521,7 +456,6 @@
/**************************************************************************
* 초기 설정
**************************************************************************/
// 이벤트
$P.setEvent = () => {
// 기본 버튼 이벤트
$P.$findn("btnReset").on("click", () => $P.fnResetAndChangeBiz()); // 초기화
@ -546,7 +480,6 @@
Componentization.fnMakeScrollableTable($P.findn("tableRspns"), $P.scrollDataList);
}
// 초기화 이벤트
$P.fnReset = (taskSeCd) => {
// 초기화
$P.findn("frmSearch").reset(); // 화면 초기화
@ -578,14 +511,8 @@
/**************************************************************************
* 최초 실행 함수
**************************************************************************/
// 1. 이벤트 설정
$P.setEvent();
// 2. 초기 설정 및 업무 구분 변경
$P.fnResetAndChangeBiz($("#layout-navbar input[name='taskSeCd']:checked").val());
// 3. 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
$P.setEvent(); // 1. 이벤트 설정
$P.fnResetAndChangeBiz($("#layout-navbar input[name='taskSeCd']:checked").val()); // 2. 초기 설정 및 업무 구분 변경
fn_securityModeToggle($("#securityMode--top").is(":checked")); // 3. 보안모드
});
</script>
</script>