mirror of
				https://github.com/v2board/v2board.git
				synced 2025-11-01 01:41:47 +08:00 
			
		
		
		
	add onetime plan
This commit is contained in:
		| @@ -60,15 +60,21 @@ class CheckOrder extends Command | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private function orderHandle($order) | ||||
|     private function orderHandle(Order $order) | ||||
|     { | ||||
|         $user = User::find($order->user_id); | ||||
|         return $this->buy($order, $user); | ||||
|         $plan = Plan::find($order->plan_id); | ||||
|         switch ($plan->type) { | ||||
|             // cycle | ||||
|             case 0: return $this->buyByCycle($order, $user, $plan); | ||||
|             // onetime | ||||
|             case 1: return $this->buyByOneTime($order, $user, $plan); | ||||
|         } | ||||
|         return $this->buy($order, $user, $plan); | ||||
|     } | ||||
|  | ||||
|     private function buy($order, $user) | ||||
|     private function buyByCycle(Order $order, User $user, Plan $plan) | ||||
|     { | ||||
|         $plan = Plan::find($order->plan_id); | ||||
|         // change plan process | ||||
|         if ($order->type == 3) { | ||||
|             $user->expired_at = time(); | ||||
| @@ -83,7 +89,24 @@ class CheckOrder extends Command | ||||
|         $user->plan_id = $plan->id; | ||||
|         $user->group_id = $plan->group_id; | ||||
|         $user->expired_at = $this->getTime($order->cycle, $user->expired_at); | ||||
|         if ($user->save()) { | ||||
|             $order->status = 3; | ||||
|             $order->save(); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private function buyByOneTime(Order $order, User $user, Plan $plan) | ||||
|     { | ||||
|         if ($order->refund_amount) { | ||||
|             $user->balance = $user->balance + $order->refund_amount; | ||||
|         } | ||||
|         $user->transfer_enable = $plan->transfer_enable * 1073741824; | ||||
|         $user->enable = 1; | ||||
|         $user->u = 0; | ||||
|         $user->d = 0; | ||||
|         $user->plan_id = $plan->id; | ||||
|         $user->group_id = $plan->group_id; | ||||
|         $user->expired_at = 0; | ||||
|         if ($user->save()) { | ||||
|             $order->status = 3; | ||||
|             $order->save(); | ||||
|   | ||||
| @@ -38,7 +38,10 @@ class ResetTraffic extends Command | ||||
|      */ | ||||
|     public function handle() | ||||
|     { | ||||
|         DB::table('v2_user')->update([ | ||||
|         //  get plans of cycle type | ||||
|         $plans = Plan::where('type', 0)->get(); | ||||
|         $users = User::whereIn('plan_id', $plans)->get(); | ||||
|         $users->update([ | ||||
|             'u' => 0, | ||||
|             'd' => 0 | ||||
|         ]); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user