초기소스

This commit is contained in:
jazz
2025-10-29 17:08:05 +09:00
parent e531aa9540
commit 439a379a02
7551 changed files with 1234427 additions and 3 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,215 @@
<%@ page import="java.util.Date" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
<%--
Class Name : .jsp
Description : 반품/환불 목록조회 화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2024-01-30 추지훈 최초 생성
--%>
<script>
$(document).ready(function() {
$('select').niceSelect();
});
</script>
<section class="content-section">
<div class="form-control-container">
<div class="left">
<div class="search-number">
<span class="search-number__text">총 <strong><c:out value="${ resultMap.paginationInfo.totalRecordCount }"/></strong>건</span>
</div>
</div>
<div class="center">
</div>
<div class="right">
<div class="select-box">
<select title="페이지당 출력될 목록건수" name = "pageUnit" id ="pageUnit" onchange = "fn_select_list(1);return false;">
<c:forEach items="${ resultMap.paginationInfo.pageUnitArr }" var="pageUnit" varStatus="pageUnitStatus">
<option value="<c:out value="${ pageUnit }"/>" <c:if test="${ resultMap.paginationInfo.recordCountPerPage eq pageUnit}">selected="selected"</c:if>><c:out value="${ pageUnit }"/>개씩</option>
</c:forEach>
</select>
</div>
</div>
</div>
<hr class="spacing">
<div class="table-wrapper">
<table class="table order-section vertical">
<caption>해당 테이블에 대한 설명</caption>
<!-- 각 열 width 설정 -->
<colgroup>
<col style="width: 6%;">
<col style="width: 12%;">
<col style="width: 12%;">
<col style="width: auto;">
<col style="width: 5%;">
<col style="width: 5%;">
<col style="width: 7%;">
<col style="width: 7%;">
<col style="width: 7%;">
<col style="width: 12%;">
<col style="width: 6%;">
<col style="width: 6%;">
</colgroup>
<thead>
<tr>
<th rowspan="2">번호</th>
<th>접수일시</th>
<th rowspan="2">주문번호</th>
<th rowspan="2">주문자</th>
<th rowspan="2">결제</th>
<th rowspan="2">종류</th>
<th rowspan="2">회수수량<br>/주문수량</th>
<th rowspan="2">환불방법</th>
<th rowspan="2">환불금액</th>
<th>반품처리완료일시</th>
<th colspan="2">처리상태</th>
</tr>
<tr>
<th>반품/환불번호</th>
<th>환불처리완료일시</th>
<th>반품</th>
<th>환불</th>
</tr>
</thead>
<tbody>
<c:choose>
<c:when test = "${not empty resultMap.resultList}">
<c:forEach var = "refund" items = "${resultMap.resultList}" varStatus="status">
<tr>
<td><c:out value="${resultMap.paginationInfo.totalRecordCount - refund.rnum+1 }" /></td>
<td>
<span><c:out value = "${refund.refundReqstDt}"/></span>
<br>
<button type="button" onclick="fn_move_dtlupdt('<c:out value = "${ refund.orderRefundInnb }"/>', '<c:out value="${ refund.ordrInnb }"/>');" class="blue-6 fw-500" href=""><c:out value = "${ refund.refundCd }"/></button>
</td>
<td>
<button type="button" class="blue-6 fw-500" onclick="fn_go_ordr_dtl('<c:out value="${ refund.ordrInnb }"/>');" ><c:out value = "${refund.ordrInnb}"/></button>
<br/>
<c:if test="${ not empty refund.smrtShopngOrdrnb && refund.smrtShopngOrdrnb > 0 }">
<button type="button" class="green-6 fw-400" href=""><c:out value="${ refund.smrtShopngOrdrnb }"/> (Npay)</button>
</c:if>
</td>
<td>
<c:choose>
<c:when test = "${not empty refund.mbrDvCd}">
<button class="order-detail-text" data-info="info01" type="button"
onclick="fn_select_crm_mini_info(this, '<c:out value="${ refund.mbrInnb }"/>', '<c:out value="${ refund.mbrDvCd }"/>', '#modalDiv'); return false;">
<span class="gray-12">
<c:out value = "${refund.ordrrNm}"/>
</span>
<c:if test = "${not empty refund.mbrInnb}">
(
<span class="fw-500 blue-7"><c:out value = "${refund.mbrId}"/></span>
/
<span class="fw-500 green-8"><c:out value = "${refund.mbrGradNm}"/></span>
)
</c:if>
</button>
</c:when>
<c:otherwise>
<button class="order-detail-text" data-info="info01" type="button"
onclick="fn_select_crm_mini_info_nmbr(this, '<c:out value="${ refund.ordrrMbtlnb}"/>', '<c:out value="${ refund.ordrInnb}"/>','<c:out value="${ refund.ordrrNm}"/>', '#modalDiv'); return false;">
<span class="gray-12">
<c:out value = "${refund.ordrrNm}"/>
</span>
<c:if test = "${not empty refund.mbrInnb}">
(
<span class="fw-500 blue-7"><c:out value = "${refund.mbrId}"/></span>
/
<span class="fw-500 green-8"><c:out value = "${refund.mbrGradNm}"/></span>
)
</c:if>
</button>
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${ refund.setleDyCd eq '05' }">
<i class="icon icon_word-badge07" ></i><!-- 에스크로 -->
<i class="icon icon_word-badge06" ></i><!-- 가상계좌 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '06' }">
<i class="icon icon_word-badge07" ></i><!-- 에스크로 -->
<i class="icon icon_word-badge13" ></i><!-- 계좌 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '01' }">
<i class="icon icon_word-badge04" ></i><!-- 카드 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '02' }">
<i class="icon icon_word-badge03" ></i><!-- 무통장 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '03' }">
<i class="icon icon_word-badge13" ></i><!-- 계좌 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '04' }">
<i class="icon icon_word-badge06" ></i><!-- 가상계좌 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '07' }">
<i class="icon icon_word-badge05" ></i><!-- 핸드폰 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '08' }">
<i class="icon icon_word-badge12" ></i><!-- 마일리지 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '09' }">
<i class="icon icon_word-badge_pos" ></i><!-- 포스 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '10' }">
<i class="icon icon_word-badge_payco" ></i><!-- 페이코 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '11' }">
<i class="icon icon_word-badge14" ></i><!-- 복합 -->
</c:when>
<c:when test="${ refund.setleDyCd eq '12' }">
<i class="icon icon_word-badge16" ></i><!-- 충전식마일리지 -->
</c:when>
</c:choose>
</td>
<td><c:out value = "${refund.refundTyCdNm}"/></td>
<td><c:out value = "${ refund.refundQy }"/>/<c:out value = "${ refund.orderQy }"/>(<c:out value = "${ refund.orderGoodsCnt }"/>종)</td>
<td>
<c:out value = "${ refund.refundMthCdNm }"/>
</td>
<td>
<span class="comma">
<c:out value="${ refund.refundAmt }"/>
</span>
</td>
<td>
<c:out value = "${ refund.refundComptDt }"/>
<br>
<c:out value = "${ refund.returnComptDt }"/>
</td>
<td><c:out value = "${ refund.returnProcsSttusCdNm }"/></td>
<td><c:out value = "${ refund.refundProcsSttusCdNm }"/></td>
</tr>
</c:forEach>
</c:when>
<c:otherwise>
<tr>
<td colspan="100%"><spring:message code="common.nodata"/></td>
</tr>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
</section>
<div class="pagination__container">
<ui:pagination paginationInfo="${resultMap.paginationInfo}" type="image" jsFunction="fn_select_list" />
</div>

