diff --git a/adm/shop_admin/admin.shop.lib.php b/adm/shop_admin/admin.shop.lib.php
new file mode 100644
index 000000000..fa9563f9f
--- /dev/null
+++ b/adm/shop_admin/admin.shop.lib.php
@@ -0,0 +1,122 @@
+
\ No newline at end of file
diff --git a/adm/shop_admin/orderdelivery.php b/adm/shop_admin/orderdelivery.php
new file mode 100644
index 000000000..09783fbe7
--- /dev/null
+++ b/adm/shop_admin/orderdelivery.php
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+ 엑셀파일을 이용하여 배송정보를 일괄등록할 수 있습니다.
+ 형식은 배송처리용 엑셀파일 을 다운로드하여 배송 정보를 입력하시면 됩니다.
+ 수정 완료 후 엑셀파일을 업로드하시면 배송정보가 일괄등록됩니다.
+ 엑셀파일을 저장하실 때는 Excel 97 - 2003 통합문서 (*.xls) 로 저장하셔야 합니다.
+ 주문상태가 준비이고 미수금이 0인 주문에 한해 엑셀파일이 생성됩니다.
+
+
+
+ 배송정보 일괄등록용 엑셀파일 다운로드
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/adm/shop_admin/orderdeliveryexcel.php b/adm/shop_admin/orderdeliveryexcel.php
new file mode 100644
index 000000000..a4993ce4f
--- /dev/null
+++ b/adm/shop_admin/orderdeliveryexcel.php
@@ -0,0 +1,60 @@
+addworksheet();
+
+// Put Excel data
+$data = array('주문번호', '주문자명', '주문자전화1', '주문자전화2', '배송자명', '배송지전화1', '배송지전화2', '배송지주소', '배송회사', '운송장번호');
+$data = array_map('iconv_euckr', $data);
+
+$col = 0;
+foreach($data as $cell) {
+ $worksheet->write(0, $col++, $cell);
+}
+
+for($i=1; $row=sql_fetch_array($result); $i++) {
+ $row = array_map('iconv_euckr', $row);
+
+ $worksheet->write($i, 0, ' '.$row['od_id']);
+ $worksheet->write($i, 1, $row['od_name']);
+ $worksheet->write($i, 2, $row['od_tel']);
+ $worksheet->write($i, 3, $row['od_hp']);
+ $worksheet->write($i, 4, $row['od_b_name']);
+ $worksheet->write($i, 5, $row['od_b_tel']);
+ $worksheet->write($i, 6, $row['od_b_hp']);
+ $worksheet->write($i, 7, $row['od_b_addr1'].' '.$row['od_b_addr2']);
+ $worksheet->write($i, 8, $row['od_delivery_company']);
+ $worksheet->write($i, 9, $row['od_invoice']);
+}
+
+$workbook->close();
+
+header("Content-Type: application/x-msexcel; name=\"deliverylist-".date("ymd", time()).".xls\"");
+header("Content-Disposition: inline; filename=\"deliverylist-".date("ymd", time()).".xls\"");
+$fh=fopen($fname, "rb");
+fpassthru($fh);
+unlink($fname);
+?>
\ No newline at end of file
diff --git a/adm/shop_admin/orderdeliveryupdate.php b/adm/shop_admin/orderdeliveryupdate.php
new file mode 100644
index 000000000..dfd480296
--- /dev/null
+++ b/adm/shop_admin/orderdeliveryupdate.php
@@ -0,0 +1,187 @@
+SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $config['cf_icode_server_port']);
+}
+
+$escrow_count = 0;
+if($_POST['send_escrow']) {
+ $escrow_tno = array();
+ $escrow_corp = array();
+ $escrow_numb = array();
+ $escrow_idx = 0;
+}
+
+if($_FILES['excelfile']['tmp_name']) {
+ $file = $_FILES['excelfile']['tmp_name'];
+
+ include_once(G5_LIB_PATH.'/Excel/reader.php');
+
+ $data = new Spreadsheet_Excel_Reader();
+
+ // Set output Encoding.
+ $data->setOutputEncoding('UTF-8');
+
+ /***
+ * if you want you can change 'iconv' to mb_convert_encoding:
+ * $data->setUTFEncoder('mb');
+ *
+ **/
+
+ /***
+ * By default rows & cols indeces start with 1
+ * For change initial index use:
+ * $data->setRowColOffset(0);
+ *
+ **/
+
+
+
+ /***
+ * Some function for formatting output.
+ * $data->setDefaultFormat('%.2f');
+ * setDefaultFormat - set format for columns with unknown formatting
+ *
+ * $data->setColumnFormat(4, '%.3f');
+ * setColumnFormat - set format for column (apply only to number fields)
+ *
+ **/
+
+ $data->read($file);
+
+ /*
+
+
+ $data->sheets[0]['numRows'] - count rows
+ $data->sheets[0]['numCols'] - count columns
+ $data->sheets[0]['cells'][$i][$j] - data from $i-row $j-column
+
+ $data->sheets[0]['cellsInfo'][$i][$j] - extended info about cell
+
+ $data->sheets[0]['cellsInfo'][$i][$j]['type'] = "date" | "number" | "unknown"
+ if 'type' == "unknown" - use 'raw' value, because cell contain value with format '0.00';
+ $data->sheets[0]['cellsInfo'][$i][$j]['raw'] = value if cell without format
+ $data->sheets[0]['cellsInfo'][$i][$j]['colspan']
+ $data->sheets[0]['cellsInfo'][$i][$j]['rowspan']
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ $fail_od_id = array();
+ $total_count = 0;
+ $fail_count = 0;
+ $succ_count = 0;
+
+ // $i 사용시 ordermail.inc.php의 $i 때문에 무한루프에 빠짐
+ for ($k = 2; $k <= $data->sheets[0]['numRows']; $k++) {
+ $total_count++;
+
+ $od_id = addslashes(trim($data->sheets[0]['cells'][$k][1]));
+ $od_delivery_company = addslashes($data->sheets[0]['cells'][$k][9]);
+ $od_invoice = addslashes($data->sheets[0]['cells'][$k][10]);
+
+ if(!$od_id || !$od_delivery_company || !$od_invoice) {
+ $fail_count++;
+ $fail_od_id[] = $od_id;
+ continue;
+ }
+
+ // 주문정보
+ $od = sql_fetch(" select * from {$g5['g5_shop_order_table']} where od_id = '$od_id' ");
+ if (!$od) {
+ $fail_od_id[] = $od_id;
+ continue;
+ }
+
+ $delivery['invoice'] = $od_invoice;
+ $delivery['invoice_time'] = G5_TIME_YMDHIS;
+ $delivery['delivery_company'] = $od_delivery_company;
+
+ // 주문정보 업데이트
+ order_update_delivery($od_id, $od['mb_id'], '배송', $delivery);
+ change_status($od_id, '준비', '배송');
+
+ // SMS
+ if($config['cf_sms_use'] == 'icode' && $_POST['send_sms'] && $default['de_sms_use5']) {
+ $sms_contents = conv_sms_contents($od_id, $default['de_sms_cont5']);
+ if($sms_contents) {
+ $receive_number = preg_replace("/[^0-9]/", "", $od['od_hp']); // 수신자번호
+ $send_number = preg_replace("/[^0-9]/", "", $default['de_admin_company_tel']); // 발신자번호
+
+ if($receive_number && $send_number) {
+ $SMS->Add($receive_number, $send_number, $config['cf_icode_id'], $sms_contents, "");
+ $sms_count++;
+ }
+ }
+ }
+
+ // 메일
+ if($config['cf_email_use'] && $_POST['od_send_mail'])
+ include './ordermail.inc.php';
+
+ // 에스크로 배송
+ if($_POST['send_escrow'] && $od['od_tno'] && $od['od_escrow']) {
+ $escrow_tno[$escrow_idx] = $od['od_tno'];
+ $escrow_numb[$escrow_idx] = $od_invoice;
+ $escrow_corp[$escrow_idx] = $od_delivery_company;
+ $escrow_idx++;
+ $escrow_count++;
+ }
+ }
+}
+
+// SMS
+if($config['cf_sms_use'] == 'icode' && $_POST['send_sms'] && $sms_count)
+{
+ $SMS->Send();
+}
+
+// 에스크로 배송
+if($_POST['send_escrow'] && $escrow_count)
+{
+ include_once('./orderescrow.inc.php');
+}
+
+$g5['title'] = '엑셀 배송일괄처리 결과';
+include_once(G5_PATH.'/head.sub.php');
+?>
+
+
+
+
+
배송일괄처리를 완료했습니다.
+
+
+ 총배송건수
+
+ 완료건수
+
+ 실패건수
+
+ 0) { ?>
+ 실패주문코드
+
+
+
+
+
+ 창닫기
+
+
+
+
+
\ No newline at end of file
diff --git a/adm/shop_admin/orderlist.php b/adm/shop_admin/orderlist.php
index 7fb7cfacf..a46a2d892 100644
--- a/adm/shop_admin/orderlist.php
+++ b/adm/shop_admin/orderlist.php
@@ -118,6 +118,8 @@ $listall = '전체목록