...
|
...
|
@@ -37,7 +37,7 @@ class PayController extends WeChatBaseController |
|
|
'body' => '十方台',
|
|
|
'detail' => '点亮财神灯',
|
|
|
'out_trade_no' => $data['order_sn'],
|
|
|
'total_fee' => 1, // 单位:分
|
|
|
'total_fee' => $data['money'], // 单位:分
|
|
|
'notify_url' => url('portal/pay/notify','','',true), // 支付结果通知网址,如果不设置则会使用配置里的默认地址
|
|
|
'openid' => $re['open_id'], // trade_type=JSAPI,此参数必传,用户在商户appid下的唯一标识,
|
|
|
];
|
...
|
...
|
@@ -67,6 +67,43 @@ class PayController extends WeChatBaseController |
|
|
// var_dump(cache('order'));
|
|
|
// }
|
|
|
|
|
|
public function index2(){
|
|
|
$re=$this->checkLogin();
|
|
|
$param=$this->request->param();
|
|
|
$data=Db::name('light_order')->where('id',$param['id'])->find();
|
|
|
$money=Db::name('light')->where('id',$data['light_id'])->find()['money'];
|
|
|
$attributes = [
|
|
|
'trade_type' => 'JSAPI',
|
|
|
'body' => '十方台',
|
|
|
'detail' => '续费',
|
|
|
'out_trade_no' => $data['order_sn'],
|
|
|
'total_fee' => $money, // 单位:分
|
|
|
'notify_url' => url('portal/pay/notify2','','',true), // 支付结果通知网址,如果不设置则会使用配置里的默认地址
|
|
|
'openid' => $re['open_id'], // trade_type=JSAPI,此参数必传,用户在商户appid下的唯一标识,
|
|
|
];
|
|
|
$order = new Order($attributes);
|
|
|
$app = new Application($this->options);
|
|
|
$payment = $app->payment;
|
|
|
$result = $payment->prepare($order);
|
|
|
if ($result->return_code == 'SUCCESS' && $result->result_code == 'SUCCESS'){
|
|
|
//判断支付并发情况
|
|
|
// if (Db::name('light_order')->where(['light_id'=>$data['light_id'],'status'=>1,'end_time'=>['>',time()]])->find()){
|
|
|
// $this->error('该财神灯已被点亮','');
|
|
|
// }
|
|
|
|
|
|
$prepayId = $result->prepay_id;
|
|
|
$jsApiParameters=$payment->configForJSSDKPayment($prepayId);
|
|
|
$this->assign('jsApiParameters',json_encode($jsApiParameters));
|
|
|
$this->assign('list',$data);
|
|
|
return $this->fetch();
|
|
|
}else{
|
|
|
$this->error('支付参数错误','',$result);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 支付回调
|
|
|
* @throws \EasyWeChat\Core\Exceptions\FaultException
|
...
|
...
|
@@ -102,12 +139,11 @@ class PayController extends WeChatBaseController |
|
|
Db::name('temple')->where('id',$light['temple_id'])->setInc('money',$order['money']);
|
|
|
//硬件控制
|
|
|
$this->lightChange($order['light_id'],'01','01',$order['name']);
|
|
|
Db::name('light_order')->where('order_sn',$out_trade_no)->update($update);
|
|
|
} else {
|
|
|
// 用户支付失败
|
|
|
$update['status']=0;
|
|
|
Db::name('light_order')->where('order_sn',$out_trade_no)->delete();
|
|
|
}
|
|
|
Db::name('light_order')->where('order_sn',$out_trade_no)->update($update);
|
|
|
|
|
|
return true; // 返回处理完成
|
|
|
});
|
|
|
|
...
|
...
|
@@ -171,6 +207,17 @@ class PayController extends WeChatBaseController |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 查询订单
|
|
|
*/
|
...
|
...
|
|