View File

@@ -0,0 +1,354 @@
<%@ page import="java.util.Date" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
<!DOCTYPE html>
<html lang="ko">
<head>
<%@ include file="/WEB-INF/views/comm/mngr/Include.jsp"%>
</head>
<script>
$(document).ready(function(){
// $('.dateRange-btn').filter('#sevenDays').trigger('click');
var tempSrchStartDate = $('#tempSrchStartDate').val();
var tempSrchEndDate = $('#tempSrchEndDate').val();
if(tempSrchEndDate == null || tempSrchEndDate == undefined || tempSrchEndDate == "") {
$('.dateRange-btn').filter('#sevenDays').trigger('click');
}else if(tempSrchEndDate == "1") {
$('#srchStartDate').val("");
$('#srchEndDate').val("");
}else {
$('#srchStartDate').val(tempSrchStartDate);
$('#srchEndDate').val(tempSrchEndDate);
}
fn_display_start();
if(tempSrchEndDate == null || tempSrchEndDate == undefined || tempSrchEndDate == "") {
$('.dateRange-btn').filter('#sevenDays').trigger('click');
}else if(tempSrchEndDate == "1") {
$('#srchStartDate').val("");
$('#srchEndDate').val("");
}else {
$('#srchStartDate').val(tempSrchStartDate);
$('#srchEndDate').val(tempSrchEndDate);
}
});
/********************************************************
* 시작 화면 제어 함수
* ******************************************************/
const fn_display_start = function() {
fn_set_date('srchStartDate','srchEndDate','srchEndDate');
$('#listForm').on('keydown', function(e) {
if (e.keyCode == 13) {
e.preventDefault();
$('#searchBtn').trigger("click");
}
});
$('#allDays').on('click', function() {
$('#srchStartDate, #srchEndDate').val('');
});
fn_set_dateRange_function("#dateRange","srchStrtDt","srchEndDt","srchEndDt");
//페이징 정보 있는 반품 환불
let pageIndex = '<c:out value="${ resultMap.paramVO.pageIndex }"/>';
let pageUnit = '<c:out value="${ resultMap.paramVO.pageUnit }"/>';
fn_select_list(pageIndex, pageUnit);
//검색어 구분 change 이벤트
<%--
$("#srchKyword").on("input", function () {
let dvVal = $("#srchDv").val();
let input = $(this).val();
if(dvVal == 'hp'){
$(this).val(input.replace(/[^0-9]/g, ""));
}
});
--%>
}
/********************************************************
* 반품 환불 목록 조회
* ******************************************************/
const fn_select_list = function (pageIndex, pageUnit) {
let dataStr;
if(!pageIndex) {
$('#pageIndex').val(1);
} else {
$('#pageIndex').val(pageIndex);
}
if(!pageUnit) {
dataStr = $('#listForm').serialize();
} else {
if($('#pageUnit').length){
$('#pageUnit').val(pageUnit);
dataStr = $('#listForm').serialize();
} else {
dataStr = $('#listForm').serialize()+'&pageUnit='+pageUnit;
}
}
$('#pageIndex').val(pageIndex);
$.ajax({
type: "post",
url : "<c:url value='/mngr/ordr/refnd/selectRtngudRefndListInqire'/>",
data : dataStr,
success:function(resultHtml) {
$('#pageDiv').html(resultHtml);
$('#pageUnit').niceSelect();
}
});
}
/****************************************************
* 반품환불 상세 수정폼 이동
*****************************************************/
const fn_move_dtlupdt = function(orderReInnb, ordrInnb) {
$('#listForm').attr('action', '<c:url value="/mngr/ordr/refnd/selectRtngudRefndDtlInqire"/>');
$('#listForm').attr('method', 'post');
$('#orderReInnb').val(orderReInnb);
$('#ordrInnb').val(ordrInnb);
$('#listForm').submit();
}
/****************************************************
* 검색 후 새로 고침 시 검색조건 리셋
*****************************************************/
history.replaceState({}, null, location.pathname);
/* 주문상세 이동 */
const fn_go_ordr_dtl = function(ordrInnb) {
var form = $('#listForm')
$(form).find('input[name="ordrInnb"]').remove();
$(form).append($('<input/>', {type:'hidden', name:'ordrInnb', id:'ordrInnb', value:ordrInnb}));
$(form).attr('target', '');
$(form).attr('method', 'post');
$(form).attr('action', '<c:url value="/mngr/ordr/ordrmngr/selectOrdrDtlInqire"/>');
$(form).submit();
}
</script>
<body>
<%@ include file="/WEB-INF/views/comm/mngr/Header.jsp"%>
<main class="main">
<%@ include file="/WEB-INF/views/comm/mngr/Left.jsp"%>
<div class="content">
<div class="content__inner">
<button class="side-nav__fold"><span class="visually-hidden">좌측메뉴 펼치기/닫기</span></button>
<div class="page-title">
<h2 class="page-title__title">반품/환불 조회</h2>
<div class="page-title__btn-container">
</div>
</div>
<form id="listForm">
<input type="hidden" id="orderReInnb" name="orderReInnb" value=""/>
<input type="hidden" id="ordrInnb" name="ordrInnb" value=""/>
<input type="hidden" id="pageIndex" name="pageIndex" value="<c:out value="${ resultMap.paramVO.pageIndex }"/>"/>
<input type="hidden" name="srchDatePick" value="${resultMap.paramVO.srchDatePick}" />
<input type="hidden" id="recordCountPerPage" name="recordCountPerPage" value="<c:out value="${ resultMap.paramVO.recordCountPerPage }"/> "/>
<input type="hidden" id="sopmalCd" name="sopmalCd" value="${ resultMap.paramVO.sopmalCd }"/>
<section class="content-section" id = "content-section">
<div class="table-wrapper">
<table class="table">
<caption>해당 테이블에 대한 설명</caption>
<colgroup>
<col style="width: 12%;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>검색어</th>
<td>
<div class="td-inner">
<div class="select-box">
<select title="해당 셀렉트에 대한 설명" id = "srchDv" name="srchDv">
<option value="ORDERINNB" <c:if test="${ 'ORDERINNB' eq resultMap.paramVO.srchDv }">selected </c:if> >주문번호</option>
<option value="ORDRNM" <c:if test="${ 'ORDRNM' eq resultMap.paramVO.srchDv }">selected </c:if> >주문자명</option>
<option value="RCPNMTERNM" <c:if test="${ 'RCPNMTERNM' eq resultMap.paramVO.srchDv }">selected </c:if> >입금자명</option>
<option value="MBRID" <c:if test="${ 'MBRID' eq resultMap.paramVO.srchDv }">selected </c:if> >아이디</option>
<option value="REINNB" <c:if test="${ 'REINNB' eq resultMap.paramVO.srchDv }">selected </c:if> >반품/환불번호</option>
</select>
</div>
<input class="input-text xl" type="text" title="해당 인풋에 대한 설명" id = "srchStr" name="srchStr"
placeholder="검색어를 입력해 주십시요."
value='<c:out value="${ resultMap.paramVO.srchStr }" />'>
</div>
</td>
</tr>
<tr>
<th>날짜</th>
<td>
<div class="td-inner">
<div class="select-box">
<select id="srchDtDv" name="srchDtDv" title="해당 셀렉트에 대한 설명">
<option value="refundReqestDt" <c:if test="${ 'refundReqestDt' eq resultMap.paramVO.srchDtDv }">selected </c:if> >환불신청일</option>
<option value="refundComptDt" <c:if test="${ 'refundComptDt' eq resultMap.paramVO.srchDtDv }">selected </c:if> >환불완료일</option>
<option value="returnReqestDt" <c:if test="${ 'returnReqestDt' eq resultMap.paramVO.srchDtDv }">selected </c:if> >반품신청일</option>
<option value="returnComptDt" <c:if test="${ 'returnComptDt' eq resultMap.paramVO.srchDtDv }">selected </c:if> >반품완료일</option>
</select>
</div>
<div class="input-container">
<input type="hidden" id="tempSrchStartDate" value="<c:out value="${ resultMap.paramVO.srchStartDate }" />" />
<input type="hidden" id="tempSrchEndDate" value="<c:out value="${ resultMap.paramVO.srchEndDate }" />" />
<input type="text" name="srchStartDate" id="srchStartDate" class="datepicker" title="시작 날짜 선택" autocomplete="off" pattern="yyyy-MM-dd"
value='<c:out value="${ resultMap.paramVO.srchStartDate }" />'>
<span class="tilde">~</span>
<input type="text" name="srchEndDate" id="srchEndDate" class="datepicker" title="종료 날짜 선택" autocomplete="off" pattern="yyyy-MM-dd"
value='<c:out value="${ resultMap.paramVO.srchEndDate }" />'>
</div>
<div class="dateRange-btnContainer">
<button type="button" class="dateRange-btn" id="yesterday" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','1D')">어제</button>
<button type="button" class="dateRange-btn" id="today" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','0')">오늘</button>
<button type="button" class="dateRange-btn" id="threeDays" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','3D')">3일간</button>
<button type="button" class="dateRange-btn" id="sevenDays" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','7D')">일주일</button>
<button type="button" class="dateRange-btn" id="oneMonth" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','1M')">1개월</button>
<button type="button" class="dateRange-btn" id="threeMonth" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','3M')">3개월</button>
<button type="button" class="dateRange-btn" id="sixMonth" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','6M')">6개월</button>
<button type="button" class="dateRange-btn" id="oneYear" onclick="fn_set_date('srchStartDate','srchEndDate','srchEndDate','1Y')">1년</button>
<button type="button" class="dateRange-btn selected" id="allDays">전체</button>
</div>
</div>
</td>
</tr>
<tr>
<th>반품처리상태</th>
<td>
<div class="td-inner">
<div class="b-checkbox-container">
<label class="b-checkbox checkbox check-all">
<input type="checkbox" id="returnProcsSttusAll" value="">
<span class="check"></span>
<span class="control-label">전체</span>
</label>
<c:forEach var = "rtngud" items = "${resultMap.rtngudProcsSttus}">
<label class="b-checkbox checkbox">
<input class="returnProcsSttus" type="checkbox" name="srchReturnProcsStuusCd" value="${rtngud.cd}" onclick="fn_ctr_pCheckbox('#returnProcsSttusAll', '.returnProcsSttus')"
<c:if test="${ fn:contains(resultMap.paramVO.srchReturnProcsStuusCd, rtngud.cd) }">checked="checked"</c:if>>
<span class="check"></span>
<span class="control-label">${rtngud.cdNm}</span>
</label>
</c:forEach>
</div>
</div>
</td>
</tr>
<tr>
<th>환불처리상태</th>
<td>
<div class="td-inner">
<div class="b-checkbox-container">
<label class="b-checkbox checkbox check-all">
<input type="checkbox" id="refundProcsSttusAll" value="">
<span class="check"></span>
<span class="control-label">전체</span>
</label>
<c:forEach var = "refund" items = "${resultMap.refndProcsSttus}">
<label class="b-checkbox checkbox">
<input class="refundProcsSttus" type="checkbox" name="srchRefundProcsSttusCd" value="${refund.cd}" onclick="fn_ctr_pCheckbox('#refundProcsSttusAll', '.refundProcsSttus');"
<c:if test="${ fn:contains(resultMap.paramVO.srchRefundProcsSttusCd, refund.cd) }">checked="checked"</c:if>>
<span class="check"></span>
<span class="control-label">${refund.cdNm}</span>
</label>
</c:forEach>
</div>
</div>
</td>
</tr>
<tr class="search-hide">
<th>회수방법(반품)</th>
<td>
<div class="td-inner">
<div class="select-box">
<select title="해당 셀렉트에 대한 설명" name="srchReturnMthCd">
<option value="">전체</option>
<c:forEach var="cdList" items="${ resultMap.returnMtcCdList }" varStatus="status">
<c:choose>
<c:when test="${ cdList.cd eq resultMap.paramVO.srchReturnMthCd}">
<option value="<c:out value="${ cdList.cd }"/>" selected="selected" <c:if test="${ cdList.cd eq resultMap.paramVO.srchDv }">selected </c:if> ><c:out value="${ cdList.cdNm }"/></option>
</c:when>
<c:otherwise>
<option value="<c:out value="${ cdList.cd }"/>" <c:if test="${ cdList.cd eq resultMap.paramVO.srchDv }">selected </c:if> ><c:out value="${ cdList.cdNm }"/></option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="form-control-container">
<div class="left"></div>
<div class="center">
<button type = "button" class="btn outline" onclick = "fn_reset_form('content-section'); $('#sevenDays').click(); ">초기화</button>
<button class="btn primary" type="button" id="searchBtn" onclick="fn_select_list(1); return false;">검색</button>
</div>
<div class="right">
<button class="btn outline search-detail">상세검색</button>
</div>
</div>
</section>
<!-- // 검색 끝 -->
<div id = "pageDiv">
</div>
</form>
<button class="scroll-to-top"><span class="visually-hidden">위로가기</span></button>
</div>
</div>
</main>
<div id="modalDiv">
</div>
</body>
</html>