Commit 54fd687f authored by zhaopeng343's avatar zhaopeng343

Merge branch 'master' into purchase_rpc

# Conflicts:
#	src/Service/Interfaces/Order/SubOrderServiceInterface.php
parents 2ceb2232 a6f60c93
...@@ -60,22 +60,7 @@ interface SubOrderServiceInterface ...@@ -60,22 +60,7 @@ interface SubOrderServiceInterface
public function getBySourceSite($source): array; public function getBySourceSite($source): array;
/**
* 订单采购完成 修改子订单信息 ---1688采购系统使用
* @param $data //修改参数数组(二维数组)
* 参数字段:$data = [
* 'sub_order_no'=>[oa子订单编号1,oa子订单编号2],
* 'data' => [
* 'supplier_name'=>供应商,
* 'purchase_price'=>采购总价,
* 'platform_order'=>'采购平台订单号',
* 'domestic_logistics_no'=>物流单号,
* 'domestic_logistics_price'=>物流价格
* ],
* ]
* @return bool
*/
public function purchaseCompleted($data): bool;
/** /**
* 1688采购异常订单 修改OA子订单状态 * 1688采购异常订单 修改OA子订单状态
...@@ -96,4 +81,5 @@ interface SubOrderServiceInterface ...@@ -96,4 +81,5 @@ interface SubOrderServiceInterface
* @return array * @return array
*/ */
public function purchaseEdit($orderId,$editData):array ; public function purchaseEdit($orderId,$editData):array ;
} }
\ No newline at end of file
...@@ -148,4 +148,11 @@ interface ProductServiceInterface ...@@ -148,4 +148,11 @@ interface ProductServiceInterface
*/ */
public function getSizesById($id): array; public function getSizesById($id): array;
/**
* 完成产品审批
* @param $data
* @author Zero
*/
public function downApprove($data);
} }
...@@ -9,27 +9,17 @@ class CurlRequest ...@@ -9,27 +9,17 @@ class CurlRequest
protected static function init($url, $httpHeaders = []) protected static function init($url, $httpHeaders = [])
{ {
// Create Curl resource
$ch = curl_init(); $ch = curl_init();
// Set URL
curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_URL, $url);
//Return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'PHPClassic/PHPShopify'); curl_setopt($ch, CURLOPT_USERAGENT, 'PHPClassic/PHPShopify');
$headers = []; $headers = [];
foreach ($httpHeaders as $key => $value) { foreach ($httpHeaders as $key => $value) {
$headers[] = "$key: $value"; $headers[] = "$key: $value";
} }
//Set HTTP Headers
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
return $ch; return $ch;
} }
public static function get($url, $httpHeaders = []) public static function get($url, $httpHeaders = [])
...@@ -63,35 +53,20 @@ class CurlRequest ...@@ -63,35 +53,20 @@ class CurlRequest
protected static function processRequest($ch) protected static function processRequest($ch)
{ {
# Check for 429 leaky bucket error $output = curl_exec($ch);
while (1) { $response = new CurlResponse($output);
$output = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$response = new CurlResponse($output); if ($httpCode == 429) {
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode != 429) {
break;
}
$limitHeader = explode('/', $response->getHeader('X-Shopify-Shop-Api-Call-Limit'), 2); $limitHeader = explode('/', $response->getHeader('X-Shopify-Shop-Api-Call-Limit'), 2);
if (isset($limitHeader[1]) && $limitHeader[0] < $limitHeader[1]) { if (isset($limitHeader[1]) && $limitHeader[0] < $limitHeader[1]) {
throw new Exception($response->getBody()); throw new Exception($response->getBody());
} }
usleep(500000);
} }
if (curl_errno($ch)) { if (curl_errno($ch)) {
throw new Exception(curl_errno($ch) . ' : ' . curl_error($ch)); throw new Exception(curl_errno($ch) . ' : ' . curl_error($ch));
} }
// close curl resource to free up system resources
curl_close($ch); curl_close($ch);
return [$httpCode, $response->getHeaders(), $response->getBody()];
$httpHeader = $response->getHeaders();
return [$httpCode, $httpHeader, $response->getBody()];
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment