주문취소시 배송비가 0으로 되는 부분관련 문의합니다.
본문
영카트5로 작업중인데 주문취소시 주문합계금액과 주문취소금액이 배송비가 빠진 금액으로 표시가 됩니다.
예들들어 5000원짜리 상품을 배송비 2500원해서 합계 7500원으로 결제를 하고 주문취소를 하면 합계금액과 취소금액이 5000원으로 표시가 됩니다.
이렇게하면 관리자나 주문한 회원이나 모두 헷갈릴거 같은데 이렇게 되어 있는 특별한 이유가 있는지 궁금합니다.
그리고 소스를 보니 주문취소시 od_send_cost 가 0 으로 되는거 같은데 취소시에도 od_send_cost 는 그대로 둬도 상관이 없는지도 궁금합니다.
/adm/shop_admin/orderformcartupdate.php 파일에서
// 미수금 등의 정보
$info = get_order_info($od_id);
if(!$info)
alert('주문자료가 존재하지 않습니다.');
$sql = " update {$g5['g5_shop_order_table']}
set od_cart_price = '{$info['od_cart_price']}',
od_cart_coupon = '{$info['od_cart_coupon']}',
od_coupon = '{$info['od_coupon']}',
od_send_coupon = '{$info['od_send_coupon']}',
od_cancel_price = '{$info['od_cancel_price']}',
od_send_cost = '{$info['od_send_cost']}',
od_misu = '{$info['od_misu']}',
od_tax_mny = '{$info['od_tax_mny']}',
od_vat_mny = '{$info['od_vat_mny']}',
od_free_mny = '{$info['od_free_mny']}' ";
if ($mod_history) { // 주문변경 히스토리 기록
$sql .= " , od_mod_history = CONCAT(od_mod_history,'$mod_history') ";
}
에서 od_send_cost = '{$info['od_send_cost']}', 이부분을 빼서 주문취소시에도 합계금액과 취소금액이 배송비 포함된 금액으로 표현하게하고 싶은데 괜찮은지 문의합니다.
!-->답변 1
배송비가 변경되는 것은 영카트5에 추가된 상품별 배송비 기능을 만족시키기 위함입니다.
수량별 배송비를 설정했을 때 수량이 변경되면 배송비가 변경되어 미수금액을 다시 계산해야
하는데.. 이 때 취소되지 않는 상품에 대해서만 배송비를 계산하도록 되어 있어 모두 취소 때는
배송비가 0으로 기록됩니다.
배송비 부분을 변경되지 않도록 수정해도 되지만 미수금 등의 계산에서 문제가 발생할 수 있고
상품별 배송비 등 배송비 설정을 여러 가지로 설정한 경우는 미수금액 계산에서 차이가 발생할
수 있음을 아셔야 합니다. 코드를 수정하시려면 이 부분에 대한 것도 고려하셔야 합니다.