123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- <?php
- namespace app\api\controller;
- use app\admin\model\method\Time;
- use app\admin\model\Third;
- use app\admin\model\Tzmoneyrecharge;
- use app\admin\model\UserScoreLog;
- use app\api\model\order\Order;
- use app\common\controller\Api;
- use EasyWeChat\Factory;
- class Pay extends Api
- {
- protected $noNeedLogin = ['*'];
- protected $noNeedRight = ['*'];
- public function score($user_id,$user_score,$title){
- $insert_score_log = [
- 'user_id' => $user_id,
- 'score' => config('site.one_prize_score'),
- 'before' => $user_score,
- 'after' => $user_score - config('site.one_prize_score'),
- 'memo' => '积分抽奖',
- ];
- $user_score = new UserScoreLog();
- $user_score->insert($insert_score_log);
- }
- //钓鱼订单支付
- public function method_pay(){
- $order_model = new \app\admin\model\Order();
- $order_item_model = new \app\admin\model\Orderitem();
- $tird = new Third();
- $time_model = new Time();
- $user=$this->auth->getUser();
- $order = input('order_id');
- $method = input('method');
- $order_info= $order_model->where('id',$order)->field('order_money,order_no,pay_type,user_id,item_money,wucan_money,id')->find();
- if($order_info['order_money']<=0){
- $this->error('支付金额不能为0');
- }
- if($order_info['pay_type']=='钱包支付'){
- if($user->money<$order_info['order_money']){
- $this->error('用户余额不足');
- }
- $zong = $order_info['item_money']+$order_info['wucan_money'];
- $this->score($order_info['user_id'],$zong,'下单返利积分');
- $user->money -=$order_info['order_money'];
- $user->score +=$zong;
- $user->save();
- $time_number = $order_item_model->where('order_id',$order_info['id'])->where('type',1)->field('number,time_id')->find();
- $number_sta = $time_model->where('id',$time_number['time_id'])->value('sale_num');
- $time_model->isUpdate('true',['id'=>$time_number['time_id']])->save(['sale_num'=>$number_sta-$time_number['number']]);
- $order_model->isUpdate('true',['id'=>$order])->save(['status'=>2,'pay_time'=>time()]);
- $this->success('支付成功');
- }
- $opernid=$tird->where('user_id',$order_info['user_id'])->where('platform','xcc')->value('openid');
- $type='wechat';
- if($order_info['pay_type']=='支付宝支付'){
- $type='alipay';
- }
- $params = [
- 'amount'=>$order_info['order_money'],
- 'orderid'=>$order_info['order_no'],
- 'type'=>$type,
- 'title'=>"钓鱼订单支付",
- 'notifyurl'=> common_url().'/index.php/api/Notify/method_notify/type/' . $type,
- 'returnurl'=>"",
- 'method'=>$method,
- 'openid'=>$opernid,
- ];
- $pay = \addons\epay\library\Service::submitOrder($params);
- $this->success('快去拉起支付',$pay);
- }
- //购买短信订单支付
- public function sms_pay(){
- $order_model = new \app\admin\model\Smsorder();
- $tird = new Third();
- $order = input('order_id');
- $method = input('method');
- $order_info= $order_model->where('id',$order)->field('pay_money,order_no,pay_type,user_id')->find();
- $opernid=$tird->where('user_id',$order_info['user_id'])->where('platform','xcc')->value('openid');
- $type='wechat';
- if($order_info['pay_type']=='支付宝支付'){
- $type='alipay';
- }
- $params = [
- 'amount'=>$order_info['pay_money'],
- 'orderid'=>$order_info['order_no'],
- 'type'=>$type,
- 'title'=>"购买短信支付",
- 'notifyurl'=>common_url().'/index.php/api/Notify/sms_notify/type/' . $type,
- 'returnurl'=>"",
- 'method'=>$method,
- 'openid'=>$opernid,
- ];
- $pay = \addons\epay\library\Service::submitOrder($params);
- $this->success('快去拉起支付',$pay);
- }
- //购买短信订单支付
- public function release_pay(){
- $order_model = new \app\admin\model\Yutang();
- $tird = new Third();
- $order = input('order_no');
- $order_type =input('pay_type');
- $method = input('method');
- $order_info= $order_model->where('order_no',$order)->field('price,order_no,user_id')->find();
- $opernid=$tird->where('user_id',$order_info['user_id'])->where('platform','xcc')->value('openid');
- // print_r($opernid);die;
- $type='wechat';
- if($order_type=='支付宝支付'){
- $type='alipay';
- }
- $params = [
- 'amount'=>$order_info['price'],
- 'orderid'=>$order_info['order_no'],
- 'type'=>$type,
- 'title'=>"鱼塘发布支付",
- 'notifyurl'=>common_url().'/index.php/api/Notify/release_notify/type/' . $type,
- 'returnurl'=>"",
- 'method'=>$method,
- 'openid'=>$opernid,
- ];
- $pay = \addons\epay\library\Service::submitOrder($params);
- $this->success('快去拉起支付',$pay);
- }
- //余额充值
- public function balance_pay(){
- $order_model = new Tzmoneyrecharge();
- $tird = new Third();
- $order = input('order_id');
- $method = input('method');
- $order_info= $order_model->where('id',$order)->field('money,order_no,pay_type,user_id')->find();
- $opernid=$tird->where('user_id',$order_info['user_id'])->where('platform','xcc')->value('openid');
- // print_r($opernid);die;
- $type='wechat';
- if($order_info['pay_type']=='支付宝支付'){
- $type='alipay';
- }
- $params = [
- 'amount'=>$order_info['money'],
- 'orderid'=>$order_info['order_no'],
- 'type'=>$type,
- 'title'=>"塘主端充值",
- 'notifyurl'=>common_url().'/index.php/api/Notify/balance_notify/type/' . $type,
- 'returnurl'=>"",
- 'method'=>$method,
- 'openid'=>$opernid,
- ];
- $pay = \addons\epay\library\Service::submitOrder($params);
- $this->success('快去拉起支付',$pay);
- }
- }
|