Takecash.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace app\api\controller;
  3. use app\common\controller\Api;
  4. use think\Db;
  5. /**
  6. * 提现
  7. */
  8. class Takecash extends Api
  9. {
  10. protected $noNeedLogin = [];
  11. protected $noNeedRight = ['*'];
  12. //提现配置
  13. public function take_cash_config(){
  14. $config = Db::name('take_cash_config')->order('weigh asc,id asc')->select();
  15. $plat_bilv = config('site.withdrawal_plat_bili');
  16. foreach($config as $key => &$val){
  17. $val['get_money'] = bcdiv(bcmul($val['money'],(100-$plat_bilv),2),100,2);
  18. }
  19. $data = [
  20. 'config' => $config,
  21. 'wallet' => model('wallet')->getwallet($this->auth->id),
  22. 'min' => config('site.min_withdrawal_money'),
  23. 'max' => config('site.max_withdrawal_money'),
  24. 'plat_bilv' => $plat_bilv,
  25. 'user_bank' => Db::name('user_bank')->where('user_id',$this->auth->id)->find(),
  26. 'user_alipay' => Db::name('user_alipay')->where('user_id',$this->auth->id)->find(),
  27. ];
  28. $this->success('success',$data);
  29. }
  30. //提现
  31. public function take_cash(){
  32. $money = floatval(input_post('money',0));
  33. if(empty($money)){
  34. $this->error();
  35. }
  36. if(empty($this->auth->idcard_status)){
  37. $this->error('请先完成实名认证');
  38. }
  39. $check = Db::name('take_cash')->where(['user_id'=>$this->auth->id,'status'=>0])->find();
  40. if($check){
  41. $this->error('您已经申请了提现,请等待审核');
  42. }
  43. $user_money = model('wallet')->getwallet($this->auth->id,'money');
  44. if($money > $user_money){
  45. $this->error('提现金额不能大于可提现余额');
  46. }
  47. $idcard_confirm = Db::name('user_idconfirm')->where('user_id',$this->auth->id)->find();
  48. $data = [
  49. 'user_id' => $this->auth->id,
  50. 'number' => $money,
  51. 'alipay_account' => $idcard_confirm['alipay_account'],
  52. 'status' => 0,
  53. 'createtime' => time(),
  54. 'updatetime' => time(),
  55. ];
  56. Db::name('take_cash')->insertGetId($data);
  57. //审核时候再扣,或者这里先扣,等需求方确认
  58. $this->success('申请成功请等待审核');
  59. }
  60. //提现记录
  61. public function take_cash_log(){
  62. $list = Db::name('take_cash')->field('id,money,type,createtime')->where(['user_id'=>$this->auth->id])->autopage()->select();
  63. foreach($list as $key => &$val){
  64. $val['remark'] = $val['type'] == 1 ? '支付宝提现' : '银行卡提现';
  65. }
  66. $this->success('success',$list);
  67. }
  68. }