ホームページ > 記事 > PHPフレームワーク > SF Expressの市内配送用の拡張パッケージを共有し、laravelで使用する
会社のプロジェクトでは SF テイクアウェイを使用する必要があるため、既製の拡張パックが利用可能かどうか確認しました。
$ composer require ycstar/sfopenic -vvv
この拡張機能を使用する前に、SF Express City Open にアカウントを登録する必要があります。プラットフォームにアクセスし、開発者 ID を申請して、対応する構成を取得します
use Ycstar\Sfopenic\Sfopenic; $config = [ 'host' => 'xxxxxxxxxxxx', 'dev_id' => 'xxxxxxxxxxxx', 'dev_key' => 'xxxxxxxxxxxx' ]; $sfopenic = new Sfopenic($config);
$data = [ 'shop_id' => 'xxxxxxxxxxxx', 'user_address' => "北京市海淀区学清嘉创大厦A座15层", 'user_lng' => '116.352569', 'user_lat' => '40.014838', 'weight' => 100, 'product_type' => 1, 'pay_type' => 1, 'is_appoint' => 0, 'is_insured' => 0, 'is_person_direct' => 0 ]; $res = $sfopenic->preCreateOrder($data);
$array = [ 'shop_id' => 'xxxxxxxxxxxx', 'shop_order_id' => 'xxxxxxxxxxxx', 'order_source' => 'xx', 'pay_type' => 1, 'order_time' => time(), 'is_appoint' => 0, 'is_insured' => 0, 'is_person_direct' => 0, 'version' => 17, 'order_sequence' => 'xx', 'remark' => 'xx' ]; $receive =[ 'user_name' => "xx", 'user_phone' => "xxxxxxxxxx", 'user_address' => "北京市海淀区学清嘉创大厦A座15层", 'user_lng' => '116.352569', 'user_lat' => '40.014838', ]; $order_detail = [ 'total_price' => 1,//总金额 'product_type' => 1, //物品类型 1:送餐 8:饮品 'weight_gram' => 100,//物品重量 'product_num' => 3,//物品个数 'product_type_num' => 1,//物品种类个数 ]; $product_detail[]=[ 'product_name'=>'xxx',//物品名称 'product_num' => 1,//物品数量 ]; $order_detail['product_detail'] = $product_detail; $array['order_detail'] = $order_detail; $array['receive'] = $receive; $res = $sfopenic->createOrder($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID 'cancel_code' => 313, //不填时默认cancel_code=313,cancel_reason=商家发起取消 'cancel_reason' => '' ]; $res = $sfopenic->cancelOrder($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID 'cancel_reason' => '' ]; $res = $sfopenic->preCancelOrder($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID 'gratuity_fee' => 0 ]; $res = $sfopenic->addOrderGratuityFee($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->getOrderGratuityFee($data);#注文ステータス フロー クエリ
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->listOrderFeed($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->getOrderStatus($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->reminderOrder($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID 'user_name'=> '', 'user_phone'=> '', 'user_address'=> '', 'lbs_type'=> 2, //1:百度坐标,2:高德坐标(默认值为2,下面的经纬度依赖这个坐标系,不传默认高德) 'user_lng'=> '', //传入用户地址经纬度顺丰侧则不根据用户地址解析 'user_lat'=> '', ]; $res = $sfopenic->changeOrder($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->riderLatestPosition($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, //order_type=2时必传shop_id与shop_type 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->riderViewV2($data);
$data = [ 'order_id' => 'xxxxxxxxxxxx', 'order_type' => 1 //1、顺丰订单号 2、商家订单号 'shop_id' => 0, 'shop_type' => 1, //1、顺丰店铺ID 2、接入方店铺ID ]; $res = $sfopenic->getCallbackInfo($data);
$data = $sfopenic->getNotify(); . . . return $sfopenic->getNotifySuccessReply();
同じインストール方法は Laravel で使用されます。[推奨: " laravel チュートリアル
>>]次のコマンドを使用して設定ファイルをエクスポートしますphp artisan vendor:publish --tag="ycstar-sfopenic"
設定は config/sfopenic.php:
return [ 'host' => env('SF_OPENIC_HOST'), 'dev_id' => env('SF_OPENIC_DEV_ID'), 'dev_key' => env('SF_OPENIC_DEV_KEY') ];## に記述されます。 #次に、.env:
SF_OPENIC_HOST = xxxxxxxxxxxx SF_OPENIC_DEV_ID = xxxxxxxxxxxx SF_OPENIC_DEV_KEY = xxxxxxxxxxxxで SF_OPENIC_HOST、SF_OPENIC_DEV_ID、SF_OPENIC_DEV_KEY を設定します。# Ycstar\Sfopenic\Sfopenic インスタンスは 2 つの方法で取得できます。
##メソッド パラメーター インジェクション
. . . public function preCreateOrder(Sfopenic $sfopenic) { $res = $sfopenic->preCreateOrder($data); } . . .
サービス名アクセス
. . . public function preCreateOrder() { $res = app('sfopenic')->preCreateOrder($data); } . . .
#関連する推奨事項:
最新の 5 つの Laravel ビデオ チュートリアル以上がSF Expressの市内配送用の拡張パッケージを共有し、laravelで使用するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。