123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417 |
- <?php
- function name($name)
- {
- $userKey = array(
- 'Alipearl' => array('username'=>'huchunmei','api_key'=>'huchunmei126_alipearl_erp888','url'=>'https://www.alipearlhair.com'),
- 'Asteria' => array('username'=>'huchunmei','api_key'=>'huchunmei126_asteria_erp888','url'=>'https://www.asteriahair.com'),
- 'WestKiss' => array('username'=>'huchunmei','api_key'=>'huchunmei126_westkiss_erp868','url'=>'https://www.westkiss.com'),
- 'SuperNova' => array('username'=>'huchunmei','api_key'=>'huchunmei126_supernova_erp6898','url'=>'https://www.supernovahair.com'),
- 'Wiggins' => array('username'=>'huchunmei','api_key'=>'huchunmei126_wiggins_erp652','url'=>'https://www.wigginshair.com'),
- 'Yolissa' => array('username'=>'huchunmei','api_key'=>'huchunmei126_yolissa_688','url'=>'https://www.yolissahair.com'),
- );
- if(array_key_exists($name,$userKey))
- {
- $proxy = new SoapClient($userKey[$name]['url'].'/api/soap/?wsdl');
- try {$sessionId = $proxy->login($userKey[$name]['username'], $userKey[$name]['api_key']);} catch (Exception $e) {
- echo $e->getMessage();
- }
- return array('proxy'=>$proxy,'sessionId'=>$sessionId,'url'=>$userKey[$name]['url']);
- }
- else
- {
- return 2;exit;
- }
- }
- function synchronization($name,$from,$to)
- {
- $data = name($name);
- $fromTime = date('Y-m-d H:i:s',$from);
- $toTime = date('Y-m-d H:i:s',$to);
- $filters = array(array('created_at'=>array('from'=>$fromTime,'to'=>$toTime)));
- $result = $data['proxy']->call($data['sessionId'],'sales_order.list',$filters);
- $thatDayOrder = array();
- foreach($result as $item)
- {
- $iteminfo = $data['proxy']->call($data['sessionId'], 'sales_order.info', $item['increment_id']);
- $productNames = '';
- $parameters = array();
- $skus = '';
- $quantity = '';
- $thislink = '';
- foreach($iteminfo['items'] as $index=>$products)
- {
- $quantity .= floor($products['qty_ordered']).';';
- $productNames .= ($index > 0)?','.$products['name']:$products['name'];
- $skus .= ($index > 0)?','.$products['sku']:$products['sku'];
- $options = unserialize($products['product_options']);
- $para = '';
- if(isset($options['options']))
- {
- foreach($options['options'] as $i=>$op)
- {
- $parameter = $op['label'].':'.$op['value'];
- $para .= ($i>0)?','.$parameter:$parameter;
- }
- }
- else
- {
- $para = '';
- }
- $parameters[] = $para;
- try
- {
- $plink = $data['proxy']->call($data['sessionId'], 'catalog_product.info',$products['product_id']);
- $thislink .= ($index > 0)?','.$data['url'].'/'.$plink['url_path']:$data['url'].'/'.$plink['url_path'];
- }catch (Exception $e)
- {
- continue;
- }
- }
- if($item['status'] == 'pending')
- {
- continue;
- }
- $iteminfo['shipping_address']['street'] = preg_replace('/( | | |\s)+/',' ',$iteminfo['shipping_address']['street']);
- $iteminfo['billing_address']['street'] = preg_replace('/( | | |\s)+/',' ',$iteminfo['billing_address']['street']);
- $shipping_address = $iteminfo['shipping_address']['street'] . ',' . $iteminfo['shipping_address']['city'] . ',' . $iteminfo['shipping_address']['region'] . ',' . $iteminfo['shipping_address']['postcode'] . ',' . $iteminfo['shipping_address']['country_id'] . ',' . $iteminfo['shipping_address']['telephone'];
- $billing_address = $iteminfo['billing_address']['street'] . ',' . $iteminfo['billing_address']['city'] . ',' . $iteminfo['billing_address']['region'] . ',' . $iteminfo['billing_address']['postcode'] . ',' . $iteminfo['billing_address']['country_id'] . ',' . $iteminfo['billing_address']['telephone'];
- $shippingmethod = $item['shipping_description'];
- $thatDayOrder[] = array(
- 'order_id' => $item['increment_id'],
- 'insurance' => $item['base_amcheckoutfees_amount'],
- 'product_name' => $productNames,
- 'purchased_on' => $item['created_at'],
- 'name' => $iteminfo['customer_firstname'].' '.$iteminfo['customer_lastname'],
- 'bill_to_name' => $item['billing_firstname'].' '.$item['billing_lastname'],
- 'ship_to_name' => $item['shipping_firstname'].' '.$item['shipping_lastname'],
- 'shipping_address' => $shipping_address,
- 'billing_address' => $billing_address,
- 'country' => $iteminfo['shipping_address']['country_id'],
- 'region' => $iteminfo['shipping_address']['region'],
- 'city' => $iteminfo['shipping_address']['city'],
- 'street' => $iteminfo['shipping_address']['street'],
- 'telephone' => $item['telephone'],
- 'postcode' => $item['postcode'],
- 'email' => $item['customer_email'],
- 'global_currency_code' => $item['global_currency_code'],
- 'base_grand_total' => $item['base_grand_total'],
- 'grand_total' => $item['order_currency_code'].$item['grand_total'],
- 'isstatus' => $item['status'],
- 'isparameter' => implode(';',$parameters),
- 'sku' => str_replace(array('<','>'),array('<','>'),$skus),
- 'order_quantity' => $quantity,
- 'order_comment' => addslashes($item['firecheckout_customer_comment']),
- 'paypal_num' => ($iteminfo['payment']['oceanpay_order_id'] != '')?$iteminfo['payment']['oceanpay_order_id']:$iteminfo['payment']['last_trans_id'],
- 'pay' => $iteminfo['payment']['method'],
- 'paypal_protection_eligibility' => $iteminfo['payment']['additional_information']['paypal_protection_eligibility'],
- 'shippingmethod'=>($item['base_shipping_amount'] > 0 || $iteminfo['tax_amount'] > 0)?$shippingmethod.' '.$item['base_shipping_amount'].' Tax:'.$iteminfo['tax_amount'].';':$shippingmethod.' '.$item['base_shipping_amount'].' Tax:'.$iteminfo['tax_amount'],
- 'link'=>$thislink,
- 'wjauthorid' => isset($iteminfo['author_id'])?$iteminfo['author_id']:'',
- 'sourcecontentid' => isset($iteminfo['source_content_id'])?$iteminfo['source_content_id']:'',
- 'authorid' => ''
- );
- //sleep(1);
- }
- return $thatDayOrder;exit;
- }
- function g($name,$from,$to)
- {
- $data = name($name);
- $fromTime = date('Y-m-d H:i:s',$from);
- $toTime = date('Y-m-d H:i:s',$to);
- $filters = array(array('created_at'=>array('from'=>$fromTime,'to'=>$toTime)));
- $result = $data['proxy']->call($data['sessionId'],'sales_order.list',$filters);
- $thatDayOrder = array();
- foreach($result as $item)
- {
- $iteminfo = $data['proxy']->call($data['sessionId'], 'sales_order.info', $item['increment_id']);
- $productNames = '';
- $parameters = array();
- $skus = '';
- $quantity = '';
- $thislink = '';
- foreach($iteminfo['items'] as $index=>$products)
- {
- $quantity .= floor($products['qty_ordered']).';';
- $productNames .= ($index > 0)?','.$products['name']:$products['name'];
- $skus .= ($index > 0)?','.$products['sku']:$products['sku'];
- $options = unserialize($products['product_options']);
- $para = '';
- if(isset($options['options']))
- {
- foreach($options['options'] as $i=>$op)
- {
- $parameter = $op['label'].':'.$op['value'];
- $para .= ($i>0)?','.$parameter:$parameter;
- }
- }
- else
- {
- $para = '';
- }
- $parameters[] = $para;
- try
- {
- $plink = $data['proxy']->call($data['sessionId'], 'catalog_product.info',$products['product_id']);
- $thislink .= ($index > 0)?','.$data['url'].'/'.$plink['url_path']:$data['url'].'/'.$plink['url_path'];
- }catch (Exception $e)
- {
- continue;
- }
- }
-
- $iteminfo['shipping_address']['street'] = preg_replace('/( | | |\s)+/',' ',$iteminfo['shipping_address']['street']);
- $iteminfo['billing_address']['street'] = preg_replace('/( | | |\s)+/',' ',$iteminfo['billing_address']['street']);
- $shipping_address = $iteminfo['shipping_address']['street'] . ',' . $iteminfo['shipping_address']['city'] . ',' . $iteminfo['shipping_address']['region'] . ',' . $iteminfo['shipping_address']['postcode'] . ',' . $iteminfo['shipping_address']['country_id'] . ',' . $iteminfo['shipping_address']['telephone'];
- $billing_address = $iteminfo['billing_address']['street'] . ',' . $iteminfo['billing_address']['city'] . ',' . $iteminfo['billing_address']['region'] . ',' . $iteminfo['billing_address']['postcode'] . ',' . $iteminfo['billing_address']['country_id'] . ',' . $iteminfo['billing_address']['telephone'];
- $shippingmethod = $item['shipping_description'];
- $thatDayOrder[] = array(
- 'order_id' => $item['increment_id'],
- 'insurance' => $item['base_amcheckoutfees_amount'],
- 'product_name' => $productNames,
- 'purchased_on' => $item['created_at'],
- 'name' => $iteminfo['customer_firstname'].' '.$iteminfo['customer_lastname'],
- 'bill_to_name' => $item['billing_firstname'].' '.$item['billing_lastname'],
- 'ship_to_name' => $item['shipping_firstname'].' '.$item['shipping_lastname'],
- 'shipping_address' => $shipping_address,
- 'billing_address' => $billing_address,
- 'country' => $iteminfo['shipping_address']['country_id'],
- 'region' => $iteminfo['shipping_address']['region'],
- 'city' => $iteminfo['shipping_address']['city'],
- 'street' => $iteminfo['shipping_address']['street'],
- 'telephone' => $item['telephone'],
- 'postcode' => $item['postcode'],
- 'email' => $item['customer_email'],
- 'global_currency_code' => $item['global_currency_code'],
- 'base_grand_total' => $item['base_grand_total'],
- 'grand_total' => $item['order_currency_code'].$item['grand_total'],
- 'isstatus' => $item['status'],
- 'isparameter' => implode(';',$parameters),
- 'sku' => str_replace(array('<','>'),array('<','>'),$skus),
- 'order_quantity' => $quantity,
- 'order_comment' => addslashes($item['firecheckout_customer_comment']),
- 'paypal_num' => ($iteminfo['payment']['oceanpay_order_id'] != '')?$iteminfo['payment']['oceanpay_order_id']:$iteminfo['payment']['last_trans_id'],
- 'pay' => $iteminfo['payment']['method'],
- 'paypal_protection_eligibility' => $iteminfo['payment']['additional_information']['paypal_protection_eligibility'],
- 'shippingmethod'=>($item['base_shipping_amount'] > 0 || $iteminfo['tax_amount'] > 0)?$shippingmethod.' '.$item['base_shipping_amount'].' Tax:'.$iteminfo['tax_amount'].';':$shippingmethod.' '.$item['base_shipping_amount'].' Tax:'.$iteminfo['tax_amount'],
- 'link'=>$thislink,
- 'wjauthorid' => isset($iteminfo['author_id'])?$iteminfo['author_id']:'',
- 'sourcecontentid' => isset($iteminfo['source_content_id'])?$iteminfo['source_content_id']:'',
- 'authorid' => ''
- );
- //sleep(1);
- }
- return $thatDayOrder;exit;
- }
- function cs($name,$from,$to)//查看该订单所有信息
- {
- $data = name($name);
- $fromTime = date('Y-m-d H:i:s',$from);
- $toTime = date('Y-m-d H:i:s',$to);
- $filters = array(array('created_at'=>array('from'=>$fromTime,'to'=>$toTime)));
- $result = $data['proxy']->call($data['sessionId'],'sales_order.list',$filters);
- $thatDayOrder = array();
- foreach($result as $item)
- {
- $iteminfo = $data['proxy']->call($data['sessionId'], 'sales_order.info', $item['increment_id']);
- $productNames = '';
- $parameters = array();
- $skus = '';
- $quantity = '';
- $thislink = '';
- $link = array();
- foreach($iteminfo['items'] as $index=>$products)
- {
- $quantity .= floor($products['qty_ordered']).';';
- $productNames .= ($index > 0)?','.$products['name']:$products['name'];
- $skus .= ($index > 0)?','.$products['sku']:$products['sku'];
- $options = unserialize($products['product_options']);
- $para = '';
- if(isset($options['options']))
- {
- foreach($options['options'] as $i=>$op)
- {
- $parameter = $op['label'].':'.$op['value'];
- $para .= ($i>0)?','.$parameter:$parameter;
- }
- }
- else
- {
- $para = '';
- }
- $parameters[] = $para;
- try
- {
- $plink = $data['proxy']->call($data['sessionId'], 'catalog_product.info',$products['product_id']);
- $link[] = $plink;
- $thislink .= ($index > 0)?','.$data['url'].'/'.$plink['url_path']:$data['url'].'/'.$plink['url_path'];
- }catch (Exception $e)
- {
- continue;
- }
- }
- if($item['status'] == 'pending')
- {
- continue;
- }
- $thatDayOrder[] = array($iteminfo,$link);
-
- }
- return $thatDayOrder;exit;
- }
- function cs2()//查看该订单所有信息
- {
- $name = 'Alipearl';
- $jqtime = 9*3600;
- $from = strtotime('yesterday')-$jqtime;//昨日0点+1小时保险无漏单
- $to = time();
- $data = name($name);
- $fromTime = date('Y-m-d H:i:s',$from);
- $toTime = date('Y-m-d H:i:s',$to);
- $filters = array(array('created_at'=>array('from'=>$fromTime,'to'=>$toTime)));
- $result = $data['proxy']->call($data['sessionId'],'sales_order.list',$filters);
- $thatDayOrder = array();
- foreach($result as $item)
- {
- $iteminfo = $data['proxy']->call($data['sessionId'], 'sales_order.info', $item['increment_id']);
- $productNames = '';
- $parameters = array();
- $skus = '';
- $quantity = '';
- $thislink = '';
- foreach($iteminfo['items'] as $index=>$products)
- {
- $quantity .= floor($products['qty_ordered']).';';
- $productNames .= ($index > 0)?','.$products['name']:$products['name'];
- $skus .= ($index > 0)?','.$products['sku']:$products['sku'];
- $options = unserialize($products['product_options']);
- $para = '';
- foreach($options['options'] as $i=>$op)
- {
- $parameter = $op['label'].':'.$op['value'];
- $para .= ($i>0)?','.$parameter:$parameter;
- }
- $parameters[] = $para;
- try
- {
- $plink = $data['proxy']->call($data['sessionId'], 'catalog_product.info',$products['product_id']);
- $thislink .= ($index > 0)?','.$data['url'].'/'.$plink['url_path']:$data['url'].'/'.$plink['url_path'];
- }catch (Exception $e)
- {
- continue;
- }
- }
- $thatDayOrder[] = $iteminfo;
-
- }
- return $thatDayOrder;
-
- }
- function update($ddh,$ydh,$xg,$shop,$ex,$msg)
- {
- $data = name($shop['brandname']);
- if($data == 2)
- {
- return;exit;
- }
- $carrier = strtolower($ex['iscode']);
- $id = $ddh; //订单号
- $shopname = $shop['brandname']; //店铺名
- $buyername = $xg['bname']; //Bill Name
- $email_call = $shop['shopid']; //发货人邮箱;
- $phone = $shop['shopphone']; //发货人电话
- $track_type = $ex['title']; //快递名称
- $service = $ex['title']; //快递追踪名称
- $track_link = $ex['url']; //快递查询网址
- $logistics_number = $ydh; //运单号
- $remark = $msg;
- try
- {
- $create_result = $data['proxy']->call($data['sessionId'],'order_shipment.create',array($id,array(),$remark,true,true));
- }
- catch (Exception $e)
- {
- return $e;exit;
- }
- if(isset($create_result))
- {
- $status_array = array('orderIncrementId'=>$id,'status'=>'complete');
- $track_array = array(
- 'shipmentIncrementId' =>$create_result,//ID
- 'carrier' => $carrier,//物流商
- 'title' => $track_type,//标题同上
- 'trackNumber' => $logistics_number//运单
- );
- $track_result = $data['proxy']->call($data['sessionId'],'sales_order_shipment.addTrack',$track_array);
- $status_result = $data['proxy']->call($data['sessionId'], 'sales_order.addComment',$status_array);
- }
- else
- {
- $status_result = "";
- }
- if($status_result)
- {
- return 1;exit;
- }
- else
- {
- return;exit;
- }
- }
- if($_POST['synchronization'])
- {
- $synchronization = synchronization($_POST['name'],$_POST['from'],$_POST['to']);
- echo json_encode($synchronization);exit;
- }
- if($_POST['update'])
- {
- $update = update($_POST['ddh'],$_POST['ydh'],$_POST['xg'],$_POST['shop'],$_POST['ex'],$_POST['msg']);
- echo json_encode($update);exit;
- }
- if($_POST['cs'])
- {
- $synchronization = cs($_POST['name'],$_POST['from'],$_POST['to']);
- echo json_encode($synchronization);exit;
- }
- if($_POST['g'])
- {
- $synchronization = g($_POST['name'],$_POST['from'],$_POST['to']);
- echo json_encode($synchronization);exit;
- }
- if($_GET['a'])
- {
- $synchronization = cs2();
- echo "<pre>";
- print_r($synchronization);
- }
- if($_POST['shopify'])
- {
- $shopify = shopify($_POST['shopify']);
- echo $shopify;exit;
- }
- function shopify($shopify)
- {
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL,$shopify);//?status=any所有订单 &limit=200每页多少单
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- $res = curl_exec($ch);
- curl_close($ch);
- return $res;
- }
- //echo "<pre>";
- //print_r(array($item,$iteminfo));
- //echo "</pre>";
|