| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- <?php
- namespace common\components;
- use Yii;
- use yii\helpers\Json;
- use linslin\yii2\curl;
- /**
- * 微信小程序发货信息管理服务-核心接口工具类
- */
- class shippingUtil
- {
- public static function getAccessToken($merchant, $ptStyle = 0)
- {
- return miniUtil::getMiniProgramAccessToken($merchant, $ptStyle);
- }
- /**
- * 发货信息录入接口
- */
- public static function shipping($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/upload_shipping_info?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 发货信息合单录入接口
- */
- public static function shippingCombine($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/upload_combined_shipping_info?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 查询订单发货状态
- */
- public static function getShippingInfo($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/get_order?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 查询订单列表
- */
- public static function getOrderList($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/get_order_list?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 确认收货提醒接口
- */
- public static function confirmReceiveMsg($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/notify_confirm_receive?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 消息跳转路径设置接口
- */
- public static function setMsgJump($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/set_msg_jump_path?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 查询小程序是否已开通发货信息管理服务
- */
- public static function isTradeManage($merchant, $data = [], $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/is_trade_managed?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 查询小程序是否已完成交易结算管理确认
- */
- public static function isTradeManageConfirmComplete($merchant, $data = [], $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/is_trade_management_confirmation_completed?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- /**
- * 特殊发货报备
- */
- public static function opSpecialOrder($merchant, $data, $ptStyle = 0)
- {
- $accessToken = self::getAccessToken($merchant, $ptStyle);
- $url = "https://api.weixin.qq.com/wxa/sec/order/opspecialorder?access_token={$accessToken}";
- $curl = new curl\Curl();
- $result = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($data))->post($url);
- return Json::decode($result);
- }
- }
|