kg inicis 가상계좌 결제시 문자 전송 질문드립니다.
본문
kg inicis 사용중이구요.
무통장 입금시에는
문자가 잘들어오는데.
가상계좌 선택했을 경우엔
문자가 오지 않습니다.
무통장은 잘 오구요~
원래 가상계좌 일 경우에는 문자가 가지 않는건가요?
혹시 몰라 아래에 수정된 코드 첨부합니다.
de_sms_cont2, de_sms_cont3 이것들은 각각
주문시 고객님께, 주문시 관리자님께 보내는 거라
필요가 없는데...
따로 de_sms_cont 를 만들어 줘야 할까요!?
그렇다면
계좌번호랑 은행 및 예금주는 어떤 변수로 받아와야 하나요?;
if($config['cf_sms_use']) {
$is_sms_send = false;
// 충전식일 경우 잔액이 있는지 체크
if($config['cf_icode_id'] && $config['cf_icode_pw']) {
$userinfo = get_icode_userinfo($config['cf_icode_id'], $config['cf_icode_pw']);
if($userinfo['code'] == 0) {
if($userinfo['payment'] == 'C') { // 정액제
$is_sms_send = true;
} else {
$minimum_coin = 100;
if(defined('G5_ICODE_COIN'))
$minimum_coin = intval(G5_ICODE_COIN);
if((int)$userinfo['coin'] >= $minimum_coin)
$is_sms_send = true;
}
}
}
if($is_sms_send) {
/* 2018-07-02 주문시 문자 안가게. 단, 무통장 입금 제외 */
$sms_contents = array($default['de_sms_cont2'], $default['de_sms_cont3']);
$recv_numbers = array($od_hp, $default['de_sms_hp']);
$send_numbers = array($default['de_admin_company_tel'], $default['de_admin_company_tel']);
$sms_count = 0;
$sms_messages = array();
for($s=0; $s<count($sms_contents); $s++) {
$sms_content = $sms_contents[$s];
$recv_number = preg_replace("/[^0-9]/", "", $recv_numbers[$s]);
$send_number = preg_replace("/[^0-9]/", "", $send_numbers[$s]);
// 2018-06-26 추가
if ($member['mb_level'] == 4) {
if ($mb_7) {
$od_name = $mb_7; // 기업일때 od_name은 회사명(국문)
} else {
$od_name = $mb_5; // 국문명이 없다면 영문명
}
}
$sms_content = str_replace("{이름}", $od_name, $sms_content);
$sms_content = str_replace("{보낸분}", $od_name, $sms_content);
$sms_content = str_replace("{받는분}", $od_b_name, $sms_content);
$sms_content = str_replace("{주문번호}", $od_id, $sms_content);
$sms_content = str_replace("{주문금액}", number_format($tot_ct_price + $od_send_cost + $od_send_cost2), $sms_content);
$sms_content = str_replace("{회원아이디}", $member['mb_id'], $sms_content);
$sms_content = str_replace("{회사명}", $default['de_admin_company_name'], $sms_content);
$idx = 'de_sms_use'.($s + 2);
if($default[$idx] && $recv_number) {
$sms_messages[] = array('recv' => $recv_number, 'send' => $send_number, 'cont' => $sms_content);
$sms_count++;
}
}
// 무통장 입금 때 고객에게 계좌정보 보냄
// 2018-07-02 원본 주석처리 if($od_settle_case == '무통장' && $default['de_sms_use2'] && $od_misu > 0) {
if($od_settle_case == '무통장' && $od_misu > 0) {
// 2018-06-04 원본 주석
//$sms_content = $od_name."님의 입금계좌입니다.\n금액:".number_format($od_misu)."원\n계좌:".$od_bank_account."\n".$default['de_admin_company_name'];
// 2018-06-05 원본 수정
if ($member['mb_level'] == 4) { // 2018-06-26 기업회원이면
if ($mb_7) {
$od_name = $mb_7; // 기업일때 od_name은 회사명(국문)
} else {
$od_name = $mb_5; // 국문명이 없다면 영문명
}
}
$sms_content = $od_name."님, 입금계좌안내\n".$od_bank_account."(팜스트림-".number_format($od_misu)."원)";
// 2018-06-05 원본 수정 끝
$recv_number = preg_replace("/[^0-9]/", "", $od_hp);
$send_number = preg_replace("/[^0-9]/", "", $default['de_admin_company_tel']);
$sms_messages[] = array('recv' => $recv_number, 'send' => $send_number, 'cont' => $sms_content);
$sms_count++;
}
// SMS 전송
if($sms_count > 0) {
if($config['cf_sms_type'] == 'LMS') {
include_once(G5_LIB_PATH.'/icode.lms.lib.php');
$port_setting = get_icode_port_type($config['cf_icode_id'], $config['cf_icode_pw']);
// SMS 모듈 클래스 생성
if($port_setting !== false) {
$SMS = new LMS;
$SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $port_setting);
for($s=0; $s<count($sms_messages); $s++) {
$strDest = array();
$strDest[] = $sms_messages[$s]['recv'];
$strCallBack = $sms_messages[$s]['send'];
$strCaller = iconv_euckr(trim($default['de_admin_company_name']));
$strSubject = '';
$strURL = '';
$strData = iconv_euckr($sms_messages[$s]['cont']);
$strDate = '';
$nCount = count($strDest);
$res = $SMS->Add($strDest, $strCallBack, $strCaller, $strSubject, $strURL, $strData, $strDate, $nCount);
$SMS->Send();
$SMS->Init(); // 보관하고 있던 결과값을 지웁니다.
}
}
} else {
include_once(G5_LIB_PATH.'/icode.sms.lib.php');
$SMS = new SMS; // SMS 연결
$SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $config['cf_icode_server_port']);
for($s=0; $s<count($sms_messages); $s++) {
$recv_number = $sms_messages[$s]['recv'];
$send_number = $sms_messages[$s]['send'];
$sms_content = iconv_euckr($sms_messages[$s]['cont']);
$SMS->Add($recv_number, $send_number, $config['cf_icode_id'], $sms_content, "");
}
// 2018-07-02 주문ㅌㅔ스트 끝나면 풀기
$SMS->Send();
$SMS->Init(); // 보관하고 있던 결과값을 지웁니다.
}
}
}
}
답변 1
가상계좌는 따로 안만들어져 있네요~ 아래 정보 이용해서 보내시면 되겠어요^^
$bankname //은행명
$account //통장번호
$depositor //예금주
$amount //금액
해당소스는 \shop\orderformupdate.php
else if ($od_settle_case == "가상계좌")
{
switch($default['de_pg_service']) {
case 'lg':
include G5_SHOP_PATH.'/lg/xpay_result.php';
break;
case 'inicis':
include G5_SHOP_PATH.'/inicis/inistdpay_result.php';
$od_app_no = $app_no;
break;
default:
include G5_SHOP_PATH.'/kcp/pp_ax_hub.php';
$bankname = iconv("cp949", "utf-8", $bankname);
$depositor = iconv("cp949", "utf-8", $depositor);
break;
}
$od_receipt_point = $i_temp_point;
$od_tno = $tno;
$od_receipt_price = 0;
$od_bank_account = $bankname.' '.$account;
$od_deposit_name = $depositor;
$pg_price = $amount;
$od_misu = $i_price - $od_receipt_price;
}
답변을 작성하시기 전에 로그인 해주세요.