|
@@ -74,6 +74,7 @@ class Notify extends Controller
|
|
|
//验证,拿订单号等信息
|
|
|
$out_trade_no = $notify_data['reference_number'];
|
|
|
$payment_request_id = $notify_data['payment_request_id'];
|
|
|
+ $payment_id = $notify_data['payment_id'];
|
|
|
//订单查询
|
|
|
$map = [
|
|
|
'out_trade_no' => $out_trade_no,
|
|
@@ -92,7 +93,7 @@ class Notify extends Controller
|
|
|
exit;
|
|
|
}
|
|
|
//你可以在此编写订单逻辑
|
|
|
- $rs = $this->recharge_notify_do($out_trade_no);
|
|
|
+ $rs = $this->recharge_notify_do($out_trade_no,$payment_request_id,$payment_id);
|
|
|
if($rs === false){
|
|
|
//不论结果都应返回success
|
|
|
echo 'success';
|
|
@@ -109,7 +110,7 @@ class Notify extends Controller
|
|
|
}
|
|
|
|
|
|
//充值金币 逻辑
|
|
|
- private function recharge_notify_do($out_trade_no){
|
|
|
+ private function recharge_notify_do($out_trade_no,$payment_request_id,$payment_id){
|
|
|
|
|
|
$time = time();
|
|
|
|
|
@@ -174,11 +175,11 @@ class Notify extends Controller
|
|
|
$lesson_order = Db::name('lesson_order')->where('id',$args['lesson_order_id'])->find();
|
|
|
|
|
|
//课时能够支撑报名人数
|
|
|
- if($package_order['remain'] >= $lesson_order['number']){
|
|
|
+ if($package_order['remain'] >= $lesson_order['usernumber']){
|
|
|
|
|
|
//扣除一节
|
|
|
$update = [
|
|
|
- 'remain' => $package_order['remain'] - $lesson_order['number'],
|
|
|
+ 'remain' => $package_order['remain'] - $lesson_order['usernumber'],
|
|
|
'updatetime' => time(),
|
|
|
];
|
|
|
$rs1 = Db::name('package_order')->where('id',$package_order['id'])->update($update);
|
|
@@ -195,8 +196,8 @@ class Notify extends Controller
|
|
|
'package_order_id' => $package_order['id'],
|
|
|
'paytype' => 1, //从购买套餐中3,改为 课程套餐1
|
|
|
];
|
|
|
- if($lesson_order['number'] > 1){
|
|
|
- $update['package_remark'] = ($package_order['sessions'] - $package_order['remain'] + 1) . '-' . ($package_order['sessions'] - $package_order['remain'] + $lesson_order['number']) .'/'. $package_order['sessions'];
|
|
|
+ if($lesson_order['usernumber'] > 1){
|
|
|
+ $update['package_remark'] = ($package_order['sessions'] - $package_order['remain'] + 1) . '-' . ($package_order['sessions'] - $package_order['remain'] + $lesson_order['usernumber']) .'/'. $package_order['sessions'];
|
|
|
}else{
|
|
|
$update['package_remark'] = ($package_order['sessions'] - $package_order['remain'] + 1) .'/'. $package_order['sessions'];
|
|
|
}
|
|
@@ -215,7 +216,7 @@ class Notify extends Controller
|
|
|
//逻辑结束
|
|
|
|
|
|
//状态
|
|
|
- $ros = Db::name('pay_order')->where(['out_trade_no' => $out_trade_no])->update(['order_status'=>1,'notifytime'=>$time]);
|
|
|
+ $ros = Db::name('pay_order')->where(['out_trade_no' => $out_trade_no])->update(['order_status'=>1,'notifytime'=>$time,'payment_id'=>$payment_id]);
|
|
|
if($ros === false) {
|
|
|
Db::rollback();
|
|
|
return false;
|