orderinqueiryview.php 파일 주문취소 질문입니다!
주문취소 버튼이 현재 주문 상태에서만 보여지는데 입금, 준비 단계에서도 보여지게 하려고 하면 어떻게 해야할까요?
<section id="sod_fin_cancel">
<h2>주문취소</h2>
<?php
// 취소한 내역이 없다면
if ($cancel_price == 0) {
if ($custom_cancel) {
?>
<button type="button" onclick="document.getElementById('sod_fin_cancelfrm').style.display='block';">주문 취소하기</button>
<div id="sod_fin_cancelfrm">
<form method="post" action="./orderinquirycancel.php" onsubmit="return fcancel_check(this);">
<input type="hidden" name="od_id" value="<?php echo $od['od_id']; ?>">
<input type="hidden" name="token" value="<?php echo $token; ?>">
<label for="cancel_memo" class="sound_only">취소사유</label>
<input type="text" name="cancel_memo" id="cancel_memo" required class="frm_input required" size="40" maxlength="100" placeholder="취소사유">
<input type="submit" value="확인" class="btn_frmline">
</form>
</div>
<?php
}
} else {
?>
<p>주문 취소, 반품, 품절된 내역이 있습니다.</p>
<?php } ?>
</section>
취소 내역이 없을 때 저 버튼이 나오는거면 위쪽 어딘가에서 상태를 체크하는 부분이 있을텐데 입금, 준비 상태일 때 취소신청을 하게되면 바로 진행되는것이 아니라 관리자페이지에서 보여지게 하고 별도 승인을 해주려고 하는 부분입니다.
답변 3개
취소 버튼이 나오게 하는 코드를 찾아서 수정하지 못하는 상태이면 취소버튼을 보이게 한 후 처리 과정을
작업할 수 있을지 의문이지만
하여튼 해당 화일 상단 $custom_cancel 을 찾아서 바로 위에 보면 (테마폴더 orderinquiryview 화일 122행쯤)
if($opt['ct_status'] == '주문') $st_count2++; <===이 코드를 다음처럼 수정
if( in_array( $opt['ct_status'], array('주문','입금','준비') ) ) $st_count2++;
그리고 다음 처리는 orderinquirycancel.php 에서
주문상태가 아니면 처리 되지않게 한 부분 수정
카드사 관련 //PG 결제 취소 라고 된 부분 건너뛰기
이렇게 하고 관리자에서 처리해주면 되겟습니다
==================
위와 같이 코드를 수정하기 보다 취소버튼이 나오게 한 다음
입금/준비 상태일때는 최소처리 화일을 별도로 하나 만들어서 여분필드에 취소요청 이라고 기록을 하게 만들고(사용자에게는 취소요청이라고 보이게 만들기)
관리자에서 요청 상태 확인 후 처리하도록 하는게 좋으리라 봅니다
취소요청폼의 action화일을 상태에 따라
orderinquirycancel.php / my_orderinquirycancel.php 두가지 중 하나가 나오도록 만들면 되겟습니다
회원은 주문 단계에서만 취소 할 수 있습니다.
관리자는 단계와 상관없이 관리자 페이지 주문 부분에서 수정할 수 있습니다.
취소요청은 별도 게시판을 하나 두어서
해당 상품 취소문의를 할수 있게 만드는게 제일 나을듯 합니다.
최종적으로 원하시는 부분은
회원이 [주문] 상태일때는 취소가능
[주문] 상태 외 이고 [취소] 상태가 아닐때에는 [취소대기] 상태로 변경되고
관리자는 해당 주문건을 보고 [취소] 처리.
아마도 이 로직일것 같은데 QNA 로 처리하기엔 작업해야할 내용이 많습니다.
따라서 의뢰로 가시면 될것 같습니다.
답변을 작성하려면 로그인이 필요합니다.