Recharge.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. declare (strict_types = 1);
  3. namespace app\model\api;
  4. use library\basic\BaseModel;
  5. use think\facade\Db;
  6. use think\Model;
  7. use \app\model\api\MemberDetail;
  8. /**
  9. * @mixin \think\Model
  10. */
  11. class Recharge extends BaseModel
  12. {
  13. /**
  14. * 充值费用
  15. * @param $order_id
  16. */
  17. public function rechargeSuccess($order_id) {
  18. $data = $this->where('order_id',$order_id)->find();
  19. if(empty($data)) {
  20. return false;
  21. }
  22. //bool
  23. $bool = (new MemberDetail)->recharge($data['v'],$data['uid'],[]);
  24. if(!$bool) {
  25. return false;
  26. }
  27. //是否升级
  28. $mData = (new Member)->where('uid',$data['uid'])->find();
  29. $siteLevel = Db::name("site_level")
  30. ->where('level_id','>',$mData['levelid'])
  31. ->where('update_money','<=',$data['v'])
  32. ->where('update_money','>',0)
  33. ->order("update_money desc")
  34. ->find();
  35. //升级会员
  36. if(!empty($siteLevel)) {
  37. (new Member)->where('uid',$data['uid'])->save(['levelid'=>$siteLevel['level_id']]);
  38. (new MemberUpdate)->insert(['uid'=>$data['uid'],'update_level'=>$siteLevel['level_id'],'time'=>time()]);
  39. }
  40. $this->where('id',$data['id'])->save(['status'=>1]);
  41. return true;
  42. }
  43. }