mirror of
https://gitee.com/hzchunfen/erp.git
synced 2025-11-30 22:20:45 +00:00
commit
6377f6561e
@ -53,5 +53,16 @@ class Test extends Command
|
|||||||
*/
|
*/
|
||||||
public function handle()
|
public function handle()
|
||||||
{
|
{
|
||||||
|
$shops = Shop::query()->where('plat_id', Shop::$PLAT_KTT)->where('status', Shop::$STATUS_AUTHORIZED)->where('id', 6)->get();
|
||||||
|
foreach ($shops as $shop) {
|
||||||
|
$faceSheet = new FaceSheet();
|
||||||
|
$faceSheet->setShop($shop);
|
||||||
|
var_dump($faceSheet->searchWayBill());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getAuthUrl()
|
||||||
|
{
|
||||||
|
return "https://wb.pinduoduo.com/logistics/auth?client_id=24f25877aca447c5830a6aa896301d5e&redirect_uri=http://erp.chutang66.com/pdd/ship";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,6 +7,7 @@ use App\Models\BusinessGoodsSku;
|
|||||||
use App\Models\GoodsSku;
|
use App\Models\GoodsSku;
|
||||||
use App\Models\Shop;
|
use App\Models\Shop;
|
||||||
use App\Http\Resources\ShopsResource;
|
use App\Http\Resources\ShopsResource;
|
||||||
|
use App\Services\PrintModule\Pdd\Ktt;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\DB;
|
use Illuminate\Support\Facades\DB;
|
||||||
use Illuminate\Support\Facades\Validator;
|
use Illuminate\Support\Facades\Validator;
|
||||||
@ -218,4 +219,10 @@ class ShopsController extends Controller
|
|||||||
|
|
||||||
return response($this->res, $this->res['httpCode']);
|
return response($this->res, $this->res['httpCode']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function pddPrintAuth(Request $request)
|
||||||
|
{
|
||||||
|
$ktt = new Ktt();
|
||||||
|
$ktt->auth($request->get('code'));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
63
app/Services/PrintModule/Pdd/Ktt.php
Normal file
63
app/Services/PrintModule/Pdd/Ktt.php
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Services\PrintModule\Pdd;
|
||||||
|
|
||||||
|
use GuzzleHttp\Client;
|
||||||
|
use Illuminate\Support\Facades\Log as LogFile;
|
||||||
|
|
||||||
|
class Ktt
|
||||||
|
{
|
||||||
|
protected $clientId = '24f25877aca447c5830a6aa896301d5e';
|
||||||
|
protected $clientSecret = '59b6f4bd402c6423878a8f4ef1bde28359c1f05a';
|
||||||
|
protected $callBackUrl = 'http://erp.chutang66.com/pdd/ship';
|
||||||
|
|
||||||
|
public function auth($code)
|
||||||
|
{
|
||||||
|
$accessToken = $this->getAccessTokenWithCode($code);
|
||||||
|
LogFile::info('电子面单应用授权: ' . json_encode($accessToken, 256));
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getAccessTokenWithCode($code)
|
||||||
|
{
|
||||||
|
$type = 'pdd.pop.auth.token.create';
|
||||||
|
$res = $this->doRequest($type, ['code' => $code]);
|
||||||
|
|
||||||
|
return $res['pop_auth_token_create_response'];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function doRequest($type, $appendParams = [], $url = 'https://gw-api.pinduoduo.com/api/router')
|
||||||
|
{
|
||||||
|
$publicParams = [
|
||||||
|
'type' => $type,
|
||||||
|
'client_id' => $this->clientId,
|
||||||
|
'timestamp' => time()
|
||||||
|
];
|
||||||
|
$publicParams = array_merge($publicParams, $appendParams);
|
||||||
|
$publicParams['sign'] = $this->getSign($publicParams);
|
||||||
|
|
||||||
|
return $this->formDataPostRequest($url, $publicParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getSign($params)
|
||||||
|
{
|
||||||
|
ksort($params);
|
||||||
|
$str = '';
|
||||||
|
foreach ($params as $key => $val) {
|
||||||
|
$str .= $key . $val;
|
||||||
|
}
|
||||||
|
$str = $this->clientSecret . $str . $this->clientSecret;
|
||||||
|
|
||||||
|
return strtoupper(md5($str));
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function formDataPostRequest($url, $params)
|
||||||
|
{
|
||||||
|
$method = 'POST';
|
||||||
|
$headers = [
|
||||||
|
'headers' => ['Content-type' => 'application/x-www-form-urlencoded;charset=UTF-8'],
|
||||||
|
'form_params' => $params
|
||||||
|
];
|
||||||
|
$res = (new Client())->request($method, $url, $headers);
|
||||||
|
return json_decode($res->getBody()->getContents(), true);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -28,3 +28,5 @@ Route::get('today_price/export', [BusinessGoodsSkusController::class, 'exportTod
|
|||||||
Route::get('goods/import/template', [GoodsController::class, 'download'])->name('download.goods_import.template');
|
Route::get('goods/import/template', [GoodsController::class, 'download'])->name('download.goods_import.template');
|
||||||
|
|
||||||
Route::get('callback', [ShopsController::class, 'authBind'])->name('shop.auth_bind.callback');
|
Route::get('callback', [ShopsController::class, 'authBind'])->name('shop.auth_bind.callback');
|
||||||
|
|
||||||
|
Route::get('pdd/ship', [ShopsController::class, 'pddPrintAuth'])->name('shop.pdd_print.callback');
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user