标签:laravel refund 微信 private order user input 退款 id
use Overtrue\Wechat\Payment;
use Overtrue\Wechat\Payment\Business;
use Overtrue\Wechat\Payment\Refund;
private $NOTIFYURL = 回调地址';
private $appId = 'appId ';
private $appSercret = 'appSercret ';
private $mchId = 'mchId';
private $mchKey = mchKey';
public function OrderRefundSave(Request $request){
$input = $request->all();
$user_refund = UserOrderRefund::where('id',$input['refund_id'])->first();
$user_order = UserOrder::where('id',$user_refund->order_id)->first();
$business = new Business($this->appId, $this->appSercret, $this->mchId, $this->mchKey);
$business->setClientCert(dirname(__FILE__).'/cert/apiclient_cert.pem');
$business->setClientKey(dirname(__FILE__).'/cert/apiclient_key.pem');
$refund =new Refund($business);
$refund->out_refund_no= md5(uniqid(microtime()));//退单单号
$refund->total_fee=$user_refund->refund_price * 100; //订单金额
//$refund->refund_fee=$user_refund->refund_price * 100;//退款金额
$refund->refund_fee=0.01* 100;//退款金额
$refund->out_trade_no=$user_order->order_sn;//原商户订单号
$wxRefund = $refund->getResponse();
if($wxRefund['return_code'] != 'SUCCESS' || $wxRefund['result_code'] !='SUCCESS'){
admin_toastr('退款失败','error');
return redirect(admin_url('order-refund/'.$input['refund_id'].'/edit'));
}
$user_refund->status = 1;
$user_refund->refund_may_price = $input['refund_price'];
$user_refund->save();
admin_toastr('退款成功','success');
return redirect(admin_url('order-refund/'.$input['refund_id']));
}
标签:laravel,refund,微信,private,order,user,input,退款,id 来源: https://blog.csdn.net/qq_34333717/article/details/98954245
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。