正在显示
1 个修改的文件
包含
67 行增加
和
1 行删除
@@ -265,6 +265,72 @@ class Index extends Api | @@ -265,6 +265,72 @@ class Index extends Api | ||
265 | //计算超时时间 | 265 | //计算超时时间 |
266 | $newtime=time()-43200; | 266 | $newtime=time()-43200; |
267 | $order=Db::name("order")->where("create_time",">",$newtime)->select(); | 267 | $order=Db::name("order")->where("create_time",">",$newtime)->select(); |
268 | - print_r($order); | 268 | + foreach ($order as $k=>$v){ |
269 | + $res=$this->refund($v['id']); | ||
270 | + } | ||
271 | + } | ||
272 | + | ||
273 | + public function refund($id) | ||
274 | + { | ||
275 | + //查询订单 | ||
276 | + $order = Db::name("order")->where("id", $id)->find(); | ||
277 | + if(!$order){ | ||
278 | + print_r("id错误"); | ||
279 | + } | ||
280 | + if ($order['is_pay'] == 1) { | ||
281 | + if ($order['order_status'] != 1) { | ||
282 | + print_r("该订单无法退款order_status不等于1,order_status=".$order['order_status']); | ||
283 | + } | ||
284 | + if ($order['pay_type'] == "offlinepay") { | ||
285 | + $relogs['update_time'] = time(); | ||
286 | + $relogs['is_pay'] = 4; | ||
287 | + $relogs['refund_time'] = time(); | ||
288 | + $rs2 = Db::name('order') | ||
289 | + ->where(['id' => $order['id']]) | ||
290 | + ->update($relogs); | ||
291 | + } | ||
292 | + //$this->error("该订单无法退款"); | ||
293 | + //拼接退款参数 | ||
294 | + $pay_fee = $order['price']; | ||
295 | + $refund_fee = $pay_fee; | ||
296 | + $order_sn = $order['order_no']; | ||
297 | + $pay_type = 'wechat'; | ||
298 | + $reason = '订单退款'; | ||
299 | + $notifyurl = 'https://wyc.tenyes.cn/api/index/refundNotifyx';//退款回调地址 | ||
300 | + //直接调用退款方法传参即可 | ||
301 | + $response = \addons\epay\library\Service::submitRefund($pay_fee, $refund_fee, $order_sn, getRefundSn($order['user_id']), $pay_type, $reason, $notifyurl, '', 'miniapp'); | ||
302 | + $response = json_encode($response); | ||
303 | + $response = json_decode($response, true); | ||
304 | + file_put_contents("pcl_repay_v2.log", date("Y-m-d H:i:s") . "::" . json_encode($response, JSON_UNESCAPED_UNICODE) . PHP_EOL, FILE_APPEND); | ||
305 | + if (!empty($response['return_code'] == 'SUCCESS')) { | ||
306 | + | ||
307 | + //退款成功,更新退款记录 | ||
308 | + $relogs['update_time'] = time(); | ||
309 | + $relogs['is_pay'] = 3; | ||
310 | + $relogs['out_refund_no'] = $response['out_refund_no']; | ||
311 | + $relogs['refund_time'] = time(); | ||
312 | + $rs2 = Db::name('order') | ||
313 | + ->where(['id' => $order['id']]) | ||
314 | + ->update($relogs); | ||
315 | + } else { | ||
316 | + print_r("微信退款失败".$response); | ||
317 | + } | ||
318 | + | ||
319 | + //refundSendMessage($id);//发送订阅消息 | ||
320 | + $index=new Index(); | ||
321 | + $index->senWxmsgToDriverUser($id); | ||
322 | + print_r("退款成功".$response); | ||
323 | + | ||
324 | + } else { | ||
325 | + $relogs['is_pay'] = 4; | ||
326 | + $rs2 = Db::name('order') | ||
327 | + ->where(['id' => $order['id']]) | ||
328 | + ->update($relogs); | ||
329 | + //refundSendMessage($id);//发送订阅消息 | ||
330 | + $index=new Index(); | ||
331 | + $index->senWxmsgToDriverUser($id); | ||
332 | + print_r("取消成功 id=".$id); | ||
333 | + | ||
334 | + } | ||
269 | } | 335 | } |
270 | } | 336 | } |
-
请 注册 或 登录 后发表评论