diff --git a/extend/shop.extend2.php b/extend/shop.extend2.php index a20a40d9b..c5071d3b9 100644 --- a/extend/shop.extend2.php +++ b/extend/shop.extend2.php @@ -446,4 +446,24 @@ if(!sql_query(" select od_app_no from {$g4['shop_order_table']} limit 1 ", false sql_query(" ALTER TABLE `{$g4['shop_order_table']}` ADD `od_app_no` varchar(20) NOT NULL DEFAULT '' AFTER `od_tno` ", true); } + +// 배송지이력 테이블추가 +if(!sql_query(" DESCRIBE `{$g4['shop_order_address_table']}` ", false)) { + sql_query(" CREATE TABLE IF NOT EXISTS `{$g4['shop_order_address_table']}` ( + `ad_id` int(11) NOT NULL AUTO_INCREMENT, + `mb_id` varchar(255) NOT NULL DEFAULT '', + `ad_subject` varchar(255) NOT NULL DEFAULT '', + `ad_default` tinyint(4) NOT NULL DEFAULT '0', + `ad_name` varchar(255) NOT NULL DEFAULT '', + `ad_tel` varchar(255) NOT NULL DEFAULT '', + `ad_hp` varchar(255) NOT NULL DEFAULT '', + `ad_zip1` char(3) NOT NULL DEFAULT '', + `ad_zip2` char(3) NOT NULL DEFAULT '', + `ad_addr1` varchar(255) NOT NULL DEFAULT '', + `ad_addr2` varchar(255) NOT NULL DEFAULT '', + `ad_hash` varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (`ad_id`), + KEY `mb_id` (`mb_id`) + )", true); +} ?> diff --git a/install/install_db.php b/install/install_db.php index ddcc6c30c..fa4bc09a5 100644 --- a/install/install_db.php +++ b/install/install_db.php @@ -493,6 +493,7 @@ if($shop_install) { fwrite($f, "\$g4['shop_sendcost_table'] = SHOP_TABLE_PREFIX.'sendcost'; // 추가배송비 테이블\n"); fwrite($f, "\$g4['shop_request_table'] = SHOP_TABLE_PREFIX.'request'; // 주문 취소, 교환, 반품 요청테이블\n"); fwrite($f, "\$g4['shop_personalpay_table'] = SHOP_TABLE_PREFIX.'personalpay'; // 개인결제 정보 테이블\n"); + fwrite($f, "\$g4['shop_order_address_table'] = SHOP_TABLE_PREFIX.'order_address'; // 배송지이력 정보 테이블\n"); fwrite($f, "?>"); } diff --git a/install/shop.sql b/install/shop.sql index 370b7dda4..905af3f39 100644 --- a/install/shop.sql +++ b/install/shop.sql @@ -458,7 +458,7 @@ DROP TABLE IF EXISTS `shop_item_use`; CREATE TABLE IF NOT EXISTS `shop_item_use` ( `is_id` int(11) NOT NULL AUTO_INCREMENT, `it_id` varchar(20) NOT NULL DEFAULT '0', - `mb_id` varchar(20) NOT NULL DEFAULT '', + `mb_id` varchar(255) NOT NULL DEFAULT '', `is_name` varchar(255) NOT NULL DEFAULT '', `is_password` varchar(255) NOT NULL DEFAULT '', `is_score` tinyint(4) NOT NULL DEFAULT '0', @@ -481,7 +481,7 @@ DROP TABLE IF EXISTS `shop_item_qa`; CREATE TABLE IF NOT EXISTS `shop_item_qa` ( `iq_id` int(11) NOT NULL AUTO_INCREMENT, `it_id` varchar(20) NOT NULL DEFAULT '', - `mb_id` varchar(20) NOT NULL DEFAULT '', + `mb_id` varchar(255) NOT NULL DEFAULT '', `iq_name` varchar(255) NOT NULL DEFAULT '', `iq_password` varchar(255) NOT NULL DEFAULT '', `iq_subject` varchar(255) NOT NULL DEFAULT '', @@ -553,7 +553,7 @@ CREATE TABLE IF NOT EXISTS `shop_onlinecalc` ( DROP TABLE IF EXISTS `shop_order`; CREATE TABLE IF NOT EXISTS `shop_order` ( `od_id` bigint(20) unsigned NOT NULL, - `mb_id` varchar(20) NOT NULL DEFAULT '', + `mb_id` varchar(255) NOT NULL DEFAULT '', `od_pwd` varchar(255) NOT NULL DEFAULT '', `od_name` varchar(20) NOT NULL DEFAULT '', `od_email` varchar(100) NOT NULL DEFAULT '', @@ -615,6 +615,29 @@ CREATE TABLE IF NOT EXISTS `shop_order` ( -- -------------------------------------------------------- +-- +-- Table structure for table `shop_order_address` +-- + +CREATE TABLE IF NOT EXISTS `shop_order_address` ( + `ad_id` int(11) NOT NULL AUTO_INCREMENT, + `mb_id` varchar(255) NOT NULL DEFAULT '', + `ad_subject` varchar(255) NOT NULL DEFAULT '', + `ad_default` tinyint(4) NOT NULL DEFAULT '0', + `ad_name` varchar(255) NOT NULL DEFAULT '', + `ad_tel` varchar(255) NOT NULL DEFAULT '', + `ad_hp` varchar(255) NOT NULL DEFAULT '', + `ad_zip1` char(3) NOT NULL DEFAULT '', + `ad_zip2` char(3) NOT NULL DEFAULT '', + `ad_addr1` varchar(255) NOT NULL DEFAULT '', + `ad_addr2` varchar(255) NOT NULL DEFAULT '', + `ad_hash` varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (`ad_id`), + KEY `mb_id` (`mb_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +-- -------------------------------------------------------- + -- -- Table structure for table `shop_personalpay` -- @@ -655,7 +678,7 @@ CREATE TABLE IF NOT EXISTS `shop_request` ( `rq_parent` INT(11) NOT NULL DEFAULT '0', `od_id` BIGINT(20) unsigned NOT NULL, `ct_id` VARCHAR(255) NOT NULL DEFAULT '', - `mb_id` VARCHAR(20) NOT NULL DEFAULT '', + `mb_id` VARCHAR(255) NOT NULL DEFAULT '', `rq_content` TEXT NOT NULL, `rq_status` TINYINT(4) NOT NULL DEFAULT '0', `rq_item` TEXT NOT NULL, @@ -697,7 +720,7 @@ CREATE TABLE IF NOT EXISTS `shop_sendcost` ( DROP TABLE IF EXISTS `shop_wish`; CREATE TABLE IF NOT EXISTS `shop_wish` ( `wi_id` int(11) NOT NULL AUTO_INCREMENT, - `mb_id` varchar(20) NOT NULL DEFAULT '', + `mb_id` varchar(255) NOT NULL DEFAULT '', `it_id` varchar(20) NOT NULL DEFAULT '0', `wi_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `wi_ip` varchar(25) NOT NULL DEFAULT '', diff --git a/shop/orderform.php b/shop/orderform.php index 6942bdc0d..b6d7da063 100644 --- a/shop/orderform.php +++ b/shop/orderform.php @@ -671,6 +671,50 @@ function get_intall_file()
| 배송지선택 | ++ |
|---|---|
| + | + |
| @@ -693,6 +737,12 @@ function get_intall_file() + + + + + + @@ -1186,6 +1236,39 @@ $(function() { $("#od_settle_iche,#od_settle_card,#od_settle_vbank,#od_settle_hp").bind("click", function() { $("#settle_bank").hide(); }); + + // 배송지선택 + $("input[name=ad_sel_addr]").on("click", function() { + var addr = $(this).val().split(String.fromCharCode(30)); + + if(addr[0] == "new") { + for(i=0; i<8; i++) { + addr[i] = ""; + } + } + + var f = document.forderform; + f.od_b_name.value = addr[0]; + f.od_b_tel.value = addr[1]; + f.od_b_hp.value = addr[2]; + f.od_b_zip1.value = addr[3]; + f.od_b_zip2.value = addr[4]; + f.od_b_addr1.value = addr[5]; + f.od_b_addr2.value = addr[6]; + f.ad_subject.value = addr[7]; + + var zip1 = addr[3].replace(/[^0-9]/g, ""); + var zip2 = addr[4].replace(/[^0-9]/g, ""); + + if(zip1 != "" && zip2 != "") { + var code = String(zip1) + String(zip2); + + if(zipcode != code) { + zipcode = code; + calculate_sendcost(code); + } + } + }); }); function coupon_cancel($el) diff --git a/shop/orderformupdate.php b/shop/orderformupdate.php index 049b36e8e..768715780 100644 --- a/shop/orderformupdate.php +++ b/shop/orderformupdate.php @@ -590,6 +590,49 @@ set_session('ss_order_id', ''); if (get_session('ss_direct')) set_session('ss_cart_direct', ''); +// 배송지처리 +if($is_member && ($add_address || $ad_default)) { + $ad_hash = md5($od_b_zip1.$od_b_zip2.$od_b_addr1.$od_b_addr2); + $sql = " select ad_id + from {$g4['shop_order_address_table']} + where mb_id = '{$member['mb_id']}' + and ad_hash = '$ad_hash' "; + $row = sql_fetch($sql); + + if($ad_default) { + $sql = " update {$g4['shop_order_address_table']} + set ad_default = '0' + where mb_id = '{$member['mb_id']}' "; + sql_query($sql); + } + + if($row['ad_id'] && $ad_default) { + $sql = " update {$g4['shop_order_address_table']} + set ad_default = '$ad_default' "; + if($ad_subject) + $sql .= " , ad_subject = '$ad_subject' "; + $sql .= " where ad_id = '{$row['ad_id']}' + and mb_id = '{$member['mb_id']}' "; + sql_query($sql); + } + + if(!$row['ad_id'] && $add_address) { + $sql = " insert into {$g4['shop_order_address_table']} + set mb_id = '{$member['mb_id']}', + ad_subject = '$ad_subject', + ad_default = '$ad_default', + ad_name = '$od_b_name', + ad_tel = '$od_b_tel', + ad_hp = '$od_b_hp', + ad_zip1 = '$od_b_zip1', + ad_zip2 = '$od_b_zip2', + ad_addr1 = '$od_b_addr1', + ad_addr2 = '$od_b_addr2', + ad_hash = '$ad_hash' "; + sql_query($sql); + } +} + goto_url(G4_SHOP_URL.'/orderinquiryview.php?od_id='.$od_id.'&uid='.$uid); ?> |