주문내역 입금대기 생략 후 결제(입금)완료로 바로 가고 싶습니다.
본문
회원 구분(mb_8)을 선납자(value=0)와 후납자(value=1)로 구분하고 있습니다.
결제방식은 무통장만 사용중입니다.
선납자가 주문시 원래 영카트 시스템인 입금대기로 넘어갑니다.
<질문>
후납자가 주문시에 입금대기를 생략하고 다음단계인 결제(입금)완료 구간으로 바로 가고싶습니다.
아래 코드를 확인하며 수정하고 있습니다만, 조언을 얻을수 있을까 해서 글 남겨봅니다.
$od_status = '주문';
$od_tno = '';
if ($od_settle_case == "무통장")
{
$od_receipt_point = $i_temp_point;
$od_receipt_price = 0;
$od_misu = $i_price - $od_receipt_price;
if($od_misu == 0) {
$od_status = '입금';
$od_receipt_time = G5_TIME_YMDHIS;
}
}
답변 2
위의 코드를 가지고 이야기를 드리면
$od_status = '주문';
$od_tno = '';
if ($od_settle_case == "무통장")
{
$od_receipt_point = $i_temp_point;
$od_receipt_price = 0;
$od_misu = $i_price - $od_receipt_price;
if($od_misu == 0) {
$od_status = '입금';
$od_receipt_time = G5_TIME_YMDHIS;
}
}
에서
입금을 만드는 조건은
$od_misu 가 0 일때 입니다.
그런데
$od_misu 를 구성하는건
$od_misu = $i_price - $od_receipt_price;
이 문장으로 판단되는데
$od_receipt_price는 바로위에서 0 입니다.
그러면
$i_price 가 0이 되어야 $od_misu가 0 으로 만들어져서 입금처리가 된다는 판단이죠
$i_price는
위의 예문에 보이진 않지만
그 바로위에서 정의됩니다.
$i_price = $i_price + $i_send_cost + $i_send_cost2 - $i_temp_point - $i_send_coupon;
상품가 - 배송비1,배송비1, 포인트, 쿠폰 을 제외한 금액이라는 내용이 보여집니다.
기본적으로 주문시에 무통장은 '입금'으로 만드는일을 거의 하지 않는다는 결론을 내릴수있습니다.
그러면
하고자 하는 일은
mb_8 의 값이 1일때
미수금과 관계없이 '입금'이 되어야 겠죠
if($od_misu == 0 || $member['mb_8'] == '1') {
$od_status = '입금';
$od_receipt_time = G5_TIME_YMDHIS;
}
이렇게 하면 '입금'처리는되겠지만
어떤조건으로 입금이 된건지는 추론(미수금존재 + 입금) 으로밖에 판단이 안될것이라서
어딘가에 기록을해두셔야 추후 발생할 민원/오류/상담등의 근거로 삼을수있을것입니다.
쇼핑몰이던, 커뮤니티던간에 운영을할때 선행,후행,그에 따른 결과를 고려하지 않으면
매우 난처한 상황들이 발생되니 전방위적으로 고려하고 진행하시는게 좋습니다.
!-->아래 코드를 확인하며 수정하고 있습니다만,
==
아래 코드가 있는 파일이 어떤 파일인가요?
회원 mb_8 조건을 걸어 주어야 하는데 보이는 코드가 부족하네요.