176 lines
7.0 KiB
Plaintext
176 lines
7.0 KiB
Plaintext
<%--
|
|
Created by IntelliJ IDEA.
|
|
User: CHAMDAHAN
|
|
Date: 2024-10-08
|
|
Time: 오후 3:30
|
|
To change this template use File | Settings | File Templates.
|
|
--%>
|
|
<%@ 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" %>
|
|
<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld" %>
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="ko">
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>일반 관리자</title>
|
|
<%@ include file="/WEB-INF/views/comm/mngr/Include.jsp"%>
|
|
</head>
|
|
<style>
|
|
|
|
</style>
|
|
<script>
|
|
|
|
$(document).ready(function () {
|
|
|
|
//리셋버튼 초기화
|
|
$('#resetBtn').on('click', function () {
|
|
|
|
$('#listForm')[0].reset();
|
|
|
|
$('#brandCd').find('option:eq(0)').prop('selected', true).end().niceSelect('update');
|
|
$('#telNb, #resultNb').val('');
|
|
});
|
|
|
|
|
|
});
|
|
|
|
/* ********************************************************
|
|
* 목록 조회
|
|
******************************************************** */
|
|
const fn_select_list = function () {
|
|
let dataStr;
|
|
let sopmalCd = $('#brandCd').val();
|
|
dataStr = $('#telNb').val();
|
|
dataStr = dataStr.replaceAll('-','');
|
|
|
|
if (dataStr == undefined || dataStr.trim() == "") {
|
|
alert('핸드폰 번호를 입력해주세요');
|
|
return;
|
|
}
|
|
|
|
let dataMap = {
|
|
telNb: dataStr,
|
|
sopmalCd: sopmalCd
|
|
};
|
|
|
|
$.ajax({
|
|
type: "POST",
|
|
url: "/mngr/matchMember/select/match-member",
|
|
contentType: "application/json",
|
|
data: JSON.stringify(dataMap),
|
|
success: function (resultMap) {
|
|
let result = JSON.parse(resultMap.resBody.result);
|
|
|
|
if(result.matchMemberList != null && result.matchMemberList.length > 0) {
|
|
let formattedText = "";
|
|
formattedText += "핸드폰번호 \t 회원번호 \t 구매건수 \n ";
|
|
const phoneNumbersArray = $('#telNb').val().trim().split('\n');
|
|
|
|
for (let i = 0; i < phoneNumbersArray.length; i++) {
|
|
let found = false;
|
|
|
|
result.matchMemberList.forEach(function(item) {
|
|
if(phoneNumbersArray[i].replaceAll('-', '') === item.mbtlnb) {
|
|
formattedText += phoneNumbersArray[i] + "\t" + item.mbrInnb + "\t" + item.cnt + "\n";
|
|
found = true;
|
|
}
|
|
});
|
|
if(!found) {
|
|
formattedText += phoneNumbersArray[i] + "\t" + '' + "\t" + '' + "\n";
|
|
}
|
|
|
|
|
|
}
|
|
$('#resultNb').val(formattedText);
|
|
alert(result.message);
|
|
} else {
|
|
alert('일치하는 결과가 없습니다');
|
|
return;
|
|
}
|
|
|
|
},
|
|
error: function (xhr, status, error) {
|
|
alert("요청 중 문제가 발생했습니다.");
|
|
}
|
|
});
|
|
};
|
|
|
|
</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>
|
|
|
|
<form id='listForm' name="listForm" method="post"
|
|
action="<c:url value="/mngr/matchMember/select/match-member"/>">
|
|
|
|
<section class="content-section" id="search-section">
|
|
<div class="table-wrapper">
|
|
<table class="table">
|
|
<colgroup>
|
|
<col style="width: 2%;">
|
|
<col>
|
|
<col style="width: 9%;">
|
|
<col>
|
|
</colgroup>
|
|
<tr>
|
|
<th rowspan="1">브랜드</th>
|
|
<td colspan="1">
|
|
<div class="select-box">
|
|
<select title="브랜드" id="brandCd" name="brandCd">
|
|
<option value="" selected>*선택*</option>
|
|
<c:choose>
|
|
<c:when test="${ not empty resultMap.sopmalList }">
|
|
<c:forEach items="${ resultMap.sopmalList }" var="list" varStatus="status">
|
|
<option value="${list.sopmalCd}">${list.sopmalNm}</option>
|
|
</c:forEach>
|
|
</c:when>
|
|
</c:choose>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
<th rowspan="1">휴대폰 목록 입력 (1줄에 1개씩)</th>
|
|
<td colspan="3">
|
|
<textarea class="textarea" title="에디터 입력" cols="20" id="telNb" name="telNb" rows="30"></textarea>
|
|
</td>
|
|
<th rowspan="1">결과를 전체 복사하여 엑셀에 붙혀넣으세요!</th>
|
|
<td colspan="3">
|
|
<textarea class="textarea" title="에디터 입력" cols="60" id="resultNb" name="resultNb" rows="30"></textarea>
|
|
</td>
|
|
</tr>
|
|
|
|
</table>
|
|
</div>
|
|
<div class="form-control-container">
|
|
<div class="left"></div>
|
|
<div class="center">
|
|
<button class="btn outline" id="resetBtn" type="button">초기화</button>
|
|
<button class="btn primary" id="searchBtn" type="button" onclick="fn_select_list();"><spring:message code="button.search"/> </button>
|
|
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
</form>
|
|
|
|
</div>
|
|
</div>
|
|
</main>
|
|
|
|
|
|
</body>
|
|
</html>
|