Skip to content

Commit

Permalink
3.x 微信视频号组件升级 更新相应接口 (#2452)
Browse files Browse the repository at this point in the history
  • Loading branch information
hpppenely authored Apr 18, 2022
1 parent 7535479 commit 10ed985
Show file tree
Hide file tree
Showing 4 changed files with 195 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
use EasyWeChat\MiniProgram\Stats\Stats;
use EasyWeChat\MiniProgram\SubscribeMessage\SubscribeMessage;
use EasyWeChat\MiniProgram\Transactions\AfterSale\AfterSale;
use EasyWeChat\MiniProgram\Transactions\AfterSale\EcAfterSale;
use EasyWeChat\MiniProgram\Transactions\Coupon\Coupon;
use EasyWeChat\MiniProgram\Transactions\Delivery\Delivery;
use EasyWeChat\MiniProgram\Transactions\Order\Order;
Expand Down Expand Up @@ -130,6 +131,12 @@ public function register(Container $pimple)
$pimple['config']['mini_program']
);
};
$pimple['mini_program.ecAftersale'] = function ($pimple) {
return new EcAfterSale(
$pimple['mini_program.access_token'],
$pimple['config']['mini_program']
);
};
$pimple['mini_program.coupon'] = function ($pimple) {
return new Coupon(
$pimple['mini_program.access_token'],
Expand Down
1 change: 1 addition & 0 deletions src/MiniProgram/MiniProgram.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
* @property \EasyWeChat\MiniProgram\Transactions\Spu\Product $product
* @property \EasyWeChat\MiniProgram\Transactions\Delivery\Delivery $delivery
* @property \EasyWeChat\MiniProgram\Transactions\AfterSale\AfterSale $aftersale
* @property \EasyWeChat\MiniProgram\Transactions\AfterSale\EcAfterSale $ecAftersale
* @property \EasyWeChat\MiniProgram\Transactions\Coupon\Coupon $coupon
*/
class MiniProgram
Expand Down
170 changes: 170 additions & 0 deletions src/MiniProgram/Transactions/AfterSale/EcAfterSale.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
<?php
/**
* Created by PhpStorm.
* User: baixinghai
* Date: 2022/4/14
* Time: 17:57 PM
*/

namespace EasyWeChat\MiniProgram\Transactions\AfterSale;

use EasyWeChat\MiniProgram\Core\AbstractMiniProgram;

class EcAfterSale extends AbstractMiniProgram
{
const API_POST_SHOP_ADD = 'https://api.weixin.qq.com/shop/ecaftersale/add';
const API_POST_SHOP_CANCEL = 'https://api.weixin.qq.com/shop/ecaftersale/cancel';
const API_POST_SHOP_UPLOAD_RETURNINFO = 'https://api.weixin.qq.com/shop/ecaftersale/uploadreturninfo';
const API_POST_SHOP_GET = 'https://api.weixin.qq.com/shop/ecaftersale/get';
const API_POST_SHOP_GET_LIST = 'https://api.weixin.qq.com/shop/ecaftersale/get_list';
const API_POST_SHOP_ACCEPT_REFUND = 'https://api.weixin.qq.com/shop/ecaftersale/acceptrefund';
const API_POST_SHOP_ACCEPT_RETURN = 'https://api.weixin.qq.com/shop/ecaftersale/acceptreturn';
const API_POST_SHOP_REJECT = 'https://api.weixin.qq.com/shop/ecaftersale/reject';
const API_POST_SHOP_UPLOAD_CERTIFICATES = 'https://api.weixin.qq.com/shop/ecaftersale/upload_certificates';
const API_POST_SHOP_UPDATE = 'https://api.weixin.qq.com/shop/ecaftersale/update';

/**
* 生成售后单
* @param array $params
* @return \Psr\Http\Message\StreamInterface
*/
public function add(array $params)
{
return $this->getStream(self::API_POST_SHOP_ADD, $params);
}

/**
* 用户取消售后单
* @param string $outAftersaleId
* @param string $aftersaleId
* @param string $openId
* @return \Psr\Http\Message\StreamInterface
*/
public function cancel(string $outAftersaleId, string $aftersaleId, string $openId)
{
$params = [
"out_aftersale_id" => $outAftersaleId,
"aftersale_id" => $aftersaleId,
"openid" => $openId,
];
return $this->getStream(self::API_POST_SHOP_CANCEL, $params);
}

/**
* 用户上传物流信息
* @param string $outAftersaleId
* @param string $aftersaleId
* @param string $openId
* @param string $deliveryId
* @param string $waybillId
* @param string $deliveryName
* @return \Psr\Http\Message\StreamInterface
*/
public function uploadReturnInfo(string $outAftersaleId, string $aftersaleId, string $openId, string $deliveryId, string $waybillId, string $deliveryName)
{
$params = [
"out_aftersale_id" => $outAftersaleId,
"aftersale_id" => $aftersaleId,
"openid" => $openId,
"delivery_id" => $deliveryId,
"waybill_id" => $waybillId,
"delivery_name" => $deliveryName,
];
return $this->getStream(self::API_POST_SHOP_UPLOAD_RETURNINFO, $params);
}

/**
* 获取售后单详情
* @param string $outAftersaleId
* @param string $aftersaleId
* @return \Psr\Http\Message\StreamInterface
*/
public function get(string $outAftersaleId, string $aftersaleId)
{
$params = [
"out_aftersale_id" => $outAftersaleId,
"aftersale_id" => $aftersaleId,
];
return $this->getStream(self::API_POST_SHOP_GET, $params);
}

/**
* 获取售后单列表
* @param array $params
* @return \Psr\Http\Message\StreamInterface
*/
public function getList(array $params)
{
return $this->getStream(self::API_POST_SHOP_GET_LIST, $params);
}

/**
* 同意退款
* @param string $outAftersaleId
* @return \Psr\Http\Message\StreamInterface
*/
public function acceptRefund(string $outAftersaleId)
{
$params = [
"out_aftersale_id" => $outAftersaleId,
];
return $this->getStream(self::API_POST_SHOP_ACCEPT_REFUND, $params);
}

/**
* 同意退货
* @param array $params
* @return \Psr\Http\Message\StreamInterface
*/
public function acceptReturn(array $params)
{
return $this->getStream(self::API_POST_SHOP_ACCEPT_RETURN, $params);
}

/**
* 拒绝售后
* @param string $aftersaleId
* @return \Psr\Http\Message\StreamInterface
*/
public function reject(string $aftersaleId)
{
$params = [
"aftersale_id" => $aftersaleId,
];
return $this->getStream(self::API_POST_SHOP_REJECT, $params);
}

/**
* 上传退款凭证
* @param array $params
* @return \Psr\Http\Message\StreamInterface
*/
public function uploadCertificates(array $params)
{
return $this->getStream(self::API_POST_SHOP_UPLOAD_CERTIFICATES, $params);
}

/**
* 更新售后单
* @param array $params
* @return \Psr\Http\Message\StreamInterface
*/
public function update(array $params)
{
return $this->getStream(self::API_POST_SHOP_UPDATE, $params);
}

/**
* Get stream.
*
* @param string $endpoint
* @param array $params
*
* @return \Psr\Http\Message\StreamInterface
*/
protected function getStream($endpoint, $params)
{
return json_decode(strval($this->getHttp()
->json($endpoint, $params)->getBody()), true);
}
}
17 changes: 17 additions & 0 deletions src/MiniProgram/Transactions/Order/Order.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ class Order extends AbstractMiniProgram
const API_POST_ORDER_GET_LIST = 'https://api.weixin.qq.com/shop/order/get_list';
const API_POST_ORDER_BY_FINDER = 'https://api.weixin.qq.com/shop/order/get_list_by_finder';
const API_POST_ORDER_BY_SHARE = 'https://api.weixin.qq.com/shop/order/get_list_by_sharer';
const API_POST_ORDER_PARAMS = 'https://api.weixin.qq.com/shop/order/getpaymentparams';


/** 获取场景
Expand Down Expand Up @@ -111,6 +112,22 @@ public function orders(array $params)
return $this->getStream(self::API_POST_ORDER_GET_LIST, $params);
}

/** 生成支付参数
* @param string $orderId
* @param string $outOrderId
* @param string $openId
* @return \Psr\Http\Message\StreamInterface
*/
public function getPaymentParams(string $openId, string $orderId = "", string $outOrderId = "")
{
$params = [
"order_id" => $orderId,
"out_order_id" => $outOrderId,
"openid" => $openId
];
return $this->getStream(self::API_POST_ORDER_PARAMS, $params);
}

/**
* Get stream.
*
Expand Down

0 comments on commit 10ed985

Please sign in to comment.