|
|
@@ -0,0 +1,194 @@
|
|
|
+<!DOCTYPE html>
|
|
|
+<html lang="ko"
|
|
|
+ xmlns:th="http://www.thymeleaf.org">
|
|
|
+<!--
|
|
|
+ *******************************************************************************
|
|
|
+ * @source : ReviewDetailForm.html
|
|
|
+ * @desc : 리뷰 상세 팝업 Page
|
|
|
+ *============================================================================
|
|
|
+ * STYLE24
|
|
|
+ * Copyright(C) 2020 TSIT, All rights reserved.
|
|
|
+ *============================================================================
|
|
|
+ * VER DATE AUTHOR DESCRIPTION
|
|
|
+ * === =========== ========== =============================================
|
|
|
+ * 1.0 2021.04.22 gagamel 최초 작성
|
|
|
+ *******************************************************************************
|
|
|
+ -->
|
|
|
+<div class="modalPopup" data-width="1200" id="popupReviewDetail">
|
|
|
+ <div class="panelStyle">
|
|
|
+ <!-- TITLE -->
|
|
|
+ <div class="panelTitle">
|
|
|
+ <strong>리뷰 상세</strong>
|
|
|
+ <button type="button" class="close" onclick="uifnPopupClose('popupReviewDetail');"><em class="fa fa-times"></em></button>
|
|
|
+ </div>
|
|
|
+ <!-- //TITLE -->
|
|
|
+
|
|
|
+ <!-- CONTENT -->
|
|
|
+ <div class="panelContent">
|
|
|
+ <form id="reviewDetailForm" name="reviewDetailForm" action="#" th:action="@{'/marketing/review/save'}" th:method="post" th:object="${reviewInfo}">
|
|
|
+ <input type="hidden" name="reviewSq" th:value="*{reviewSq}"/>
|
|
|
+
|
|
|
+ <h4>리뷰 정보</h4>
|
|
|
+ <table class="tableStyle" aria-describedby="상담정보">
|
|
|
+ <colgroup>
|
|
|
+ <col style="width:10%;"/>
|
|
|
+ <col style="width:10%;"/>
|
|
|
+ <col style="width:12%;"/>
|
|
|
+ <col style="width:15%;"/>
|
|
|
+ <col/>
|
|
|
+<!-- <col style="width:10%;"/> -->
|
|
|
+<!-- <col style="width:15%;"/> -->
|
|
|
+ <col style="width:25%;"/>
|
|
|
+ </colgroup>
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ <th>상담일련번호</th>
|
|
|
+ <th>사이트</th>
|
|
|
+ <th>상담분류</th>
|
|
|
+ <th>문의일시</th>
|
|
|
+ <th>고객정보</th>
|
|
|
+<!-- <th>주문번호</th> -->
|
|
|
+<!-- <th>답변의뢰</th> -->
|
|
|
+ <th>답변상태</th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody>
|
|
|
+ <tr>
|
|
|
+ <td th:text="*{counselSq}"></td>
|
|
|
+ <td th:text="*{siteNm}"></td>
|
|
|
+ <td th:utext="*{counselClsfNm}"></td>
|
|
|
+ <td th:text="*{questDt}"></td>
|
|
|
+ <td th:utext="*{custNm + ' / ' + cellPhnno + ' / ' + email}"></td>
|
|
|
+<!-- <td th:text="*{relOrdNo}"></td> -->
|
|
|
+<!-- <td th:utext="*{ansTransYn == 'Y' ? ansTransDt + '<br/>' + ansCompNm : ''}"></td> -->
|
|
|
+ <td th:utext="*{ansStat == 'G060_20' ? ansStatNm + ' / ' + ansDt + ' / ' + ansNm : ansStatNm}"></td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+
|
|
|
+ <h4>고객문의</h4>
|
|
|
+ <table class="frmStyle" aria-describedby="고객문의">
|
|
|
+ <colgroup>
|
|
|
+ <col style="width:10%;"/>
|
|
|
+ <col style="width:50%;"/>
|
|
|
+ <col style="width:10%;"/>
|
|
|
+ <col/>
|
|
|
+ </colgroup>
|
|
|
+ <tbody>
|
|
|
+ <tr>
|
|
|
+ <th>문의 제목</th>
|
|
|
+ <td th:text="*{questTitle}"></td>
|
|
|
+ <th>SMS답변요청</th>
|
|
|
+ <td th:text="*{smsReqYn == 'Y' ? '수신' : '미수신'}"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>문의 내용</th>
|
|
|
+ <td>
|
|
|
+ <textarea class="textareaR4" style="resize: none;" name="questContent" th:text="*{questContent}" disabled="disabled"></textarea>
|
|
|
+ </td>
|
|
|
+ <th>첨부 이미지</th>
|
|
|
+ <td class="userImg">
|
|
|
+ <img th:if="${counselInfo.sysFileNm1 != null}" style="height: 100px;" th:src="${@environment.getProperty('domain.image') + '/counsel/' + counselInfo.sysFileNm1}" alt="" onerror='this.src="/image/no.gif"'/>
|
|
|
+ <img th:if="${counselInfo.sysFileNm2 != null}" style="height: 100px;" th:src="${@environment.getProperty('domain.image') + '/counsel/' + counselInfo.sysFileNm2}" alt="" onerror='this.src="/image/no.gif"'/>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+
|
|
|
+ <h4>답변등록</h4>
|
|
|
+ <table class="frmStyle" aria-describedby="답변등록">
|
|
|
+ <colgroup>
|
|
|
+ <col style="width:10%;"/>
|
|
|
+ <col style="width:90%;"/>
|
|
|
+ </colgroup>
|
|
|
+ <tbody>
|
|
|
+ <tr>
|
|
|
+ <th>답변 템플릿</th>
|
|
|
+ <td>
|
|
|
+ <select name="ansSq">
|
|
|
+ <option value="">[선택]</option>
|
|
|
+ <option th:if="${ansPhaseList}" th:each="oneData, statue : ${ansPhaseList}" th:value="${oneData.cd}" th:text="${oneData.cdNm}"></option>
|
|
|
+ </select>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>답변 제목<i class="required" title="필수" aria-hidden="true"></i></th>
|
|
|
+ <td>
|
|
|
+ <input type="text" class="" name="ansTitle" th:value="*{ansTitle}" required="required" data-valid-name="답변 제목"/>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>
|
|
|
+ 답변 내용<i class="required" title="필수" aria-hidden="true"></i>
|
|
|
+ <br/>
|
|
|
+ <span id="dpLocAnsContent">0</span>/4,000Byte
|
|
|
+ </th>
|
|
|
+ <td>
|
|
|
+ <textarea class="textareaR4" style="resize: none;" name="ansContent" th:text="*{ansContent}" onkeyup="cfnGetTextLength(this, 4000, $('#dpLocAnsContent'));" required="required" data-valid-name="답변 내용"></textarea>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ </form>
|
|
|
+ </div>
|
|
|
+ <!-- //CONTENT -->
|
|
|
+
|
|
|
+ <!-- 버튼 배치 영역 -->
|
|
|
+ <ul class="panelBar">
|
|
|
+ <li class="right">
|
|
|
+ <button type="button" class="btn btn-info btn-lg" id="btnSaveAnswer" th:if="${counselInfo.ansStat == 'G060_10'}">답변저장</button>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ <!-- //버튼 배치 영역 -->
|
|
|
+ </div>
|
|
|
+</div>
|
|
|
+
|
|
|
+<script th:inline="javascript">
|
|
|
+/*<![CDATA[*/
|
|
|
+ // 답변 저장
|
|
|
+ $('#btnSaveAnswer').on('click', function() {
|
|
|
+ // 입력 값 체크
|
|
|
+ if (!gagajf.validation('#reviewDetailForm'))
|
|
|
+ return false;
|
|
|
+
|
|
|
+ mcxDialog.confirm("저장하시겠습니까?", {
|
|
|
+ cancelBtnText: "취소",
|
|
|
+ sureBtnText: "확인",
|
|
|
+ sureBtnClick: function() {
|
|
|
+ gagajf.ajaxFormSubmit($('#reviewDetailForm').prop('action'), '#reviewDetailForm', function() {
|
|
|
+ uifnPopupClose('popupOneToOneQnaDetail');
|
|
|
+ $('#btnSearch').trigger('click');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
+ // 답변템플릿 선택 시
|
|
|
+ $('select[name=ansSq]').on('change', function() {
|
|
|
+ var ansSq = $(this).val();
|
|
|
+
|
|
|
+ if (!gagajf.isNull(ansSq)) {
|
|
|
+ var actionUrl = '/customer/qna/answerphase/' + ansSq + '/20';
|
|
|
+ $.get(actionUrl
|
|
|
+ , function(data) {
|
|
|
+ if (!gagajf.isNull(data.ansSq)) {
|
|
|
+ $('input[name=ansTitle]').val(data.ansTitle);
|
|
|
+ $('textarea[name=ansContent]').val(data.ansContent);
|
|
|
+ cfnGetTextLength($('textarea[name=ansContent]'), 4000, $('#dpLocAnsContent'));
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ // 답변 내용 초기화
|
|
|
+ $('input[name=ansTitle]').val('');
|
|
|
+ $('textarea[name=ansContent]').val('');
|
|
|
+ cfnGetTextLength($('textarea[name=ansContent]'), 4000, $('#dpLocAnsContent'));
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ $(document).ready(function() {
|
|
|
+ cfnGetTextLength($('textarea[name=ansContent]'), 4000, $('#dpLocAnsContent'));
|
|
|
+ });
|
|
|
+/*]]>*/
|
|
|
+</script>
|
|
|
+
|
|
|
+</html>
|