20'C 흐림
서울 강남구
영카트에서 쿠폰 발행시 '카테고리 할인', 분류를 '10' 으로 적용시..
하위분류인 '1020' 의 상품에는 적용이 되지 않습니다.
그래서 쿠폰관리에서 적용한 분류가, 하위분류의 상품에도 적용할 수 있도록 하는 방법입니다.
1) /extend/user.config.php 에 다음의 함수 추가
function get_cp_target($ca_id, $ca_id2, $ca_id3) {
$arr = array();
$len = strlen($ca_id);
for ($i = 2; $i <= $len; $i += 2) {
$arr[] = "'" . substr($ca_id, 0, $i) . "'";
}
$len = strlen($ca_id2);
for ($i = 2; $i <= $len; $i += 2) {
$arr[] = "'" . substr($ca_id2, 0, $i) . "'";
}
$len = strlen($ca_id3);
for ($i = 2; $i <= $len; $i += 2) {
$arr[] = "'" . substr($ca_id3, 0, $i) . "'";
}
$arr = array_unique($arr);
$str = implode(',', $arr);
return $str;
}
2) /shop/orderform.sub.php 수정
$sql = " select cp_id
from {$g5['g5_shop_coupon_table']}
where mb_id IN ( '{$member['mb_id']}', '전체회원' )
and cp_start <= '".G5_TIME_YMD."'
and cp_end >= '".G5_TIME_YMD."'
and cp_minimum <= '$sell_price'
and (
( cp_method = '0' and cp_target = '{$row['it_id']}' )
OR
( cp_method = '1' and ( cp_target IN ( '{$row['ca_id']}', '{$row['ca_id2']}', '{$row['ca_id3']}' ) ) )
) ";
=>
$target_ca_id = get_cp_target($row['ca_id'], $row['ca_id2'], $row['ca_id3']);
$sql = " select cp_id
from {$g5['g5_shop_coupon_table']}
where mb_id IN ( '{$member['mb_id']}', '전체회원' )
and cp_start <= '".G5_TIME_YMD."'
and cp_end >= '".G5_TIME_YMD."'
and cp_minimum <= '$sell_price'
and (
( cp_method = '0' and cp_target = '{$row['it_id']}' )
OR
( cp_method = '1' and ( cp_target IN ( {$target_ca_id} ) ) )
) ";