주문상세 결제정보의 부분취소 기능 제거
This commit is contained in:
@ -699,9 +699,6 @@ if($request) {
|
||||
</section>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<?php if($od['od_settle_case'] == '계좌이체' || $od['od_settle_case'] == '신용카드') { ?>
|
||||
<a href="./partcancel.php?od_id=<?php echo $od['od_id']; ?>" target="_blank" id="win_partcancel">결제금액 부분취소</a>
|
||||
<?php } ?>
|
||||
<input type="submit" value="결제/배송내역 수정" class="btn_submit">
|
||||
</div>
|
||||
</form>
|
||||
@ -901,13 +898,6 @@ $(function() {
|
||||
else
|
||||
$chk.attr("checked", false);
|
||||
});
|
||||
|
||||
// 부분취소
|
||||
$("#win_partcancel").click(function() {
|
||||
var new_win = window.open($(this).attr("href"), "win_partcancel", "left=100,top=100,width=500, height=300");
|
||||
new_win.focus();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
function form_submit(f)
|
||||
|
||||
@ -1,89 +0,0 @@
|
||||
<?php
|
||||
$sub_menu = '400400';
|
||||
include_once('./_common.php');
|
||||
|
||||
auth_check($auth[$sub_menu], "w");
|
||||
|
||||
$g4['title'] = $settle_method.' 부분취소 요청';
|
||||
include_once(G4_PATH.'/head.sub.php');
|
||||
|
||||
$sql = " select *
|
||||
from {$g4['shop_order_table']}
|
||||
where od_id = '{$_GET['od_id']}' ";
|
||||
$od = sql_fetch($sql);
|
||||
|
||||
if(!$od['od_id'])
|
||||
alert_close('주문정보가 존재하지 않습니다.');
|
||||
|
||||
if($od['od_settle_case'] != '신용카드' && $od['od_settle_case'] != '계좌이체')
|
||||
alert_close('부분취소는 신용카드 또는 실시간 계좌이체 결제건에 대해서만 요청할 수 있습니다.');
|
||||
|
||||
if($od['od_settle_case'] == '계좌이체' && substr(0, 10, $od['od_time']) == G4_TIME_YMD)
|
||||
alert_close('실시간 계좌이체건의 부분취소 요청은 결제일 익일에 가능합니다.');
|
||||
|
||||
$mod_type = 'RN07';
|
||||
if($od['od_settle_case'] == '계좌이체')
|
||||
$mod_type = 'STPA';
|
||||
|
||||
$available_cancel = $od['od_receipt_amount'] - $od['od_cancel_card'];
|
||||
?>
|
||||
|
||||
<div>
|
||||
<form name="fcardpartcancel" method="post" action="./partcancelupdate.php" onsubmit="return form_check(this);">
|
||||
<input type="hidden" name="od_id" value="<?php echo $od['od_id']; ?>">
|
||||
<input type="hidden" name="req_tx" value="mod">
|
||||
<input type="hidden" name="tno" value="<?php echo $od['od_tno']; ?>">
|
||||
<input type="hidden" name="mod_type" value="<?php echo $mod_type; ?>">
|
||||
<input type="hidden" name="rem_mny" value="<?php echo $available_cancel; ?>">
|
||||
<p>
|
||||
<?php echo $g4['title']; ?>
|
||||
</p>
|
||||
<p>
|
||||
취소가능금액 : <?php echo number_format($available_cancel); ?> 원
|
||||
</p>
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
<p>
|
||||
<label for="tax_mny">과세 취소요청금액</label>
|
||||
<input type="text" name="tax_mny" id="tax_mny" size="20"> 원
|
||||
</p>
|
||||
<p>
|
||||
<label for="mod_free_mny">비과세 취소요청금액</label>
|
||||
<input type="text" name="mod_free_mny" id="mod_free_mny" size="20"> 원
|
||||
</p>
|
||||
<?php } else { ?>
|
||||
<p>
|
||||
<label for="mod_mny">취소요청금액</label>
|
||||
<input type="text" name="mod_mny" id="mod_mny" size="20" required class="required"> 원
|
||||
</p>
|
||||
<?php } ?>
|
||||
<p>
|
||||
<label for="mod_desc">취소요청사유</label>
|
||||
<input type="text" name="mod_desc" id="mod_desc" size="50" required class="required">
|
||||
</p>
|
||||
<p>
|
||||
<input type="submit" value="확인">
|
||||
<a href="javascript:;" onclick="window.close();">창닫기</a>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
function form_check(f)
|
||||
{
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
var tax_mny = f.tax_mny.value;
|
||||
var free_mny = f.mod_free_mny.value;
|
||||
|
||||
if(tax_mny == "" && free_mny == "") {
|
||||
alert("과세 또는 비과세 취소요청금액을입력해 주십시오.");
|
||||
return false;
|
||||
}
|
||||
<?php } ?>
|
||||
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
include_once(G4_PATH.'/tail.sub.php');
|
||||
?>
|
||||
@ -1,178 +0,0 @@
|
||||
<?php
|
||||
$sub_menu = '400400';
|
||||
include_once('./_common.php');
|
||||
|
||||
if(!$_POST['tno'] || !$_POST['req_tx'] || !$_POST['mod_type'])
|
||||
alert_close('올바른 방법으로 이용해 주십시오.');
|
||||
|
||||
auth_check($auth[$sub_menu], "w");
|
||||
|
||||
$sql = " select od_id, od_settle_case, od_time
|
||||
from {$g4['shop_order_table']}
|
||||
where od_id = '{$_POST['od_id']}' ";
|
||||
$od = sql_fetch($sql);
|
||||
|
||||
if(!$od['od_id'])
|
||||
alert('주문정보가 존재하지 않습니다.');
|
||||
|
||||
if($od['od_settle_case'] != '신용카드' && $od['od_settle_case'] != '계좌이체')
|
||||
alert('부분취소는 신용카드 또는 실시간 계좌이체 결제건에 대해서만 요청할 수 있습니다.');
|
||||
|
||||
if($od['od_settle_case'] == '계좌이체' && substr(0, 10, $od['od_time']) == G4_TIME_YMD)
|
||||
alert('실시간 계좌이체건의 부분취소 요청은 결제일 익일에 가능합니다.');
|
||||
|
||||
if($_POST['mod_type'] != 'RN07' && $_POST['mod_type'] != 'STPA')
|
||||
alert('취소요청 구분이 올바르지 않습니다.mod_type 값을 확인해 주십시오.');
|
||||
|
||||
// 취소사유의 한글깨짐 방지처리
|
||||
$def_locale = setlocale(LC_CTYPE, 0);
|
||||
$_POST = array_map('iconv_euckr', $_POST);
|
||||
$locale_change = false;
|
||||
if(preg_match("/utf[\-]?8/i", $def_locale)) {
|
||||
setlocale(LC_CTYPE, 'ko_KR.euc-kr');
|
||||
$locale_change = true;
|
||||
}
|
||||
|
||||
// 부분취소 실행
|
||||
if ($default['de_card_test']) {
|
||||
if ($default['de_escrow_use'] == 1) {
|
||||
// 에스크로결제 테스트
|
||||
$default['de_kcp_mid'] = "T0007";
|
||||
$default['de_kcp_site_key'] = '2.mDT7R4lUIfHlHq4byhYjf__';
|
||||
}
|
||||
else {
|
||||
// 일반결제 테스트
|
||||
$default['de_kcp_mid'] = "T0000";
|
||||
$default['de_kcp_site_key'] = '3grptw1.zW0GSo4PQdaGvsF__';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$default['de_kcp_mid'] = "SR".$default['de_kcp_mid'];
|
||||
}
|
||||
|
||||
$g_conf_site_cd = $default['de_kcp_mid'];
|
||||
$g_conf_site_key = $default['de_kcp_site_key'];
|
||||
$g_conf_home_dir = G4_SHOP_PATH.'/kcp';
|
||||
$g_conf_key_dir = '';
|
||||
$g_conf_log_dir = '';
|
||||
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
|
||||
{
|
||||
$g_conf_key_dir = G4_SHOP_PATH.'/kcp/bin/pub.key';
|
||||
$g_conf_log_dir = G4_SHOP_PATH.'/kcp/log';
|
||||
}
|
||||
|
||||
if (preg_match("/^T000/", $g_conf_site_cd) || $default['de_card_test']) {
|
||||
$g_conf_gw_url = "testpaygw.kcp.co.kr";
|
||||
}
|
||||
else {
|
||||
$g_conf_gw_url = "paygw.kcp.co.kr";
|
||||
if (!preg_match("/^SR/", $g_conf_site_cd)) {
|
||||
alert("SR 로 시작하지 않는 KCP SITE CODE 는 지원하지 않습니다.");
|
||||
}
|
||||
}
|
||||
|
||||
$g_conf_log_level = "3";
|
||||
$g_conf_gw_port = "8090";
|
||||
|
||||
include G4_SHOP_PATH.'/kcp/pp_cli_hub_lib.php';
|
||||
|
||||
$tno = $_POST['tno'];
|
||||
$req_tx = $_POST['req_tx'];
|
||||
$mod_type = $_POST['mod_type'];
|
||||
$mod_desc = $_POST['mod_desc'];
|
||||
$cust_ip = getenv('REMOTE_ADDR');
|
||||
$rem_mny = $_POST['rem_mny'];
|
||||
$mod_mny = $_POST['mod_mny'];
|
||||
$tax_mny = $_POST['tax_mny'];
|
||||
$mod_free_mny = $_POST['mod_free_mny'];
|
||||
|
||||
if($default['de_tax_flag_use']) {
|
||||
$mod_mny = strval($tax_mny + $mod_free_mny);
|
||||
}
|
||||
|
||||
$c_PayPlus = new C_PAYPLUS_CLI;
|
||||
$c_PayPlus->mf_clear();
|
||||
|
||||
if ( $req_tx == "mod" )
|
||||
{
|
||||
$tran_cd = "00200000";
|
||||
|
||||
$c_PayPlus->mf_set_modx_data( "tno" , $tno ); // KCP 원거래 거래번호
|
||||
$c_PayPlus->mf_set_modx_data( "mod_type" , $mod_type ); // 원거래 변경 요청 종류
|
||||
$c_PayPlus->mf_set_modx_data( "mod_ip" , $cust_ip ); // 변경 요청자 IP
|
||||
$c_PayPlus->mf_set_modx_data( "mod_desc" , $mod_desc ); // 변경 사유
|
||||
$c_PayPlus->mf_set_modx_data( "rem_mny" , $rem_mny ); // 취소 가능 잔액
|
||||
$c_PayPlus->mf_set_modx_data( "mod_mny" , $mod_mny ); // 취소 요청 금액
|
||||
|
||||
if($default['de_tax_flag_use'])
|
||||
{
|
||||
$mod_tax_mny = round((int)$tax_mny / 1.1);
|
||||
$mod_vat_mny = (int)$tax_mny - $mod_tax_mny;
|
||||
|
||||
$c_PayPlus->mf_set_modx_data( "tax_flag" , "TG03" ); // 복합과세 구분
|
||||
$c_PayPlus->mf_set_modx_data( "mod_tax_mny" , strval($mod_tax_mny) ); // 공급가 부분 취소 요청 금액
|
||||
$c_PayPlus->mf_set_modx_data( "mod_vat_mny" , strval($mod_vat_mny) ); // 부과세 부분 취소 요청 금액
|
||||
$c_PayPlus->mf_set_modx_data( "mod_free_mny" , $mod_free_mny ); // 비관세 부분 취소 요청 금액
|
||||
}
|
||||
}
|
||||
|
||||
if ( $tran_cd != "" )
|
||||
{
|
||||
$c_PayPlus->mf_do_tx( "", $g_conf_home_dir, $g_conf_site_cd,
|
||||
$g_conf_site_key, $tran_cd, "",
|
||||
$g_conf_gw_url, $g_conf_gw_port, "payplus_cli_slib",
|
||||
$ordr_idxx, $cust_ip, $g_conf_log_level,
|
||||
"", 0 );
|
||||
|
||||
$res_cd = $c_PayPlus->m_res_cd; // 결과 코드
|
||||
$res_msg = $c_PayPlus->m_res_msg; // 결과 메시지
|
||||
/* $res_en_msg = $c_PayPlus->mf_get_res_data( "res_en_msg" ); // 결과 영문 메세지 */
|
||||
}
|
||||
else
|
||||
{
|
||||
$c_PayPlus->m_res_cd = "9562";
|
||||
$c_PayPlus->m_res_msg = "연동 오류|Payplus Plugin이 설치되지 않았거나 tran_cd값이 설정되지 않았습니다.";
|
||||
}
|
||||
|
||||
if ($res_cd != '0000')
|
||||
{
|
||||
$res_msg = iconv("euc-kr", "utf-8", $res_msg);
|
||||
|
||||
alert("$res_cd : $res_msg");
|
||||
}
|
||||
|
||||
/* ============================================================================== */
|
||||
/* = 취소 결과 처리 = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
if ( $req_tx == "mod" )
|
||||
{
|
||||
if ( $res_cd == "0000" )
|
||||
{
|
||||
$tno = $c_PayPlus->mf_get_res_data( "tno" ); // KCP 거래 고유 번호
|
||||
$amount = $c_PayPlus->mf_get_res_data( "amount" ); // 원 거래금액
|
||||
$mod_mny = $c_PayPlus->mf_get_res_data( "panc_mod_mny" ); // 취소요청된 금액
|
||||
$rem_mny = $c_PayPlus->mf_get_res_data( "panc_rem_mny" ); // 취소요청후 잔액
|
||||
|
||||
$sql = " update {$g4['shop_order_table']}
|
||||
set od_cancel_card = od_cancel_card + '$mod_mny'
|
||||
where od_id = '{$od['od_id']}' ";
|
||||
sql_query($sql);
|
||||
} // End of [res_cd = "0000"]
|
||||
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 취소 실패 결과 처리 = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
else
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
if($locale_change)
|
||||
setlocale(LC_CTYPE, $def_locale);
|
||||
?>
|
||||
|
||||
<script>
|
||||
alert("부분취소 요청이 정상처리 됐습니다.");
|
||||
opener.window.location.reload();
|
||||
window.close();
|
||||
</script>
|
||||
Reference in New Issue
Block a user